@charset "utf-8";
/* ===========================================================
   Retoque de cumplimiento del estándar de páginas EGV para las
   páginas que usan la plantilla Bootstrap "eugeni.dwt" (navbar +
   offcanvas). Se añade sin tocar el resto del CSS existente.
   Ver .claude/skills/estandar-paginas-egv.
   =========================================================== */

html,body{max-width:100%;overflow-x:hidden;}
.container-fluid{max-width:1400px;margin-left:auto;margin-right:auto;}

/* Interruptor oscuro/claro sobre las clases Bootstrap oscuras existentes */
:root[data-theme="light"] body{background:#f7f4ee !important;color:#241f14 !important;}
:root[data-theme="light"] .bg-dark{background:#ffffff !important;color:#241f14 !important;}
:root[data-theme="light"] .text-white-50{color:#4a4436 !important;}
:root[data-theme="light"] .navbar-dark .navbar-nav .nav-link,
:root[data-theme="light"] .navbar-brand{color:#241f14 !important;}
:root[data-theme="light"] .dropdown-menu.bg-dark{background:#ffffff !important;border:1px solid #ddd3bd;}
:root[data-theme="light"] .dropdown-item{color:#241f14 !important;}
:root[data-theme="light"] .dropdown-item:hover{background:#f1ece1 !important;}
:root[data-theme="light"] .card{background:#ffffff !important;border-color:#ddd3bd !important;color:#241f14 !important;}
:root[data-theme="light"] .card-text{color:#4a4436 !important;}
:root[data-theme="light"] a{color:#0d6efd;}
:root[data-theme="light"] table{color:#241f14;}

.theme-toggle{
  width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:15px;flex:none;
  margin-left:10px;cursor:pointer;
}
:root[data-theme="light"] .theme-toggle{border-color:#ddd3bd;background:#f1ece1;color:#241f14;}
.theme-toggle:hover{border-color:#6f6bf0;}

/* Ayuda flotante ("?" fijo arriba a la derecha) */
.help-fab{
  position:fixed;top:70px;right:16px;z-index:1080;
  width:40px;height:40px;border-radius:50%;
  background:#141a29;border:1px solid #2a3348;color:#e7eaf3;
  display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;
  cursor:pointer;box-shadow:0 10px 30px -10px rgba(0,0,0,.5);
}
:root[data-theme="light"] .help-fab{background:#ffffff;border-color:#ddd3bd;color:#241f14;}
.help-fab:hover{border-color:#6f6bf0;}
.help-panel{
  position:fixed;top:118px;right:16px;z-index:1085;
  width:min(88vw,320px);max-height:min(70vh,480px);overflow-y:auto;
  background:#141a29;border:1px solid #2a3348;border-radius:12px;color:#e7eaf3;
  box-shadow:0 10px 30px -10px rgba(0,0,0,.5);padding:18px 20px;
  opacity:0;pointer-events:none;transform:translateY(-8px);
  transition:opacity .18s ease,transform .18s ease;
}
:root[data-theme="light"] .help-panel{background:#ffffff;border-color:#ddd3bd;color:#241f14;}
.help-panel.show{opacity:1;pointer-events:auto;transform:translateY(0);}
.help-panel h4{font-size:15px;font-weight:800;margin:0 0 8px;padding-right:20px;}
.help-panel p{font-size:13.5px;opacity:.8;margin:0 0 10px;}
.help-panel .help-links{display:flex;flex-direction:column;gap:8px;margin-top:2px;}
.help-panel .help-links a{font-size:13px;font-weight:700;color:#22d3ee;}
:root[data-theme="light"] .help-panel .help-links a{color:#0d6efd;}
.help-panel-close{position:absolute;top:12px;right:12px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:.6;font-size:13px;cursor:pointer;}
.help-panel-close:hover{opacity:1;}

/* Sin scrollbar nativa + flechas flotantes subir/bajar */
html.no-native-scroll,
html.no-native-scroll body{scrollbar-width:none;}
html.no-native-scroll::-webkit-scrollbar,
html.no-native-scroll body::-webkit-scrollbar{display:none;}
.page-scroll-nav{position:fixed;right:16px;bottom:20px;z-index:1080;display:flex;flex-direction:column;gap:10px;}
.page-scroll-btn{
  width:42px;height:42px;border-radius:50%;
  background:#141a29;border:1px solid #2a3348;color:#e7eaf3;
  display:flex;align-items:center;justify-content:center;font-size:14px;
  cursor:pointer;box-shadow:0 10px 30px -10px rgba(0,0,0,.5);
  transition:opacity .2s ease;
}
:root[data-theme="light"] .page-scroll-btn{background:#ffffff;border-color:#ddd3bd;color:#241f14;}
.page-scroll-btn:hover{border-color:#6f6bf0;}
.page-scroll-btn.is-disabled{opacity:.35;pointer-events:none;}

/* Tablas de datos reales: alineadas a la izquierda, min 80% de pantalla */
.table-scroll{overflow-x:auto;margin:16px 0;-webkit-overflow-scrolling:touch;}
.table-scroll table{max-width:100%;}
.table-scroll.is-data table{min-width:80vw;max-width:1360px;}
.table-scroll.is-data th,.table-scroll.is-data td{text-align:left;}
