/* ==========================================================================
   bs3-compat.css — Capa de compatibilidad Bootstrap 3 → Bootstrap 5.3
   Se carga JUSTO DESPUÉS de bootstrap 5 y ANTES de los CSS del tema.
   Objetivo: que las vistas escritas para BS3 sigan funcionando mientras se migran.
   Cuando una vista se migra a clases nativas de BS5, deja de depender de esto.
   ========================================================================== */

/* ---------- Tipografía / reboot: comportamiento de BS3 -------------------- */
a { text-decoration: none; }
a:hover, a:focus { text-decoration: underline; }
.btn:hover, .btn:focus, .nav a:hover, .dropdown-menu a:hover, .pagination a:hover { text-decoration: none; }
label { font-weight: 700; margin-bottom: 5px; max-width: 100%; }
.hidden { display: none !important; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.center-block { display: block; margin-left: auto; margin-right: auto; }
.pull-left { float: left !important; }
.pull-right { float: right !important; }
.page-header { padding-bottom: 9px; margin: 40px 0 20px; border-bottom: 1px solid #eee; }
.list-inline { padding-left: 0; margin-left: -5px; list-style: none; }
.list-inline > li { display: inline-block; padding-left: 5px; padding-right: 5px; }
.dl-horizontal dt { float: left; width: 160px; clear: left; text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dl-horizontal dd { margin-left: 180px; }

/* ---------- Tipografía base de BS3 (BS5 usa 16px y otros márgenes) -------- */
body { font-size: 14px; line-height: 1.42857143; color: #333; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-weight: 500; line-height: 1.1; }
h1, .h1, h2, .h2, h3, .h3 { margin-top: 20px; margin-bottom: 10px; }
h4, .h4, h5, .h5, h6, .h6 { margin-top: 10px; margin-bottom: 10px; }
h1, .h1 { font-size: 36px; } h2, .h2 { font-size: 30px; } h3, .h3 { font-size: 24px; }
h4, .h4 { font-size: 18px; } h5, .h5 { font-size: 14px; } h6, .h6 { font-size: 12px; }
p { margin: 0 0 10px; }
ul, ol { margin-top: 0; margin-bottom: 10px; padding-left: 40px; }
ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
small, .small { font-size: 85%; }
.lead { font-size: 21px; font-weight: 300; margin-bottom: 20px; }
hr { margin-top: 20px; margin-bottom: 20px; border: 0; border-top: 1px solid #eee; opacity: 1; }
dl { margin-top: 0; margin-bottom: 20px; }
dt, dd { line-height: 1.42857143; }
blockquote { padding: 10px 20px; margin: 0 0 20px; font-size: 17.5px; border-left: 5px solid #eee; }
.btn { font-size: 14px; line-height: 1.42857143; padding: 6px 12px; border-radius: 4px; }
.btn-sm { padding: 5px 10px; font-size: 12px; line-height: 1.5; border-radius: 3px; }
.btn-lg { padding: 10px 16px; font-size: 18px; line-height: 1.3333333; border-radius: 6px; }
.form-control { font-size: 14px; line-height: 1.42857143; padding: 6px 12px; height: 34px; border-radius: 4px; }
textarea.form-control { height: auto; }
.table { margin-bottom: 20px; }
.table > :not(caption) > * > * { padding: 8px; line-height: 1.42857143; }
.alert { padding: 15px; margin-bottom: 20px; border-radius: 4px; }
.navbar { min-height: 50px; margin-bottom: 20px; }
.dropdown-menu { font-size: 14px; min-width: 160px; padding: 5px 0; }
.modal-title { margin: 0; line-height: 1.42857143; }
.modal-header, .modal-body, .modal-footer { padding: 15px; }
.badge { font-size: 12px; font-weight: 700; line-height: 1; padding: 3px 7px; border-radius: 10px; }
/* ---------- Contenedor y gutter de BS3 (30px) ------------------------------ */
.container, .container-fluid { padding-left: 15px; padding-right: 15px; }
.container { max-width: none; }
@media (min-width: 768px) { .container { max-width: 750px; } }
@media (min-width: 992px) { .container { max-width: 970px; } }
@media (min-width: 1200px) { .container { max-width: 1170px; } }
.row { --bs-gutter-x: 30px; --bs-gutter-y: 0; margin-left: -15px; margin-right: -15px; }
.row > * { padding-left: 15px; padding-right: 15px; }

/* Clearfix de BS3: estos contenedores "envolvían" a sus hijos flotantes */
.clearfix::before, .clearfix::after, .dl-horizontal dd::before, .dl-horizontal dd::after,
.container::before, .container::after, .container-fluid::before, .container-fluid::after,
.form-horizontal .form-group::before, .form-horizontal .form-group::after,
.btn-toolbar::before, .btn-toolbar::after, .nav::before, .nav::after,
.navbar:has(.navbar-header)::before, .navbar:has(.navbar-header)::after, .navbar-header::before, .navbar-header::after,
.panel-body::before, .panel-body::after, .pager::before, .pager::after { content: " "; display: table; }
.clearfix::after, .dl-horizontal dd::after, .container::after, .container-fluid::after,
.form-horizontal .form-group::after, .btn-toolbar::after, .nav::after, .navbar:has(.navbar-header)::after,
.navbar-header::after, .panel-body::after, .pager::after { clear: both; }

/* Estados .in de BS3 (BS5 usa .show) — el JS también los convierte */
.fade.in { opacity: 1; }
.collapse.in { display: block; }
.tab-content > .tab-pane.in.active { display: block; }

/* ---------- Grilla ----------------------------------------------------------
   Emulamos la grilla de BS3 tal cual: .row en bloque con clearfix y columnas
   flotantes (xs siempre; sm/md/lg desde 768/992/1200). Así se mantienen los
   márgenes colapsados, los <a> que envuelven columnas, los .clearfix, etc.
   Una fila nueva escrita en BS5 puede volver a flex con .d-flex */
.row { display: block; }
.row::before, .row::after { content: " "; display: table; }
.row::after { clear: both; }
/* BS5 le pone padding y margin-top 0 a TODOS los hijos de .row; BS3 solo a las columnas */
.row > :where(:not([class*="col-"]):not(.container):not(.container-fluid)) { padding-left: 0; padding-right: 0; }
.row > :where(h1, h2, h3) { margin-top: 20px; }
.row > :where(h4, h5, h6) { margin-top: 10px; }
[class*="col-xs-"], [class*="col-sm-"], [class*="col-md-"], [class*="col-lg-"] { position: relative; min-height: 1px; padding-left: 15px; padding-right: 15px; }
[class*="col-xs-"] { float: left; }
@media (min-width: 768px) { [class*="col-sm-"] { float: left; } }
@media (min-width: 992px) { [class*="col-md-"] { float: left; } }
@media (min-width: 1200px) { [class*="col-lg-"] { float: left; } }
/* Anulamos los breakpoints de BS5 para sm/md/lg (576/768/992): las vistas BS3 esperan 768/992/1200 */
@media (min-width:576px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{flex:0 0 auto;width:100%}}
@media (min-width:768px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{flex:0 0 auto;width:100%}}
@media (min-width:992px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{flex:0 0 auto;width:100%}}
/* xs de BS3 = sin prefijo en BS5 */
.col-xs-1{flex:0 0 auto;width:8.333333%}
.col-xs-2{flex:0 0 auto;width:16.666667%}
.col-xs-3{flex:0 0 auto;width:25.0%}
.col-xs-4{flex:0 0 auto;width:33.333333%}
.col-xs-5{flex:0 0 auto;width:41.666667%}
.col-xs-6{flex:0 0 auto;width:50.0%}
.col-xs-7{flex:0 0 auto;width:58.333333%}
.col-xs-8{flex:0 0 auto;width:66.666667%}
.col-xs-9{flex:0 0 auto;width:75.0%}
.col-xs-10{flex:0 0 auto;width:83.333333%}
.col-xs-11{flex:0 0 auto;width:91.666667%}
.col-xs-12{flex:0 0 auto;width:100.0%}
.col-xs-offset-0{margin-left:0.0%}
.col-xs-offset-1{margin-left:8.333333%}
.col-xs-offset-2{margin-left:16.666667%}
.col-xs-offset-3{margin-left:25.0%}
.col-xs-offset-4{margin-left:33.333333%}
.col-xs-offset-5{margin-left:41.666667%}
.col-xs-offset-6{margin-left:50.0%}
.col-xs-offset-7{margin-left:58.333333%}
.col-xs-offset-8{margin-left:66.666667%}
.col-xs-offset-9{margin-left:75.0%}
.col-xs-offset-10{margin-left:83.333333%}
.col-xs-offset-11{margin-left:91.666667%}
/* Re-emitimos sm/md/lg/xl/xxl DESPUÉS de xs para que ganen en su breakpoint.
   sm/md/lg usan los breakpoints de BS3 (768/992/1200) para que las vistas viejas
   se comporten igual que antes; xl/xxl quedan como en BS5. */
@media (min-width:768px){
.col-sm-1{flex:0 0 auto;width:8.333333%}
.col-sm-2{flex:0 0 auto;width:16.666667%}
.col-sm-3{flex:0 0 auto;width:25.0%}
.col-sm-4{flex:0 0 auto;width:33.333333%}
.col-sm-5{flex:0 0 auto;width:41.666667%}
.col-sm-6{flex:0 0 auto;width:50.0%}
.col-sm-7{flex:0 0 auto;width:58.333333%}
.col-sm-8{flex:0 0 auto;width:66.666667%}
.col-sm-9{flex:0 0 auto;width:75.0%}
.col-sm-10{flex:0 0 auto;width:83.333333%}
.col-sm-11{flex:0 0 auto;width:91.666667%}
.col-sm-12{flex:0 0 auto;width:100.0%}
.col-sm{flex:1 0 0%}
.col-sm-offset-0{margin-left:0.0%}
.offset-sm-0{margin-left:0.0%}
.col-sm-offset-1{margin-left:8.333333%}
.offset-sm-1{margin-left:8.333333%}
.col-sm-offset-2{margin-left:16.666667%}
.offset-sm-2{margin-left:16.666667%}
.col-sm-offset-3{margin-left:25.0%}
.offset-sm-3{margin-left:25.0%}
.col-sm-offset-4{margin-left:33.333333%}
.offset-sm-4{margin-left:33.333333%}
.col-sm-offset-5{margin-left:41.666667%}
.offset-sm-5{margin-left:41.666667%}
.col-sm-offset-6{margin-left:50.0%}
.offset-sm-6{margin-left:50.0%}
.col-sm-offset-7{margin-left:58.333333%}
.offset-sm-7{margin-left:58.333333%}
.col-sm-offset-8{margin-left:66.666667%}
.offset-sm-8{margin-left:66.666667%}
.col-sm-offset-9{margin-left:75.0%}
.offset-sm-9{margin-left:75.0%}
.col-sm-offset-10{margin-left:83.333333%}
.offset-sm-10{margin-left:83.333333%}
.col-sm-offset-11{margin-left:91.666667%}
.offset-sm-11{margin-left:91.666667%}
}
@media (min-width:992px){
.col-md-1{flex:0 0 auto;width:8.333333%}
.col-md-2{flex:0 0 auto;width:16.666667%}
.col-md-3{flex:0 0 auto;width:25.0%}
.col-md-4{flex:0 0 auto;width:33.333333%}
.col-md-5{flex:0 0 auto;width:41.666667%}
.col-md-6{flex:0 0 auto;width:50.0%}
.col-md-7{flex:0 0 auto;width:58.333333%}
.col-md-8{flex:0 0 auto;width:66.666667%}
.col-md-9{flex:0 0 auto;width:75.0%}
.col-md-10{flex:0 0 auto;width:83.333333%}
.col-md-11{flex:0 0 auto;width:91.666667%}
.col-md-12{flex:0 0 auto;width:100.0%}
.col-md{flex:1 0 0%}
.col-md-offset-0{margin-left:0.0%}
.offset-md-0{margin-left:0.0%}
.col-md-offset-1{margin-left:8.333333%}
.offset-md-1{margin-left:8.333333%}
.col-md-offset-2{margin-left:16.666667%}
.offset-md-2{margin-left:16.666667%}
.col-md-offset-3{margin-left:25.0%}
.offset-md-3{margin-left:25.0%}
.col-md-offset-4{margin-left:33.333333%}
.offset-md-4{margin-left:33.333333%}
.col-md-offset-5{margin-left:41.666667%}
.offset-md-5{margin-left:41.666667%}
.col-md-offset-6{margin-left:50.0%}
.offset-md-6{margin-left:50.0%}
.col-md-offset-7{margin-left:58.333333%}
.offset-md-7{margin-left:58.333333%}
.col-md-offset-8{margin-left:66.666667%}
.offset-md-8{margin-left:66.666667%}
.col-md-offset-9{margin-left:75.0%}
.offset-md-9{margin-left:75.0%}
.col-md-offset-10{margin-left:83.333333%}
.offset-md-10{margin-left:83.333333%}
.col-md-offset-11{margin-left:91.666667%}
.offset-md-11{margin-left:91.666667%}
}
@media (min-width:1200px){
.col-lg-1{flex:0 0 auto;width:8.333333%}
.col-lg-2{flex:0 0 auto;width:16.666667%}
.col-lg-3{flex:0 0 auto;width:25.0%}
.col-lg-4{flex:0 0 auto;width:33.333333%}
.col-lg-5{flex:0 0 auto;width:41.666667%}
.col-lg-6{flex:0 0 auto;width:50.0%}
.col-lg-7{flex:0 0 auto;width:58.333333%}
.col-lg-8{flex:0 0 auto;width:66.666667%}
.col-lg-9{flex:0 0 auto;width:75.0%}
.col-lg-10{flex:0 0 auto;width:83.333333%}
.col-lg-11{flex:0 0 auto;width:91.666667%}
.col-lg-12{flex:0 0 auto;width:100.0%}
.col-lg{flex:1 0 0%}
.col-lg-offset-0{margin-left:0.0%}
.offset-lg-0{margin-left:0.0%}
.col-lg-offset-1{margin-left:8.333333%}
.offset-lg-1{margin-left:8.333333%}
.col-lg-offset-2{margin-left:16.666667%}
.offset-lg-2{margin-left:16.666667%}
.col-lg-offset-3{margin-left:25.0%}
.offset-lg-3{margin-left:25.0%}
.col-lg-offset-4{margin-left:33.333333%}
.offset-lg-4{margin-left:33.333333%}
.col-lg-offset-5{margin-left:41.666667%}
.offset-lg-5{margin-left:41.666667%}
.col-lg-offset-6{margin-left:50.0%}
.offset-lg-6{margin-left:50.0%}
.col-lg-offset-7{margin-left:58.333333%}
.offset-lg-7{margin-left:58.333333%}
.col-lg-offset-8{margin-left:66.666667%}
.offset-lg-8{margin-left:66.666667%}
.col-lg-offset-9{margin-left:75.0%}
.offset-lg-9{margin-left:75.0%}
.col-lg-offset-10{margin-left:83.333333%}
.offset-lg-10{margin-left:83.333333%}
.col-lg-offset-11{margin-left:91.666667%}
.offset-lg-11{margin-left:91.666667%}
}
@media (min-width:1200px){
.col-xl-1{flex:0 0 auto;width:8.333333%}
.col-xl-2{flex:0 0 auto;width:16.666667%}
.col-xl-3{flex:0 0 auto;width:25.0%}
.col-xl-4{flex:0 0 auto;width:33.333333%}
.col-xl-5{flex:0 0 auto;width:41.666667%}
.col-xl-6{flex:0 0 auto;width:50.0%}
.col-xl-7{flex:0 0 auto;width:58.333333%}
.col-xl-8{flex:0 0 auto;width:66.666667%}
.col-xl-9{flex:0 0 auto;width:75.0%}
.col-xl-10{flex:0 0 auto;width:83.333333%}
.col-xl-11{flex:0 0 auto;width:91.666667%}
.col-xl-12{flex:0 0 auto;width:100.0%}
.col-xl{flex:1 0 0%}
.col-xl-offset-0{margin-left:0.0%}
.offset-xl-0{margin-left:0.0%}
.col-xl-offset-1{margin-left:8.333333%}
.offset-xl-1{margin-left:8.333333%}
.col-xl-offset-2{margin-left:16.666667%}
.offset-xl-2{margin-left:16.666667%}
.col-xl-offset-3{margin-left:25.0%}
.offset-xl-3{margin-left:25.0%}
.col-xl-offset-4{margin-left:33.333333%}
.offset-xl-4{margin-left:33.333333%}
.col-xl-offset-5{margin-left:41.666667%}
.offset-xl-5{margin-left:41.666667%}
.col-xl-offset-6{margin-left:50.0%}
.offset-xl-6{margin-left:50.0%}
.col-xl-offset-7{margin-left:58.333333%}
.offset-xl-7{margin-left:58.333333%}
.col-xl-offset-8{margin-left:66.666667%}
.offset-xl-8{margin-left:66.666667%}
.col-xl-offset-9{margin-left:75.0%}
.offset-xl-9{margin-left:75.0%}
.col-xl-offset-10{margin-left:83.333333%}
.offset-xl-10{margin-left:83.333333%}
.col-xl-offset-11{margin-left:91.666667%}
.offset-xl-11{margin-left:91.666667%}
}
@media (min-width:1400px){
.col-xxl-1{flex:0 0 auto;width:8.333333%}
.col-xxl-2{flex:0 0 auto;width:16.666667%}
.col-xxl-3{flex:0 0 auto;width:25.0%}
.col-xxl-4{flex:0 0 auto;width:33.333333%}
.col-xxl-5{flex:0 0 auto;width:41.666667%}
.col-xxl-6{flex:0 0 auto;width:50.0%}
.col-xxl-7{flex:0 0 auto;width:58.333333%}
.col-xxl-8{flex:0 0 auto;width:66.666667%}
.col-xxl-9{flex:0 0 auto;width:75.0%}
.col-xxl-10{flex:0 0 auto;width:83.333333%}
.col-xxl-11{flex:0 0 auto;width:91.666667%}
.col-xxl-12{flex:0 0 auto;width:100.0%}
.col-xxl{flex:1 0 0%}
.col-xxl-offset-0{margin-left:0.0%}
.offset-xxl-0{margin-left:0.0%}
.col-xxl-offset-1{margin-left:8.333333%}
.offset-xxl-1{margin-left:8.333333%}
.col-xxl-offset-2{margin-left:16.666667%}
.offset-xxl-2{margin-left:16.666667%}
.col-xxl-offset-3{margin-left:25.0%}
.offset-xxl-3{margin-left:25.0%}
.col-xxl-offset-4{margin-left:33.333333%}
.offset-xxl-4{margin-left:33.333333%}
.col-xxl-offset-5{margin-left:41.666667%}
.offset-xxl-5{margin-left:41.666667%}
.col-xxl-offset-6{margin-left:50.0%}
.offset-xxl-6{margin-left:50.0%}
.col-xxl-offset-7{margin-left:58.333333%}
.offset-xxl-7{margin-left:58.333333%}
.col-xxl-offset-8{margin-left:66.666667%}
.offset-xxl-8{margin-left:66.666667%}
.col-xxl-offset-9{margin-left:75.0%}
.offset-xxl-9{margin-left:75.0%}
.col-xxl-offset-10{margin-left:83.333333%}
.offset-xxl-10{margin-left:83.333333%}
.col-xxl-offset-11{margin-left:91.666667%}
.offset-xxl-11{margin-left:91.666667%}
}

/* ---------- Visibilidad responsive de BS3 (breakpoints de BS3) ------------ */
@media (max-width: 767.98px) { .hidden-xs { display: none !important; } }
@media (min-width: 768px) and (max-width: 991.98px) { .hidden-sm { display: none !important; } }
@media (min-width: 992px) and (max-width: 1199.98px) { .hidden-md { display: none !important; } }
@media (min-width: 1200px) { .hidden-lg { display: none !important; } }
.visible-xs, .visible-sm, .visible-md, .visible-lg { display: none !important; }
@media (max-width: 767.98px) { .visible-xs { display: block !important; } }
@media (min-width: 768px) and (max-width: 991.98px) { .visible-sm { display: block !important; } }
@media (min-width: 992px) and (max-width: 1199.98px) { .visible-md { display: block !important; } }
@media (min-width: 1200px) { .visible-lg { display: block !important; } }
@media print { .hidden-print { display: none !important; } }

/* ---------- Imágenes -------------------------------------------------------- */
.img-responsive { display: block; max-width: 100%; height: auto; }
.img-circle { border-radius: 50%; }
.img-rounded { border-radius: 6px; }
.thumbnail { display: block; padding: 4px; margin-bottom: 20px; line-height: 1.42857; background-color: #fff; border: 1px solid #ddd; border-radius: 4px; }
.thumbnail > img, .thumbnail a > img { display: block; max-width: 100%; height: auto; margin-left: auto; margin-right: auto; }
.thumbnail .caption { padding: 9px; color: #333; }

/* ---------- Botones --------------------------------------------------------- */
.btn-xs { padding: 1px 5px; font-size: 12px; line-height: 1.5; border-radius: 3px; }
.btn-default { color: #333; background-color: #fff; border-color: #ccc; }
.btn-default:hover, .btn-default:focus, .btn-default.active, .open > .btn-default.dropdown-toggle, .show > .btn-default.dropdown-toggle { color: #333; background-color: #e6e6e6; border-color: #adadad; }
.btn-block { display: block; width: 100%; }
.btn-block + .btn-block { margin-top: 5px; }
.caret { display: inline-block; width: 0; height: 0; margin-left: 2px; vertical-align: middle; border-top: 4px dashed; border-right: 4px solid transparent; border-left: 4px solid transparent; }
.close { float: right; font-size: 21px; font-weight: 700; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: .2; background: transparent; border: 0; padding: 0; cursor: pointer; }
.close:hover, .close:focus { opacity: .5; text-decoration: none; }

/* ---------- Etiquetas y badges --------------------------------------------- */
.label { display: inline; padding: .2em .6em .3em; font-size: 75%; font-weight: 700; line-height: 1; color: #fff; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: .25em; }
.label:empty { display: none; }
.label-default { background-color: #777; }
.label-primary { background-color: #337ab7; }
.label-success { background-color: #5cb85c; }
.label-info { background-color: #5bc0de; }
.label-warning { background-color: #f0ad4e; }
.label-danger { background-color: #d9534f; }
.badge:not([class*="bg-"]):not([class*="text-bg-"]) { background-color: #777; color: #fff; }

/* ---------- Paneles y wells ------------------------------------------------- */
.panel { margin-bottom: 20px; background-color: #fff; border: 1px solid transparent; border-radius: 4px; box-shadow: 0 1px 1px rgba(0,0,0,.05); }
.panel-body { padding: 15px; }
.panel-heading { padding: 10px 15px; border-bottom: 1px solid transparent; border-top-left-radius: 3px; border-top-right-radius: 3px; }
.panel-title { margin-top: 0; margin-bottom: 0; font-size: 16px; }
.panel-footer { padding: 10px 15px; background-color: #f5f5f5; border-top: 1px solid #ddd; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; }
.panel-default { border-color: #ddd; } .panel-default > .panel-heading { color: #333; background-color: #f5f5f5; border-color: #ddd; }
.panel-primary { border-color: #337ab7; } .panel-primary > .panel-heading { color: #fff; background-color: #337ab7; border-color: #337ab7; }
.panel-success { border-color: #d6e9c6; } .panel-success > .panel-heading { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; }
.panel-info { border-color: #bce8f1; } .panel-info > .panel-heading { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; }
.panel-warning { border-color: #faebcc; } .panel-warning > .panel-heading { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; }
.panel-danger { border-color: #ebccd1; } .panel-danger > .panel-heading { color: #a94442; background-color: #f2dede; border-color: #ebccd1; }
.well { min-height: 20px; padding: 19px; margin-bottom: 20px; background-color: #f5f5f5; border: 1px solid #e3e3e3; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0,0,0,.05); }
.well-sm { padding: 9px; border-radius: 3px; } .well-lg { padding: 24px; border-radius: 6px; }

/* ---------- Formularios ----------------------------------------------------- */
.form-group { margin-bottom: 15px; }
.help-block { display: block; margin-top: 5px; margin-bottom: 10px; color: #737373; }
.form-horizontal .control-label { padding-top: 7px; margin-bottom: 0; }
@media (min-width: 768px) { .form-horizontal .control-label { text-align: right; } }
.form-horizontal .form-group { margin-left: -15px; margin-right: -15px; }
.form-inline .form-group, .form-inline .form-control { display: inline-block; width: auto; vertical-align: middle; }
select.form-control { -webkit-appearance: menulist; appearance: auto; }
select.form-control[multiple], select.form-control[size] { appearance: none; }
.input-sm { padding: .25rem .5rem; font-size: .875rem; border-radius: .2rem; min-height: auto; }
.input-lg { padding: .5rem 1rem; font-size: 1.25rem; border-radius: .3rem; }
.input-group-addon { display: flex; align-items: center; padding: .375rem .75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #555; text-align: center; white-space: nowrap; background-color: #eee; border: 1px solid #ccc; border-radius: .25rem; }
.input-group > .input-group-addon:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.input-group > .input-group-addon:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; }
.input-group-btn { display: flex; }
.has-error .form-control { border-color: #a94442; } .has-error .help-block, .has-error .control-label { color: #a94442; }
.has-success .form-control { border-color: #3c763d; }
.checkbox, .radio { position: relative; display: block; margin-top: 10px; margin-bottom: 10px; }
.checkbox label, .radio label { min-height: 20px; padding-left: 20px; margin-bottom: 0; font-weight: 400; cursor: pointer; }
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] { position: absolute; margin-left: -20px; }
input[type=checkbox], input[type=radio] { margin: 4px 0 0; line-height: normal; }
.checkbox + .checkbox, .radio + .radio { margin-top: -5px; }
.checkbox-inline, .radio-inline { position: relative; display: inline-block; padding-left: 20px; margin-bottom: 0; font-weight: 400; vertical-align: middle; cursor: pointer; }
.checkbox-inline + .checkbox-inline, .radio-inline + .radio-inline { margin-top: 0; margin-left: 10px; }
.form-horizontal .checkbox, .form-horizontal .radio, .form-horizontal .checkbox-inline, .form-horizontal .radio-inline { padding-top: 7px; margin-top: 0; margin-bottom: 0; }
.form-horizontal .checkbox, .form-horizontal .radio { min-height: 27px; }

/* ---------- Tablas ---------------------------------------------------------- */
.table-condensed > :not(caption) > * > * { padding: .25rem .25rem; }
.table > tbody > tr.active > td, .table > tbody > tr > td.active { background-color: #f5f5f5; }
.table > tbody > tr.success > td, .table > tbody > tr > td.success { background-color: #dff0d8; }
.table > tbody > tr.warning > td, .table > tbody > tr > td.warning { background-color: #fcf8e3; }
.table > tbody > tr.danger > td, .table > tbody > tr > td.danger { background-color: #f2dede; }
.table > tbody > tr.info > td, .table > tbody > tr > td.info { background-color: #d9edf7; }

/* ---------- Navegación ------------------------------------------------------ */
/* BS3: .nav era una lista en bloque; BS5 la vuelve flex en fila */
.nav > li { position: relative; display: block; }
.nav > li > a { position: relative; display: block; padding: 10px 15px; }
.nav.side-menu, .nav.child_menu, .nav.nav-stacked { display: block; }
@media (min-width: 768px) { .navbar-nav > li { float: left; } }
/* En BS3 navbar-right/left solo flotan desde 768px; en el celular el menú va a lo ancho */
@media (min-width: 768px) {
  .navbar-right { float: right !important; margin-right: -15px; }
  .navbar-left { float: left !important; }
}
.nav.navbar-nav { display: block; }
.nav.navbar-nav::after { content: ""; display: table; clear: both; }
.navbar-default { background-color: #f8f8f8; border-color: #e7e7e7; }
.navbar-inverse { background-color: #222; border-color: #080808; }
.navbar-toggle { position: relative; float: right; padding: 9px 10px; margin-top: 8px; margin-right: 15px; margin-bottom: 8px; background: transparent; border: 1px solid transparent; border-radius: 4px; }
.nav-tabs > li > a { display: block; padding: 10px 15px; margin-right: 2px; margin-bottom: -1px; line-height: 1.42857; border: 1px solid transparent; border-radius: 4px 4px 0 0; }
.nav-tabs > li > a:hover { border-color: #eee #eee #ddd; text-decoration: none; }
.nav-tabs > li.active > a, .nav-tabs > li > a.active { color: #555; background-color: #fff; border: 1px solid #ddd; border-bottom-color: transparent; }
.nav-pills > li > a { display: block; padding: 10px 15px; border-radius: 4px; }
.nav-pills > li.active > a, .nav-pills > li > a.active { color: #fff; background-color: #337ab7; }
.dropdown-menu > li > a { display: block; padding: 3px 20px; clear: both; font-weight: 400; line-height: 1.42857; color: #333; white-space: nowrap; }
.dropdown-menu > li > a:hover { background-color: #f5f5f5; color: #262626; }
.dropdown-menu .divider { height: 1px; margin: 9px 0; overflow: hidden; background-color: #e5e5e5; }
.dropdown-menu.pull-right { right: 0; left: auto; }
/* BS3 abría el menú con .open en el padre */
.open > .dropdown-menu { display: block; }

/* ---------- Navbar con markup de BS3 (navbar-header + navbar-collapse) -----
   Solo aplica a navbars que tienen .navbar-header (markup BS3), así no afecta
   navbars nuevos escritos en BS5. */
.navbar:where(:has(.navbar-header)) { display: block; padding: 0; }
.navbar-collapse { border-top: 1px solid transparent; box-shadow: inset 0 1px 0 rgba(255,255,255,.1); }
@media (min-width: 768px) { .navbar-collapse { border-top: 0; box-shadow: none; } }
.navbar:has(.navbar-header) > .container, .navbar:has(.navbar-header) > .container-fluid { display: block; }
:where(.navbar:has(.navbar-header)) > .container::after, :where(.navbar:has(.navbar-header)) > .container-fluid::after, .navbar-header::after { content: ""; display: table; clear: both; }
:where(.navbar:has(.navbar-header)) .navbar-brand { float: left; height: 50px; padding: 15px; font-size: 18px; line-height: 20px; margin-right: 0; }
:where(.navbar:has(.navbar-header)) .navbar-collapse { padding-left: 15px; padding-right: 15px; }
:where(.navbar:has(.navbar-header)) .navbar-nav { margin: 7.5px -15px; }
:where(.navbar:has(.navbar-header)) .navbar-nav > li > a { padding-top: 10px; padding-bottom: 10px; line-height: 20px; }
@media (min-width: 768px) {
  .navbar-header { float: left; }
  .navbar-toggle { display: none; }
  :where(.navbar:has(.navbar-header)) .navbar-collapse.collapse { display: block !important; height: auto !important; padding-bottom: 0; overflow: visible !important; width: auto; }
  :where(.navbar:has(.navbar-header)) .navbar-nav { float: left; margin: 0; }
  :where(.navbar:has(.navbar-header)) .navbar-nav.navbar-right { float: right !important; margin-right: -15px; }
  :where(.navbar:has(.navbar-header)) .navbar-nav > li > a { padding-top: 15px; padding-bottom: 15px; }
}

.container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { margin-right: -15px; margin-left: -15px; }
@media (min-width: 768px) {
  .container > .navbar-header, .container-fluid > .navbar-header, .container > .navbar-collapse, .container-fluid > .navbar-collapse { margin-right: 0; margin-left: 0; }
  .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand { margin-left: -15px; }
  .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse { padding-left: 0; padding-right: 0; }
}
/* BS5 agrega un triangulito a .dropdown-toggle; BS3 no (usaba <span class="caret">) */
.dropdown-toggle[data-toggle]::after { content: none; }
.navbar-collapse::after, .navbar-nav::after { content: ""; display: table; clear: both; }

/* ---------- Colores de enlaces de BS3 -------------------------------------- */
:root { --bs-link-color: #337ab7; --bs-link-color-rgb: 51, 122, 183; --bs-link-hover-color: #23527c; --bs-link-hover-color-rgb: 35, 82, 124; }
a { color: #337ab7; }
a:hover, a:focus { color: #23527c; }

/* ---------- Navbar fijo y tema navbar-default de BS3 ----------------------- */
.navbar-fixed-top, .navbar-fixed-bottom { position: fixed; right: 0; left: 0; z-index: 1030; }
.navbar-fixed-top { top: 0; border-width: 0 0 1px; }
.navbar-fixed-bottom { bottom: 0; margin-bottom: 0; border-width: 1px 0 0; }
.navbar-static-top { z-index: 1000; border-width: 0 0 1px; }
.navbar { border: 1px solid transparent; }
@media (min-width: 768px) { .navbar { border-radius: 4px; } .navbar-fixed-top, .navbar-fixed-bottom, .navbar-static-top { border-radius: 0; } }
.navbar-default { background-color: #f8f8f8; border-color: #e7e7e7; }
.navbar-default .navbar-brand { color: #777; }
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus { color: #5e5e5e; background-color: transparent; }
.navbar-default .navbar-nav > li > a { color: #777; }
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus { color: #333; background-color: transparent; }
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus { color: #555; background-color: #e7e7e7; }
.navbar-default .navbar-toggle { border-color: #ddd; }
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { background-color: #ddd; }
.navbar-default .navbar-toggle .icon-bar { background-color: #888; }
.navbar-toggle .icon-bar { display: block; width: 22px; height: 2px; border-radius: 1px; }
.navbar-toggle .icon-bar + .icon-bar { margin-top: 4px; }
.navbar-default .navbar-collapse, .navbar-default .navbar-form { border-color: #e7e7e7; }
.navbar-inverse .navbar-nav > li > a, .navbar-inverse .navbar-brand { color: #9d9d9d; }
.navbar-inverse .navbar-nav > li > a:hover { color: #fff; }
/* Dropdown dentro de un navbar BS3: abierto con .open (BS3) o .show (BS5) */
.navbar-nav > li > .dropdown-menu { margin-top: 0; border-top-left-radius: 0; border-top-right-radius: 0; }
@media (max-width: 767px) {
  .navbar-nav .open .dropdown-menu, .navbar-nav .dropdown-menu.show { position: static; float: none; width: auto; margin-top: 0; background-color: transparent; border: 0; box-shadow: none; }
}
@media (min-width: 768px) {
  :where(.navbar:has(.navbar-header)) .navbar-nav .dropdown-menu { position: absolute; }
  .navbar-right .dropdown-menu { right: 0; left: auto; }
}

/* Breadcrumb con <li> de BS3 */
.breadcrumb > li { display: inline-block; }
.breadcrumb > li + li::before { padding: 0 5px; color: #ccc; content: "/\00a0"; }

/* ---------- Paginación (el Paginator de Cake genera <li><a>) --------------- */
.pagination { display: flex; padding-left: 0; margin: 20px 0; border-radius: 4px; list-style: none; }
.pagination > li > a, .pagination > li > span { position: relative; display: block; padding: 6px 12px; margin-left: -1px; line-height: 1.42857; color: #337ab7; background-color: #fff; border: 1px solid #ddd; }
.pagination > li:first-child > a, .pagination > li:first-child > span { margin-left: 0; border-top-left-radius: 4px; border-bottom-left-radius: 4px; }
.pagination > li:last-child > a, .pagination > li:last-child > span { border-top-right-radius: 4px; border-bottom-right-radius: 4px; }
.pagination > li > a:hover { color: #23527c; background-color: #eee; border-color: #ddd; }
.pagination > .active > a, .pagination > .active > span { z-index: 3; color: #fff; background-color: #337ab7; border-color: #337ab7; }
.pagination > .disabled > a, .pagination > .disabled > span { color: #777; cursor: not-allowed; background-color: #fff; border-color: #ddd; }

/* ---------- Modales (markup BS3) ------------------------------------------- */
.modal-header .close { margin-top: -2px; margin-left: auto; order: 2; }
.modal-header { display: flex; align-items: center; }

/* ---------- Glyphicons (fuente de BS3, sigue en webroot/fonts) ------------- */
@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}

/* ---------- Ajustes para el tema Gentelella del panel ---------------------- */
/* BS5 limita .container con max-width (1320px); Gentelella lo usa a todo el ancho */
.container.body { max-width: none; }
.nav_menu .nav.toggle, .nav.panel_toolbox { display: block; }
.nav.panel_toolbox > li { float: left; display: inline-block; }

/* Modal: backdrop BS3 (1040) debajo de modales con z-index 1050 del tema */
.modal-backdrop { --bs-backdrop-zindex: 1040; }

/* Menu movil abierto: scroll interno como BS3 (.navbar-collapse.in) */
.navbar-collapse.show, .navbar-collapse.in { overflow-y: auto; }
@media (min-width: 768px) { .navbar-collapse.show, .navbar-collapse.in { overflow: visible !important; } }

/* .btn-group dentro de .input-group: en BS3 era inline-block (contenido apilado, botones flotando).
   En BS5 es inline-flex y pone en fila las listas de checkboxes (panel: Servicios, Idiomas...). */
.input-group:where(:has(> .btn-group)) { display: block; }
.input-group > .btn-group { display: inline-block; }
.input-group > .btn-group > .btn { float: left; }
