p {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 
    /*font-size: 9pt;*/
    font-size: 0.70em;
}

a {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 
    text-decoration: none;
    color: #475294;
    /*color: #0469b3;  */
    /*font-size: 9pt;*/
    font-size: 0.70em;
    cursor: pointer;
}

pre {
    font-size: 1.20em;
}

div.hr {
    height: 2px; 
    color: blue;
    background-color: blue;
    width: 100%;
    margin: 10px 0px 10px 0px;
}

a:visited {
    text-decoration: none
}

a:hover {
    text-decoration: underline;
}

p.mainBanner {
    font-size: 9pt;
    font-weight: bold;
    /*color: #ef8861;*/
}

p.boolImg {
    text-align: center;
}

p.boolImgHorz {
    text-align: left;
}

span.plain {
    font-weight: normal;
}

a.horzMenu {
    color: #293D6B;
    font-size: 9pt;
    cursor: pointer;
    /*font-weight: bold;*/
    /*font-weight: normal;
    color: #ffffff; */
}

hr {
    width: 100%; 
    text-align: left;/*this will align it for IE*/
    margin-left: 0; /*this will align it left for Mozilla*/
    margin-right: auto;
    height: 2px
}

h3 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #ef8861;
    font-weight: normal;
    padding-top: 0px;
    padding-bottom: 0px;
}

img.logo {
    width: 70px;
    height: 25px;
}

tr.altRow {
    background-color: #F9F9F9;
}

td {
    font: normal 0.9em Arial, Helvetica, FreeSans, sans-serif, helvetica;
    padding: 2px 4px 2px 4px;
    /*border: 1px solid #d7d7d7;*/
    border: 1px solid #AACCEE;
    border-collapse: collapse; 
}

td.title_nm {
    font-weight: bold;
    padding: 4px 0px 5px 10px;
    /*background-color: #EBF3FB; */
    background-color: #ECF2FB;
    text-align: left;
    border: 0px;
}

td.watermark_right {
    font-size: 0.75em;
    color: gray;
    /*background-color: #EBF3FB;*/
    background-color: #ECF2FB; /*  very light blue */
    text-align: right;
    border: 0px;
    padding: 0px 10px 0px 0px;
}

td a {
    font-size: 1em;
}

td.banner {
    font-weight: bold;
    padding: 3px 4px 3px 4px;
    /*background-color: #D6E2F5;  /* sky blue */
    /*background-color: #E5ECF9;  /* light sky blue */
    /*background-color: #ebf4f3; /* light green */
    /*background-color: #F6F8FB; /* very, very light blue */
    background-color: #D8DEEA;
    text-align: center;
}

td.banner_print {
    font-weight: bold;
    font-size: 16px;
    text-transform: uppercase;
    padding: 3px 4px 3px 4px;
    background-color: #D8DEEA;
    text-align: left;
}

td.header {
    text-align: center;
    padding: 0% 1% 0% 1%;
    background-color: #ECF2FB; /*  very light blue */
}

td.logo {
    font-weight: bold;
    /*background-color: #D6E2F5;*/
    background-color: #C8D7E3;
    text-align: right;
}

td.pageTitle {
    font-weight: bold;
    background-color: #EBF3FB; 
    text-align: center;
}

td.diagramThumb {
    text-align: center;
}

td.key {
    width: 150px;
    /*background-color: #ebf4f3; /* military light green*/
    background-color: #F8FFFE; /* very light green */
    /*background-color: #F4F9F4;  /* light yellowish-green*/
    vertical-align: top;
}

td.value {
    vertical-align: top;
    text-align: left;
}

td.PkCol {
    background-color: #fffded;
}

td.FkCol {
    /*background-color: #ebf4f3; /* greenish blue */
    background-color: #F8FFFE; /* very light green */
}

td.horzMenu {
    background-color: #C8D7E3;
    color: gray;
    text-align: center;
    padding: 2px 0px 3px 0px;
    border-width: 0px;
}

td.horzMenuFiller {
    width: 286px;
    background-color: #C8D7E3;
    color: #ffffff;
    border-width: 0px;
}

td.typeNum{text-align: right;}
td.typeDate{text-align: center;}
td.typeText{text-align: left;}
.inpTypeNum{text-align: right;}
.inpTypeDate{text-align: center;}
.inpTypeText{text-align: left;}

a.typeAction:hover{
   background-color: #AACCEE;
}

div.numpagsel{
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    background-color: #E9E9E7;
    border: thin #5C99CE solid;
    width: 20px;
    text-align: center;
    cursor: pointer;
}

div.numpag{
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    border: thin #E0EBFF solid;
    text-align: center;
    cursor: pointer;
}

table.flat {
    border-width: 1px;
    border-style: solid;
    border-color: #AACCEE;
    /*background-color: white; */
    border-collapse: collapse;
    width: 100%;
    margin: 0px 0px 8px 0px;
    /*background-color: #AACCEE;*/
}

table.horzMenu {
    border: solid #99AFC4;
    border-width: 0px 2px 2px 2px;
    border-collapse: collapse;
    /*background-color: #99AFC4;*/
    /*background-color: #ffffff;*/
    width: 100%;
}

