:root{--ink:#111827;--muted:#5b6472;--faint:#7b8494;--line:#dde4ee;--line-strong:#c7d2e2;--paper:#ffffff;--soft:#f6f8fb;--soft-2:#eef4ff;--navy:#12305d;--blue:#2563eb;--teal:#0f9488;--green:#16a34a;--amber:#f59e0b;--red:#dc2626;--purple:#7c3aed;--shadow-sm:0 10px 24px rgba(17,24,39,0.07);--shadow:0 18px 50px rgba(17,24,39,0.11);--radius:8px;--container:1180px;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:linear-gradient(180deg,rgba(238,244,255,.78),rgba(255,255,255,0) 360px),var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden;text-rendering:optimizeLegibility}img{display:block;max-width:100%}article,aside,div,fieldset,form,section{min-width:0}dd,h1,h2,h3,p,strong{overflow-wrap:break-word}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0}::selection{background:rgba(37,99,235,.18)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:20px;gap:20px;padding:14px clamp(16px,4vw,56px);border-bottom:1px solid rgba(221,228,238,.82);background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;min-width:0;gap:12px;color:var(--navy);font-weight:900;line-height:1.1}.brand span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-mark{display:inline-grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:var(--radius);background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-size:.82rem;letter-spacing:0;box-shadow:var(--shadow-sm)}.nav-links{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;overflow-x:auto;color:var(--muted);font-size:.91rem;font-weight:800;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex:0 0 auto;padding:9px 11px;border-radius:var(--radius);transition:background .16s ease,color .16s ease}.nav-links a:focus,.nav-links a:hover{background:var(--soft-2);color:var(--blue);outline:0}.section-band{padding:clamp(54px,7vw,92px) clamp(16px,4vw,56px)}.section-band.light{background:var(--soft)}.section-heading{max-width:790px;margin:0 auto 34px;text-align:center}.section-heading.narrow{max-width:680px}.eyebrow{margin:0 0 10px;color:var(--blue);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.cta-panel h2,.dashboard-hero-copy h1,.hero h1,.offline-panel h1,.section-heading h1,.section-heading h2{margin:0;color:var(--navy);letter-spacing:0}.section-heading h1,.section-heading h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.08}.section-heading p:not(.eyebrow){max-width:690px;margin:15px auto 0;color:var(--muted);font-size:clamp(1rem,1.4vw,1.1rem)}.hero{display:grid;grid-template-columns:minmax(0,.98fr) minmax(380px,1.02fr);align-items:center;grid-gap:clamp(30px,5vw,64px);gap:clamp(30px,5vw,64px);max-width:calc(var(--container) + 112px);min-height:min(760px,calc(100vh - 72px));margin:0 auto;color:var(--ink)}.hero-copy{min-width:0}.hero h1{max-width:760px;font-size:clamp(2.65rem,6vw,5.6rem);line-height:.94;overflow-wrap:anywhere}.hero-lede{max-width:640px;margin:22px 0 0;color:var(--muted);font-size:clamp(1.05rem,1.8vw,1.28rem);line-height:1.62}.centered-action,.cta-actions,.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions{margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 17px;border:1px solid transparent;border-radius:var(--radius);font-weight:900;line-height:1.15;text-align:center;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.button:focus,.button:hover{transform:translateY(-1px);outline:0}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button.primary{background:var(--blue);color:#fff;box-shadow:0 12px 26px rgba(37,99,235,.22)}.button.primary:focus,.button.primary:hover{background:#1d4ed8}.button.light-button,.button.secondary,.ghost-button{border-color:var(--line);background:#fff;color:var(--navy)}.button.light-button:hover,.button.secondary:hover,.ghost-button:hover{border-color:rgba(37,99,235,.38);background:var(--soft-2);box-shadow:var(--shadow-sm)}.install-prompt{position:fixed;right:clamp(14px,3vw,34px);bottom:max(18px,env(safe-area-inset-bottom));z-index:60;width:min(420px,calc(100vw - 28px));padding:18px;border:1px solid var(--line-strong);border-left:5px solid var(--blue);border-radius:var(--radius);background:#fff;box-shadow:0 24px 70px rgba(17,24,39,.2);animation:install-prompt-enter .22s ease-out}.install-prompt-heading{display:grid;grid-template-columns:56px minmax(0,1fr) 34px;align-items:center;grid-gap:12px;gap:12px}.install-prompt-heading img{width:56px;height:56px;border-radius:var(--radius)}.install-prompt-heading span{display:block;color:var(--blue);font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.install-prompt-heading h2{margin:3px 0 0;color:var(--navy);font-size:1.23rem;line-height:1.15}.install-prompt-close{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:var(--radius);background:var(--soft);color:var(--muted);font-size:1.45rem;line-height:1;cursor:pointer}.install-prompt-close:focus,.install-prompt-close:hover{background:var(--soft-2);color:var(--navy);outline:0}.install-prompt>p{margin:14px 0 0;color:var(--muted);font-size:.94rem}.install-prompt-steps{display:grid;grid-gap:8px;gap:8px;margin:14px 0 0;padding:0;list-style:none}.install-prompt-steps li{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;grid-gap:9px;gap:9px;color:var(--ink);font-size:.9rem;font-weight:750}.install-prompt-steps strong{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--soft-2);color:var(--blue);font-size:.78rem}.install-prompt-actions{display:flex;gap:10px;margin-top:16px}.install-prompt-actions .button{flex:1 1}@keyframes install-prompt-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.hero-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin:30px 0 0;max-width:800px}.hero-facts div{min-height:88px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.76);box-shadow:0 10px 24px rgba(17,24,39,.045)}.hero-facts dt{color:var(--faint);font-size:.73rem;font-weight:900;text-transform:uppercase}.hero-facts dd{margin:5px 0 0;color:var(--navy);font-weight:900;overflow-wrap:anywhere}.hero-media{min-width:0}.ai-stack{position:relative;display:grid;grid-gap:18px;gap:18px;padding:clamp(18px,3vw,26px);border:1px solid rgba(18,48,93,.14);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(238,244,255,.96)),#fff;box-shadow:var(--shadow)}.stack-footer,.stack-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.announcement-card span,.announcement-list span,.app-feature-grid span,.backend-grid span,.bank-details span,.class-days-card span,.contact-grid span,.dashboard-card-heading span,.dashboard-metrics span,.final-review span,.module-progress-list b,.next-class-panel span,.panel-heading span,.payment-total span,.phone-screen span,.price-summary span,.quiz-current-module span,.quiz-student-bar span,.quiz-summary span,.registration-notice span,.stack-footer span,.stack-header span,.student-login-card span{display:block;color:var(--blue);font-size:.73rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.stack-header strong{color:var(--teal);font-size:.9rem}.stack-core{grid-template-columns:120px minmax(0,1fr);align-items:center;grid-gap:18px;gap:18px;padding:16px;border:1px solid rgba(37,99,235,.16);background:#fff}.stack-core,.stack-core span{display:grid;border-radius:var(--radius)}.stack-core span{place-items:center;aspect-ratio:1;background:linear-gradient(135deg,var(--amber),#facc15);color:#111827;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:900;line-height:1}.stack-core strong{color:var(--navy);font-size:clamp(1.3rem,3vw,2rem);line-height:1.12}.stack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.announcement-list article,.app-feature-grid article,.backend-grid article,.contact-grid a,.contact-grid div,.dashboard-card,.dashboard-metrics article,.lesson-system article,.module-grid article,.quiz-access-card,.quiz-form,.registration-form,.roadmap-board article,.stack-grid article,.student-login-card,.student-profile-card,.student-profile-panel form{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 12px 32px rgba(17,24,39,.055)}.stack-grid article{min-height:112px;padding:14px}.stack-grid article span{color:var(--amber);font-size:.75rem;font-weight:900}.announcement-list h3,.app-feature-grid h3,.backend-grid h3,.lesson-system h3,.module-grid h3,.quiz-question-card h3,.roadmap-board h3,.stack-grid h3{margin:8px 0 6px;color:var(--navy);line-height:1.22}.stack-grid h3{font-size:1rem}.announcement-list p,.app-feature-grid p,.backend-card p,.backend-grid p,.lesson-system p,.module-grid p,.roadmap-board p,.stack-grid p{margin:0;color:var(--muted)}.stack-footer{padding-top:14px;border-top:1px solid var(--line)}.stack-footer span{color:var(--faint)}.announcements,.quiz-section,.roadmap{background:#fff}.announcement-board{display:grid;grid-template-columns:minmax(0,.95fr) minmax(340px,1.05fr);grid-gap:16px;gap:16px;max-width:var(--container);margin:0 auto}.announcement-card,.class-days-card{min-height:250px;padding:clamp(22px,3vw,32px);border-radius:var(--radius)}.announcement-card{border:1px solid rgba(37,99,235,.18);background:linear-gradient(180deg,#f4f8ff,#fff)}.checklist-panel,.class-days-card,.cta-section,.next-class-panel{background:linear-gradient(135deg,var(--navy),#17456f);color:#fff}.checklist-panel span,.class-days-card span,.next-class-panel span{color:#fbd38d}.announcement-card h3,.class-days-card h3{margin:0;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.1}.announcement-card p,.class-days-card p{margin:15px 0 0;font-size:1.03rem}.announcement-board-list{display:grid;grid-gap:14px;gap:14px}.announcement-board-list .announcement-card{min-height:0}.class-days-card p,.cta-panel p:not(.eyebrow),.dashboard-hero-copy p:not(.eyebrow),.next-class-panel p{color:rgba(255,255,255,.78)}.class-day-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:22px}.class-day-list strong{display:grid;place-items:center;min-height:54px;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);background:rgba(255,255,255,.1);color:#fff;font-size:.93rem;text-align:center}.announcement-list,.app-feature-grid,.backend-grid,.contact-grid,.dashboard-metrics,.lesson-system,.module-grid,.roadmap-board{display:grid;grid-gap:14px;gap:14px}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:var(--container);margin:0 auto}.app-feature-grid article,.module-grid article{min-height:210px;padding:22px}.module-grid span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:var(--radius);background:rgba(37,99,235,.1);color:var(--blue);font-weight:900}.module-grid article:nth-child(2) span,.module-grid article:nth-child(6) span{background:rgba(15,148,136,.11);color:var(--teal)}.module-grid article:nth-child(3) span{background:rgba(124,58,237,.1);color:var(--purple)}.module-grid article:nth-child(4) span{background:rgba(22,163,74,.1);color:var(--green)}.module-grid article:nth-child(5) span{background:rgba(245,158,11,.15);color:#9a5a00}.checklist-panel h3,.module-grid h3{margin-top:18px;font-size:1.16rem}.roadmap-board{grid-template-columns:repeat(4,minmax(0,1fr));max-width:var(--container);margin:0 auto}.roadmap-board article{min-height:248px;padding:22px}.backend-badge,.mini-link,.roadmap-step{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;background:var(--soft-2);color:var(--blue);font-size:.75rem;font-weight:900;text-transform:uppercase}.roadmap-board h3{margin-top:24px;font-size:1.36rem}.roadmap-board strong{display:block;margin-top:20px;color:var(--ink)}.app-preview{background:var(--soft)}.app-preview-layout,.approach-layout,.dashboard-layout{display:grid;grid-gap:22px;gap:22px;max-width:var(--container);margin:0 auto}.app-preview-layout{grid-template-columns:350px minmax(0,1fr);align-items:stretch}.phone-preview{min-height:590px;padding:16px;border:9px solid #111827;border-radius:32px;background:#111827;box-shadow:0 22px 54px rgba(17,24,39,.2)}.phone-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:var(--radius);background:var(--navy);color:#fff}.phone-topbar span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:var(--radius);background:var(--amber);color:#111827;font-size:.8rem;font-weight:900}.phone-screen{display:grid;grid-gap:12px;gap:12px;margin-top:14px;padding:14px;border-radius:20px;background:#f8fafc}.phone-screen>div{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.phone-screen strong{display:block;margin-top:5px;color:var(--navy);font-size:1.28rem;line-height:1.15}.phone-screen p{margin:8px 0 0;color:var(--muted)}.app-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-feature-grid h3{margin-top:18px;font-size:1.2rem}.centered-action{justify-content:center;margin-top:28px}.approach-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch}.lesson-system{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-system article{min-height:168px;padding:20px}.lesson-system article:first-child,.lesson-system article:nth-child(4){border-top:4px solid var(--blue)}.lesson-system article:nth-child(2),.lesson-system article:nth-child(5){border-top:4px solid var(--teal)}.lesson-system article:nth-child(3),.lesson-system article:nth-child(6){border-top:4px solid var(--amber)}.lesson-system span{display:inline-block;color:var(--faint);font-size:.78rem;font-weight:900;text-transform:uppercase}.lesson-system h3{font-size:1.08rem}.checklist-panel{padding:24px;border-radius:var(--radius)}.checklist-panel h3{margin:0;color:#fff;font-size:1.22rem}.checklist-panel ul{display:grid;grid-gap:13px;gap:13px;margin:16px 0 0;padding-left:20px}.standalone-page{min-height:calc(100vh - 150px)}.student-access{display:grid;align-items:center;background:linear-gradient(135deg,rgba(238,244,255,.9),rgba(255,255,255,.98)),#fff}.student-access-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:center;grid-gap:clamp(30px,6vw,76px);gap:clamp(30px,6vw,76px);width:100%;max-width:var(--container);margin:0 auto}.student-access-copy h1{max-width:720px;margin:0;color:var(--navy);font-size:clamp(2.5rem,5vw,4.8rem);line-height:.98}.student-access-copy>p:not(.eyebrow){max-width:660px;margin:20px 0 0;color:var(--muted);font-size:1.08rem}.access-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;max-width:560px;margin-top:26px}.access-benefits span{min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.78);color:var(--navy);font-weight:850}.student-login-card{display:grid;grid-gap:18px;gap:18px;padding:clamp(22px,4vw,32px)}.cooldown-card h2,.quiz-access-card h2,.quiz-current-module h2,.student-login-card h2{margin:0;color:var(--navy);line-height:1.12}.quiz-access-card p,.quiz-current-module p,.student-login-card>div>p:not(.eyebrow){margin:10px 0 0;color:var(--muted)}.id-recovery{padding-top:16px;border-top:1px solid var(--line)}.id-recovery summary{color:var(--navy);font-weight:900;cursor:pointer}.id-recovery p{margin:12px 0 0;color:var(--muted);font-size:.94rem}.recovery-actions{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.login-register-note{margin:0;color:var(--muted);text-align:center}.login-register-note a{color:var(--blue);font-weight:900}.auth-loading{width:min(520px,100%);margin:0 auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--muted);text-align:center;box-shadow:var(--shadow-sm)}.cta-section{color:#fff}.cta-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:24px;gap:24px;max-width:var(--container);margin:0 auto}.cta-panel h2{color:#fff;font-size:clamp(2rem,4vw,3.1rem);line-height:1.08}.cta-panel p:not(.eyebrow){max-width:660px;margin:14px 0 0;font-size:1.04rem}.cta-actions{justify-content:flex-end}.button.light-button{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff}.contact-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-width:var(--container);margin:0 auto}.contact-grid a,.contact-grid div{min-height:126px;padding:18px}.contact-grid a:focus,.contact-grid a:hover{border-color:rgba(37,99,235,.42);box-shadow:0 16px 40px rgba(37,99,235,.12);outline:0}.contact-grid strong{display:block;color:var(--navy);font-size:.98rem;line-height:1.35;overflow-wrap:anywhere}.dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;align-items:center;grid-gap:clamp(24px,4vw,58px);gap:clamp(24px,4vw,58px);background:linear-gradient(135deg,var(--navy),#0f766e);color:#fff}.dashboard-hero-copy h1{max-width:820px;color:#fff;font-size:clamp(2.3rem,4.8vw,4.25rem);line-height:.99}.dashboard-hero-copy p:not(.eyebrow){max-width:700px;margin:22px 0 0;font-size:1.07rem}.dashboard-status-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.student-admin-warning{max-width:700px;margin-top:18px;padding:15px 17px;border:1px solid rgba(253,230,138,.62);border-radius:var(--radius);background:rgba(120,53,15,.3)}.student-admin-warning strong{color:#fde68a}.student-admin-warning p{margin:5px 0 0;color:#fff7ed}.status-pill{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.82);font-size:.78rem;font-weight:900;text-transform:uppercase}.status-pill.is-online{border-color:rgba(22,163,74,.55);color:#d8ffe9}.status-pill.is-offline{border-color:rgba(245,158,11,.55);color:#fff3d6}.next-class-panel{padding:26px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);box-shadow:var(--shadow)}.next-class-panel>strong{display:block;margin-top:8px;color:#fff;font-size:clamp(1.5rem,3vw,2.12rem);line-height:1.08}.next-class-panel .class-day-list strong{margin:0;font-size:.93rem;line-height:1.2}.live-class-access{display:grid;grid-gap:13px;gap:13px;margin-top:22px;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);background:rgba(7,19,53,.28)}.live-class-access.is-open{border-color:rgba(253,230,138,.74);background:linear-gradient(135deg,rgba(245,158,11,.22),rgba(255,255,255,.1));box-shadow:0 16px 36px rgba(5,12,35,.2)}.live-class-heading{display:grid;grid-gap:5px;gap:5px}.live-class-heading span{color:#bfdbfe;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.live-class-access.is-open .live-class-heading span{color:#fde68a}.live-class-heading strong{color:#fff;font-size:1.15rem;line-height:1.2}.live-class-countdown{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:10px;background:rgba(255,255,255,.1)}.live-class-countdown span{color:rgba(255,255,255,.7);font-size:.7rem;font-weight:900;text-transform:uppercase}.live-class-countdown strong{color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:1.06rem}.live-class-note,.live-class-preference{margin:0;color:rgba(255,255,255,.76);font-size:.83rem;line-height:1.45}.live-class-button{width:100%;background:var(--amber);color:#111827;box-shadow:0 12px 26px rgba(5,12,35,.2)}.live-class-button:focus,.live-class-button:hover{background:#fbbf24;color:#111827}.live-class-actions{display:grid;grid-gap:9px;gap:9px}.attendance-checkin-button{width:100%;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.12);color:#fff}.attendance-checkin-status{margin:0;font-size:.8rem;font-weight:850}.attendance-checkin-status.success{color:#bbf7d0}.attendance-checkin-status.error{color:#fecaca}.admin-page{min-height:100vh;padding:clamp(18px,4vw,54px);background:radial-gradient(circle at top right,rgba(15,148,136,.18),transparent 36%),linear-gradient(135deg,#eef4ff,#f8fafc 52%,#fff7ed)}.admin-loading,.admin-login-shell{display:grid;min-height:calc(100vh - 108px);place-items:center}.admin-loading{color:var(--navy);font-weight:900}.admin-login-card{display:grid;grid-gap:20px;gap:20px;width:min(100%,480px);padding:clamp(24px,5vw,42px);border:1px solid rgba(22,37,107,.12);border-radius:28px;background:rgba(255,255,255,.95);box-shadow:0 30px 80px rgba(22,37,107,.16)}.admin-login-card h1,.admin-topbar h1{margin:0;color:var(--navy);font-size:clamp(2rem,5vw,3.5rem);line-height:1}.admin-login-card>div>p:not(.eyebrow),.admin-topbar p:not(.eyebrow){margin:14px 0 0;color:var(--muted)}.admin-announcement-form label,.admin-login-card label{display:grid;grid-gap:8px;gap:8px;color:var(--navy);font-size:.86rem;font-weight:900}.admin-announcement-form input,.admin-announcement-form textarea,.admin-login-card input,.admin-student-heading input{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit}.admin-announcement-form input,.admin-login-card input,.admin-student-heading input{min-height:48px;padding:10px 13px}.admin-announcement-form textarea{min-height:116px;padding:13px;resize:vertical}.admin-announcement-form input:focus,.admin-announcement-form textarea:focus,.admin-login-card input:focus,.admin-student-heading input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.12);outline:0}.admin-dashboard{display:grid;grid-gap:24px;gap:24px;width:min(100%,1500px);margin:0 auto}.admin-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:clamp(24px,4vw,40px);border-radius:28px;background:linear-gradient(135deg,var(--navy),#0f766e);color:#fff;box-shadow:var(--shadow)}.admin-topbar h1{color:#fff}.admin-announcement-list article>div,.admin-form-actions,.admin-student-actions,.admin-topbar-actions{display:flex;flex-wrap:wrap;gap:9px}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.admin-metrics article,.admin-panel{border:1px solid rgba(22,37,107,.1);background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm)}.admin-metrics article{padding:22px;border-radius:18px}.admin-announcement-list article>span,.admin-metrics span,.admin-panel-heading span{color:var(--blue);font-size:.73rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.admin-metrics strong{display:block;margin-top:8px;color:var(--navy);font-size:2.1rem}.admin-panel{padding:clamp(20px,3vw,32px);border-radius:24px}.admin-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-panel-heading h2{margin:5px 0 0;color:var(--navy);font-size:clamp(1.35rem,3vw,2rem)}.admin-announcement-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);grid-gap:20px;gap:20px}.admin-announcement-form,.admin-announcement-list{display:grid;align-content:start;grid-gap:14px;gap:14px}.admin-announcement-form{padding:20px;border-radius:18px;background:var(--soft)}.admin-announcement-form .admin-checkbox{display:flex;align-items:center;gap:9px}.admin-announcement-form .admin-checkbox input{width:18px;min-height:18px}.admin-announcement-list article{padding:18px;border:1px solid var(--line);border-radius:16px}.admin-announcement-list h3{margin:7px 0 0;color:var(--navy)}.admin-announcement-list p{margin:8px 0 15px;color:var(--muted)}.danger-action,.mini-link.danger-link{color:#b42318}.admin-student-heading input{max-width:430px}.admin-student-table-wrap{overflow-x:auto}.admin-student-table{width:100%;min-width:1080px;border-collapse:collapse;text-align:left}.admin-student-table td,.admin-student-table th{padding:15px 13px;border-bottom:1px solid var(--line);vertical-align:top}.admin-student-table th{color:var(--faint);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.admin-student-table td{color:var(--ink);font-size:.86rem}.admin-student-table td>a,.admin-student-table td>small,.admin-student-table td>span,.admin-student-table td>strong{display:block}.admin-student-table td>a,.admin-student-table td>small,.admin-student-table td>span{margin-top:4px;color:var(--muted)}.admin-student-table .student-warning{max-width:230px;color:#b54708}.admin-student-actions button{background:var(--soft-2);color:var(--blue);font:inherit;cursor:pointer}.admin-student-actions a,.admin-student-actions button{padding:7px 9px;border-radius:9px;font-size:.78rem;font-weight:900}.admin-student-actions a{display:inline-flex;align-items:center;background:#ecfdf3;color:#067647}.admin-student-actions .danger-action{background:#fff1f0;color:#b42318}.assignment-studio{padding:clamp(22px,4vw,38px) 0;border-top:1px solid rgba(22,37,107,.12);border-bottom:1px solid rgba(22,37,107,.12)}.assignment-studio-note{max-width:900px;margin:-8px 0 22px;color:var(--muted);line-height:1.55}.project-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.project-library article{display:grid;align-content:start;grid-gap:11px;gap:11px;min-height:286px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(17,24,39,.045)}.project-library article.is-selected{border-color:rgba(15,148,136,.55);box-shadow:0 0 0 3px rgba(15,148,136,.1)}.project-library-heading{display:flex;justify-content:space-between;gap:10px;color:var(--faint);font-size:.72rem;font-weight:900;text-transform:uppercase}.assignment-broadcast-form h3,.assignment-operations-grid h3,.project-brief-preview h3,.project-library h3{margin:0;color:var(--navy)}.assignment-studio-note,.project-brief-preview>p,.project-library p{font-size:.9rem}.project-library p{margin:0;color:var(--muted)}.project-tool-list{display:flex;flex-wrap:wrap;gap:6px}.assignment-meta span,.project-tool-list span{padding:5px 8px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:.68rem;font-weight:850}.project-library .button{align-self:end;margin-top:auto}.assignment-broadcast-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);grid-gap:18px;gap:18px;margin-top:24px}.assignment-broadcast-form,.project-brief-preview{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.assignment-broadcast-form>div>span,.project-brief-preview>span{color:var(--teal);font-size:.72rem;font-weight:900;text-transform:uppercase}.assignment-broadcast-form h3,.project-brief-preview>h3{margin-top:6px;font-size:1.35rem}.project-brief-block{margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.project-brief-block>strong{color:var(--navy)}.project-brief-block ol,.project-brief-block p{margin:7px 0 0;color:var(--muted);line-height:1.55}.project-brief-block ol{padding-left:20px}.assignment-broadcast-form{display:grid;align-content:start;grid-gap:16px;gap:16px;background:#f8fafc}.assignment-broadcast-form fieldset{display:grid;grid-gap:9px;gap:9px;margin:0;padding:0;border:0}.assignment-broadcast-form label>span,.assignment-broadcast-form legend{margin-bottom:7px;color:var(--navy);font-size:.8rem;font-weight:900}.assignment-broadcast-form label{color:var(--ink);font-size:.84rem}.assignment-broadcast-form>label{display:grid}.assignment-broadcast-form input[type=date],.assignment-broadcast-form select{width:100%;padding:11px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);font:inherit}.assignment-broadcast-form select{min-height:160px}.assignment-broadcast-form small{margin-top:6px;color:var(--muted)}.assignment-operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:24px}.assignment-operations-grid>div{min-width:0}.assignment-operations-grid .admin-panel-heading{margin-bottom:12px}.assignment-record-list,.attendance-record-list{display:grid;grid-gap:8px;gap:8px}.assignment-record-list article,.attendance-record-list article{display:grid;grid-gap:5px;gap:5px;padding:13px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.84)}.assignment-record-list article>div{display:flex;justify-content:space-between;gap:12px}.assignment-record-list small,.assignment-record-list span,.attendance-record-list small,.attendance-record-list span{color:var(--muted);font-size:.76rem}.assignment-record-list p{margin:4px 0;color:var(--muted);overflow-wrap:anywhere}.assignment-record-list a{color:var(--blue);font-size:.8rem;font-weight:900}.dashboard-section{background:var(--soft)}.dashboard-layout{grid-template-columns:320px minmax(0,1fr)}.student-profile-panel{align-self:start;position:-webkit-sticky;position:sticky;top:92px}.student-profile-card,.student-profile-panel form{display:grid;grid-gap:16px;gap:16px;padding:22px}.student-profile-details{display:grid;grid-gap:12px;gap:12px;margin:0}.student-profile-details div{padding-bottom:12px;border-bottom:1px solid var(--line)}.student-profile-details div:last-child{padding-bottom:0;border-bottom:0}.student-profile-details dt{color:var(--faint);font-size:.74rem;font-weight:900;text-transform:uppercase}.student-profile-details dd{margin:4px 0 0;color:var(--navy);font-weight:850}.panel-heading{padding-bottom:14px;border-bottom:1px solid var(--line)}.panel-heading strong{display:block;margin-top:6px;color:var(--navy);font-size:1.34rem;line-height:1.18;overflow-wrap:anywhere}.save-note{min-height:24px;margin:0;color:var(--muted);font-size:.92rem;font-weight:800}.dashboard-main{display:grid;grid-gap:18px;gap:18px;min-width:0}.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-metrics article{min-height:138px;padding:18px}.dashboard-metrics strong{display:block;margin-top:7px;color:var(--navy);font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.08;overflow-wrap:anywhere}.dashboard-metrics p{margin:9px 0 0;color:var(--muted);font-size:.93rem}.dashboard-card{padding:clamp(18px,3vw,26px)}.dashboard-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.dashboard-card-heading h2{margin:4px 0 0;color:var(--navy);font-size:clamp(1.42rem,3vw,2.05rem);line-height:1.1}.engagement-hub{padding:8px 0 18px;border-bottom:1px solid var(--line)}.engagement-heading{margin-bottom:18px}.engagement-level-pill{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#eaf8f5;color:#08786e;font-size:.78rem;font-weight:900;white-space:nowrap}.engagement-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.achievement-grid article,.engagement-stat-card,.level-progress-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 10px 28px rgba(17,24,39,.045)}.level-progress-card{grid-column:1/-1;display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;grid-gap:20px;gap:20px;padding:20px;background:linear-gradient(135deg,#f2f7ff,#fff 58%,#effaf7)}.level-progress-ring{display:grid;place-content:center;width:112px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff 0 58%,transparent 59%),conic-gradient(var(--teal) 0 var(--level-progress),#dbe6ef var(--level-progress) 1turn);text-align:center}.achievement-grid article span,.engagement-motivation>span,.engagement-stat-card>span,.level-progress-card>div:last-child>span,.level-progress-ring span{color:var(--faint);font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.level-progress-ring strong{color:var(--navy);font-size:2rem;line-height:1}.engagement-stat-card>strong,.level-progress-card>div:last-child>strong{display:block;margin-top:6px;color:var(--navy);font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.08}.achievement-grid article p,.engagement-stat-card p,.level-progress-card p{margin:7px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.engagement-progress-track{height:8px;margin-top:13px;border-radius:999px;background:#dfe8f1;overflow:hidden}.engagement-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--blue));transition:width .3s ease}.engagement-stat-card{min-height:148px;padding:17px}.streak-card{border-top:4px solid var(--amber)}.milestone-card{border-top:4px solid var(--teal)}.achievement-count-card{grid-column:1/-1;border-top:4px solid var(--blue)}.achievement-count-card .mini-link{margin-top:12px}.engagement-motivation{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:16px;gap:16px;margin-top:12px;padding:14px 16px;border-left:4px solid var(--amber);background:#fffbeb}.engagement-motivation p{margin:0;color:#5f4308;font-size:.9rem}.achievement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.achievement-grid article{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;grid-gap:10px;gap:10px;min-height:122px;padding:13px}.achievement-grid article.is-locked{background:#f8fafc;box-shadow:none;opacity:.64}.achievement-grid article.is-unlocked{border-color:rgba(15,148,136,.28);background:linear-gradient(180deg,#f0fdfa,#fff)}.achievement-icon{display:grid;place-items:center;width:38px;aspect-ratio:1;border-radius:50%;background:#e7edf7;color:var(--faint);font-size:.74rem;font-weight:950}.is-unlocked .achievement-icon{background:var(--teal);color:#fff;box-shadow:0 8px 18px rgba(15,148,136,.22)}.achievement-grid article strong{display:block;margin-top:4px;color:var(--navy);font-size:.9rem;line-height:1.15}.milestone-celebration{position:fixed;right:22px;bottom:max(22px,env(safe-area-inset-bottom));z-index:55;width:min(390px,calc(100vw - 28px));padding:21px 48px 21px 21px;border:1px solid rgba(253,230,138,.72);border-radius:var(--radius);background:linear-gradient(135deg,#16256b,#0f766e);color:#fff;box-shadow:0 24px 70px rgba(6,15,45,.34);animation:celebration-in .38s ease both;overflow:hidden}.milestone-celebration>span{color:#fde68a;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.milestone-celebration>strong{display:block;margin-top:5px;font-size:1.22rem;line-height:1.18}.milestone-celebration p{margin:7px 0 0;color:rgba(255,255,255,.78);font-size:.88rem}.milestone-celebration button{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.2rem;cursor:pointer}.student-assignment-center{border-top:4px solid var(--teal)}.assignment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.assignment-summary div{padding:13px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.assignment-summary span{color:var(--faint);font-size:.7rem;font-weight:900;text-transform:uppercase}.assignment-summary strong{display:block;margin-top:4px;color:var(--navy);font-size:1.45rem}.assignment-empty{margin-top:14px;padding:18px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--navy)}.assignment-empty p{margin:6px 0 0;color:var(--muted)}.student-assignment-list{display:grid;grid-gap:10px;gap:10px;margin-top:16px}.student-assignment-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.student-assignment-item[open]{border-color:rgba(15,148,136,.32)}.student-assignment-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;cursor:pointer;list-style:none}.student-assignment-item summary::-webkit-details-marker{display:none}.student-assignment-item summary div{min-width:0}.student-assignment-item summary small,.student-assignment-item summary span{display:block;color:var(--faint);font-size:.72rem}.student-assignment-item summary strong{display:block;margin:4px 0;color:var(--navy);font-size:1rem}.student-assignment-item summary b{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:.68rem;text-transform:uppercase}.student-assignment-item.status-completed summary b{background:#ecfdf3;color:#067647}.student-assignment-item.status-submitted summary b{background:#fffaeb;color:#b54708}.assignment-detail-body{padding:0 16px 18px;border-top:1px solid var(--line)}.assignment-detail-body>p{color:var(--muted)}.assignment-meta{display:flex;flex-wrap:wrap;gap:7px}.assignment-detail-body>section{margin-top:15px;padding:14px;border-left:3px solid var(--teal);background:#f8fafc}.assignment-detail-body>section strong{color:var(--navy)}.assignment-detail-body>section ol,.assignment-detail-body>section p{margin:7px 0 0;color:var(--muted);line-height:1.55}.assignment-detail-body>section ol{padding-left:20px}.assignment-detail-body>.button{margin-top:16px}.assignment-submission-form{display:grid;grid-gap:13px;gap:13px;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:#f8fafc}.assignment-submission-form label{display:grid;grid-gap:7px;gap:7px;color:var(--navy);font-size:.8rem;font-weight:900}.assignment-submission-form textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);font:inherit;resize:vertical}.assignment-complete-state,.assignment-review-state{margin-top:16px;padding:14px;border-radius:var(--radius)}.assignment-review-state{background:#fffaeb;color:#7a2e0e}.assignment-complete-state{background:#ecfdf3;color:#05603a}.assignment-complete-state p,.assignment-review-state p{margin:5px 0 0}.celebration-spark{position:absolute;width:7px;height:7px;border-radius:2px;background:var(--amber);animation:celebration-spark 1.4s ease-in-out infinite}.spark-one{top:16px;right:58px}.spark-two{right:78px;bottom:18px;background:#5eead4;animation-delay:.18s}.spark-three{top:50%;right:28px;background:#bfdbfe;animation-delay:.34s}@keyframes celebration-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes celebration-spark{0%,to{opacity:.4;transform:translateY(0) rotate(0)}50%{opacity:1;transform:translateY(-8px) rotate(90deg)}}@media (prefers-reduced-motion:reduce){.celebration-spark,.milestone-celebration{animation:none}.engagement-progress-track span{transition:none}}.announcement-list,.backend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.announcement-list article,.backend-grid article{min-height:150px;padding:16px;background:#fbfcff}.progress-track{height:12px;margin-bottom:18px;border-radius:999px;background:#e7edf7;overflow:hidden}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--green));transition:width .18s ease}.module-progress-list{display:grid;grid-gap:10px;gap:10px}.module-progress-list article{border:1px solid var(--line);border-radius:var(--radius);background:#fff}.module-progress-list article.is-complete{border-color:rgba(22,163,74,.35);background:rgba(22,163,74,.06)}.module-progress-list article.is-current{border-color:rgba(37,99,235,.42);background:rgba(37,99,235,.055)}.module-progress-list article.is-failed{border-color:rgba(220,38,38,.3);background:rgba(220,38,38,.045)}.module-progress-content{padding:16px}.module-progress-content>span{display:block}.module-progress-list label{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;grid-gap:12px;gap:12px;min-height:0;padding:16px;color:var(--ink);font-weight:400}.module-progress-list input{margin-top:4px}.module-progress-list label>span{margin-bottom:0;color:inherit;font-weight:400}.module-progress-list em,.module-progress-list small,.module-progress-list strong{display:block}.module-progress-list strong{margin-top:4px;color:var(--navy);font-size:1.03rem;line-height:1.25}.module-progress-list small{margin-top:6px;color:var(--muted);font-size:.93rem;line-height:1.45}.module-progress-list em{margin-top:8px;color:var(--ink);font-size:.89rem;font-style:normal;font-weight:800}.cooldown-card{display:flex;align-items:center;justify-content:space-between;gap:22px;border-left:5px solid var(--amber)}.cooldown-card span{color:#9a5a00;font-size:.73rem;font-weight:900;text-transform:uppercase}.cooldown-card h2{margin-top:5px;font-size:clamp(1.25rem,3vw,1.7rem)}.cooldown-card p{margin:9px 0 0;color:var(--muted)}.backend-card{border-left:5px solid var(--teal)}.backend-grid{margin-top:18px}.backend-grid article.is-reserved{border-color:rgba(245,158,11,.35);background:#fff8eb}.offline-page{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#eef4ff,#ffffff)}.offline-panel{width:min(720px,100%);padding:clamp(24px,5vw,42px);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.offline-panel .brand{margin-bottom:24px}.offline-panel h1{font-size:clamp(2.2rem,6vw,4rem);line-height:1}.offline-panel p:not(.eyebrow){margin:18px 0 0;color:var(--muted);font-size:1.05rem}.quiz-form,.registration-form{max-width:1060px;margin:0 auto;padding:clamp(18px,3vw,32px)}.quiz-access-card{max-width:720px;margin:0 auto;padding:clamp(24px,4vw,36px);text-align:center}.quiz-access-card .button{margin-top:18px}.quiz-student-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.quiz-student-bar strong{display:block;margin-top:5px;color:var(--navy);font-size:1.25rem}.quiz-student-bar p{margin:3px 0 0;color:var(--muted);font-weight:800}.quiz-student-actions{display:flex;align-items:center;gap:8px}.quiz-current-module{padding:4px 0}.quiz-current-module h2{margin-top:7px;font-size:clamp(1.6rem,3vw,2.25rem)}.quiz-loading{margin-bottom:18px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);color:var(--muted);font-weight:800}.quiz-top{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;grid-gap:18px;gap:18px}.field-grid,.quiz-fields,.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.quiz-module-select{grid-column:1/-1}.quiz-summary{min-height:180px;padding:20px;border:1px solid rgba(37,99,235,.18);border-radius:var(--radius);background:#f4f8ff}.quiz-summary strong{display:block;margin-top:8px;color:var(--navy);font-size:1.28rem;line-height:1.18}.quiz-summary p{margin:12px 0 0;color:var(--muted)}.quiz-summary.is-available{border-color:rgba(22,163,74,.28);background:rgba(22,163,74,.06)}.quiz-summary.is-available span{color:var(--green)}.quiz-summary.is-locked{border-color:rgba(245,158,11,.32);background:#fff8eb}.quiz-summary.is-locked span{color:#9a5a00}.quiz-summary .button{width:100%;margin-top:16px}.quiz-questions{display:grid;grid-gap:16px;gap:16px;margin-top:24px}.quiz-empty{margin:0;padding:18px;border:1px dashed #9fb0c6;border-radius:var(--radius);background:#fbfcff;color:var(--muted);font-weight:800}.quiz-question-card{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.quiz-question-card h3{margin:0 0 14px;font-size:1.02rem}.quiz-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.agreement-list label,.course-grid label,.device-group label,.quiz-options label{min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.course-grid label:has(input:checked),.device-group label:has(input:checked),.quiz-options label:has(input:checked){border-color:rgba(37,99,235,.5);background:rgba(37,99,235,.08);color:var(--navy)}.quiz-footer{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:16px;gap:16px;margin-top:24px}.quiz-submit{min-width:170px}.quiz-result{min-height:46px;color:var(--muted);font-weight:800}.quiz-result strong{display:block;color:var(--navy);font-size:1.28rem;line-height:1.2}.report-recovery-panel{margin-bottom:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}.report-recovery-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.report-history-main span,.report-recovery-heading span,.report-recovery-metrics span{display:block;color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.report-recovery-heading h2{margin:5px 0 0;color:var(--navy);font-size:clamp(1.45rem,3vw,2rem);line-height:1.14}.report-recovery-heading p{max-width:660px;margin:8px 0 0;color:var(--muted)}.report-recovery-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:10px}.report-recovery-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:18px}.report-recovery-metrics div{min-height:76px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}.report-recovery-metrics strong{display:block;margin-top:4px;color:var(--navy);font-size:1.45rem;line-height:1}.report-history-loading{margin-top:16px;padding:14px 0;color:var(--muted);font-weight:800}.report-history-list{max-height:560px;margin-top:16px;overflow-y:auto;border-top:1px solid var(--line)}.report-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(180px,auto);align-items:center;grid-gap:16px;gap:16px;padding:16px 4px;border-bottom:1px solid var(--line)}.report-history-main strong{display:block;margin-top:5px;color:var(--navy);font-size:1rem;line-height:1.22}.report-history-main p{margin:5px 0 0;color:var(--muted);font-size:.91rem}.report-history-row>strong{padding:6px 8px;border-radius:var(--radius);font-size:.73rem;text-align:center;text-transform:uppercase}.history-generated,.history-passed{background:rgba(22,163,74,.1);color:#0b6b35}.history-review{background:#fff3df;color:#9a4b00}.report-history-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.report-history-actions .button{min-width:160px}.report-history-note{max-width:210px;color:var(--muted);font-size:.84rem;font-weight:750;text-align:right}.module-report-panel{margin-top:30px;padding-top:28px;border-top:1px solid var(--line)}.module-report-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.module-report-heading span{color:var(--blue);font-size:.73rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.module-report-heading h2{margin:5px 0 0;color:var(--navy);font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.12}.module-report-heading p{margin:8px 0 0;color:var(--muted)}.module-report-heading>strong{flex:0 0 auto;padding:7px 10px;border-radius:var(--radius);font-size:.82rem;text-transform:uppercase}.module-report-heading .report-pass{background:rgba(22,163,74,.1);color:#0b6b35}.module-report-heading .report-review{background:#fff3df;color:#9a4b00}.module-report-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:start;grid-gap:22px;gap:22px}.module-report-preview{display:block;aspect-ratio:1280/853;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--soft);box-shadow:var(--shadow-sm)}.module-report-preview img{width:100%;height:100%;object-fit:contain}.module-report-actions{display:grid;grid-gap:10px;gap:10px}.module-report-actions .button{width:100%}.button.whatsapp-button{border-color:#128c55;background:#128c55;color:#ffffff}.button.whatsapp-button:hover{background:#0f7548}.module-report-meta{display:grid;grid-gap:10px;gap:10px;margin:6px 0 0;padding-top:14px;border-top:1px solid var(--line)}.module-report-meta div{min-width:0}.module-report-meta dt{color:var(--faint);font-size:.72rem;font-weight:900;text-transform:uppercase}.module-report-meta dd{margin:3px 0 0;color:var(--navy);font-size:.88rem;font-weight:800;overflow-wrap:anywhere}.registration{background:linear-gradient(180deg,#fff,#f6f8fb)}.registration-notice{max-width:1060px;margin:0 auto 18px;padding:18px 20px;border:1px solid rgba(245,158,11,.34);border-left:5px solid var(--amber);border-radius:var(--radius);background:#fff8eb}.final-review span,.payment-total span,.price-summary span,.registration-notice span{color:#9a5a00}.registration-notice strong{display:block;color:var(--navy);font-size:clamp(1.16rem,2vw,1.45rem);line-height:1.25}.registration-notice p{margin:8px 0 0;color:var(--muted)}.form-layout{display:grid;grid-template-columns:230px minmax(0,1fr);grid-gap:28px;gap:28px}.form-progress{align-self:start;position:-webkit-sticky;position:sticky;top:92px}.form-progress ol{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.progress-step{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);font-size:.88rem;font-weight:900}.progress-step span{display:inline-grid;flex:0 0 auto;place-items:center;width:24px;height:24px;border-radius:7px;background:#edf2f7;color:var(--muted);font-size:.76rem}.progress-step.is-active{border-color:rgba(37,99,235,.4);background:rgba(37,99,235,.08);color:var(--navy)}.progress-step.is-active span,.progress-step.is-complete span{background:var(--blue);color:#fff}.form-panel{min-width:0}fieldset{margin:0;padding:0;border:0}.form-step{display:none;min-height:430px}.form-step.is-active{display:block}legend{margin-bottom:18px;color:var(--navy);font-size:1.22rem;font-weight:900}legend span{display:block;margin-bottom:6px;color:var(--blue);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.field-group>span,label span{display:block;margin-bottom:8px;color:var(--ink);font-weight:850}input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{width:100%;min-height:48px;padding:12px 13px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(37,99,235,.16);border-color:var(--blue)}.field-group{display:flex;flex-wrap:wrap;gap:10px 14px;align-content:flex-start}.field-group>span{flex-basis:100%}.agreement-list label,.checkbox-grid label,.field-group label,.quiz-options label{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:750}input[type=checkbox],input[type=radio]{width:17px;height:17px;accent-color:var(--blue);flex:0 0 auto}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.course-picker-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;grid-gap:18px;gap:18px}.final-review,.payment-total,.price-summary{padding:18px;border:1px solid rgba(245,158,11,.32);border-radius:var(--radius);background:#fff8eb}.price-summary{position:-webkit-sticky;position:sticky;top:92px}.final-review strong,.payment-total strong,.price-summary strong{display:block;margin-top:4px;color:#111827;font-size:clamp(1.9rem,5vw,3rem);line-height:1}.field-note,.final-review p,.payment-total p,.price-summary p{color:var(--muted)}.final-review p,.payment-total p,.price-summary p{margin:10px 0 0}.selected-count{margin-top:16px;color:var(--ink);font-weight:900}.selected-count b{color:var(--blue)}.price-summary ul{display:grid;grid-gap:6px;gap:6px;margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:.9rem}.field-note{margin:-6px 0 12px}.agreement-list{display:grid;grid-gap:10px;gap:10px}.bank-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:0 0 18px}.bank-details div{min-height:86px;padding:14px;border:1px solid rgba(37,99,235,.16);border-radius:var(--radius);background:#f4f8ff}.bank-details span{color:var(--faint)}.bank-details strong{display:block;color:var(--navy);font-size:clamp(1.05rem,2vw,1.24rem);overflow-wrap:anywhere}.upload-panel{margin-top:18px;padding:16px;border:1px dashed #9fb0c6;border-radius:var(--radius);background:#fbfcff}.upload-panel input[type=file]{width:100%;margin-top:4px;padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--muted)}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}.privacy-note{margin:0;color:var(--muted);font-size:.94rem;font-weight:800}.submit-button{min-width:210px}.form-status{display:none;margin-top:18px;padding:14px 16px;border-radius:var(--radius);font-weight:850}.form-status.is-visible{display:block}.form-status.success{border:1px solid rgba(22,163,74,.3);background:rgba(22,163,74,.1);color:#0b6b35}.form-status.error{border:1px solid rgba(220,38,38,.28);background:rgba(220,38,38,.08);color:#a61f1f}.form-status.warning{border:1px solid rgba(245,158,11,.34);background:#fff8eb;color:#8a4b00}.form-status a{display:inline-flex;margin-top:10px;color:var(--navy);text-decoration:underline}.honeypot{position:absolute;left:-9999px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:28px clamp(16px,4vw,56px);background:#111827;color:rgba(255,255,255,.78);font-size:.95rem}.site-footer p{margin:0}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.footer-links a{color:rgba(255,255,255,.78);font-weight:800}.footer-links a:focus,.footer-links a:hover{color:#fff}.legal-page{min-height:calc(100vh - 150px);background:#fff}.legal-page article{max-width:820px;margin:0 auto}.legal-page h1{margin:0;color:var(--navy);font-size:clamp(2.25rem,6vw,4.5rem);line-height:1}.legal-page h2{margin:32px 0 8px;color:var(--navy);font-size:1.25rem}.legal-page p{color:var(--muted);line-height:1.7}.legal-page a{color:var(--blue);text-decoration:underline}@media (max-width:1120px){.hero{grid-template-columns:1fr;max-width:var(--container)}.hero h1{max-width:860px}.contact-grid,.dashboard-metrics,.module-grid,.roadmap-board{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-announcement-layout,.app-preview-layout,.approach-layout,.dashboard-hero,.dashboard-layout{grid-template-columns:1fr}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-broadcast-layout{grid-template-columns:1fr}.student-profile-panel{position:static}}@media (max-width:900px){.site-header{grid-template-columns:1fr;gap:12px}.nav-links{justify-content:flex-start;width:100%;padding-bottom:2px}.announcement-board,.course-picker-layout,.form-layout,.module-report-layout,.quiz-top,.student-access-layout{grid-template-columns:1fr}.report-recovery-heading{align-items:stretch;flex-direction:column}.report-recovery-actions{justify-content:flex-start}.report-history-row{grid-template-columns:minmax(0,1fr) auto}.report-history-actions{grid-column:1/-1;justify-content:flex-start}.student-access-layout{max-width:720px}.form-progress,.price-summary{position:static}.form-progress ol{grid-template-columns:repeat(4,minmax(0,1fr))}.progress-step{justify-content:center;min-height:54px;text-align:center;font-size:.78rem}.progress-step span{display:none}.achievement-grid,.announcement-list,.backend-grid,.lesson-system,.project-library{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-operations-grid,.cta-panel{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}.admin-panel-heading,.admin-topbar{align-items:stretch;flex-direction:column}.admin-topbar-actions{justify-content:flex-start}}@media (max-width:680px){.dashboard-hero,.hero,.quiz-form,.registration-form,.section-band,body,main{width:100%;max-width:100%}.site-header{position:static;padding:13px 14px}.brand span:last-child{max-width:calc(100vw - 86px)}.nav-links{gap:6px;font-size:.86rem}.nav-links a{padding:8px 9px}.section-band{padding:44px 15px}.hero{min-height:auto;padding-top:38px;padding-bottom:42px}.hero h1{font-size:clamp(2.35rem,13vw,3.4rem);line-height:.96}.admin-page{padding:10px}.hero-lede{font-size:1rem}.centered-action,.cta-actions,.hero-actions{flex-direction:column}.button,.submit-button{width:100%}.install-prompt{right:10px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 20px);padding:16px}.install-prompt-actions{flex-direction:column}.achievement-grid,.admin-metrics,.announcement-list,.app-feature-grid,.backend-grid,.bank-details,.checkbox-grid,.class-day-list,.contact-grid,.dashboard-metrics,.engagement-overview,.field-grid,.hero-facts,.lesson-system,.module-grid,.project-library,.quiz-fields,.quiz-footer,.quiz-options,.roadmap-board,.stack-grid,.two-column{grid-template-columns:1fr}.assignment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-record-list article>div,.student-assignment-item summary{align-items:flex-start;flex-direction:column}.engagement-motivation{grid-template-columns:1fr;gap:7px}.engagement-level-pill{white-space:normal}.level-progress-card{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:16px}.level-progress-ring{width:88px}.milestone-celebration{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.stack-core{grid-template-columns:1fr;text-align:center}.stack-core span{width:min(180px,70vw);margin:0 auto}.cooldown-card,.dashboard-card-heading,.dashboard-status-row,.module-report-heading,.quiz-student-bar,.stack-footer,.stack-header{align-items:flex-start;flex-direction:column}.report-history-actions,.report-history-actions .button,.report-recovery-actions,.report-recovery-actions .button{width:100%}.report-history-row,.report-recovery-metrics{grid-template-columns:1fr}.report-history-row>strong{justify-self:start}.report-history-actions{grid-column:auto}.report-history-note{max-width:none;text-align:left}.access-benefits{grid-template-columns:1fr}.quiz-student-actions{width:100%}.quiz-student-actions .mini-link{flex:1 1}.phone-preview{min-height:0;border-width:7px;border-radius:25px}.form-progress ol{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-step{min-height:42px;padding:8px}.form-step{min-height:0}.quiz-form,.registration-form{padding:16px}.form-footer,.site-footer{align-items:stretch;flex-direction:column}.privacy-note{text-align:center}}