/* =============== FS Global Skin ===============
   - Paleta y tokens (basado en tu style.css)
   - Tipografía Poppins
   - Look oscuro global
   - Compat GeneratePress (header, nav, gaps)
   - Componentes genéricos (botones, inputs, tablas)
   - Compat con tus clases .fs-*
   ============================================ */

/* Tokens */
:root{
  --brand-primary: #0097CE;
  --brand-accent:  #FF5B56;
  --brand-accent-dark: #E24B47;

  --fs-text: #E9EEF3;
  --fs-muted: #B8C2CC;
  --fs-invert: #0A0A0A;     /* fondo base */
  --fs-surface: #0F141A;    /* tarjeta */
  --fs-surface-2: #121920;  /* tarjeta 2 */
  --fs-border: #1F2A33;
  --fs-radius: 12px;
  --fs-shadow: 0 10px 28px rgba(0,0,0,0.55);
  --fs-speed: 240ms;
  --fs-ease: cubic-bezier(.16,1,.3,1);
  --fs-col-hi: rgba(0,151,206,0.08);
}

/* Scope global (frontend) */
body.fs-skin{
  background: var(--fs-invert);
  color: var(--fs-text);
  font: 14px "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Enlaces */
body.fs-skin a{ color: #ffffff; text-decoration: none; }
body.fs-skin a:hover{ text-decoration: underline; }

/* Titulares */
body.fs-skin h1, body.fs-skin h2, body.fs-skin h3,
body.fs-skin h4, body.fs-skin h5, body.fs-skin h6{
  color: var(--fs-text);
  line-height: 1.2;
}
body.fs-skin .text-muted{ color: var(--fs-muted); }

/* Contenedores (tarjetas) */
body.fs-skin .fs-data,
body.fs-skin .wp-block-group.is-style-box,
body.fs-skin .gb-container,
body.fs-skin .widget, 
body.fs-skin .inside-article{
  background: var(--fs-surface);
  border: 1px solid var(--fs-border);
  border-radius: var(--fs-radius);
  box-shadow: var(--fs-shadow);
}

/* Botones genéricos (incluye botones WP) */
body.fs-skin .fs-btn,
body.fs-skin button,
body.fs-skin .button,
body.fs-skin input[type=button],
body.fs-skin input[type=submit],
body.fs-skin .wp-block-button__link{
  appearance: none;
  border: 1px solid transparent;
  padding: 8px 12px;
  border-radius: 6px;
  line-height: 1.4;
  font: 600 13px/1 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  cursor: pointer;
  color: #EAF7FF;
    background: linear-gradient(180deg, rgba(0, 151, 206, 0.18), rgba(0, 151, 206, 0.10));
    border: 1px solid rgba(0, 151, 206, 0.35);
  transition: transform var(--fs-speed) var(--fs-ease), box-shadow var(--fs-speed) var(--fs-ease), background var(--fs-speed) var(--fs-ease), border-color var(--fs-speed) var(--fs-ease);
}
body.fs-skin .fs-btn:hover,
body.fs-skin button:hover,
body.fs-skin .button:hover,
body.fs-skin input[type=button]:hover,
body.fs-skin input[type=submit]:hover,
body.fs-skin .wp-block-button__link:hover{
  transform: translateY(-1px);
  background: #0f2d3c;
}
body.fs-skin .fs-btn:disabled,
body.fs-skin button:disabled,
body.fs-skin input[type=submit]:disabled{ opacity:.6; cursor:not-allowed; }

/* Botón de acento (Exportar, etc.) */
body.fs-skin .fs-btn-export{
  background: linear-gradient(180deg, rgba(11, 75, 49,0.18), rgba(11, 75, 49,0.10)); 
}
/*body.fs-skin .fs-btn-export:hover{background: linear-gradient(180deg, rgba(11, 75, 49,0.18), rgba(11, 75, 49,0.10));
  color:#fff;}*/
body.fs-btn-export:active{ transform: translateY(0); }

body #fs-export-all{
    background:#0b4b31; border-color:#0b4b31; transform: translateY(-1px);
}

body #fs-export-all:hover{   background: linear-gradient(180deg, rgba(11, 75, 49,0.18), rgba(11, 75, 49,0.10));
  color:#fff;
  border:1px solid rgba(11, 75, 49,0.35);
}
body #fs-export-all:active{ transform: translateY(0); }

