:root {
    /*--blue-a: #007BFF;*/
    --blue-a: #0074d9;
    --blue-b: #66A3FF;
    --orange: #FFA500;
    --red:#FF4136;
    --green: #4CAF50;
    --grey-a: #333333;
    --grey-b: #F7F7F7;
    --grey-c:#ced4da;
    --white:#FFFFFF;
    --radius:5px;
    /*--font-a:'Montserrat';*/
    --font-a:'Kdam Thmor Pro';
    --font-b:'Roboto';
    /*var(--blue-a)*/
}

body{
  font-family:var(--font-b), sans-serif;
  margin-top: 80px;
  min-height: 100vh;
  color:var(--grey-a);
  background: rgb(229,231,240);
  background: linear-gradient(0deg, rgba(229,231,240,1) 15%, rgba(255,255,255,1) 76%);
  transition: 0.3s;
}
.bg-svg-1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  background: url('/assets/images/svg/bg.svg') no-repeat center center fixed;
  background-size: cover; /* Ajusta el tamaño del fondo */
}
.bg-blur {
    background-color: rgba(255,255,255,.75);
    backdrop-filter: blur(10px);
}
.navbar-nav {
    align-items: center;
}
.avatar-top{
  width: 35px;
  height: 35px;
  vertical-align: middle;
  border-radius: 20px;
  margin:0px 5px;
  padding:3px;
  border:solid 1px #f2f2f2;
}
.img-logo{
    display:block;
    height:30px;
    width:auto;
}
.img-icon-footer{
  width:18px;
  height:18px;
}
.navbar-light .navbar-nav .nav-link,.dropdown-item{
  font-family: var(--font-a), sans-serif;
  color: var(--blue-a);
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
    color: var(--blue-b);
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
    color: rgb(0,0,0);
    font-weight:bold;
}
.navbar-nav .dropdown-menu {
  background: no-repeat;
  border: none;
}

.modal-header .close {
  width: 30px;
  position: absolute;
  padding: 3px;
  top: 25px;
  right: 25px;
  bottom: auto;
  left: auto;
  box-shadow: none;
}
.modal-header {
  display:block;
}
.navbar-light .navbar-toggler {
    background:transparent;
    border-color:transparent;
}
/**/
footer{
  padding:4rem 0px 2rem 0px; 
}
label{
  font-family: var(--font-a), sans-serif;
  font-size: 14px;
}
h1,h2,h3,h4,h5{
  font-family: var(--font-a), sans-serif;
  color: var(--blue-a);
}
h1{
  margin-bottom:.7em;
}
.card-title{
  color: var(--blue-a);
  font-size:1.10rem;
}
a{
  color:var(--blue-a);
}
.form-control{
  border-radius:var(--radius);
  font-size:14px;
}
.btn{
  font-family: var(--font-b), sans-serif;
}
.btn-primary{
  background-color:var(--blue-a);
  border-radius:5px;
  border-radius: 5px;
  padding: 0.2em 1em;
  /*box-shadow: 0px 2px 6px rgba(0,0,0,.6);*/
  box-shadow: inset 0 0 5px rgba(0,0,0,.6), 0px 2px 6px rgba(0,0,0,.6);
  text-shadow: 0 0 5px #fff;
}
.btn-secondary{
  border-radius: 15px;
  padding: 0.2em 1em;
  box-shadow: inset 0 0 5px rgba(0,0,0,.6), 0px 2px 6px rgba(0,0,0,.6);
  text-shadow: 0 0 5px #fff;
}
.btn-ticket{
  position: absolute;
  bottom: 1em;
  top: auto;
  right: 1em;
  left: auto;
}
.tix{
  transition: 0.3s;
}
.btn-pay-now:hover > .tix{
  color:var(--blue-a);
}
.btn-ticket:hover > .tix{
  color:var(--blue-a);
}
.btn-info{
  background-color:var(--green);
  border-radius:5px;
  border-radius: 15px;
  padding: 0.2em 1em;
  box-shadow: inset 0 0 5px rgba(0,0,0,.6), 0px 2px 6px rgba(0,0,0,.6);
  text-shadow: 0 0 5px #fff;
}
.btn-primary:hover,.btn-info:hover{
  background-color:var(--orange);
  border:solid 1px var(--orange)
}
.btn-sm{
  font-size: 12px;
  padding: 0.1em 1em;
  box-shadow: inset 0 0 3px rgba(0,0,0,.6), 0px 2px 6px rgba(0,0,0,.6);
  text-shadow: 0 0 5px #fff;
}
.card {
  border: solid 1px var(--grey-b);
  border-radius: var(--radius);
  margin: 1em 0px;
  min-height: 440px;
}
.alert{
  border-radius:0px;
}
.alert-info{
  background-color:var(--blue-b);
  color:#fff;
}
.alert-danger{
  background-color:var(--red);
  color:#fff;
}
.alert-success{
  background-color:var(--green);
  color:#fff;
}
.alert-warning{
  background-color:var(--orange);
  color:#fff;
}
.missing-day{
  position:absolute;
  display:block;
  top:5px;
  right:5px;
  bottom:auto;
  left:auto;
  padding: 0.5em 1em;
  border-radius: 0px 3px 0px 0px;
  overflow:hidden;
  box-shadow: 0px 2px 6px rgba(0,0,0,.6);
}
.missing-day::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
    top: 0;
    left: -100%;
    animation: shine 4s linear infinite;
}

