/* ==========================================================================
   SIGA - Sistema de diseño
   Documento 08 de la propuesta.

   Los tokens viven aquí. Cambiar la identidad visual del sistema completo
   es cambiar este bloque, no recorrer las pantallas.
   ========================================================================== */

:root {
    /* --- Color: primario --- */
    --siga-primario-50:  #eef4ff;
    --siga-primario-100: #d9e6ff;
    --siga-primario-200: #bcd3ff;
    --siga-primario-400: #6b9bf5;
    --siga-primario-500: #3b74e8;
    --siga-primario-600: #2358cc;
    --siga-primario-700: #1c46a3;
    --siga-primario-900: #14306e;

    /* --- Color: neutros (85% de la interfaz) --- */
    --siga-fondo:        #f4f6fb;
    --siga-superficie:   #ffffff;
    --siga-superficie-2: #f8fafc;
    --siga-borde:        #e2e8f0;
    --siga-borde-fuerte: #cbd5e1;
    --siga-texto:        #0f172a;
    --siga-texto-suave:  #475569;
    --siga-texto-tenue:  #94a3b8;

    /* --- Color: niveles de desempeño (§35) ---
       Nunca son el único portador de información: siempre van con texto. */
    --siga-superior:     #0e9f6e;
    --siga-superior-bg:  #e6f6f0;
    --siga-alto:         #2358cc;
    --siga-alto-bg:      #e8effd;
    --siga-basico:       #b45309;
    --siga-basico-bg:    #fef3e2;
    --siga-bajo:         #c62828;
    --siga-bajo-bg:      #fdeaea;

    /* --- Color: estados --- */
    --siga-exito:        #0e9f6e;
    --siga-exito-bg:     #e6f6f0;
    --siga-aviso:        #b45309;
    --siga-aviso-bg:     #fef3e2;
    --siga-error:        #c62828;
    --siga-error-bg:     #fdeaea;
    --siga-info:         #2358cc;
    --siga-info-bg:      #e8effd;

    /* --- Espaciado: escala de 4px --- */
    --siga-e1: 0.25rem;  --siga-e2: 0.5rem;   --siga-e3: 0.75rem;
    --siga-e4: 1rem;     --siga-e5: 1.5rem;   --siga-e6: 2rem;
    --siga-e7: 3rem;

    /* --- Radios y sombras --- */
    --siga-radio-sm: 6px;
    --siga-radio:    10px;
    --siga-radio-lg: 16px;
    --siga-sombra-1: 0 1px 2px rgba(15, 23, 42, .06);
    --siga-sombra-2: 0 4px 16px rgba(15, 23, 42, .08);
    --siga-sombra-3: 0 12px 32px rgba(15, 23, 42, .12);

    /* --- Tipografía --- */
    --siga-fuente: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                   "Helvetica Neue", Arial, sans-serif;
    --siga-fuente-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo,
                        Consolas, monospace;

    /* --- Layout --- */
    --siga-sidebar: 260px;
    --siga-topbar: 60px;
}

/* ==========================================================================
   Base
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
    margin: 0;
    font-family: var(--siga-fuente);
    font-size: 15px;
    line-height: 1.6;
    color: var(--siga-texto);
    background: var(--siga-fondo);
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 { margin: 0 0 var(--siga-e3); line-height: 1.25; font-weight: 650; }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.25rem; }
h3 { font-size: 1.05rem; }
p  { margin: 0 0 var(--siga-e3); }

a { color: var(--siga-primario-600); text-decoration: none; }
a:hover { text-decoration: underline; }

code, .mono { font-family: var(--siga-fuente-mono); font-size: .875em; }

code {
    background: var(--siga-superficie-2);
    border: 1px solid var(--siga-borde);
    padding: .1rem .35rem;
    border-radius: 4px;
}

/* Foco SIEMPRE visible: requisito de accesibilidad del documento 08 */
:focus-visible {
    outline: 3px solid var(--siga-primario-400);
    outline-offset: 2px;
    border-radius: 4px;
}

