body.s3-public#cuerpo { background: #f8f8f8 !important; color: #374151; font-family: Arial, Helvetica, sans-serif; width: 100%; margin: 0; }
.s3-public-nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 70px; padding: 8px 24px; background: linear-gradient(to right, #fff 10%, #d5cd3d 100%); }
.s3-public-nav img { width: 150px; height: auto; }
.s3-public-nav a, .s3-public-route a { color: #125da9; }
.s3-public-route { margin-top: 20px; padding: 16px 3%; background: #dbdbdb; text-align: right; font-weight: 600; color: #125da9; }
.s3-public-heading { display: grid; grid-template-columns: 170px 1fr 80px; gap: 40px; align-items: center; padding: 40px 8%; min-height: 230px; }
.s3-public-heading img { width: 100%; height: auto; }
.s3-public-heading .s3-public-icon { width: 65px; max-height: 85px; object-fit: contain; }
.s3-public-heading h1 { color: #125da9; font-size: 28px; font-weight: 400; line-height: 1.3; text-align: center; margin: 0; }
.s3-public-tabs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; max-width: 1140px; margin: 0 auto 28px; padding: 0 16px; }
.s3-public-tabs a { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 64px; padding: 12px 16px; border: 1px solid #d6dfe8; background: #fff; color: #125da9; border-radius: 5px; text-decoration: none; }
.s3-public-tabs a[aria-current="page"] { background: #125da9; color: #fff; border-color: #125da9; }
.s3-public-tabs a:hover { background: #edf3f8; color: #125da9; }
.s3-public .divBuscador { width: 100% !important; background: #edf0f3; padding: 28px 0; }
.s3-public label, .s3-public .label-menu { color: #374151 !important; font-family: Arial, Helvetica, sans-serif; }
.s3-public #titleEntes, .s3-public h2, .s3-public h3, .s3-public h4 { color: #125da9; background: none; -webkit-text-fill-color: currentColor; font-family: Arial, Helvetica, sans-serif; }
.s3-public #titleEntes { font-size: 23px; line-height: 1.4; }
.s3-public #titleEntes b { font-family: inherit !important; }
.s3-public .form-control { min-height: 41px; border: 1px solid #d5d9de; border-radius: 4px; background: #fff; color: #374151; }
.s3-public .btnMenu, .s3-public .botonEnviar, .s3-public .botonAgregar { width: auto; min-height: 44px; height: auto; padding: 10px 18px; border: 1px solid #125da9; border-radius: 5px; background: #125da9; color: #fff; font: 500 16px/22px Arial, Helvetica, sans-serif; }
.s3-public .btnMenu:hover, .s3-public .botonEnviar:hover { background: #0c477f; }
.s3-public .contenedorTabla, .s3-public .graficas, .s3-public .modal-content { background: #fff; color: #374151; border: 1px solid #dce2e8; border-radius: 5px; padding: 20px; }
.s3-public .graficas { max-width: 100%; }
.s3-public table { color: #374151; background: #fff; }
.s3-public table th { background: #e9eef3; color: #125da9; }
.s3-public .contenedorTabla, .s3-public .dataTables_wrapper { max-width: 100%; overflow-x: auto; }
.s3-public footer { background: #eee; color: #666; border-top: 1px solid #ddd; margin-top: 40px; padding: 20px !important; }
.s3-public .footerText { color: #666; font-family: inherit; }
.s3-public footer i { font-style: normal; }
.s3-public .divSeparador, .s3-public .imgBottom { display: none; }
.s3-public .row > .col-2:has(.text-center:empty), .s3-public .row > .col-3:has(.text-right:empty) { display: none; }
.s3-public .row > .col-7.text-center { flex: 0 0 100%; max-width: 1100px; width: 100%; margin: 0 auto; }
.s3-public a:focus-visible, .s3-public button:focus-visible { outline: 3px solid #d5cd3d; outline-offset: 3px; }
@media (max-width: 767px) {
 .s3-public-route { text-align: left; font-size: 14px; }
 .s3-public-heading { grid-template-columns: 1fr 65px; gap: 24px; padding: 28px 24px; }
 .s3-public-heading > img:first-child { width: 150px; }
 .s3-public-heading h1 { grid-row: 2; grid-column: 1 / -1; font-size: 24px; }
 .s3-public-heading .s3-public-icon { grid-column: 2; grid-row: 1; }
 .s3-public-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .s3-public .divBuscador .pt-5 { padding-top: 16px !important; }
 .s3-public .modal-dialog { width: auto !important; max-width: calc(100% - 20px); margin: 10px; }
 .s3-public footer .col-7 { flex: 0 0 100%; max-width: 100%; }
}
.s3-public input, .s3-public select, .s3-public textarea, .s3-public button { font-family: Arial, Helvetica, sans-serif; }
.s3-public .divBuscador ul, .s3-public ul:has(#titleEntes) { list-style: none; padding-left: 0; }

.s3-public ul:has(#titleEntes) > li { list-style: none; }