.in-beat{
  animation: beat .9s infinite;
  transform-origin: center;
}
@keyframes shine {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}
@keyframes beat {
    from { transform: none; }
    40% { transform: scale(1.04); }
    to { transform: none; }
}
.md-default{
  background-color:var(--grey-a);
  color:var(--grey-b);
}
.md-10{
  background-color:var(--green);
  color:var(--white);
}
.md-7{
  background-color:var(--orange);
  color:var(--white);
}
.md-3{
  background-color:var(--red);
  color:var(--white);
}
.card-text{
  font-size: 14px;
  line-height: 1.1;
  margin: 2em 0px 4em 0px;
  text-align:justify;
}
.credit{
  text-align:center;
  font-size:10px;
  margin:3rem 0px 0px 0px;
}
.rsp{
  margin:1em 0px;
  text-align: center;
}
.hide{
  visibility: hidden;
  display: none;
}
/** Dbg **/
.breakPoint{
	background-color: #FF0F0F;
	color: #fff;
	margin-bottom: 0px;
}
.pre-dbg{
	padding:1em;
	text-align: left;
	background:#000;
	color:#fff;
	overflow:auto;
}
.sp{
  color: #CE3D00;
	font-weight: bold;
	font-style: italic;
}
.ar{
  color: #77b7ef;
	font-weight: bold;
}
.comp{
  color: #338914;
}

.set{
  color: #CE3D00;
	font-style: italic;
}
.frm{
  /*background:var(--white);*/
  background: rgb(229,239,255);
  background: rgb(229,239,255);
  background: linear-gradient(45deg, rgba(229,239,255,1) 0%, rgba(255,255,255,1) 34%, rgba(255,255,255,1) 68%, rgba(224,236,255,1) 100%);
  width:100%;
  margin:1em 0px 3em 0px;
  padding: 2em;
}
/**/
table {
  border-collapse: collapse;
  width: 100%;
  margin: 0 auto;
  font-size:12px;
  background-color:var(--white);
}
td, th {
  border: 1px solid var(--grey-b);
  padding: 1em;
  text-align:center;
  vertical-align:middle !important;
}
th {
  font-family:var(--font-a), sans-serif;
  letter-spacing:2px;
  background-color: var(--blue-a);
  color:var(--white);
}
tr:nth-child(even) {
  background-color: var(--grey-b);
}


/**/
textarea{
	resize:vertical;
}
textarea.form-control {
  min-height: 150px;
}
.form-control::-webkit-input-placeholder {color: var(--grey-c);}
.form-control:-ms-input-placeholder {color: var(--grey-c);}
.form-control::placeholder {color: var(--grey-c);}

::-webkit-scrollbar{width:10px;}
::-webkit-scrollbar-track{background:#ffffff;border-radius:5px;}
::-webkit-scrollbar-thumb{background:var(--blue-a);border-radius:5px;}