table.logo {
    width: 100%;
    background-color: #99AFC4;
    font-size: 14px
}
tr.tbfoot{
    border: solid #99AFC4;
    border-width: 2px 2px 2px 2px;
    border-collapse: collapse;
    font-weight: bold;
    background-color: #EAEEEA;
}
td.tit_sup {
    font-weight: bold;
    /*background-color: #D6E2F5;*/
    background-color: #C8D7E3;
    color: #293D6B;
    text-align: left;
}

table.pageTitle {
    height: 28px;
    width: 100%;
    border-width: 2px 0px 2px 0px;
    border-style: solid;
    border-color: #AACCEE;
    border-collapse: collapse;
}

.item_link{
    cursor: pointer;
}

.err_inputs{
    font: normal 0.80em verdana, arial, helvetica;
    border: 1px solid red;
    width: 100%;
    color:red;
    background-color: bisque;
}
.err_inputs ul{
    padding-left: 20px;
}
.err_inputs ul li{
    padding-left: 0px;
}

.success_inputs{
    font: normal 0.80em verdana, arial, helvetica;
    border: 1px solid #255625;
    width: 100%;
    color: #fff;
    background-color: #398439;
    padding: 2px;
}
.success_inputs ul{
    padding-left: 20px;
}
.success_inputs ul li{
    padding-left: 0px;
}

form.form_unlogin{
    color: ghostwhite;
}
form.form_login{
    color: ghostwhite;
}
/*SORT*/
table.tablesorter tr .sortheader, table.tablesorter tfoot tr th {
    background-color: #e6EEEE;
    border: 1px solid #FFF;
    font-size: 8pt;
    padding: 4px;
}
table.flat tr .sortheader {
    background-image: url(../images/bg.gif);
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
}
table.flat tr .headerSortUp {
    background-image: url(../images/asc.gif);
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
}
table.flat tr .headerSortDown {
    background-image: url(../images/desc.gif);
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
}
table.flat tr .headerSortDown, table.flat tr .headerSortUp {
background-color: #8dbdd8;
}
/* Make Select2 boxes match Bootstrap3 heights: */
.select2-container--default .select2-results>.select2-results__options {
max-height: 300px;
font: normal 0.9em Arial, Helvetica, FreeSans, sans-serif, helvetica;
}

/* Toast notifications (usados en cobro contado) */
.toast {
display: none;
min-width: 260px;
margin-bottom: 8px;
padding: 10px 12px;
border-radius: 4px;
border: 1px solid #dfe3e6;
background: #ffffff;
color: #1f2d3d;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
font: normal 0.85em Arial, Helvetica, sans-serif;
}
.toast .toast-body {
margin: 0;
}
.toast-success {
background: #e6f4ea;
border-color: #b7e1c1;
color: #1e4620;
}
.toast-error {
background: #fdecea;
border-color: #f5c6cb;
color: #8a1f11;
}

/* Botones y modales reutilizables */
.btn-doc {
    font: normal 0.80em "Verdana", "Helvetica", sans-serif;
    padding: 4px 10px;
    border: 1px solid #8ca7c7;
    border-radius: 3px;
    background-color: #ECF2FB;
    color: #293D6B;
    cursor: pointer;
}
.btn-doc:hover {
    background-color: #d8e2f3;
}
.btn-doc--primary {
    background-color: #4d7bb5;
    color: #fff;
    border-color: #3f628e;
}
.btn-doc--primary:hover {
    background-color: #3f628e;
}

.modal-doc-backdrop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(41, 61, 107, 0.45);
    z-index: 9998;
}
.modal-doc {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    border: 1px solid #AACCEE;
    border-radius: 4px;
    width: 520px;
    max-width: 95%;
    z-index: 9999;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    font: normal 0.85em "Verdana", "Helvetica", sans-serif;
}
.modal-doc__header {
    padding: 10px 16px;
    border-bottom: 1px solid #ECF2FB;
    background-color: #F6F8FB;
}
.modal-doc__header h3 {
    margin: 0;
    font-size: 1em;
    color: #293D6B;
}
.modal-doc__close {
    float: right;
    cursor: pointer;
    font-size: 1.2em;
    color: #666;
}
.modal-doc__body {
    padding: 15px 16px 20px;
    max-height: 70vh;
    overflow-y: auto;
}
.modal-doc__form label {
    display: block;
    margin-top: 10px;
    font-weight: bold;
}
.modal-doc__form input[type="text"],
.modal-doc__form input[type="email"],
.modal-doc__form input[type="number"],
.modal-doc__form select {
    width: 100%;
    padding: 6px;
    box-sizing: border-box;
    font: inherit;
}
.modal-doc__actions {
    text-align: right;
    margin-top: 15px;
}

/* Modificaciones UI Refactor 2026 - Botones */
.btn {
    font-size: 12px !important; /* Reducido ~15% de 14px default */
    padding: 5px 10px !important; /* Reducido ~15% de 6px 12px */
}

.btn-lg {
    font-size: 15px !important; /* Reducido ~15% de 18px default */
    padding: 8px 13px !important; /* Reducido ~15% de 10px 16px */
}

.btn-grid-action {
    font-size: 10px !important; /* Reducido ~30% de 14px default */
    padding: 1px 5px !important; /* Padding minúsculo para no expandir la fila */
    line-height: 1.2 !important;
}