/* Inputs */
body.fs-skin input[type=text],
body.fs-skin input[type=search],
body.fs-skin input[type=email],
body.fs-skin input[type=number],
body.fs-skin select,
body.fs-skin textarea{
  background:#0E1319;
  color: var(--fs-text);
  border:1px solid var(--fs-border);
  border-radius: 10px;
  padding: 10px 12px;
  font: inherit;
}
body.fs-skin input:focus,
body.fs-skin select:focus,
body.fs-skin textarea:focus{
  outline: none;
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 4px rgba(0,151,206,.18);
}

/* Tablas */
body.fs-skin table{ width:100%; border-collapse: collapse; background: var(--fs-surface-2); border:1px solid var(--fs-border); border-radius:12px; overflow:hidden; }
body.fs-skin th, body.fs-skin td{ border-bottom:1px solid var(--fs-border); padding:12px; color: var(--fs-text); }
body.fs-skin th{ background: linear-gradient(180deg,#111923,#0F141A); font-weight:600; color:#D8E7F1; letter-spacing:.2px; }
body.fs-skin tbody tr:hover{ background: rgba(255,255,255,0.03); }

/* Scrollbars dentro de wrappers scrolleables */
body.fs-skin ::-webkit-scrollbar{ height:10px; width:10px; }
body.fs-skin ::-webkit-scrollbar-thumb{ background:#1E2A34; border-radius:10px; }
body.fs-skin ::-webkit-scrollbar-thumb:hover{ background:#243544; }
body.fs-skin ::-webkit-scrollbar-track{ background:#0E1319; }

/* Hero (como tu adicional) */
body.fs-skin .hero-gradient{
  background: linear-gradient(180deg, #0a0f14 0%, #0a0f14 100%);
  border-radius: 12px;
  padding: 16px clamp(16px, 3vw, 24px);
  color: #E9EEF3;
}
body.fs-skin .hero-gradient h2,
body.fs-skin .hero-gradient .wp-block-heading{ color:#E9EEF3; margin:0 0 12px; line-height:1.2; }
body.fs-skin .hero-gradient.alignfull{ border-radius: 0; }
@media (min-width: 782px){
  body.fs-skin .hero-gradient.alignfull{
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
  }
}

/* ========== GeneratePress (frontend) ========== */
/* Compactar header/nav y quitar “gap” superior en todo el sitio */
body.fs-skin .site-header{ margin-bottom:0 !important; }
body.fs-skin .inside-header{ padding-top: 6px !important; padding-bottom: 6px !important; }
body.fs-skin .inside-navigation{ padding-top: 4px !important; padding-bottom: 4px !important; }
body.fs-skin .main-navigation .main-nav > ul > li > a{
  padding-top:24px !important; padding-bottom:10px !important; line-height:1.2 !important;
}
body.fs-skin .site-branding img,
body.fs-skin .custom-logo{ max-height:42px !important; height:auto !important; width:auto !important; }

/* Contenido sin “aire” arriba */
body.fs-skin .site-content,
body.fs-skin.nav-below-header .site-content{ margin-top:0 !important; padding-top:0 !important; }

/* Layouts de GP */
body.fs-skin.separate-containers .site-main,
body.fs-skin.one-container .site-main{ margin-top:0 !important; }
body.fs-skin.separate-containers .inside-article{ padding-top:0 !important; }

/* Evitar colapso del primer bloque */
body.fs-skin .entry-content > *:first-child,
body.fs-skin .wp-block-group:first-of-type,
body.fs-skin .wp-block-heading:first-child{ margin-top:0 !important; }

/* (Opcional) oculta títulos de páginas (comenta si no lo quieres global) */
body.fs-skin.page .entry-title{ display:none; }

/* Gutter coherente entre bloques (suaviza el “block gap”) */
body.fs-skin .entry-content > * + *{ margin-block-start: 12px; }

/* Fondo global oscuro de páginas */
body.fs-skin.page{ background: var(--fs-invert); }

/* ========== Tus componentes (.fs-*) ========== */
.fs-wrapper{ margin: 1.2rem 0; background: var(--fs-invert); border-radius: var(--fs-radius); overflow: hidden; color: var(--fs-text); }
.fs-aggregado{ background: linear-gradient(180deg, #0A0F14 0%, #0A0A0A 100%); padding:14px; border-bottom:1px solid rgba(255,255,255,0.03); }
.fs-data{ background: var(--fs-surface); border:1px solid var(--fs-border); padding:16px; border-radius: var(--fs-radius); box-shadow: var(--fs-shadow); }
.fs-table-wrap{ width:100%; overflow:auto; border-radius:12px; border:1px solid var(--fs-border); background: var(--fs-surface-2); }
.fs-tabla{ border-collapse: collapse; width: 100%; table-layout:auto; color: var(--fs-text); }
.fs-tabla th, .fs-tabla td{ border-bottom:1px solid var(--fs-border); padding:12px 12px; }
.fs-tabla td.right, .fs-tabla th.right{ text-align:right; }

/* Barra de búsqueda/acciones (si la usas) */
.fs-busqueda-bar{
  /*position: sticky; top:0; z-index:5;*/
  background: rgba(15,20,26,0.86);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-bottom:1px solid var(--fs-border);
  display:flex; align-items:center; justify-content: space-between;
  gap:.6rem; flex-wrap:wrap; margin:0 0 .9rem;
  padding:10px 12px; border-radius: var(--fs-radius);
}
.fs-busqueda-left{ display:flex; align-items:center; gap:.6rem; flex:1 1 auto; min-width:280px; }
.fs-actions{ margin-left:auto; display:flex; align-items:center; gap:.6rem; }
.fs-buscar{ padding:11px 12px; border:1px solid var(--fs-border); border-radius: 999px; min-width:240px; background:#0E1319; color:var(--fs-text);
  appearance: none; }

/* Chips numéricos */
.fs-num{ display:inline-block; min-width:46px; padding:8px 12px; border-radius:999px; color:#EAF7FF; background: linear-gradient(180deg, rgba(0,151,206,0.18), rgba(0,151,206,0.10)); border:1px solid rgba(0,151,206,0.35); font-weight:700; text-align:center; }

/* Dropdown de sesiones (actual) */
.fs-emp-sessions .fs-sel{ position: relative; margin-bottom:10px; z-index:10; }
.fs-emp-sessions .fs-sel-input-wrap{ display:flex; gap:6px; align-items:center; }
.fs-emp-sessions #fs-emp-sel-search{ flex:1; min-width:220px; }
.fs-emp-sessions .fs-sel-toggle{ padding:8px 10px; border:1px solid var(--fs-border); border-radius:6px; background:#fff; color:#111; cursor:pointer; }
.fs-emp-sessions .fs-sel-dd{
  position:absolute !important; left:0; right:0; top: calc(100% + 6px);
  background:#fff; color:#111; border:1px solid #e5e7eb; border-radius:8px;
  box-shadow:0 10px 24px rgba(0,0,0,.12); max-height:340px; overflow:auto; padding:6px;
  display:none !important; z-index:2147483000;
}
.fs-emp-sessions .fs-sel.open .fs-sel-dd{ display:block !important; }
.fs-emp-sessions .fs-dd-item{ display:flex !important; align-items:center; gap:8px; padding:6px 8px; border-radius:6px; cursor:pointer; }
.fs-emp-sessions .fs-dd-item:hover{ background:#f3f4f6; }
.fs-emp-sessions .fs-dd-name{ font-weight:600; }
.fs-emp-sessions .fs-dd-meta{ margin-left:auto; font-size:12px; color:#6b7280; white-space:nowrap; }

/* Utilidades */
.fs-row-hidden{ display:none; }

/* Mobile */
@media (max-width: 900px){
  .fs-busqueda-left{ min-width: 100%; }
  .fs-actions{ width: 100%; justify-content: flex-end; }
  .fs-tabla th, .fs-tabla td{ padding:10px; }
}

/* Footer/elementos del tema opcionales */
.copyright-bar{ display:none; }

.fs-buscar-usuarios{
    color: var(--base-3);
    background-color: #0f2d3c;
    border-color: #0a5570;
    border-radius: 999px;
}
