:root{
 --font-scale:1;--bg:#06111f;--bg2:#0a1a2b;--panel:#0d2135;--panel2:#102941;--text:#f7f4ea;--muted:#9db0c5;--border:#24425f;--gold:#f3bf45;--gold2:#a87312;--blue:#1b66d1;--green:#27a869;--red:#d84a4a;--warning:#c58e1b;--shadow:0 10px 28px rgba(0,0,0,.2)
}
html[data-theme="light"]{--bg:#f5f4ef;--bg2:#fff;--panel:#fff;--panel2:#f7f9fc;--text:#13213a;--muted:#66778c;--border:#dce4ed;--gold:#bb8515;--gold2:#8a5e0e;--blue:#154d8e;--green:#168753;--red:#c73535;--warning:#b87a08;--shadow:0 8px 24px rgba(20,40,70,.08)}
*{box-sizing:border-box}html{font-size:calc(16px * var(--font-scale))}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px rgba(243,191,69,.35)}
.app-shell{display:grid;grid-template-columns:268px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,#061322 0%,#071827 68%,#08111d 100%);border-right:1px solid #1b3652;display:flex;flex-direction:column;min-width:0}.side-brand{padding:28px 22px 18px;text-align:center;border-bottom:1px solid #17324d}.seven-stars{font-size:.7rem;color:var(--gold);letter-spacing:5px}.side-brand h1{font-family:Georgia,serif;font-size:1.25rem;line-height:1.1;color:#ffd86c;margin:10px 0 8px;text-transform:uppercase;overflow-wrap:anywhere}.side-brand p{font-size:.67rem;letter-spacing:2px;color:#a9bbcd;margin:0}.sidebar nav{padding:14px 8px;display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:9px;color:#dce8f6}.nav-item span{font-size:1.35rem;width:28px;text-align:center}.nav-item b{font-weight:600}.nav-item.active{background:linear-gradient(90deg,#8a6419,#4c3916);color:#fff0b6;border:1px solid #9d7928}.side-quote{margin-top:auto;padding:38px 20px 28px;text-align:center;background:radial-gradient(circle at 50% 100%,rgba(20,102,190,.45),transparent 55%)}.side-quote p{color:#f8ce64;font-family:Georgia,serif;font-size:.86rem;letter-spacing:2px}.side-quote small{color:#d3a33d;letter-spacing:2px}.main-wrap{min-width:0}.topbar{height:64px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 22px;background:var(--bg2);position:sticky;top:0;z-index:20}.mobile-menu{display:none;background:none;border:0;color:var(--text);font-size:1.4rem}.search-box{min-width:250px;max-width:440px;flex:1;display:flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--panel);border-radius:9px;padding:7px 12px}.search-box input{width:100%;border:0;background:transparent;color:var(--text)}.top-actions{display:flex;align-items:center;gap:12px}.user-name{white-space:nowrap}.theme-control,.font-control{display:flex;gap:4px;border-left:1px solid var(--border);padding-left:10px}.theme-control button,.font-control button,.logout{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:8px;padding:7px 10px;cursor:pointer}.theme-control button.active{border-color:var(--gold);color:var(--gold);background:rgba(243,191,69,.08)}.content{padding:16px 20px 30px}.hero{position:relative;height:168px;border-radius:12px;overflow:hidden;border:1px solid #2a4968}.hero img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,20,.12),rgba(2,10,20,.55) 45%,rgba(2,10,20,.18));display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;text-shadow:0 3px 10px #000}.hero-shade h2{font-family:Georgia,serif;color:#ffdb72;font-size:2.2rem;line-height:1;margin:0}.hero-shade p{font-size:.76rem;letter-spacing:3px;color:white}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:18px 2px 12px}.page-heading h2{font-family:Georgia,serif;font-size:2rem;margin:0}.page-heading p{margin:2px 0;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}.stat{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;gap:14px;align-items:center;box-shadow:var(--shadow)}.stat-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:10px;background:rgba(243,191,69,.12);font-size:1.45rem;color:var(--gold)}.stat small{display:block;color:var(--muted)}.stat strong{font-size:1.75rem;display:block}.stat em{font-size:.8rem;font-style:normal;color:var(--muted)}.stat progress{width:100%;height:6px;accent-color:var(--gold)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px}.right-stack{display:grid;gap:14px;align-content:start}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow);min-width:0;margin-bottom:14px}.panel h3{margin:0 0 12px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.panel-title h3{margin:0}.panel-title a,.mini-link{color:#6ba9ff}.lesson-highlight{display:flex;gap:16px;align-items:center}.seal-seven{width:96px;height:78px;display:grid;place-items:center;border-radius:14px;background:radial-gradient(circle,#a40909 0 34%,#5a0808 35% 46%,#25130d 47% 100%);border:2px solid #e14424;color:white;font:bold 3.2rem Georgia,serif;text-shadow:0 2px 3px #000;flex:0 0 auto}.grow{flex:1;min-width:0}.grow h3,.lesson-highlight h3{margin:3px 0 6px}.grow p{margin:4px 0;color:var(--muted)}.badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:.78rem;font-weight:700}.badge.success{background:rgba(39,168,105,.16);color:#6ee7a9}.badge.danger{background:rgba(216,74,74,.16);color:#ff9898}.badge.warning{background:rgba(197,142,27,.18);color:#ffd36b}.badge.info{background:rgba(27,102,209,.16);color:#86b9ff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:10px 14px;border:1px solid transparent;cursor:pointer;font-weight:700}.btn.primary{background:linear-gradient(180deg,#f7c756,#bd8617);color:#1d1608}.btn.outline{border-color:var(--gold);background:transparent;color:var(--gold)}.btn.ghost{background:var(--panel2);border-color:var(--border);color:var(--text)}.btn.small{padding:7px 10px;font-size:.86rem}.btn.wide{width:100%}.quick{display:grid;gap:10px}.quick-btn{display:block;padding:11px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.12);font-weight:700}.quick-btn.blue{background:#1458b4;color:white}.quick-btn.green{background:#147a4c;color:white}.quick-btn.gold{background:#9a6c11;color:white}.quick-btn.purple{background:#5d2ca2;color:white}.approval-numbers{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px;align-items:end;margin:18px 0}.approval-numbers strong{font-size:1.7rem;color:var(--gold)}.approval-numbers span{color:var(--muted);font-size:.8rem}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:650px}.table-wrap th,.table-wrap td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.table-wrap th{background:var(--panel2);font-size:.8rem;color:var(--muted)}.table-wrap td{font-size:.9rem}.empty{text-align:center;color:var(--muted);padding:26px!important}.two-col{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.4fr);gap:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-stack{display:grid;gap:14px}.form-grid label,.form-stack label,.toolbar label,.install-grid label{display:grid;gap:6px;color:var(--muted);font-weight:600}.span-2{grid-column:span 2}.form-grid input,.form-grid select,.form-grid textarea,.form-stack input,.toolbar select,.inline-form select,.inline-form input,.install-grid input{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--panel2);color:var(--text);padding:10px 11px}.form-actions{display:flex;gap:10px;align-items:center;grid-column:1/-1;margin-top:4px}.lesson-list{display:grid;gap:10px}.lesson-list article{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--panel2)}.lesson-list h4{margin:0 0 2px}.lesson-list p{margin:0;color:var(--muted)}.lesson-number{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:rgba(243,191,69,.14);color:var(--gold);font-weight:900}.toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.toolbar label{min-width:min(100%,460px)}.inline-form{display:flex;gap:8px;align-items:center;min-width:430px}.settings-panel{max-width:900px}.alert{padding:12px 14px;border-radius:9px;margin:12px 0;border:1px solid}.alert.success{background:rgba(39,168,105,.15);border-color:rgba(39,168,105,.45)}.alert.danger{background:rgba(216,74,74,.15);border-color:rgba(216,74,74,.45)}.alert.warning{background:rgba(197,142,27,.16);border-color:rgba(197,142,27,.5);color:var(--text)}
.login-body,.install-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#0d3b6d,transparent 30%),#05101c;padding:24px}.login-shell{width:min(1050px,100%);display:grid;grid-template-columns:1.2fr .8fr;background:#08192a;border:1px solid #234362;border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.4)}.login-art{position:relative;min-height:560px}.login-art img{width:100%;height:100%;object-fit:cover}.login-art-overlay{position:absolute;inset:auto 0 0;padding:28px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:white}.login-art-overlay h1{font:2.6rem/1 Georgia,serif;color:#ffd86a}.login-card{padding:46px;background:#0b1d30;color:white;display:flex;flex-direction:column;justify-content:center}.login-card h2{font-size:2rem;margin-bottom:4px}.login-card>p{color:#9fb3c9;margin-top:0}.brand-mini{color:#ffd86a;display:flex;gap:8px;align-items:center}.password-wrap{display:flex;align-items:center;position:relative}.password-wrap input{padding-right:48px}.eye{position:absolute;right:6px;border:0;background:transparent;color:inherit;cursor:pointer}.access-mini{display:flex;gap:8px;margin-top:18px}.access-mini button{border:1px solid #36506b;background:#10283f;color:white;border-radius:8px;padding:7px 10px}.install-card{width:min(850px,100%);background:#0a1c2f;color:#fff;border:1px solid #264866;border-radius:16px;padding:26px}.install-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.install-grid h3{grid-column:1/-1;color:#ffd164;border-bottom:1px solid #284863;padding-bottom:7px}.check-row{grid-column:1/-1;display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check-row input{width:auto}.install-grid .wide{grid-column:1/-1}.certificate-body{background:#ece7d7;color:#1a2440;padding:22px}.certificate-actions{display:flex;gap:10px;justify-content:center;margin-bottom:16px}.certificate{max-width:1120px;margin:auto;background:#faf7ed;padding:22px;box-shadow:0 16px 40px rgba(0,0,0,.18)}.cert-border{border:10px double #9a6a10;padding:54px;text-align:center;min-height:690px;position:relative;background:radial-gradient(circle at 50% 0%,rgba(255,220,120,.18),transparent 38%)}.cert-stars{color:#b47b11;letter-spacing:10px}.cert-border h1{font:3rem Georgia,serif;color:#7c5510;letter-spacing:5px;margin:20px 0 4px}.cert-border h2{font:1.5rem Georgia,serif;color:#172b4b}.cert-lead{margin-top:46px}.student-name{font:3rem Georgia,serif;color:#0f2f63;border-bottom:1px solid #b58a3c;display:inline-block;padding:0 30px 8px;margin-bottom:20px}.cert-border>p{max-width:780px;margin:12px auto;font-size:1.08rem}.cert-meta{display:flex;justify-content:space-between;gap:20px;margin:46px 0}.signature{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin:50px 10% 20px}.signature span{display:block;border-top:1px solid #333;margin-bottom:8px}.signature b,.signature small{display:block}.cert-border footer{margin-top:36px;color:#7c5510;font-family:Georgia,serif}
@media(max-width:1100px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.right-stack{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}.user-name{display:none}.hero-shade h2{font-size:1.75rem}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:-290px;top:0;bottom:0;width:280px;z-index:50;transition:left .2s}.sidebar.open{left:0}.mobile-menu{display:block}.topbar{padding:0 10px;height:auto;min-height:62px;flex-wrap:wrap}.search-box{order:2;flex-basis:100%;max-width:none;margin-bottom:8px}.theme-control button{font-size:0}.theme-control button:first-child:before{content:'☀'}.theme-control button:last-child:before{content:'☾'}.content{padding:12px}.hero{height:132px}.hero-shade h2{font-size:1.25rem}.hero-shade p{letter-spacing:1px}.stats-grid{grid-template-columns:1fr}.right-stack{grid-template-columns:1fr}.page-heading{align-items:start;flex-direction:column}.lesson-highlight{align-items:flex-start;flex-wrap:wrap}.seal-seven{width:72px;height:62px;font-size:2.4rem}.form-grid,.install-grid{grid-template-columns:1fr}.span-2,.install-grid h3,.install-grid .wide{grid-column:1}.inline-form{min-width:600px}.login-shell{grid-template-columns:1fr}.login-art{min-height:250px}.login-card{padding:28px}.cert-border{padding:24px}.student-name{font-size:2rem}.signature{grid-template-columns:1fr;gap:40px}.cert-meta{flex-direction:column}.certificate-body{padding:8px}.certificate{padding:8px}}
@media print{.certificate-actions{display:none}.certificate-body{padding:0;background:#fff}.certificate{box-shadow:none;max-width:none}.cert-border{min-height:0}}

/* v1.5 — cadastro de alunos: campos opcionais e ações alterar/excluir */
.form-note{margin:0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel2);color:var(--muted);font-size:.86rem;line-height:1.45}.form-note b{color:var(--text)}
.btn.danger{background:rgba(216,74,74,.12);border-color:rgba(216,74,74,.62);color:#ff9898}.btn.danger:hover{background:rgba(216,74,74,.22)}
.student-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.student-actions form{margin:0}.student-table table{min-width:900px}

/* v1.6 — certificado oficial baseado no modelo aprovado */
.certificate-official-body{margin:0;background:#e8edf2;color:#0b2240;padding:20px;font-family:Arial,sans-serif}
.official-actions{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 16px}
.certificate-code-screen{font-size:.88rem;color:#617086;padding:8px 10px}
.certificate-stage{width:min(1180px,100%);margin:0 auto;overflow:auto}
.certificate-official{position:relative;width:100%;aspect-ratio:4/3;container-type:inline-size;background:#f7f1e6;overflow:hidden;box-shadow:0 18px 48px rgba(6,18,34,.22)}
.certificate-template{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block;user-select:none;pointer-events:none}
.cert-dynamic{position:absolute;z-index:2;text-align:center;color:#071f42;box-sizing:border-box}
.cert-name-field{left:31.6%;top:41.0%;width:43.5%;height:11.2%;display:flex;align-items:center;justify-content:center;padding:.4cqw 1.5cqw 1cqw;background:linear-gradient(90deg,rgba(248,244,235,.97),rgba(250,247,240,.985),rgba(247,242,232,.97));border-bottom:.12cqw solid #b58b38;font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;font-size:4.6cqw;line-height:1;font-style:italic;white-space:nowrap;overflow:hidden}
.cert-name-field span{display:block;max-width:100%;transform:translateY(-.08cqw)}
.cert-date-field{left:39.5%;top:67.5%;width:31.6%;height:4.5%;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,rgba(248,244,235,.96),rgba(250,247,240,.985),rgba(247,242,232,.96));font-family:Georgia,"Times New Roman",serif;font-size:1.72cqw;line-height:1.2}
.cert-teacher-field,.cert-pastor-field{top:75.0%;width:18.8%;height:11.8%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:1.1cqw .8cqw .7cqw;background:linear-gradient(90deg,rgba(248,244,235,.97),rgba(250,247,240,.99),rgba(247,242,232,.97));font-family:Georgia,"Times New Roman",serif}
.cert-teacher-field{left:28.7%}.cert-pastor-field{left:65.1%}
.cert-dynamic .signature-line{width:82%;border-top:.12cqw solid #344155;margin:0 auto .45cqw}
.cert-dynamic strong{font-size:1.42cqw;line-height:1.08;font-weight:700;min-height:1.5cqw}
.cert-dynamic small{font-size:1.28cqw;line-height:1.1;color:#0b2345;margin-top:.2cqw}
.certificate-print-help{text-align:center;color:#5e6a78;font-size:.88rem;margin:12px auto 0}
@media(max-width:760px){.certificate-official-body{padding:8px}.certificate-stage{min-width:0}.certificate-official{min-width:720px}.certificate-print-help{font-size:.78rem}.official-actions{position:sticky;left:0}}
@page{size:A4 landscape;margin:0}
@media print{
 html,body{width:297mm;height:210mm;margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
 .official-actions,.certificate-print-help{display:none!important}
 .certificate-stage{width:297mm;height:210mm;margin:0;overflow:visible;display:flex;align-items:center;justify-content:center}
 .certificate-official{width:280mm;height:210mm;aspect-ratio:auto;box-shadow:none;overflow:hidden}
 .certificate-template{width:280mm;height:210mm}
}


/* v1.7 — upload de banner e arte do certificado */
.asset-upload{border-top:1px solid var(--border);padding-top:16px;margin-top:4px}.asset-upload h3{margin:0 0 6px;color:var(--text)}.asset-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.asset-upload-card{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--panel2);color:var(--text)!important;align-content:start}.asset-upload-card>span{font-size:.8rem;color:var(--muted);font-weight:400}.asset-upload-card input[type=file]{background:var(--panel);padding:9px}.asset-preview{width:100%;display:block;margin-top:8px;border:1px solid var(--border);border-radius:8px;background:#071526}.banner-preview{aspect-ratio:16/7;object-fit:cover}.certificate-preview{aspect-ratio:3/2;object-fit:contain}.asset-upload-card::after{content:'Imagem atual';font-size:.72rem;color:var(--muted);font-weight:600;margin-top:3px}
@media(max-width:760px){.asset-upload-grid{grid-template-columns:1fr}}

/* v2.0 SaaS multi-tenant */
.platform-sidebar{background:linear-gradient(180deg,#07152a,#07111d 72%,#050b13)}
.platform-sidebar .nav-item.active{background:linear-gradient(90deg,#164d86,#102b4c);border-color:#3d79b4;color:#dfefff}
.platform-shell .stat-icon{background:rgba(65,142,220,.14);color:#8fc6ff}
.top-context{display:grid;line-height:1.15;min-width:210px}.top-context small{color:var(--muted);font-size:.74rem;margin-top:3px}
.class-switch{min-width:280px;max-width:520px;flex:1}.class-switch form,.class-switch label{display:block}.class-switch label{font-size:.68rem;color:var(--muted);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.class-switch select{display:block;width:100%;margin-top:2px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);padding:6px 9px;font-size:.84rem;text-transform:none;letter-spacing:0}
.tenant-logo{display:block;max-width:150px;max-height:72px;object-fit:contain;margin:0 auto 8px}.class-label{display:inline-block;color:#e7d292;font-size:.74rem;border:1px solid rgba(243,191,69,.34);padding:3px 8px;border-radius:999px;margin:0 0 7px}.side-brand .class-label+ p{margin-top:3px}
.lesson-number.big{width:82px;height:70px;font-size:1.8rem;border:1px solid rgba(243,191,69,.25)}
.soft{border:0;border-top:1px solid var(--border);margin:22px 0}.class-cards{display:grid;gap:10px}.class-card{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--border);border-radius:11px;background:var(--panel2);padding:14px}.class-card.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(243,191,69,.15)}.class-card h4{margin:2px 0;font-size:1.12rem}.class-card p,.class-card small{margin:0;color:var(--muted)}.class-metrics{display:flex;gap:12px;margin-top:8px;color:var(--muted);font-size:.82rem}.class-actions{display:grid;gap:7px;justify-items:end}.inline-form.compact{min-width:0}.inline-form.compact select{min-width:112px}.btn[disabled]{opacity:.55;cursor:not-allowed}.provision-panel{max-width:980px}.provision-panel h3{margin:4px 0 0;border-bottom:1px solid var(--border);padding-bottom:8px;color:var(--gold)}
.saas-install{max-width:900px}.saas-install h1{margin-bottom:4px}.saas-install>p{color:#a9bed3}
code{background:var(--panel2);border:1px solid var(--border);padding:2px 6px;border-radius:6px;color:var(--gold)}
@media(max-width:980px){.class-switch{min-width:180px}.class-card{align-items:flex-start;flex-direction:column}.class-actions{width:100%;justify-items:stretch}.class-actions form,.class-actions .btn{width:100%}}
@media(max-width:760px){.class-switch{order:2;flex-basis:100%;max-width:none;margin-bottom:8px}.top-context{display:none}.platform-shell .sidebar{width:280px}.class-card{padding:12px}.provision-panel{max-width:none}}

/* v2.1 — Wakko Academy, agenda unificada, turmas/individuais e carga horária */
.badge.purple{background:rgba(115,69,188,.18);color:#c5a7ff}
.muted{color:var(--muted)}
.form-stack select,.form-stack textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--panel2);color:var(--text);padding:10px 11px}
.academy-login-body{background:radial-gradient(circle at 20% 10%,#0b5685 0,transparent 34%),linear-gradient(145deg,#06111d,#062b49 64%,#073f66);padding:28px}
.academy-login-shell{width:min(1420px,100%);grid-template-columns:minmax(0,1.55fr) minmax(380px,.82fr);border-radius:20px;border-color:#2a5d7e;box-shadow:0 34px 90px rgba(0,0,0,.46)}
.academy-login-art{min-height:720px;background:#071727}.academy-login-art img{object-fit:cover;object-position:center}
.academy-login-card{padding:54px;background:linear-gradient(180deg,#0b2237,#0a1d31 66%,#081827);justify-content:flex-start}
.academy-login-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:34px}.academy-login-top h2{font-size:2.15rem;margin:8px 0 8px}.academy-login-top p{max-width:390px;color:#a8c3da;margin:0;line-height:1.65}.academy-kicker{font-size:.73rem;letter-spacing:.22em;color:#4bc4ff;font-weight:800}.academy-theme{border:1px solid #315977;background:#0b2943;color:#d8e9f8;border-radius:999px;padding:8px 13px;white-space:nowrap;cursor:pointer}
.academy-login-form{gap:18px}.academy-login-form label{display:grid;gap:8px;color:#e8f1f8;font-weight:650}.academy-login-form input{width:100%;border:1px solid #35627f;border-radius:11px;background:#102c46;color:#fff;padding:14px 15px}.academy-login-form input::placeholder{color:#7e9db5}.academy-enter{width:100%;margin-top:5px;padding:14px 17px;background:linear-gradient(180deg,#18a9ff,#0876d8)!important;color:#fff!important;border-color:#2eb9ff!important;font-size:1rem}.academy-enter span{margin-left:auto;font-size:1.25rem}.academy-access{align-items:center;border-top:1px solid #244864;padding-top:18px;margin-top:24px}.academy-access>span{color:#7f9cb5;font-size:.75rem;margin-right:4px}.academy-login-footer{margin-top:auto;border-top:1px solid #244864;padding-top:24px;text-align:center;display:grid;gap:4px;color:#d6e8f6}.academy-login-footer small{color:#7595ae}
.next-commitment{border-color:color-mix(in srgb,var(--tenant-accent,#32a5ff),var(--border) 62%);background:linear-gradient(135deg,color-mix(in srgb,var(--panel),#0b7bbd 8%),var(--panel))}.next-commitment-grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center}.next-date{display:grid;min-width:120px;border-right:1px solid var(--border);padding-right:18px}.next-date strong{font-size:1.05rem}.next-date span{font-size:1.6rem;font-weight:800;color:var(--tenant-accent,var(--gold))}.next-commitment h3{margin:6px 0 4px}.next-commitment p{margin:0;color:var(--muted)}
.agenda-list{display:grid;gap:10px}.agenda-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;border:1px solid var(--border);background:var(--panel2);border-radius:11px}.agenda-when{display:grid;border-right:1px solid var(--border);padding-right:14px}.agenda-when strong{font-size:.93rem}.agenda-when span{font-size:1.35rem;font-weight:800;color:var(--tenant-accent,var(--gold))}.agenda-main h3{margin:5px 0 2px}.agenda-main p{margin:0;color:var(--muted)}
.academy-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.academy-course-grid{align-items:start}.topic-form{margin-bottom:16px}.topic-form textarea{resize:vertical}.class-card .badge{font-size:.68rem}.class-card.selected{border-color:var(--tenant-accent,var(--gold))}
@media(max-width:1250px){.academy-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.academy-login-shell{grid-template-columns:1.25fr .85fr}.academy-login-art{min-height:640px}}
@media(max-width:980px){.academy-login-shell{grid-template-columns:1fr}.academy-login-art{min-height:420px}.academy-login-card{padding:34px}.next-commitment-grid,.agenda-item{grid-template-columns:1fr}.next-date,.agenda-when{border-right:0;border-bottom:1px solid var(--border);padding:0 0 10px}.academy-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.academy-login-body{padding:10px}.academy-login-art{min-height:300px}.academy-login-card{padding:24px}.academy-login-top{display:grid}.academy-theme{justify-self:start}.academy-stats{grid-template-columns:1fr}}