.visualmente-oculto {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* ==========================================================================
   Tarjetas
   ========================================================================== */

.siga-tarjeta {
    background: var(--siga-superficie);
    border: 1px solid var(--siga-borde);
    border-radius: var(--siga-radio);
    box-shadow: var(--siga-sombra-1);
}

.siga-tarjeta__cabecera {
    padding: var(--siga-e4) var(--siga-e5);
    border-bottom: 1px solid var(--siga-borde);
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--siga-e3); flex-wrap: wrap;
}

.siga-tarjeta__cuerpo { padding: var(--siga-e5); }
.siga-tarjeta__pie {
    padding: var(--siga-e4) var(--siga-e5);
    border-top: 1px solid var(--siga-borde);
    background: var(--siga-superficie-2);
    border-radius: 0 0 var(--siga-radio) var(--siga-radio);
}

/* --- Tarjeta de indicador (KPI) --- */
.siga-kpi {
    background: var(--siga-superficie);
    border: 1px solid var(--siga-borde);
    border-radius: var(--siga-radio);
    padding: var(--siga-e4) var(--siga-e5);
    box-shadow: var(--siga-sombra-1);
    display: block; color: inherit; text-decoration: none;
    transition: box-shadow .15s ease, transform .15s ease;
}
a.siga-kpi:hover {
    box-shadow: var(--siga-sombra-2);
    transform: translateY(-1px);
    text-decoration: none;
}
.siga-kpi__icono { font-size: 1.25rem; opacity: .75; margin-bottom: var(--siga-e2); }
.siga-kpi__valor {
    font-size: 1.9rem; font-weight: 700; line-height: 1.1;
    font-variant-numeric: tabular-nums;
}
.siga-kpi__etiqueta {
    color: var(--siga-texto-suave); font-size: .85rem;
    text-transform: uppercase; letter-spacing: .03em; font-weight: 600;
}
.siga-kpi__delta { font-size: .8rem; color: var(--siga-texto-tenue); margin-top: var(--siga-e1); }

/* ==========================================================================
   Formularios
   ========================================================================== */

.siga-campo { margin-bottom: var(--siga-e4); }

.siga-etiqueta {
    display: block; font-weight: 600; font-size: .875rem;
    margin-bottom: var(--siga-e2); color: var(--siga-texto);
}
.siga-etiqueta .req { color: var(--siga-error); margin-left: 2px; }

.siga-control {
    display: block; width: 100%;
    padding: .6rem .8rem;
    font-family: inherit; font-size: .95rem;
    color: var(--siga-texto);
    background: var(--siga-superficie);
    border: 1px solid var(--siga-borde-fuerte);
    border-radius: var(--siga-radio-sm);
    transition: border-color .15s ease, box-shadow .15s ease;
}
.siga-control:focus {
    outline: none;
    border-color: var(--siga-primario-500);
    box-shadow: 0 0 0 3px var(--siga-primario-100);
}
.siga-control::placeholder { color: var(--siga-texto-tenue); }
.siga-control:disabled { background: var(--siga-superficie-2); cursor: not-allowed; }

/* Validación visual en tiempo real (§52) */
.siga-control.es-valido   { border-color: var(--siga-exito); }
.siga-control.es-invalido { border-color: var(--siga-error); }

.siga-ayuda  { font-size: .8rem; color: var(--siga-texto-suave); margin-top: var(--siga-e1); }
.siga-error  { font-size: .8rem; color: var(--siga-error);  margin-top: var(--siga-e1); font-weight: 500; }
.siga-ok     { font-size: .8rem; color: var(--siga-exito);  margin-top: var(--siga-e1); font-weight: 500; }

.siga-seccion-form {
    border: 0; padding: 0; margin: 0 0 var(--siga-e6);
}
.siga-seccion-form__titulo {
    font-size: .8rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .05em; color: var(--siga-texto-suave);
    padding-bottom: var(--siga-e2); margin-bottom: var(--siga-e4);
    border-bottom: 1px solid var(--siga-borde);
}

/* ==========================================================================
   Botones
   ========================================================================== */

