@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;600&display=swap');

body {
    background:#fff;
    color:#000;
    font-family:'Quicksand', sans-serif;
    font-size:10pt;
    padding:1px;
    margin:1px;
}

input[type=checkbox] {
    /* Double-sized Checkboxes */
    -ms-transform: scale(3); /* IE */
    -moz-transform: scale(3); /* FF */
    -webkit-transform: scale(3); /* Safari and Chrome */
    -o-transform: scale(3); /* Opera */
    transform: scale(3);
}

.border-box{
    box-sizing:border-box;
}

/*#region Window*/
.div-wrapper {}

.quicksand {
    font-family:'Quicksand';
}
.win{
    z-index: 10000;
    border:solid 1px gray;
    border-radius: 5px;
}
.win-title {
    background: #0158A3;
    color: #fff;
    padding: 2px 5px;
    text-align: left;
    border-radius:5px 5px 0px 0px;
}
.win-body {
    background: #fff;
    padding:10px;
    border-radius:0px 0px 5px 5px;
    max-height:85vh;
    overflow-y:auto;
}
.win-body-add {
    background: #fff;
    padding: 10px;
    border-radius: 0px 0px 5px 5px;
    max-height: 88vh;
    overflow-y: auto;
}
.win-center {
    z-index: 10000;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.btn-close {
    cursor: pointer;
    font-size: 30pt;
    color: #70E85D;
}
.win-error {
    z-index: 20000;
    width:500px;
}
.win-error-title {
    cursor:move;
}
.lbl-error {
    /*display: block;*/
    max-width: 90%;
    margin: auto;
    color: #0158A3;
}
.loading {
    width:30px;
}
/*#endregion */


/*#region Login*/
.btn-login {
    font-family:'Quicksand', sans-serif;
    width:120px;
    font-size:12pt;
    cursor: pointer;
    color: #fff;
    background: #0158A3;
    padding:10px 0px;
    border: 1px solid gray;
    border-radius: 5px;
    /*
    box-shadow: inset 1px 1px 2px rgba(255,255,255,.7), inset -2px -2px 2px rgba(0,0,0,.1), 2px 2px 5px rgba(0,0,0,.1);
        */
    text-align: center;
}
.lbl-title      {
    color: #0158A3;
    font-size: 24pt;
    font-family: 'Caveat', cursive;
}
.lbl-title-bar  {font-size: 14pt;}
.lbl-data       {color: #000;}
.lbl-data       {color: #000;}
.txt-data       {
    border:solid 1px gray;
    border-radius: 2px;
    padding:2px;
    background:#fff;
    color:#000;
}
.txt-login      {
    width:120px;
    font-size:12pt;
    padding:4px 3px;
}
.lbl-version {
    position: fixed;
    display: table;
    text-align:center;
    width: auto;
    bottom: 5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 200px;
}
/*#endregion */


/* #region generales */
.div-back {
    z-index: 1;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    bottom:0;
    left: 0;
    right:0;
    background-color: #000;
    opacity: 0.8;
    filter: alpha(opacity=80);
}

.toast {
    z-index: 1;
    display: table;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #000;
    opacity: 0.8;
    filter: alpha(opacity=80);
    border-radius: 5px;
    border: solid 1px silver;
    visibility: hidden;
}
    .toast span {color: white}


.hide   {display:none;}
.hidden {visibility:hidden;}

.table  {display:table;}
.row    {display:table-row;}
.col    {display:table-cell;}

.left   {text-align:left;}
.center {text-align:center;}
.right  {text-align:right;}
.top    {vertical-align:top;}
.middle {vertical-align:middle;}
.bottom {vertical-align:bottom;}

.auto   {margin:auto;}

.w-auto {width:auto;}
.w-25   {width:25%;}
.w-33   {width:33%;}
.w-50   {width:50%;}
.w-75   {width:75%;}
.w-90   {width: 90%;}
.w-100  {width:100%;}

.p-t-5  {padding-top:5px;}
.p-t-10 {padding-top:10px;}
.p-t-15 {padding-top:15px;}
.p-t-20 {padding-top:20px;}
.p-b-5  {padding-bottom:5px;}
.p-b-10 {padding-bottom:10px;}
.p-b-15 {padding-bottom:15px;}
.p-b-20 {padding-bottom:20px;}
.p-l-5  {padding-left:5px;}
.p-l-10 {padding-left:10px;}
.p-l-15 {padding-left:15px;}
.p-l-20 {padding-left:20px;}
.p-l-30 {padding-left:30px;}
.p-r-5  {padding-right:5px;}
.p-r-8  {padding-right: 8px;}
.p-r-10 {padding-right:10px;}
.p-r-15 {padding-right:15px;}
.p-r-20 {padding-right:20px;}
.p-r-30 {padding-right:30px;}

.m-t-04 {margin-top: 4px;}
.m-t-10 {margin-top:10px;}
.m-t-20 {margin-top:20px;}
.m-t-30 {margin-top:30px;}
.m-b-10 {margin-bottom:10px;}
.m-b-20 {margin-bottom:20px;}
.m-b-30 {margin-bottom:30px;}
.m-r-30 {margin-right:30px;}
.m-r-5  {margin-right:5px;}
.m-l-3  {margin-left: 3px;}
.m-l-5  {margin-left: 5px;}
.m-r-10 {margin-right:10px;}
.m-l-10 {margin-left:10px;}
.m-l-20 {margin-left:20px;}

.silver {background:silver;}

.pointer    {cursor:pointer;}
.bold       {font-weight:bold;}
.no-tran{
    text-decoration:none;
    text-transform:none;
}
.txt-black  {color:black}
.black      {background:#000;}
.gray       {background:gray;}
/* #endregion */


/*#region BarTopUsuario*/
.menu-bar {width:99%;margin:auto;background:#8CAADE}
.lbl-system {
    font-size: 16pt;
    font-family: 'Caveat', cursive;
    padding: 5px 15px;
    background: #8CAADE;
    color: #fff;
    text-shadow: 1px 1px 2px gray;
}
.lbl-user {
    font-size: 12pt;
    color: #fff;
    padding: 0px 5px;
    cursor: pointer;
    text-shadow: 1px 1px 2px gray;
}
.menu-user {
    z-index: 9999;
    position: absolute;
    background:#fff;
    display: table;
    right: 10px;
    width: 200px;
    border-radius: 2px;
    top: 36px;
    border: solid 1px gray;
}
.menu-itm-user {
    font-size:11pt;
    background: #8CAADE; 
    color:#fff;
    padding: 10px 10px;
    cursor: pointer;
    width: 200px;
}
    .menu-itm-user:hover {
        color: #000;
    }
/*#endregion */


/*#region BarTopMenuIcon*/
.menu-wrapper {
    width:99%;
    margin:auto;
}
.menu {
    width: 100%;
    border: solid 1px #0158A3;
    border-radius:2px;
    text-align:left;
}
.menu-itm {
    text-align:center;
    vertical-align:middle;
    font-size:10pt;
    color: #000;
    height:58px;
    cursor:pointer;
    padding:0px 15px;
}
    .menu-itm:hover {
        color: #0158A3;
    }
    .menu-itm p {
        margin:0px;
        padding:0px;
    }
    .menu-itm a {
        text-decoration:none;
        color:initial;
    }
.menu-itm-icon {
    font-size:24pt;
}
.menu-itm-icon-small {
    font-size: 18pt;
}
/*#endregion */


/*#region BarTopMenuMain*/
.menu-main {
    z-index: 9999;
    position: absolute;
    background: #fff;
    display: table;
    left: 10px;
    width: auto;
    border-radius: 2px;
    top: 100px;
    border: solid 1px gray;
}
.menu-itm-main {
    font-size:11pt;
    display:table-cell;
    background: #8CAADE;
    color: #fff;
    padding: 10px 15px;
    width: 200px;
    border-bottom:solid 1px gray;
}
    .menu-itm-main a{
        cursor:pointer;
        text-decoration:none;
        color:#fff;
    }
    .menu-itm-main a:hover {
        color:#000;
    }
.menu-itm-main-last {
    border-bottom:none;
    cursor:pointer;
}
    .menu-itm-main-last:hover {
        color:#000;
    }
/*#endregion */


/*#region MenuMovil*/
.menu-movil {
    left:auto;
    right: 10px;
    display: none;
}
.menu-movil-itm {
    text-align: center;
    vertical-align: middle;
    font-size: 10pt;
    color: #000;
    height: 58px;
    padding: 0px 15px;
}
.menu-movil-itm-icon {
    font-size:24pt;
    cursor:pointer;
}
    .menu-movil-itm-icon :hover {
        color: #0158A3;
    }
.col-movil-left {
    width:50%;
    text-align:left;
    padding-right:0px;
}
.col-movil-right {
    width:50%;
    text-align:right;
    padding-right:20px;
    padding-left:0px;
}
/*#endregion */


/* #region Modulos */
.win-data {
    /*overflow-y:auto;
    max-height: 90vh;*/
}
.m-title-find{
    width:100%;
    background:#fff;
}
.txt-find {
    width:200px;
    border:solid 1px gray;
    border-radius:2px;
    height:28px;
}
.btn-find {
    padding:0px;
    height:32px;
    margin-left:4px;
}
.m-title {
    width:99%;
    margin:auto;
    margin-top:4px;
    border-radius:0px;
    padding:10px 0px;
    font-size:14pt;
    font-weight:bold;
}
.grid-title-wrapper {
    width: 99%;
    margin: auto;
    background: #fff;
    border: solid 2px #0158A3;
    border-left: none;
    border-right:none;
    color: #000;
    padding: 10px 0px;
    border-radius: 0px;
}
.grid-title-header {
    font-weight:bold;
    
}
.grid-data-wrapper {
    width: 99%;
    height: 60vh;
    margin: auto;
    margin-top:1px;
    background: #fff;
    overflow-x:hidden;
    overflow-y:auto;
}
.grid-data-title {
    width: 100%;
    color: #000;
}
.grid-data-title-child {
    background:#000;
    color:#fff;
    border-collapse:unset;
    padding:10px 0px;
}
.grid-data {
    width:100%;
    border-left:none;
    border-right:none;
}
.grid-data-item {
    padding-top:10px;
    padding-bottom:10px;
    /*color:#000;*/
}
.grid-data-item-chk{
    padding-top:14px;
}
.grid-data-normal {
    background: #fff;
    color: #000;
    font-weight:normal;
}
.grid-data-selected {
    background:#333333;
    color:#fff;
}
.grid-data-alternative {
    background: #EBEBEB;
    color:#000;
}

.grid-data-title-cobro {
    color: #fff;
}

.grid-title-wrapper-cobro {
    background: #0158A3;
    width: 100%;
}
.grid-item-delete {
    color: red;
}
    .grid-item-delete:disabled {
        color:gray;
    }

.btn-add {
    position: fixed;
    bottom:20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: 36pt;
    color: #0158A3;
    cursor: pointer;
    min-width:32px;
    min-height:32px;
    text-shadow:#666 1px 1px;
}
    .btn-add:hover {
        color: #8CAADE;
    }
.btn-to-bottom {
    color:black;
    top:53px;
    right:0px;
    left:unset;
    bottom:unset;
    min-width:32px;
    min-height:32px;
    font-size:24pt;
}
    .btn-to-bottom:hover {
        color: gray;
    }

.btn-to-top {
    top: unset;
    right: 0px;
    left: unset;
    bottom: 13px;
}

.col-record-l {
    display:table-cell;
    padding:5px 10px;
    font-size:12pt;
}
.col-record-l-0{
    padding: 5px 0px;
}
.col-record-r {
    display: table-cell;
    padding: 5px 10px;
    font-size: 12pt;    
}
.col-record-r-0     {padding:5px 0px;}
.col-record-120     {min-width:120px;}
.lbl-record {
    color:#000;
    font-size:11pt;
}
.txt-record {
    height:23px;
    font-size:11pt;
    border:solid 1px gray;
    border-radius:2px;
}
.txt-record-50      {width:250px;}
.txt-record-100     {width:500px;}
.txt-record-110     {width:110px;}
.txt-record-120     {width:120px;}
.txt-record-200     {width:200px;}
.txt-record-360     {width:360px;}
.txt-record-query   {width:400px;}
.txt-10             {font-size:10pt;}
.btn-record {
    padding: 0px;
    height: 40px;
    border-radius: 5px;
    /*
    color: #0158A3;
    background: #70E85D;
        */
}
.btn-detail {background:#000;color:#fff;}
.txt-gray   {color:gray;}
.txt-white  {color:#fff;}
.lbl-wait   {
    color: gray;
    font-size: 10pt;
}
.lbl-required {color: red;}
.txt-required {border-color: red;}
.lbl-master   {color: #0158A3;}
.txt-saved {
    display:block;
    color: darkgreen;
    font-weight:bold; 
    background-color:transparent;
    border: none;
}
.list-master {
    color: #0158A3;
    font-family: 'Quicksand';
    font-size: 12pt;
    padding: 4px 2px;
    width: 200px;
}
.ck-enabled {
    margin:12px 12px;
}

.list-general {
    font-family: 'Quicksand';
    font-size: 12pt;
    padding:4px 2px;
    height:auto;
}
.list-zipcode {
   margin-left:10px;
   width:50%; 
}
.arrow-section {
    font-size: 26pt;
    color: #0158A3;
    cursor:pointer;
}
.lbl-section {
    color: #0158A3;
}
.div-is-hotel {
    display:inline-block;
    padding-left:10px;
}
.btn-link{
    font-size:24pt;
    color:gray;
    cursor:pointer;
}
.btn-link-ok{
    color: darkgreen;
}
.btn-link-no {
    color: red;
}
.btn-link-no-pointer {
    cursor: auto;
}
.txt-multiline {
    height: 40px;
    font-family: 'Quicksand';
}
.txt-credit-date{
    margin-left:6px;
}
.txt-addon {}

/* #endregion */


/* #region reserva */
.res-col-title {
    display:table-cell;
}
.res-txt-title {
    display:block;
    margin:2px 5px;
    width:105px;
}
.res-lbl-title {
    margin:2px 5px;
    width:90px;
}
.res-col-title-blank {}
.res-btn-title {
    height: 30px;
    width: 110px;
    margin: 2px 5px;
}
    .res-btn-title:disabled {
        background:gray;
        color:#fff;
    }
.res-table {
    display:table;
    margin:auto;
    margin-top:10px;
    border-top: solid 4px #000;
}
.res-table-hide{
    display:none;
}
.res-grid-data-wrapper  {height: 50vh;}
.res-win                {width:680px;}
.res-txt-find           {}
.res-price-grid         {}
.res-btn-find           {}
.lbl-currency-m         {display:none;}
.lbl-currency-pc        {}
.res-txt-time           {width:124px}
.res-table-total        {display:table;margin:auto;margin-top:20px;}
.lbl-edit-res           {font-size:14pt;font-weight:bold;color:#000;}
.grid-data-res          {margin-top: 10px;border-top: solid 2px #0158A3;}
/* #endregion */


/* #region cobro */
.cobro-txt-find         {height:28px}
.cobro-list-find        {box-sizing:content-box;height:22px}
.grid-min-customer      {min-width: 150px;}
.cobro-col-hide1        {}
.cobro-col-hide2        {}
.btn-file-hide          {width:0px;height:0px;font-size:0px;visibility:hidden}
.btn-up-down            {font-size:30pt;color:#0158A3;cursor:pointer;margin-right:30px}
.btn-up-down-disabled   {color:gray;cursor:not-allowed}
.cobro-win              {width:730px}
.grid-detail {
    z-index: 10000;
    position: fixed;
    padding-bottom:70px;
    width:99%;
    min-height:85%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background:#fff;
    border: solid 3px gray;
    border-radius:5px;

}
.div-detail-cobro {
    max-height:85vh;
}
.div-detail-grid {
    max-height:80vh;
    overflow-y:auto;
}
/* #endregion*/

/* #region poliza */
.btn-policy         {background: #70E85D;color: #0158A3}
.txt-policy         {font-size:11pt;border:solid 1px gray;border-radius:2px;}
.grid-data-policy   {width:auto;margin:auto;}
.list-policy        {height:27px;box-sizing:content-box;}
.txt-filter         {height:24px;}
.txt-detail-policy  {width:366px;}
.hide-first-policy  {display:table-cell;width:initial}
.hide-second-policy {display:table-cell;width:initial}
.min-width-customer {box-sizing:border-box;min-width:150px;padding-right:5px}
.min-width-150      {box-sizing:border-box;min-width:150px}
.width-140          {box-sizing:border-box;min-width:140px;max-width:140px;width:140px}
.width-120          {box-sizing:border-box;min-width:120px;max-width:120px;width:120px}
.width-100          {box-sizing:border-box;min-width:100px;max-width:100px;width:100px}
.width-80           {box-sizing:border-box;min-width:80px;max-width:80px;width:80px}
.width-70           {box-sizing:border-box;min-width:70px;max-width:70px;width:70px}
.width-60           {box-sizing:border-box;min-width:60px;max-width:60px;width:60px}
.width-40           {box-sizing:border-box;min-width:40px;max-width:40px;width:40px}
.width-30           {box-sizing:border-box;min-width:30px;max-width:30px;width:30px}
.width-20           {box-sizing:border-box;min-width:20px;max-width:20px;width:20px}
.width-10           {box-sizing:border-box;min-width:10px;max-width:10px;width:10px}
.width-0            {box-sizing:border-box;min-width:0px;max-width:0px;width:0px;font-size:0pt;}
.height-40          {height:40px}
.txt-total-policy   {font-size:12pt}
.border             {border:solid 1px silver}
.grid-filter-policy {background:#0158A3;padding:4px 0px;border-top:solid 1px gray; border-bottom:solid 1px gray}
.grid-filter-policy span {color: #fff;}
.total-equal        {color: white}
.total-not-equal    {color: #ff5733}
.btn-save-policy    {background:#ff5733;color:#fff;}
.btn-export {
    font-size: 36pt;
    color: darkgreen;
    cursor: pointer;
    min-width: 32px;
    min-height: 32px;
}

    .btn-export:hover {
        color: green;
    }
/* #endregion */

/* #region report */
.grid-title-report {
    display: table;
    width: auto;
    margin: auto;
    background: silver;
    color: black;
    border: solid 1px gray;
    border-bottom: none;
    font-size:10pt;
    padding:10px 0px;
}
.grid-title-report-col {
    padding: 10px 0px;
    font-weight: bold;
}
.icon-excel-report {
    font-size:24pt;
    color:darkgreen;
    cursor:pointer;
}
/* #endregion*/


/*** RESPONSIVE ***/
@media screen and (max-width: 1024px) {

    .hide-first-policy  {display: none;width:0px}
    .hide-second-policy {display: none;width:0px}

}


@media screen and (max-width: 768px) {

    /*** BarTop Menu Principal ***/
    .menu-itm-main {
        font-size: 1.5em;
    }

    /*** BarTop Menu Icon ***/
    .menu {
        display: none;
    }

    /*** BarTop Usuario ***/
    .lbl-user {
        font-size: 1em;
    }

    .menu-itm-user {
        font-size: 1.5em;
    }

    /* Menu Movil */
    .menu-movil {
        display: table;
    }

    /*** Modulos ***/
    .col-record-l {
        display: table;
    }

    .col-record-r {
        display: table;
    }

    .txt-record {
        width: 480px;
    }

    .txt-record-query {
        width: 70%;
    }

    .div-is-hotel {
        display: inline-block;
        padding-left: 0px;
        padding-top: 10px;
    }

    .btn-link {
        display: table;
        position: relative;
        left: 50%;
        margin-left: -20px;
        margin-top: -14px;
    }

    .list-zipcode {
        margin-left: 0px;
    }

    .txt-addon {
        margin-left: 0px;
        margin-top: 10px;
    }

    /* reservas */
    .res-col-title {
        display: table;
        width: 99%;
        text-align: left;
        margin-top: 10px;
    }

    .res-txt-title {
        margin: 2px 5px;
        width: 480px;
        text-align: left;
    }

    .res-lbl-title {
        margin: 2px 5px;
        width: 90px;
    }

    .res-btn-title {
        margin-top: 10px;
        height: 40px;
        width: 99%;
    }

    .res-col-title-blank {
        display: none;
    }

    .res-win {
        width: auto;
        min-width: 90vw;
    }

    .cobro-win {
        width: auto;
        min-width: 90vw;
    }

    .res-txt-find {
        width: 150px
    }

    .res-price-grid {
        display: none;
    }

    .res-table {
        width: 80vw;
    }

    .lbl-currency-m {
        display: initial;
    }

    .lbl-currency-pc {
        display: none;
    }

    .cobro-col-hide1 {
        display: none;
    }

}

@media screen and (max-width: 580px) {
    .txt-record {
        width: 390px;
    }

    .res-price-grid {
        display: none;
    }

    .res-btn-find {
        width: 100px
    }

    .cobro-win {
        max-width:99%;
    }

    .cobro-col-hide2 {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    .txt-record {
        width: 320px;
    }
}

@media screen and (max-width: 480px) {
    .txt-record {
        width: 320px;
    }
}

@media screen and (max-width: 414px) {
    .txt-record {
        width: 300px;
    }

    .win-error {
        width: 400px;
    }
}

@media screen and (max-width: 384px) {
    .lbl-system {
        font-size: 1.2em;
    }

    .col-movil-left {
        padding-left: 10px;
    }

    .txt-record {
        width: 260px;
    }

    .win-error {
        width: 350px;
    }
}

@media screen and (max-width: 320x) {
    .win-error {
        width: 300px;
    }
}



