/* =============================================================================
   CODERS ACADEMICS · tema visual del Campus (apéndice de SIAC) · v1.0.0 (04/11/2026)
   Mismo sistema visual de SIAC: noche, índigo, azul SIAC y ámbar · Sora + Nunito Sans
   (fuentes alojadas en el propio servidor: campus-assets/fonts, licencia OFL).
   Se carga de último en todas las páginas del Campus: celular primero (app móvil).
   ============================================================================= */
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url(campus-assets/fonts/sora-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url(campus-assets/fonts/sora-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Sora';font-style:normal;font-weight:800;font-display:swap;src:url(campus-assets/fonts/sora-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:400;font-display:swap;src:url(campus-assets/fonts/nunito-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:600;font-display:swap;src:url(campus-assets/fonts/nunito-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:700;font-display:swap;src:url(campus-assets/fonts/nunito-sans-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:800;font-display:swap;src:url(campus-assets/fonts/nunito-sans-latin-800-normal.woff2) format('woff2')}

:root{
 --ca-noche:#0B1530;--ca-noche-2:#16224A;--ca-indigo:#3B2A7A;--ca-azul:#1D4ED8;--ca-azul-oscuro:#1E3A8A;--ca-azul-claro:#E6EEFD;
 --ca-ambar:#F5B700;--ca-ambar-hover:#E0A700;--ca-ambar-claro:#FFF1C2;--ca-ambar-texto:#6B4500;--ca-coral:#F0663E;
 --ca-fondo:#F5F7FB;--ca-texto:#141C30;--ca-texto-2:#34405A;--ca-tenue:#4A5672;--ca-borde:#E1E7F2;
 --ca-f-titulo:'Sora',system-ui,sans-serif;--ca-f-texto:'Nunito Sans',system-ui,sans-serif;
 /* Variables del Campus y de Mi Aula, llevadas a la paleta SIAC */
 --navy:var(--ca-noche);--blue:var(--ca-azul);--bg:var(--ca-fondo);--line:var(--ca-borde);--muted:var(--ca-tenue);--teal:#16B364;
 --sia-navy:var(--ca-noche);--sia-navy2:var(--ca-noche-2);--sia-blue:var(--ca-azul);--sia-gold:var(--ca-ambar);--sia-gold2:var(--ca-ambar);
 --sia-bg:var(--ca-fondo);--sia-line:var(--ca-borde);--sia-muted:var(--ca-tenue);--sia-ink:var(--ca-texto);--sia-a:var(--ca-azul);
}
body{font-family:var(--ca-f-texto);background:var(--ca-fondo);color:var(--ca-texto)}
h1,h2,h3,.campus-brand,.chapter-title,.sia-top h1{font-family:var(--ca-f-titulo);letter-spacing:-.01em}
a{color:var(--ca-azul)}
a:focus-visible,button:focus-visible,summary:focus-visible,:focus-visible{outline:3px solid var(--ca-ambar);outline-offset:3px}

/* Encabezado del Campus */
.campus-header{background:var(--ca-fondo);color:var(--ca-texto)}
.campus-ribbon{background:var(--ca-noche);border-top:3px solid var(--ca-ambar)}
.campus-brand{font-family:var(--ca-f-titulo);font-size:24px;letter-spacing:-.02em}
.campus-brand img{width:64px;height:64px;border:0;border-radius:18px;background:transparent}
.campus-brand small{color:var(--ca-ambar);font-family:var(--ca-f-texto);font-weight:800;letter-spacing:.14em}
.campus-brand em{color:#9FB0D3}
.campus-role{border-color:#F5B70080;color:var(--ca-ambar-claro)}
.campus-nav a span{color:var(--ca-ambar)}
.campus-nav a[aria-current=page]{box-shadow:inset 0 -3px var(--ca-ambar)}
.campus-eyebrow{color:var(--ca-indigo);font-weight:800;letter-spacing:.14em}
.campus-welcome h1{color:var(--ca-noche)}
.campus-motif img{border-radius:56px;background:transparent;box-shadow:0 24px 48px #3b2a7a33}

/* Botones: los del Campus usan var(--blue) = azul SIAC (no se sobrescriben aquí para no tapar los botones especiales). */
.campus-header .secondary,.campus-header button.secondary{background:#ffffff14;border:1px solid #ffffff40;color:#fff}
.card,.chapter{border-color:var(--ca-borde);border-radius:20px;box-shadow:0 20px 48px rgba(11,21,48,.06)}
.eyebrow{color:var(--ca-indigo)}
footer{color:var(--ca-tenue)}
footer b{color:var(--ca-indigo)}

/* Mi Aula (perfil docente) */
.sia-top{background:linear-gradient(115deg,var(--ca-noche),var(--ca-noche-2) 60%,var(--ca-indigo));border-bottom-color:var(--ca-ambar)}
.sia-eyebrow{color:var(--ca-ambar)}
.sia-btn{border-radius:12px}

/* Marca en el pie */
.ca-pie{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.ca-pie img{width:28px;height:28px}

@media (max-width:650px){
 .campus-brand{font-size:19px;gap:10px}
 .campus-brand img{width:48px;height:48px;border-radius:14px}
 .campus-ribbon-inner{padding:12px 16px;gap:12px;flex-wrap:wrap}
}

/* ---------- Menús (estudiantes y docentes) con el estilo SIAC ---------- */
/* Pestañas del curso */
.cu-tabs{border-bottom-color:var(--ca-borde)}
.cu-tabs a{background:#EEF1F8;color:var(--ca-texto-2);font-family:var(--ca-f-titulo);font-weight:700;font-size:14px}
.cu-tabs a:hover{background:var(--ca-azul-claro);color:var(--ca-noche)}
.cu-tabs a.is-on,.cu-tabs a[aria-current=page]{background:var(--ca-noche);color:#fff;border-color:var(--ca-noche);box-shadow:inset 0 -3px 0 var(--ca-ambar)}
.cu-tabs em{background:var(--ca-coral)}
.cu-tabs a.cu-tab-extra{background:#EFEAFB;color:var(--ca-indigo)}
/* Pestañas de asignaturas del estudiante (Mi Aula) */
.doc-tab{background:#EEF1F8;color:var(--ca-texto-2);font-family:var(--ca-f-titulo)}
.doc-tab[aria-current=page],.doc-tab.is-on{background:var(--ca-noche);color:#fff;border-color:var(--ca-ambar)}
/* Menú lateral del panel docente */
.sia-panel-body,.sia-frame-menu{background:var(--ca-noche)}
.sia-marca strong{font-family:var(--ca-f-titulo)}
.sia-marca small{color:var(--ca-ambar)}
.sia-menu-link.is-activo{background:#ffffff12;box-shadow:inset 3px 0 0 var(--ca-ambar)}
.sia-tabs a[aria-current=page]{background:var(--ca-noche);border-color:var(--ca-noche);box-shadow:inset 0 -3px 0 var(--ca-ambar)}
/* Botones de navegación del Campus */
.nav-pills a,.pill-nav a{font-family:var(--ca-f-titulo)}
/* Tablas anchas: siempre con desplazamiento dentro de su caja (app móvil) */
table.mc-vector{display:block;max-width:100%;overflow-x:auto}

/* ---------- Banner de bienvenida: franja compacta, profesional (v1.0.1) ---------- */
body .campus-header .campus-welcome{display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:16px;max-width:1112px;width:calc(100% - 32px);margin:14px auto 0;padding:14px 20px;border:0;border-radius:18px;
 background:radial-gradient(circle at 100% 0,#F5B70033,transparent 40%),linear-gradient(110deg,var(--ca-noche) 0%,var(--ca-noche-2) 55%,var(--ca-indigo) 100%);color:#fff;box-shadow:0 14px 30px -18px #0b153099;text-align:left}
body .campus-header .campus-welcome h1{color:#fff;font-size:clamp(18px,2.2vw,24px);line-height:1.2;margin:0;max-width:none;text-align:left;font-weight:800}
body .campus-header .campus-eyebrow{display:block;margin:0 0 4px;font-size:10px;color:var(--ca-ambar);letter-spacing:.16em}
body .campus-header .campus-eyebrow:before{background:var(--ca-coral)}
body .campus-header .campus-subtitle{display:block;margin:4px 0 0;font-size:13px;color:#C9D5EE;font-weight:600}
body .campus-header .campus-motif{display:block;justify-self:auto;flex:none;border-radius:14px;overflow:visible;background:transparent;box-shadow:none}
body .campus-header .campus-motif img{width:52px;height:52px;border-radius:14px;box-shadow:0 0 0 2px #ffffff22}
body.login-page .campus-header .campus-motif{display:block}
@media (max-width:650px){
 body .campus-header .campus-welcome{width:calc(100% - 32px);margin:12px auto 0;padding:12px 14px;gap:12px;border-radius:14px}
 body .campus-header .campus-motif img{width:42px;height:42px;border-radius:12px}
 body .campus-header .campus-subtitle{font-size:12px}
}

/* ---------- Sello del semillero (logo del cerebro): identidad de The Coders ---------- */
.ca-sello{display:inline-block;width:20px;height:20px;border-radius:6px;vertical-align:-5px;margin-right:6px;object-fit:cover;background:#0c345b;box-shadow:0 0 0 1px #ffffff33}
.campus-brand em{display:flex;align-items:center}
.ca-pie-sello{border-radius:8px;object-fit:cover;background:#0c345b}
.ca-sello-txt{display:flex;align-items:center;margin-top:4px;font-size:11px;color:#9FB0D3}
.ca-sello-txt .ca-sello{width:18px;height:18px;margin-right:5px;vertical-align:0}
.campus-brand img.ca-sello,.sia-marca img.ca-sello{width:20px;height:20px;border-radius:6px;border:0;flex:none}
.sia-marca img.ca-sello{width:18px;height:18px}
@media (max-width:650px){.campus-brand img.ca-sello{width:18px;height:18px}}