.siga-btn {
    display: inline-flex; align-items: center; justify-content: center;
    gap: var(--siga-e2);
    padding: .6rem 1.1rem;
    font-family: inherit; font-size: .925rem; font-weight: 600;
    line-height: 1.2;
    border: 1px solid transparent;
    border-radius: var(--siga-radio-sm);
    cursor: pointer; text-decoration: none;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
    /* Área táctil mínima en móvil */
    min-height: 44px;
}
.siga-btn:hover { text-decoration: none; }
.siga-btn:disabled, .siga-btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }

.siga-btn--primario {
    background: var(--siga-primario-600); color: #fff;
    border-color: var(--siga-primario-600);
}
.siga-btn--primario:hover:not(:disabled) {
    background: var(--siga-primario-700); border-color: var(--siga-primario-700); color: #fff;
}

.siga-btn--secundario {
    background: var(--siga-superficie); color: var(--siga-texto);
    border-color: var(--siga-borde-fuerte);
}
.siga-btn--secundario:hover:not(:disabled) { background: var(--siga-superficie-2); }

.siga-btn--peligro {
    background: var(--siga-error); color: #fff; border-color: var(--siga-error);
}
.siga-btn--fantasma {
    background: transparent; color: var(--siga-texto-suave); border-color: transparent;
}
.siga-btn--fantasma:hover { background: var(--siga-superficie-2); }

.siga-btn--bloque { width: 100%; }
.siga-btn--sm { padding: .35rem .7rem; font-size: .85rem; min-height: 34px; }

/* ==========================================================================
   Distintivos y alertas
   ========================================================================== */

.siga-badge {
    display: inline-flex; align-items: center; gap: 4px;
    padding: .15rem .55rem;
    font-size: .75rem; font-weight: 650; line-height: 1.5;
    border-radius: 99px; white-space: nowrap;
}
.siga-badge--superior { background: var(--siga-superior-bg); color: var(--siga-superior); }
.siga-badge--alto     { background: var(--siga-alto-bg);     color: var(--siga-alto); }
.siga-badge--basico   { background: var(--siga-basico-bg);   color: var(--siga-basico); }
.siga-badge--bajo     { background: var(--siga-bajo-bg);     color: var(--siga-bajo); }
.siga-badge--neutro   { background: var(--siga-superficie-2);color: var(--siga-texto-suave); }
.siga-badge--exito    { background: var(--siga-exito-bg);    color: var(--siga-exito); }
.siga-badge--aviso    { background: var(--siga-aviso-bg);    color: var(--siga-aviso); }
.siga-badge--error    { background: var(--siga-error-bg);    color: var(--siga-error); }

.siga-alerta {
    display: flex; gap: var(--siga-e3);
    padding: var(--siga-e3) var(--siga-e4);
    border-radius: var(--siga-radio-sm);
    border-left: 3px solid;
    margin-bottom: var(--siga-e4);
    font-size: .9rem;
}
.siga-alerta__icono { flex-shrink: 0; font-size: 1.05rem; line-height: 1.5; }
.siga-alerta__cuerpo { flex: 1; }
.siga-alerta p:last-child { margin-bottom: 0; }

