:root{--bg:#06090b;--panel:#0c1115;--panel2:#10161b;--line:#263039;--gold:#e3b84f;--gold2:#ffda72;--text:#f4f1e9;--muted:#91a1b2;--green:#22d58b;--red:#ff4d5d;--amber:#f0b94d}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 20%,#161209 0,#070a0c 35%,#040607 100%);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#0b1014;border:1px solid #80651f;color:var(--gold2);padding:12px 18px;letter-spacing:.03em}button:hover:not(:disabled){border-color:var(--gold);background:#17160f}button:disabled{opacity:.35;cursor:not-allowed}.primary,.gold{background:linear-gradient(135deg,#c99b32,#f0ca65);color:#070707;border:0;font-weight:800}.wide{width:100%}.muted{color:var(--muted)}.eyebrow,.lesson-kicker{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.linkbtn{border:0;background:none;padding:0;color:var(--gold)}.login{width:min(480px,calc(100% - 32px));margin:12vh auto;padding:38px;background:#0d1216;border:1px solid #715a1f;box-shadow:0 30px 80px #000}.login h1{font-family:Georgia,serif;font-size:42px}.login em{color:var(--gold)}.brand{color:var(--gold);font-weight:900;letter-spacing:.18em}.brand small{display:block;color:#fff;font-size:10px;margin-top:8px}.field{display:block;margin:18px 0}.field span{display:block;color:#9eb0c3;margin-bottom:8px}.field input,.field select,.field textarea,.modalbox input,.modalbox select,.modalbox textarea{width:100%;background:#05080a;border:1px solid #303940;color:#fff;padding:14px}.security-note{margin-top:26px;border-top:1px solid #293138;padding-top:18px;color:#7e90a1;font-size:11px;letter-spacing:.15em}.error{color:#ff7d87}.top{display:flex;justify-content:space-between;align-items:center;padding:26px 0;border-bottom:1px solid #222b31}.account{color:#9eb0c3}.shell{max-width:1180px;margin:auto}.admin-shell{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.admin-side{background:#080c0f;border-right:1px solid #242c31;padding:22px 14px;position:sticky;top:0;height:100vh}.side-brand{display:flex;gap:10px;align-items:center;padding-bottom:20px;border-bottom:1px solid #222}.monogram{border:1px solid var(--gold);color:var(--gold);padding:10px}.side-brand b{font-size:11px;color:var(--gold);letter-spacing:.12em}.side-brand small{display:block;font-size:7px;color:#8997a5;margin-top:5px}.admin-side nav{display:grid;gap:4px;margin-top:25px}.admin-side nav a{padding:12px;color:#9fb0c0;text-decoration:none;font-size:12px}.admin-side nav a.active{background:#11171b;border-left:2px solid var(--gold);color:#fff}.admin-side nav i{float:right;font-style:normal;font-size:8px;text-transform:uppercase}.side-course{position:absolute;bottom:70px;left:14px;right:14px;border:1px solid #3a3423;padding:12px}.side-course span,.side-course small{display:block;color:#8796a4;font-size:8px}.side-course b{display:block;font-size:10px;margin:8px 0}.side-footer{position:absolute;bottom:22px;font-size:8px;color:#778693}.admin-main{padding:0 36px 60px}.admin-main h1{font-family:Georgia,serif;font-size:42px}.admin-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.kpi,.student-card,.admin-lesson,.module-admin{background:#0d1216;border:1px solid #293138}.kpi{padding:20px}.kpi strong{display:block;color:var(--gold);font:32px Georgia}.student-card{margin:18px 0}.student-summary{display:grid;grid-template-columns:45px 1.2fr 2fr auto auto;gap:14px;align-items:center;padding:18px}.student-avatar{width:38px;height:38px;border:1px solid #80651f;border-radius:50%;display:grid;place-items:center;color:var(--gold)}.student-identity h3{margin:0}.student-identity p{margin:6px 0 0;color:#7f92a4}.pill,.flag{font-size:9px;border:1px solid #34404a;padding:6px 8px;text-transform:uppercase}.flag.ok{color:var(--green);border-color:#1d6c51}.flag.warn{color:var(--amber)}.progress{height:5px;background:#20282f}.progress i{display:block;height:100%;background:linear-gradient(90deg,#aa7a18,var(--gold2))}.progress-label{display:flex;justify-content:space-between;font-size:10px}.student-card-actions{display:flex;gap:8px}.preview-student{border-color:#1f7255;color:var(--green)}.student-detail{display:none;border-top:1px solid #283137;padding:18px}.student-detail.open{display:block}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail-title{display:flex;justify-content:space-between;color:var(--gold);font-size:10px}.evidence-row,.device-row{display:flex;gap:10px;align-items:center;border-bottom:1px solid #222b31;padding:12px 0}.evidence-row>div:first-child,.device-row>div:first-child{flex:1}.evidence-row small,.device-row small{display:block;color:#7f91a0}.evidence-status{font-size:9px;text-transform:uppercase}.validation-box{margin-top:18px;border:1px solid #293238;padding:16px}.admin-lesson{display:grid;grid-template-columns:70px 1fr 150px;gap:20px;padding:18px;margin:10px 0}.admin-lesson-num{font:28px Georgia;color:var(--gold)}.admin-lesson h3{margin:5px 0}.admin-lesson p{color:#8fa0b0}.admin-lesson-state{display:grid;align-content:center;gap:8px}.notice{border-left:2px solid var(--gold);padding:10px;background:#14130e;color:#c8b987}.modal{position:fixed;inset:0;background:#000b;display:grid;place-items:center;z-index:1000;padding:20px}.modalbox{width:min(700px,100%);background:#10161b;border:1px solid #80651f;padding:32px;box-shadow:0 30px 100px #000}.modalbox h2{font-size:28px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.code{padding:18px;background:#050708;border:1px solid #28323a;letter-spacing:.3em}.previewbar{position:fixed;z-index:90;top:0;left:0;right:0;height:44px;background:#e2b64d;color:#080808;display:flex;justify-content:center;gap:20px;align-items:center;font-size:12px;letter-spacing:.08em}.previewbar button{padding:7px 12px;border-color:#111;color:#111;background:transparent}.previewbar~.student-side,.previewbar~.student-main{padding-top:44px}
/* PREMIUM STUDENT EXPERIENCE */
.student-app{min-height:100vh;display:grid;grid-template-columns:180px 1fr;background:radial-gradient(circle at 80% 12%,#15130d 0,#070a0c 32%,#040607 100%)}.student-side{background:linear-gradient(180deg,#080d10,#06090b);border-right:1px solid #263038;padding:22px 14px;position:fixed;left:0;top:0;bottom:0;width:180px;z-index:20}.logo-card{display:flex;gap:10px;align-items:center;border-bottom:1px solid #273038;padding-bottom:18px}.logo-card img{width:38px;height:38px;object-fit:cover;border:1px solid var(--gold)}.logo-card b{display:block;color:var(--gold);font-size:10px;letter-spacing:.14em}.logo-card small{font-size:8px;letter-spacing:.15em}.student-side nav{display:grid;gap:7px;margin-top:25px}.student-side nav a{padding:13px 10px;color:#a6b4c2;font-size:12px;border-left:2px solid transparent}.student-side nav a.active{color:#ffe194;background:linear-gradient(90deg,#3a2e10aa,transparent);border-left-color:var(--gold)}.student-side nav span{margin-left:8px}.student-quote{position:absolute;left:14px;right:14px;bottom:22px;border:1px solid #69541d;padding:18px;color:#fff;font:13px Georgia;line-height:1.6;letter-spacing:.08em}.student-quote b{color:var(--gold)}.student-quote small{display:block;margin-top:14px;font:8px Inter;letter-spacing:.18em;color:#aaa}.student-main{grid-column:2;padding:0 24px 40px;min-width:0}.student-top{height:62px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #252e34;color:#9ca9b4;font-size:10px;letter-spacing:.13em}.student-top i{color:var(--gold);font-style:normal}.avatar{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;color:#fff;margin-left:12px}.welcome{height:125px;margin:18px 0;display:grid;grid-template-columns:1fr 360px;overflow:hidden;border:1px solid #252e34;background:#0b1013}.welcome>div:first-child{padding:22px}.welcome h1{margin:0 0 8px;font-size:26px}.welcome p{margin:0;color:#a5b2bd;line-height:1.5}.welcome-art{position:relative}.welcome-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b1013,transparent 50%)}.welcome-art img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.1)}.student-columns{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px}.learning-column{min-width:0}.module-premium,.lesson-premium,.side-premium{background:linear-gradient(145deg,#0d1317,#090d10);border:1px solid #283239;box-shadow:0 12px 35px #0005}.module-premium{padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.module-premium span,.activity-head>span{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.15em}.module-premium h2{margin:8px 0 4px;font-size:24px}.module-premium p{margin:0;color:#9aa9b7}.progress-ring,.big-ring{--p:0;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--gold) calc(var(--p)*1%),#293137 0);position:relative}.progress-ring:after,.big-ring:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#0b1014}.progress-ring b,.progress-ring small,.big-ring strong{z-index:1}.progress-ring small{position:absolute;bottom:-16px;font-size:7px;color:#7d8c99}.lesson-tabs{display:grid;grid-template-columns:repeat(9,1fr);margin:10px 0;background:#0c1115;border:1px solid #283138}.lesson-tab{border:0;border-right:1px solid #222c33;padding:12px 4px;background:transparent;color:#9ba9b6;min-width:0}.lesson-tab b{display:grid;place-items:center;width:30px;height:30px;border:1px solid #46515b;border-radius:50%;margin:auto;color:#fff}.lesson-tab small{display:block;font-size:8px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-tab.active{background:linear-gradient(180deg,#33280caa,#11140f);box-shadow:inset 0 -2px var(--gold)}.lesson-tab.active b{background:var(--gold);color:#090909;box-shadow:0 0 18px #d9ad4d88}.lesson-tab.done b{border-color:var(--green);color:var(--green)}.lesson-premium{padding:18px}.lesson-titlebar{display:flex;justify-content:space-between;gap:20px}.lesson-titlebar span{color:var(--gold);font-size:10px;letter-spacing:.15em}.lesson-titlebar h2{font-size:25px;margin:6px 0}.lesson-titlebar p{margin:0 0 14px;color:#9baab7}.availability{align-self:start;border:1px solid #1d6d50;padding:8px 10px!important;color:var(--green)!important;white-space:nowrap}.availability.no{border-color:#654f20;color:var(--amber)!important}.video-stage{height:340px;position:relative;overflow:hidden;border:1px solid #20282e;background:#000}.video-stage img{width:100%;height:100%;object-fit:cover}.video-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0008,#0001),linear-gradient(0deg,#000b,transparent 45%)}.video-brand{position:absolute;top:20px;left:22px;border-left:2px solid var(--gold);padding-left:12px}.video-brand b{display:block;color:var(--gold);letter-spacing:.15em}.video-brand small{font-size:8px;letter-spacing:.2em}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border:2px solid #fff;border-radius:50%;background:#080a0bbd;color:#fff;font-size:24px;padding:0}.video-caption{position:absolute;left:22px;bottom:20px}.video-caption b{display:block;font-size:21px}.video-caption small{color:#a7b3bd}.video-actions{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:8px;margin:9px 0 14px}.activity-card{margin-top:12px;border:1px solid #2b343b;background:linear-gradient(145deg,#0e1418,#090d10);padding:20px}.activity-head h3{font-size:24px;margin:8px 0}.activity-head p{margin:0;color:#9eacb9}.instruction{margin-top:16px;padding:16px;border:1px solid #6f561c;background:#11110d}.instruction span{font-size:9px;color:var(--gold);letter-spacing:.14em}.instruction span b{float:right;border:1px solid #71581d;padding:4px}.instruction p{line-height:1.6;color:#c0cad2}.evidence-drop{margin-top:12px;border:1px dashed #7a8791;padding:25px;text-align:center}.evidence-drop.st-green{border-color:var(--green);background:#07140f}.evidence-drop.st-red{border-color:#6f343a}.evidence-drop.st-amber{border-color:var(--amber);background:#171207}.upload-icon{font-size:32px;color:#9aa9b5}.evidence-drop h4{font-size:18px;margin:8px}.evidence-drop p{color:#9aa9b5}.evidence-drop small{display:block;margin-top:10px;text-transform:uppercase;letter-spacing:.14em}.complete-strip{margin-top:12px;border:1px solid #283239;padding:16px;display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center}.complete-strip.complete{border-color:#1d6c50;background:#07120e}.complete-strip h3{margin:0}.complete-strip p{margin:5px 0 0;color:#8fa0ad}.student-right{display:grid;align-content:start;gap:12px}.side-premium{padding:18px}.big-ring{width:105px;height:105px;margin:18px auto;background:conic-gradient(var(--green) calc(var(--p)*1%),#2b343c 0)}.big-ring:after{inset:9px}.big-ring strong{font-size:25px}.metric{display:flex;justify-content:space-between;border-top:1px solid #263038;padding:12px 0;font-size:11px}.metric b{font-weight:500}.quote-card{border-color:#6e561d}.quote-card>span{font:36px Georgia;color:var(--gold)}.quote-card p{font:15px Georgia;letter-spacing:.13em;line-height:1.5}.quote-card small{font-size:8px;letter-spacing:.15em}.state-row{display:flex;gap:10px;padding:9px 0}.state-row i{width:13px;height:13px;border:2px solid currentColor;border-radius:50%;margin-top:2px}.state-row span{font-size:11px}.state-row small{display:block;margin-top:3px}.st-red{color:var(--red)}.st-amber{color:var(--amber)}.st-green{color:var(--green)}.st-gray{color:#75838e}.help-card p{color:#9baab6;font-size:12px;line-height:1.5}.help-card button{width:100%}.next-card{position:relative}.next-card b{display:block;font-size:11px;margin-top:10px;padding-right:20px}.next-card>span{position:absolute;right:15px;bottom:15px;color:var(--gold)}.simple-complete{border-color:#3b3422}
@media(max-width:1100px){.student-columns{grid-template-columns:1fr}.student-right{grid-template-columns:repeat(2,1fr)}.lesson-tabs{overflow-x:auto;grid-template-columns:repeat(9,100px)}.welcome{grid-template-columns:1fr 280px}.admin-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.student-app{display:block}.student-side{display:none}.student-main{padding:0 12px}.student-columns{display:block}.student-right{display:grid;grid-template-columns:1fr}.welcome{grid-template-columns:1fr;height:auto}.welcome-art{display:none}.video-stage{height:230px}.video-actions{grid-template-columns:1fr}.student-summary{grid-template-columns:40px 1fr}.student-progress,.student-flags{grid-column:1/-1}.admin-shell{display:block}.admin-side{display:none}.admin-main{padding:0 14px}.detail-grid{grid-template-columns:1fr}}

/* V4.1 — navigation, free lesson flow and premium polish */
.student-side nav a{cursor:pointer;text-decoration:none}.next-card-button{width:100%;text-align:left;color:inherit;cursor:pointer;background:linear-gradient(145deg,#0d1317,#090d10)!important}.next-card-button:hover,.next-lesson-btn:hover{border-color:var(--gold);transform:translateY(-1px)}.next-lesson-btn{border-color:var(--gold);color:var(--gold);cursor:pointer}.module-end-btn{opacity:.55}.quote-card{position:relative;overflow:hidden;padding:22px 20px 18px}.quote-card:after{content:"";position:absolute;width:90px;height:90px;border:1px solid #4e401e;border-radius:50%;right:-50px;top:-45px}.quote-card .quote-mark{font:46px Georgia;color:var(--gold);line-height:.7}.quote-card p{font:16px Georgia;letter-spacing:.12em;line-height:1.55;margin:18px 0 22px}.quote-sign{display:flex;align-items:center;justify-content:flex-end;gap:10px}.quote-sign i{height:1px;width:36px;background:var(--gold);opacity:.7}.quote-sign small{text-align:right;color:#d8c48c;letter-spacing:.17em}.section-hero{padding:38px 4px 26px;border-bottom:1px solid #252e34;margin-bottom:18px}.section-hero h1{font:42px Georgia;margin:8px 0}.section-hero p{color:#9dacb8;max-width:760px}.student-section-grid{display:grid;gap:14px}.premium-panel{background:linear-gradient(145deg,#0d1317,#090d10);border:1px solid #283239;box-shadow:0 12px 35px #0005;padding:24px}.progress-overview{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:24px}.progress-overview .big-ring{margin:0 auto}.progress-overview h2,.certificate-page h2,.benefit-feature h2,.support-page h2{font:28px Georgia;margin:8px 0}.progress-overview p,.certificate-page p,.benefit-feature p,.support-page p{color:#9dacb8;line-height:1.65}.progress-lesson{display:grid;grid-template-columns:1fr auto;gap:6px 18px;padding:16px 0;border-bottom:1px solid #253038}.progress-lesson:last-child{border-bottom:0}.progress-lesson small{grid-column:1/-1;color:#8999a6}.progress-lesson .good{color:var(--green)}.progress-lesson .pending{color:var(--amber)}.evidence-page{display:grid;gap:0}.evidence-history{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid #253038}.evidence-history p{color:#8999a6;margin:6px 0 0;line-height:1.5}.status-chip{border:1px solid currentColor;padding:7px 10px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.certificate-page,.support-page{display:grid;grid-template-columns:100px 1fr;gap:28px;align-items:center}.certificate-seal,.support-icon{width:82px;height:82px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:38px Georgia}.certificate-page.ready{border-color:#276b53}.locked-message{display:inline-block;margin-top:10px;color:#8c9aa5}.benefit-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.benefit-feature{border-color:#6b551d}.support-page button{margin-top:12px}@media(max-width:760px){.progress-overview,.certificate-page,.support-page,.benefit-grid{grid-template-columns:1fr}.evidence-history{grid-template-columns:1fr}.section-hero h1{font-size:34px}}

/* ===== V4.2 · JERARQUÍA DE MÓDULO + IDENTIDAD PREMIUM ===== */
.student-app{grid-template-columns:230px 1fr}
.student-side{width:230px;padding:24px 18px;background:linear-gradient(180deg,#080d10 0%,#05080a 70%,#090b09 100%);box-shadow:18px 0 45px #0008}
.student-main{grid-column:2;padding-left:30px}
.logo-card{display:grid;grid-template-columns:82px 1fr;gap:14px;align-items:center;padding:4px 2px 24px;border-bottom:1px solid #303940;position:relative}
.logo-card:after{content:"";position:absolute;left:0;bottom:-1px;width:82px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.logo-card img{width:82px;height:82px;object-fit:cover;border-radius:50%;border:1px solid #b58b2d;box-shadow:0 0 0 5px #0b1013,0 0 30px #d4a52c26;filter:contrast(1.08)}
.logo-card b{font-family:Georgia,serif;font-size:16px;line-height:1.12;letter-spacing:.09em;color:#f1c653;text-shadow:0 0 18px #d7a82b22}
.logo-card small{display:inline-block;margin-top:10px;padding:5px 8px;border:1px solid #4b4024;color:#d8dde2;font-size:8px;letter-spacing:.2em;background:#0c1012}
.student-side nav{margin-top:28px;gap:8px}
.student-side nav a{padding:15px 13px;font-size:13px;border-radius:2px}
.student-side nav a.active{background:linear-gradient(90deg,#3c2f0fdd 0%,#1a170d88 68%,transparent);box-shadow:inset 0 0 22px #d7a92a0a}
.module-premium{padding:24px 28px;border-color:#3b3525;background:linear-gradient(120deg,#10161a 0%,#0a0e11 70%,#171207 130%);box-shadow:0 14px 42px #0006,inset 0 1px 0 #ffffff05}
.module-premium>div:first-child>span{display:block;font-family:Georgia,serif;font-size:25px;line-height:1;font-weight:700;letter-spacing:.07em;color:#f0c65b;margin-bottom:10px;text-shadow:0 0 22px #d8a82b1f}
.module-premium h2{font-size:27px;margin:0 0 8px;letter-spacing:.01em}
.module-premium p{font-size:14px;line-height:1.55}
@media(max-width:980px){.student-app{grid-template-columns:190px 1fr}.student-side{width:190px;padding:18px 12px}.logo-card{grid-template-columns:60px 1fr}.logo-card img{width:60px;height:60px}.logo-card b{font-size:13px}.student-main{padding-left:18px}.module-premium>div:first-child>span{font-size:22px}}

/* ===== V4.3 PREMIUM: jerarquía de módulo + identidad lateral ===== */
.student-app{grid-template-columns:238px 1fr}
.student-side{width:238px;padding:24px 20px;background:radial-gradient(circle at 50% 2%,#171208 0,#080c0f 27%,#05080a 100%);box-shadow:18px 0 45px #0008}
.student-main{grid-column:2;padding-left:34px}
.academy-brand{text-align:center;padding:4px 4px 25px;border-bottom:1px solid #3a3427;position:relative}
.academy-emblem{width:92px;height:92px;margin:0 auto 14px;border-radius:50%;padding:4px;border:1px solid #d7ad45;box-shadow:0 0 0 4px #0a0d0f,0 0 28px #d7ad4538;overflow:hidden;background:#050708}
.academy-emblem img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;transform:scale(1.16)}
.academy-name{font-family:Georgia,serif;color:#f1c85c;font-weight:800;font-size:18px;line-height:1.12;letter-spacing:.12em}
.academy-sub{margin-top:8px;color:#fff;font-size:10px;letter-spacing:.28em}
.academy-rule{margin-top:14px;display:flex;align-items:center;gap:7px;color:#8795a1;font-size:7px;letter-spacing:.14em;white-space:nowrap}
.academy-rule i{height:1px;background:#66521e;flex:1}
.student-side nav{margin-top:27px;gap:8px}
.student-side nav a{font-size:14px;padding:15px 12px}
.module-premium{min-height:145px;padding:25px 30px;border-color:#3a3426;background:linear-gradient(120deg,#11171b 0,#0a0e11 72%,#171208 100%)}
.module-premium .module-label{display:block;color:#f3c95c;font-size:30px!important;line-height:1;font-weight:900;letter-spacing:.13em;text-shadow:0 0 20px #d8ad4430;margin-bottom:14px}
.module-premium .module-label:after{content:"";display:inline-block;vertical-align:middle;width:150px;height:1px;margin-left:16px;background:linear-gradient(90deg,#e2b74e,transparent)}
.module-premium h2{font-size:28px;margin:0 0 8px}
.module-premium p{font-size:15px}
.student-quote{border-color:#80651f;background:linear-gradient(145deg,#0b1013,#121006);font-size:14px}
@media(max-width:900px){.student-app{display:block}.student-side{position:relative;width:100%;height:auto}.student-main{padding:0 14px 30px}.academy-emblem{width:78px;height:78px}.module-premium .module-label{font-size:24px!important}.module-premium .module-label:after{width:70px}}


/* ===== V4.4 FINAL: logo original intacto + progreso único ===== */
.academy-brand{padding:0 0 24px;border-bottom:1px solid #3a3427;background:none;text-align:center}
.academy-logo-original{display:block;width:100%;height:auto;max-height:245px;object-fit:contain;object-position:center;background:#050607;border:0;border-radius:0;box-shadow:none;filter:none;transform:none;margin:0 auto}
.module-premium{display:block;min-height:0;padding:25px 30px}
.module-premium .module-label{display:block!important;font-family:Georgia,serif!important;font-size:30px!important;line-height:1!important;font-weight:900!important;letter-spacing:.08em!important;color:#f3c95c!important;text-shadow:0 0 20px #d8ad4430;margin:0 0 14px!important}
.module-premium .module-label:after{display:none!important;content:none!important}
.module-premium h2{font-size:28px;margin:0 0 8px}
.module-premium p{font-size:15px;margin:0;color:#9aa9b7}
.welcome-art img,.video-stage img{filter:none}
@media(max-width:900px){.academy-logo-original{max-height:190px}.module-premium .module-label{font-size:24px!important}}


/* ===== V4.5 VALIDADO: cabecera lateral amplia + montañas ===== */
.student-side{padding:18px 18px 22px}
.academy-brand{padding:0 0 22px;border-bottom:1px solid #3a3427;overflow:hidden}
.academy-logo-original{width:calc(100% + 16px);max-width:none;height:210px;max-height:none;margin:0 -8px;object-fit:cover;object-position:center 48%;background:#050607}
.student-side nav{margin-top:24px}
.student-quote-wrap{position:absolute;left:14px;right:14px;bottom:18px;height:245px;display:flex;align-items:flex-end}
.student-quote-wrap .student-quote{position:relative;left:auto;right:auto;bottom:auto;width:100%;z-index:2;margin:0;background:linear-gradient(145deg,#0b1013ee,#121006ee);box-shadow:0 14px 34px #0009}
.mountain-art{position:absolute;left:-14px;right:-14px;bottom:108px;height:135px;overflow:hidden;z-index:1;opacity:.9;filter:drop-shadow(0 8px 18px #000)}
.mountain-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,#05080a 96%);pointer-events:none}
.mountain-art i{position:absolute;bottom:-52px;width:155px;height:155px;background:linear-gradient(135deg,#171a18 0 44%,#b7831e 45%,#35280f 49%,#090c0d 54%);transform:rotate(45deg) skew(-7deg,-7deg);border-top:1px solid #d0a13a;box-shadow:-8px -8px 18px #0008}
.mountain-art i:nth-child(1){left:-30px;height:120px;width:120px;bottom:-55px;opacity:.8}
.mountain-art i:nth-child(2){left:35px;height:150px;width:150px;bottom:-68px}
.mountain-art i:nth-child(3){left:105px;height:185px;width:185px;bottom:-86px;z-index:2}
.mountain-art i:nth-child(4){left:175px;height:145px;width:145px;bottom:-62px;opacity:.88}
.mountain-art i:nth-child(5){left:225px;height:195px;width:195px;bottom:-92px;opacity:.72}
@media(max-height:820px){.student-quote-wrap{height:190px}.mountain-art{height:92px;bottom:105px}.student-quote-wrap .student-quote{padding:13px}.academy-logo-original{height:178px}.student-side nav{margin-top:18px;gap:5px}.student-side nav a{padding:12px 11px}}
@media(max-width:900px){.academy-logo-original{width:100%;height:auto;max-height:260px;object-fit:contain;margin:0}.student-quote-wrap{position:relative;left:auto;right:auto;bottom:auto;height:245px;margin-top:28px}.student-side{padding-bottom:20px}}

/* ===== V4.6 CORRECCION: identidad consistente en todas las vistas + montañas aprobadas ===== */
/* El mismo encabezado de marca se mantiene en Mi formación, Mi progreso, Evidencias,
   Certificados, Beneficios y Soporte. */
.student-side .academy-brand{padding:0 0 22px;border-bottom:1px solid #3a3427;overflow:hidden;text-align:center;background:none}
.student-side .academy-logo-original{display:block;width:calc(100% + 16px);max-width:none;height:210px;max-height:none;margin:0 -8px;object-fit:cover;object-position:center 48%;border:0;border-radius:0;box-shadow:none;filter:none;transform:none;background:#050607}

/* Montañas reales como fondo: no polígonos CSS. La frase permanece encima. */
.student-quote-wrap{position:absolute;left:14px;right:14px;bottom:18px;height:280px;display:flex;align-items:flex-end;padding-top:112px;background-image:linear-gradient(180deg,transparent 0%,rgba(5,8,10,.10) 42%,#05080a 72%),url('/aula/assets/montanas-fondo.png');background-repeat:no-repeat;background-size:calc(100% + 28px) auto;background-position:center top;overflow:visible}
.student-quote-wrap .mountain-art{display:none!important}
.student-quote-wrap .student-quote{position:relative;left:auto;right:auto;bottom:auto;width:100%;z-index:2;margin:0;background:linear-gradient(145deg,rgba(11,16,19,.96),rgba(18,16,6,.96));box-shadow:0 14px 34px #0009}
@media(max-height:820px){.student-quote-wrap{height:225px;padding-top:72px;background-size:calc(100% + 20px) auto}.student-side .academy-logo-original{height:178px}}
@media(max-width:900px){.student-side .academy-logo-original{width:100%;height:auto;max-height:260px;object-fit:contain;margin:0}.student-quote-wrap{position:relative;left:auto;right:auto;bottom:auto;height:280px;margin-top:28px}}

/* ===== RELEASE CANDIDATE: montaña limpia + una sola frase ===== */
.student-quote-wrap{height:280px;padding-top:112px;background-image:linear-gradient(180deg,transparent 0%,rgba(5,8,10,.06) 46%,#05080a 73%),url('/aula/assets/montanas-fondo.png')!important;background-size:calc(100% + 28px) auto!important;background-position:center top!important;background-repeat:no-repeat!important;}
.student-quote-wrap .student-quote{z-index:3!important;}

/* ADMIN V5 */
.admin-shell{grid-template-columns:280px minmax(0,1fr)}.premium-admin-side{padding:26px 20px;background:linear-gradient(180deg,#080b0d,#070a0c 65%,#0d0b07)}.admin-brand{display:grid;grid-template-columns:82px 1fr;gap:15px;align-items:center;padding-bottom:24px;border-bottom:1px solid #283038}.admin-brand img{width:82px;height:82px;object-fit:cover;border:1px solid #7b6120}.admin-brand b{display:block;color:var(--gold);letter-spacing:.15em;font-size:13px}.admin-brand small{display:block;margin-top:8px;color:#a6b3bf;font-size:8px}.premium-admin-side nav{margin-top:24px;display:grid;gap:7px}.premium-admin-side nav a{display:grid;grid-template-columns:24px 1fr auto;align-items:center;min-height:52px;padding:0 14px;color:#aab8c6;border-left:3px solid transparent;text-decoration:none}.premium-admin-side nav a.active{color:#fff;background:linear-gradient(90deg,#3b2d0e,#11161a 80%);border-left-color:#f0c34e}.premium-admin-side nav i{font-size:8px;color:#7e91a4}.admin-side-bottom{position:absolute;left:20px;right:20px;bottom:22px}.admin-module-card{border:1px solid #55451f;padding:16px;background:#0c1013}.admin-module-card span,.admin-module-card small{display:block;color:#8797a6;font-size:8px}.admin-module-card b{display:block;margin:8px 0;font-size:11px}.admin-module-card hr{border:0;border-top:1px solid #252d33}.admin-main{padding:0 42px 70px}.admin-titlebar{display:flex;justify-content:space-between;align-items:end;padding:34px 0 22px;border-bottom:1px solid #273038}.admin-titlebar h1{margin:7px 0 0;font-size:38px}.admin-intro{margin:24px 0}.admin-intro h2{font:34px Georgia;margin:0 0 8px}.admin-intro p{color:#93a5b7}.kpi-grid.premium-kpis{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:12px}.kpi-card{text-align:left;min-height:150px;padding:20px;background:linear-gradient(145deg,#10161a,#0a0e11);border:1px solid #29343c;color:#fff;position:relative}.kpi-card span{display:block;font-size:10px;color:#b8c5d0}.kpi-card strong{display:block;font:42px Georgia;color:var(--gold);margin:13px 0}.kpi-card small{color:#7f91a2}.kpi-card i{position:absolute;right:14px;bottom:12px;color:#b99842;font-style:normal;font-size:8px}.admin-panel{background:#0b1014;border:1px solid #29343b;padding:22px;margin-top:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #273038;padding-bottom:18px;margin-bottom:8px}.panel-head h2{font-size:25px;margin:5px 0}.panel-head p{margin:0;color:#8fa1b2}.student-count{font:34px Georgia;color:var(--gold);text-align:center}.student-count small{display:block;font:8px Inter;color:#8192a1}.student-compact{display:grid;grid-template-columns:42px minmax(180px,1fr) minmax(120px,1fr) 45px auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #20292f}.student-compact small{display:block;color:#7f91a1}.mini-progress{height:5px;background:#202930}.mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#9e751b,#f0c653)}.module-filter{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.module-filter button{padding:18px;text-align:left;background:#0b1014;border:1px solid #2b353d}.module-filter button.active{border-color:#b58d2b;box-shadow:inset 4px 0 0 #e4b84d;background:linear-gradient(90deg,#211a0c,#0b1014 55%)}.module-filter b,.module-filter small{display:block}.module-filter small{color:#8294a4;margin-top:6px}.review-card{display:grid;grid-template-columns:42px 1fr auto auto;gap:15px;align-items:center;padding:17px 0;border-bottom:1px solid #242d33}.review-card small,.management-row small{display:block;color:#8496a6;margin-top:5px}.management-row{display:grid;grid-template-columns:minmax(250px,1fr) 130px 190px;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid #242d33}.success-empty{color:var(--green)}.module2-placeholder{min-height:360px;border:1px solid #34321f;background:radial-gradient(circle at 80% 20%,#211a0c,#0b1014 50%);display:grid;grid-template-columns:170px 1fr;align-items:center;padding:50px;margin-top:20px}.module2-number{font:90px Georgia;color:#4d4020}.module2-placeholder h2{font:38px Georgia}@media(max-width:1250px){.kpi-grid.premium-kpis{grid-template-columns:repeat(3,1fr)}.admin-shell{grid-template-columns:240px 1fr}.admin-main{padding-left:26px;padding-right:26px}}

/* V5.1 · ALTA DE ALUMNO / ACCESO */
.access-modal{position:relative;width:min(820px,100%);padding:38px 40px}
.modal-x{position:absolute;right:18px;top:16px;border:0;background:transparent;color:#9ba9b5;font-size:28px;line-height:1;padding:5px 10px}
.modal-x:hover{color:var(--gold2);background:transparent!important}
.access-success-head{display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:center;margin:12px 0 24px}
.success-check{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;border:1px solid #218c68;color:var(--green);font-size:27px;background:#07150f}
.access-success-head h2{margin:5px 0 3px;font:30px Georgia,serif}
.access-success-head p{margin:0;color:#91a3b4}
.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.credential-grid>div{padding:17px;background:#070b0e;border:1px solid #2c363e}
.credential-grid .full{grid-column:1/-1}
.credential-grid span{display:block;color:var(--gold);font-size:9px;font-weight:800;letter-spacing:.15em;margin-bottom:8px}
.credential-grid strong{font-size:15px;word-break:break-word}
.credential-grid .mono{font-family:Consolas,monospace;color:#fff}
.link-value{color:#a9c6de}
.change-notice{display:flex;gap:15px;align-items:center;margin:14px 0;padding:13px 15px;border-left:3px solid var(--gold);background:#17140c}
.change-notice b{font-size:9px;color:var(--gold);letter-spacing:.13em}
.change-notice span{font-size:12px;color:#c4cdd4}
.access-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:20px}
.copy-access{min-height:54px;font-size:13px}
.copy-status{margin-top:10px;color:#8295a5;font-size:11px}
@media(max-width:700px){.credential-grid{grid-template-columns:1fr}.credential-grid .full{grid-column:auto}.access-actions{grid-template-columns:1fr}.access-modal{padding:32px 22px}}


/* V5.2 · BENEFICIOS + FLUJO DE EVIDENCIAS */
.four-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.benefits-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.plan-badge{border:1px solid #9d7a25;color:var(--gold);padding:10px 14px;font-size:10px;letter-spacing:.14em}.benefit-card{display:grid;grid-template-columns:52px 1fr;gap:16px;min-height:210px}.benefit-icon{width:46px;height:46px;border:1px solid #8c6b1f;display:grid;place-items:center;color:var(--gold);font-size:22px}.benefit-card h2{font-size:24px;margin:8px 0}.benefit-card p{color:#91a5b7;line-height:1.55}.locked-benefit{border-color:#3a3528;opacity:.86;background:linear-gradient(145deg,#0b0f12,#0b0c0d)}.locked-benefit .benefit-icon{border-color:#4a4435;color:#777}.review-actions,.evidence-actions{display:flex;gap:8px;flex-wrap:wrap}.view-evidence{border-color:#1b9b72!important;color:#33d9a2!important}.correction-modal textarea{width:100%;background:#070b0e;border:1px solid #36434d;color:#fff;padding:14px;resize:vertical;min-height:130px;margin:12px 0}.correction-modal{position:relative}.review-card{grid-template-columns:42px minmax(220px,1fr) auto minmax(360px,auto)}@media(max-width:1100px){.four-benefits{grid-template-columns:1fr}.review-card{grid-template-columns:42px 1fr}.review-actions{grid-column:2}.benefits-summary{align-items:flex-start;gap:20px}}

/* V5.3 · Bandeja administrativa de evidencias */
.review-card-v53{grid-template-columns:auto minmax(260px,1fr) auto minmax(520px,auto);align-items:center;gap:20px}
.review-info small{display:block;margin-top:4px}
.review-actions-v53{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.review-actions-v53 button{min-height:42px;padding:0 16px;font-weight:800;letter-spacing:.04em}
.review-actions-v53 .view-evidence{border-color:#d9ad42;color:#f0c75e}
.review-actions-v53 .approve-evidence{border-color:#12c77b;color:#22e595}
.review-actions-v53 .correction-evidence{border-color:#c88f42;color:#e7b86c}
.correction-waiting{display:inline-flex;align-items:center;padding:9px 12px;border:1px solid #6f5522;color:#d8b45b;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1200px){.review-card-v53{grid-template-columns:auto 1fr}.review-actions-v53{grid-column:1/-1;justify-content:flex-start}}

/* V6 · Legal + beneficios + módulo 2 */
.legal-gate,.legal-document-step,.legal-warning{max-width:1100px;margin:0 auto 24px}.legal-copy{margin:22px 0;padding:22px;border:1px solid rgba(194,157,75,.28);background:rgba(255,255,255,.025);border-radius:14px}.legal-copy p,.legal-warning p,.legal-document-step p{text-align:justify;line-height:1.72}.legal-check{display:flex;gap:12px;align-items:flex-start;padding:18px;margin:18px 0;border-radius:12px;background:rgba(194,157,75,.08);border:1px solid rgba(194,157,75,.28);line-height:1.55}.legal-check input{margin-top:4px;transform:scale(1.25)}.legal-download{display:inline-block;text-decoration:none;margin:10px 0}.legal-warning{border-color:rgba(194,157,75,.45)}.legal-warning h3{font-family:Georgia,serif;font-size:22px;margin:8px 0 12px}.benefit-request{margin-top:14px}.legal-admin-status{padding:15px;margin-bottom:18px;border:1px solid rgba(194,157,75,.25);border-radius:12px}.legal-admin-status p{margin:7px 0}.legal-admin-status button{margin-top:8px}.admin-lesson-body .notice{text-align:justify}.lesson-titlebar p,.instruction p,.benefit-card p,.benefits-summary p{text-align:justify}.lesson-premium .topics{margin-top:10px}

/* V6.1 - legal visibility and universal admin QA */
.legal-copy h3{font-family:Georgia,serif;font-size:18px;color:#e5bd55;margin:22px 0 8px}.legal-copy p{text-align:justify}.lesson-education-notice{margin:22px 0 0;padding:15px 18px;border-top:1px solid rgba(194,157,75,.35);background:rgba(194,157,75,.055);font-size:13px;line-height:1.55}.lesson-education-notice b{color:#e5bd55;letter-spacing:.08em}.lesson-education-notice p{margin:7px 0 0;text-align:justify;color:#c7cbd0}.preview-unlock{margin-top:12px;border:1px solid #e5bd55;background:transparent;color:#e5bd55;padding:12px 16px;font-weight:800;cursor:pointer}

/* V6.3 - Visor ALM embebido */
.alm-viewer-modal{padding:18px;background:rgba(0,0,0,.94);z-index:9999}
.alm-viewer-shell{width:min(1500px,98vw);height:min(94vh,980px);margin:auto;background:#050708;border:1px solid #6d5618;display:flex;flex-direction:column;box-shadow:0 30px 90px #000}
.alm-viewer-top,.alm-viewer-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px;background:#090d0f;color:#eee;border-bottom:1px solid #2b2f31}
.alm-viewer-foot{border-top:1px solid #2b2f31;border-bottom:0;font-size:12px;color:#aeb8c4}
.alm-viewer-frame{position:relative;flex:1;min-height:0;background:#000;overflow:hidden}
.alm-viewer-frame iframe{display:block;width:100%;height:100%;border:0;background:#000}
.alm-viewer-watermark{position:absolute;z-index:4;pointer-events:none;user-select:none;max-width:min(390px,70vw);padding:7px 10px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(5,7,8,.08);color:rgba(255,255,255,.18);font-size:12px;font-weight:650;letter-spacing:.055em;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.8);transition:left 1.4s ease,top 1.4s ease;will-change:left,top}.alm-viewer-watermark span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alm-viewer-watermark small{display:block;margin-top:2px;color:rgba(212,175,55,.18);font-size:9px;font-weight:700;letter-spacing:.12em}
.alm-viewer-frame:fullscreen{width:100vw;height:100vh;background:#000}
.alm-viewer-frame:fullscreen iframe{width:100vw;height:100vh}
@media(max-width:700px){.alm-viewer-modal{padding:0}.alm-viewer-shell{width:100vw;height:100vh}.alm-viewer-top{padding:8px}.alm-viewer-foot{font-size:10px;flex-wrap:wrap}}

button[data-busy="1"]{pointer-events:none;opacity:.72;cursor:progress}
.otp-fallback{color:#f1c75b;font-weight:800;letter-spacing:.02em}

.recover-link{display:block;margin:14px auto 0;color:#d8b75c;text-align:center;letter-spacing:.12em}
.mono{font-family:Consolas,monospace;word-break:break-all}
