/* ============================================================================
   NICC · TOKENS DE DISEÑO + COMPONENTES (identidad SIE)  — G1
   Fuente ÚNICA de color, tipografía y espaciado. Se inyecta globalmente desde
   action/default.php (include_dependencies) en TODAS las páginas.
   Usar siempre var(--nicc-*) y las clases .nicc-* en código nuevo.
   ============================================================================ */
:root {
    /* Marca */
    --nicc-primary:#EA580C; --nicc-primary-dark:#C2410C; --nicc-primary-soft:#FDEBDD;
    --nicc-navy:#0D2847; --nicc-navy-2:#143A6B; --nicc-blue:#2171B5; --nicc-blue-soft:#E8EEF7;
    /* Neutros */
    --nicc-ink:#1F2733; --nicc-muted:#5B6573; --nicc-line:#E2E8F0; --nicc-bg-soft:#F5F7FA; --nicc-white:#FFFFFF;
    /* Estado */
    --nicc-ok:#16A34A; --nicc-warn:#EA580C; --nicc-danger:#C0392B; --nicc-idle:#94A3B8;
    /* Tipografía */
    --nicc-font:'DM Sans', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    --nicc-font-display:'Playfair Display', Georgia, serif;
    --nicc-fs-1:1.9rem; --nicc-fs-2:1.4rem; --nicc-fs-3:1.1rem; --nicc-fs-body:.95rem; --nicc-fs-sm:.82rem;
    --nicc-fw-regular:400; --nicc-fw-medium:600; --nicc-fw-bold:700;
    /* Espaciado base 4px */
    --nicc-s1:4px; --nicc-s2:8px; --nicc-s3:12px; --nicc-s4:16px; --nicc-s5:24px; --nicc-s6:32px;
    /* Forma */
    --nicc-radius:10px; --nicc-radius-sm:6px; --nicc-shadow:0 2px 8px rgba(13,40,71,.08);
    --nicc-focus-ring:0 0 0 3px rgba(234,88,12,.25);
    /* Curva de salida fuerte (Emil): más intención que el 'ease' nativo */
    --nicc-ease-out:cubic-bezier(.23,1,.32,1);
}

/* ---- Componentes utilitarios sobre tokens (adoptar en templates) ---- */
.nicc-btn{
    display:inline-flex;align-items:center;gap:var(--nicc-s2);
    font-family:var(--nicc-font);font-size:var(--nicc-fs-body);font-weight:var(--nicc-fw-medium);
    padding:var(--nicc-s2) var(--nicc-s4);border-radius:var(--nicc-radius-sm);min-height:38px;box-sizing:border-box;
    border:1px solid transparent;cursor:pointer;line-height:1.2;text-decoration:none;
    transition:background .2s var(--nicc-ease-out),border-color .2s var(--nicc-ease-out),box-shadow .2s var(--nicc-ease-out),transform .12s var(--nicc-ease-out);
}
.nicc-btn:focus-visible{outline:2px solid var(--nicc-primary);outline-offset:2px}
.nicc-btn:active{transform:scale(.97)}
.nicc-btn:disabled,.nicc-btn[disabled],.nicc-btn[aria-disabled="true"]{
    opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none;transform:none;
}
.nicc-btn--primary{background:var(--nicc-primary);color:var(--nicc-white)}
.nicc-btn--secondary{background:var(--nicc-navy);color:var(--nicc-white)}
.nicc-btn--outline{background:transparent;color:var(--nicc-navy);border-color:var(--nicc-line)}
.nicc-btn--danger{background:var(--nicc-danger);color:var(--nicc-white)}
/* Hover solo en dispositivos con puntero fino (evita hover pegajoso en táctil) */
@media (hover:hover) and (pointer:fine){
    .nicc-btn--primary:hover{background:var(--nicc-primary-dark)}
    .nicc-btn--secondary:hover{background:var(--nicc-navy-2)}
    .nicc-btn--outline:hover{border-color:var(--nicc-primary);color:var(--nicc-primary)}
}

.nicc-badge{
    display:inline-flex;align-items:center;gap:var(--nicc-s1);
    font-size:var(--nicc-fs-sm);font-weight:var(--nicc-fw-medium);
    padding:2px var(--nicc-s2);border-radius:999px;line-height:1.4;
}
.nicc-badge--ok{background:#E6F4EA;color:#0F6E3B}
.nicc-badge--warn{background:var(--nicc-primary-soft);color:var(--nicc-primary-dark)}
.nicc-badge--danger{background:#FBE9E7;color:var(--nicc-danger)}
.nicc-badge--idle{background:#EEF2F6;color:var(--nicc-muted)}

/* ---- Tipografía de marca en contenedores BEZ/admin (G4) ---- */
.admin-ctrl-container, .admin-threads-container, .admin-form-card,
.bez_comments, .nicc-doc-bar, .nicc-semaforo {
    font-family: var(--nicc-font);
}

/* ---- Motion: respetar prefers-reduced-motion (G4) ----
   Scoped a componentes nicc-* y contenedores BEZ/admin para NO usar un reset
   universal (que rompería transiciones del template; ver nota de memoria). */
@media (prefers-reduced-motion:reduce){
    .nicc-btn, .admin-ctrl-btn, .btn-crear,
    .unique-progress-bar, .bez-rep-card,
    .admin-ctrl-container *, .admin-threads-container *, .nicc-semaforo * {
        animation-duration:.001ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.001ms !important;
    }
}