.siga-alerta--exito { background: var(--siga-exito-bg); border-color: var(--siga-exito); color: #0a5e42; }
.siga-alerta--aviso { background: var(--siga-aviso-bg); border-color: var(--siga-aviso); color: #7a3c06; }
.siga-alerta--error { background: var(--siga-error-bg); border-color: var(--siga-error); color: #8f1d1d; }
.siga-alerta--info  { background: var(--siga-info-bg);  border-color: var(--siga-info);  color: #17408f; }

/* ==========================================================================
   Tablas
   ========================================================================== */

.siga-tabla-envoltorio { overflow-x: auto; -webkit-overflow-scrolling: touch; }

.siga-tabla { width: 100%; border-collapse: collapse; font-size: .9rem; }
.siga-tabla th {
    text-align: left; font-weight: 650; font-size: .78rem;
    text-transform: uppercase; letter-spacing: .04em;
    color: var(--siga-texto-suave);
    padding: var(--siga-e3) var(--siga-e4);
    border-bottom: 1px solid var(--siga-borde);
    background: var(--siga-superficie-2);
    white-space: nowrap;
}
.siga-tabla td {
    padding: var(--siga-e3) var(--siga-e4);
    border-bottom: 1px solid var(--siga-borde);
    vertical-align: middle;
}
.siga-tabla tbody tr:hover { background: var(--siga-primario-50); }
.siga-tabla tbody tr:last-child td { border-bottom: 0; }

/* Números tabulares: sin esto las columnas de notas no alinean */
.siga-tabla .num, .num {
    font-variant-numeric: tabular-nums;
    text-align: right;
}

/* ==========================================================================
   Estados vacíos
   ========================================================================== */

.siga-vacio {
    text-align: center;
    padding: var(--siga-e7) var(--siga-e5);
    color: var(--siga-texto-suave);
}
.siga-vacio__icono { font-size: 2.5rem; opacity: .35; margin-bottom: var(--siga-e3); }
.siga-vacio__titulo { font-weight: 650; color: var(--siga-texto); margin-bottom: var(--siga-e2); }
.siga-vacio__acciones { margin-top: var(--siga-e4); display: flex; gap: var(--siga-e2); justify-content: center; flex-wrap: wrap; }

/* ==========================================================================
   Pantallas centradas (login, instalador)
   ========================================================================== */

.siga-centro {
    min-height: 100vh;
    display: flex; align-items: center; justify-content: center;
    padding: var(--siga-e5) var(--siga-e4);
    background:
        radial-gradient(900px 500px at 15% -10%, var(--siga-primario-100), transparent 60%),
        radial-gradient(700px 400px at 100% 110%, #e6f6f0, transparent 55%),
        var(--siga-fondo);
}

.siga-panel {
    width: 100%; max-width: 420px;
    background: var(--siga-superficie);
    border: 1px solid var(--siga-borde);
    border-radius: var(--siga-radio-lg);
    box-shadow: var(--siga-sombra-3);
    padding: var(--siga-e6);
}
.siga-panel--ancho { max-width: 760px; }

.siga-marca { text-align: center; margin-bottom: var(--siga-e5); }
.siga-marca__logo {
    display: inline-flex; align-items: center; justify-content: center;
    width: 52px; height: 52px;
    background: var(--siga-primario-600); color: #fff;
    border-radius: 14px;
    font-weight: 800; font-size: 1.15rem; letter-spacing: .02em;
    margin-bottom: var(--siga-e3);
    box-shadow: var(--siga-sombra-2);
}
.siga-marca__nombre { font-size: 1.3rem; font-weight: 700; margin: 0; }
.siga-marca__sub { color: var(--siga-texto-suave); font-size: .875rem; margin: 0; }

/* ==========================================================================
   Wizard / pasos
   ========================================================================== */

.siga-pasos {
    display: flex; align-items: flex-start; justify-content: space-between;
    list-style: none; margin: 0 0 var(--siga-e6); padding: 0;
    counter-reset: paso;
}
.siga-pasos__item {
    flex: 1; text-align: center; position: relative;
    font-size: .72rem; color: var(--siga-texto-tenue); font-weight: 600;
}
.siga-pasos__item::before {
    counter-increment: paso; content: counter(paso);
    display: flex; align-items: center; justify-content: center;
    width: 30px; height: 30px; margin: 0 auto var(--siga-e2);
    border-radius: 50%;
    background: var(--siga-superficie); color: var(--siga-texto-tenue);
    border: 2px solid var(--siga-borde-fuerte);
    font-size: .8rem; font-weight: 700;
}
.siga-pasos__item::after {
    content: ''; position: absolute; top: 15px; left: 50%; right: -50%;
    height: 2px; background: var(--siga-borde); z-index: -1;
}
.siga-pasos__item:last-child::after { display: none; }
.siga-pasos__item.activo { color: var(--siga-primario-700); }
.siga-pasos__item.activo::before {
    background: var(--siga-primario-600); color: #fff; border-color: var(--siga-primario-600);
}
.siga-pasos__item.hecho { color: var(--siga-exito); }
.siga-pasos__item.hecho::before {
    content: '✓'; background: var(--siga-exito); color: #fff; border-color: var(--siga-exito);
}

/* ==========================================================================
   Lista de comprobación (instalador)
   ========================================================================== */

.siga-check { list-style: none; margin: 0; padding: 0; }
.siga-check__item {
    display: flex; gap: var(--siga-e3); align-items: flex-start;
    padding: var(--siga-e3) 0;
    border-bottom: 1px solid var(--siga-borde);
}
.siga-check__item:last-child { border-bottom: 0; }
.siga-check__estado {
    flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: .7rem; font-weight: 700; color: #fff; margin-top: 2px;
}
.siga-check__estado--ok    { background: var(--siga-exito); }
.siga-check__estado--aviso { background: var(--siga-aviso); }
.siga-check__estado--error { background: var(--siga-error); }
.siga-check__nombre { font-weight: 600; font-size: .9rem; }
.siga-check__detalle { font-size: .82rem; color: var(--siga-texto-suave); }

/* ==========================================================================
   Layout de aplicación
   ========================================================================== */

.siga-app { min-height: 100vh; }

.siga-topbar {
    position: fixed; top: 0; left: 0; right: 0; height: var(--siga-topbar);
    background: var(--siga-superficie);
    border-bottom: 1px solid var(--siga-borde);
    display: flex; align-items: center; gap: var(--siga-e3);
    padding: 0 var(--siga-e4);
    z-index: 30;
}
.siga-topbar__marca {
    font-weight: 800; color: var(--siga-primario-700);
    letter-spacing: .02em; font-size: 1.05rem;
    display: flex; align-items: center; gap: var(--siga-e2);
}
.siga-topbar__espacio { flex: 1; }

/* Selector de contexto académico: SIEMPRE visible (documento 08) */
.siga-contexto {
    display: flex; align-items: center; gap: var(--siga-e2);
    padding: .3rem .7rem;
    background: var(--siga-primario-50);
    border: 1px solid var(--siga-primario-200);
    border-radius: 99px;
    font-size: .82rem; font-weight: 600; color: var(--siga-primario-700);
}
.siga-contexto--historico {
    background: var(--siga-aviso-bg);
    border-color: #f0c88a;
    color: var(--siga-aviso);
}
/* El contexto puede ser un enlace al año: no debe verse como texto subrayado */
a.siga-contexto { text-decoration: none; }
a.siga-contexto:hover { filter: brightness(.96); }

.siga-usuario {
    display: flex; align-items: center; gap: var(--siga-e2);
    background: none; border: 0; cursor: pointer;
    font-family: inherit; font-size: .875rem; color: var(--siga-texto);
    padding: .35rem .5rem; border-radius: var(--siga-radio-sm);
}
.siga-usuario:hover { background: var(--siga-superficie-2); }
.siga-usuario__avatar {
    width: 32px; height: 32px; border-radius: 50%;
    background: var(--siga-primario-600); color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: .8rem;
}
.siga-usuario__texto { text-align: left; line-height: 1.25; }
.siga-usuario__rol { font-size: .72rem; color: var(--siga-texto-suave); }

.siga-sidebar {
    position: fixed; top: var(--siga-topbar); bottom: 0; left: 0;
    width: var(--siga-sidebar);
    background: var(--siga-superficie);
    border-right: 1px solid var(--siga-borde);
    overflow-y: auto; padding: var(--siga-e4) var(--siga-e3);
    z-index: 20;
}
.siga-nav { list-style: none; margin: 0; padding: 0; }
.siga-nav__titulo {
    font-size: .7rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .06em; color: var(--siga-texto-tenue);
    padding: var(--siga-e4) var(--siga-e3) var(--siga-e2);
}
.siga-nav__enlace {
    display: flex; align-items: center; gap: var(--siga-e3);
    padding: .55rem var(--siga-e3);
    border-radius: var(--siga-radio-sm);
    color: var(--siga-texto-suave); font-size: .9rem; font-weight: 500;
    text-decoration: none; margin-bottom: 2px;
}
.siga-nav__enlace:hover { background: var(--siga-superficie-2); color: var(--siga-texto); text-decoration: none; }
.siga-nav__enlace.activo {
    background: var(--siga-primario-50); color: var(--siga-primario-700); font-weight: 650;
}
.siga-nav__icono { width: 20px; text-align: center; flex-shrink: 0; opacity: .8; }

.siga-contenido {
    margin-left: var(--siga-sidebar);
    padding: calc(var(--siga-topbar) + var(--siga-e5)) var(--siga-e5) var(--siga-e6);
}
.siga-contenido__cabecera { margin-bottom: var(--siga-e5); }
.siga-migas {
    font-size: .8rem; color: var(--siga-texto-tenue); margin-bottom: var(--siga-e2);
}
.siga-migas a { color: var(--siga-texto-suave); }

/* --- Retícula --- */
.siga-grid { display: grid; gap: var(--siga-e4); }
.siga-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.siga-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.siga-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.siga-grid--auto { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }

/* ==========================================================================
   Responsive
   Criterio de aceptación: ninguna pantalla produce scroll horizontal a 360px
   ========================================================================== */

@media (max-width: 992px) {
    .siga-sidebar {
        transform: translateX(-100%);
        transition: transform .2s ease;
        box-shadow: var(--siga-sombra-3);
    }
    .siga-sidebar.abierto { transform: translateX(0); }
    .siga-contenido { margin-left: 0; padding-left: var(--siga-e4); padding-right: var(--siga-e4); }
    .siga-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .siga-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 576px) {
    body { font-size: 14px; }
    .siga-grid--2, .siga-grid--3, .siga-grid--4 { grid-template-columns: 1fr; }
    .siga-panel { padding: var(--siga-e5) var(--siga-e4); border-radius: var(--siga-radio); }
    .siga-tarjeta__cuerpo { padding: var(--siga-e4); }
    .siga-contexto { font-size: .75rem; padding: .25rem .5rem; }
    .siga-usuario__texto { display: none; }
    .siga-pasos__item { font-size: 0; }
    .siga-pasos__item::before { margin-bottom: 0; }
    .siga-btn { width: 100%; }
    .siga-acciones .siga-btn { width: auto; }
}

.siga-menu-movil { display: none; }
@media (max-width: 992px) {
    .siga-menu-movil {
        display: inline-flex; align-items: center; justify-content: center;
        width: 40px; height: 40px;
        background: none; border: 1px solid var(--siga-borde);
        border-radius: var(--siga-radio-sm); cursor: pointer; font-size: 1.1rem;
    }
}

/* ==========================================================================
   Utilidades
   ========================================================================== */

.u-flex   { display: flex; }
.u-entre  { justify-content: space-between; }
.u-centro { align-items: center; }
.u-gap2   { gap: var(--siga-e2); }
.u-gap3   { gap: var(--siga-e3); }
.u-gap4   { gap: var(--siga-e4); }
.u-envolver { flex-wrap: wrap; }
.u-mt3 { margin-top: var(--siga-e3); }
.u-mt4 { margin-top: var(--siga-e4); }
.u-mt5 { margin-top: var(--siga-e5); }
.u-mb0 { margin-bottom: 0; }
.u-mb4 { margin-bottom: var(--siga-e4); }
.u-suave  { color: var(--siga-texto-suave); }
.u-tenue  { color: var(--siga-texto-tenue); }
.u-peq    { font-size: .82rem; }
.u-derecha{ text-align: right; }
.u-centrado { text-align: center; }

/* ==========================================================================
   Impresión
   ========================================================================== */

@media print {
    .siga-topbar, .siga-sidebar, .siga-btn, .siga-menu-movil { display: none !important; }
    .siga-contenido { margin: 0; padding: 0; }
    body { background: #fff; }
    .siga-tarjeta { border: 1px solid #ccc; box-shadow: none; }
}

/* Respeta la preferencia del sistema de reducir animaciones */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
    }
}
