/* ════════════════════════════════════════════════════════════════
   IBI SYSTEM — Estilos base compartidos
   Variables, tipografías y utilities mínimas que NO interfieren con
   Tailwind (CDN). Sirve como base para migración progresiva.
   ════════════════════════════════════════════════════════════════ */

:root {
    /* Paleta IBI */
    --ibi-navy:        #0F2044;
    --ibi-navy-2:      #1A3260;
    --ibi-navy-3:      #23427C;
    --ibi-gold:        #B8860B;
    --ibi-gold-l:      #DAA520;
    --ibi-gold-p:      #FDF6E3;

    /* Grises Tailwind-compatibles */
    --ibi-text:        #1E293B;
    --ibi-dim:         #64748B;
    --ibi-border:      #E2E8F0;
    --ibi-bg:          #F8FAFC;
    --ibi-white:       #FFFFFF;

    /* Estados */
    --ibi-green:       #16A34A;
    --ibi-green-l:     #DCFCE7;
    --ibi-amber:       #D97706;
    --ibi-amber-l:     #FEF3C7;
    --ibi-red:         #DC2626;
    --ibi-red-l:       #FEE2E2;
    --ibi-blue:        #2563EB;
    --ibi-blue-l:      #DBEAFE;
}

/* ────────────────────────────────────────────────────────────────
   Tipografías base (Google Fonts cargados desde HTML)
   ──────────────────────────────────────────────────────────────── */
.ibi-serif  { font-family: 'Playfair Display', serif; }
.ibi-sans   { font-family: 'DM Sans', sans-serif; }
.ibi-mono   { font-family: 'DM Mono', monospace; }

/* ────────────────────────────────────────────────────────────────
   Scrollbar estilizado (sutil, dorado en hover)
   ──────────────────────────────────────────────────────────────── */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
::-webkit-scrollbar-track {
    background: #F1F5F9;
}
::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 6px;
}
::-webkit-scrollbar-thumb:hover {
    background: var(--ibi-gold);
}

/* ────────────────────────────────────────────────────────────────
   Utilities compartidas
   ──────────────────────────────────────────────────────────────── */
.ibi-card {
    background: var(--ibi-white);
    border: 1px solid var(--ibi-border);
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,.04);
}

.ibi-gold-bar {
    background: linear-gradient(90deg, var(--ibi-gold) 0%, var(--ibi-gold-l) 50%, var(--ibi-gold) 100%);
    height: 3px;
}

.ibi-badge {
    display: inline-block;
    font-size: .65rem;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.ibi-badge-gold {
    background: var(--ibi-gold-p);
    color: #92400E;
    border: 1px solid #FDE68A;
}

.ibi-badge-green {
    background: var(--ibi-green-l);
    color: #166534;
    border: 1px solid #BBF7D0;
}

.ibi-badge-amber {
    background: var(--ibi-amber-l);
    color: #92400E;
    border: 1px solid #FDE68A;
}

.ibi-badge-red {
    background: var(--ibi-red-l);
    color: #991B1B;
    border: 1px solid #FECACA;
}

.ibi-badge-blue {
    background: var(--ibi-blue-l);
    color: #1D4ED8;
    border: 1px solid #BFDBFE;
}

/* ────────────────────────────────────────────────────────────────
   Print: ocultar elementos no esenciales al imprimir
   ──────────────────────────────────────────────────────────────── */
@media print {
    nav, .no-print, button { display: none !important; }
    body { background: white !important; }
}

/* ────────────────────────────────────────────────────────────────
   Mejora de accesibilidad — outline visible al usar teclado
   ──────────────────────────────────────────────────────────────── */
:focus-visible {
    outline: 2px solid var(--ibi-gold);
    outline-offset: 2px;
}
