:root{--bg:#0f1115;--panel:#171a21;--panel2:#1d212a;--text:#f3f5f7;--muted:#a9b0bd;--line:#2a303b;--accent:#8fd3ff;--good:#a8e6b0;--warn:#ffd27d;--danger:#ff9c9c}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}body{min-height:100vh}.container{max-width:1180px;margin:0 auto;padding:28px}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#11141a;position:sticky;top:0}.topbar-inner{align-items:center;gap:22px;max-width:1180px;margin:auto;padding:14px 28px;display:flex}.brand{letter-spacing:.3px;margin-right:auto;font-weight:800}.nav{flex-wrap:wrap;gap:12px;display:flex}.nav a{color:var(--muted);border-radius:8px;padding:8px 10px}.nav a:hover{background:var(--panel);color:var(--text)}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:850px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.container{padding:18px}.topbar-inner{padding:12px 18px}}h1{margin:0 0 20px;font-size:32px}h2{margin:0 0 14px;font-size:22px}h3{margin:0 0 10px}.muted{color:var(--muted)}.kpi{margin-top:4px;font-size:30px;font-weight:800}.badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;display:inline-flex}.badge.core{color:var(--good)}.badge.challenge{color:var(--warn)}.badge.expert{color:var(--accent)}.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:10px 14px;display:inline-flex}.btn:hover{filter:brightness(1.12)}.btn.primary{background:var(--text);color:#111;border-color:var(--text)}.field{gap:7px;margin-bottom:14px;display:grid}.field label{color:var(--muted);font-size:13px}.field input,.field textarea,.field select{border:1px solid var(--line);width:100%;color:var(--text);background:#101319;border-radius:10px;padding:11px 12px}textarea{resize:vertical;min-height:110px}.table-wrap{border:1px solid var(--line);border-radius:14px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:650px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.progress{border:1px solid var(--line);background:#0d0f13;border-radius:999px;height:10px;overflow:hidden}.progress>span{background:var(--text);height:100%;display:block}.hero{padding:26px 0 8px}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stack{gap:12px;display:grid}.login-shell{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{width:min(430px,100%)}.error{color:#ffc1c1;background:#2a1717;border:1px solid #6e3333;border-radius:10px;margin-bottom:14px;padding:10px 12px}.success{color:var(--good)}.objective{border-left:3px solid var(--line);padding-left:14px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-head h1{margin:5px 0 8px}.eyebrow{letter-spacing:.14em;color:var(--accent);font-size:11px;font-weight:800}.brand{align-items:center;gap:8px;display:flex}.brand-mark{color:#071017;background:linear-gradient(135deg,#9ee7ff,#a8e6b0);border-radius:8px;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.user-tools{align-items:center;gap:8px;display:flex}.profile-chip{border:1px solid var(--line);background:var(--panel);border-radius:999px;align-items:center;gap:7px;padding:5px 9px;display:flex}.notify{padding:7px;position:relative}.notify span{color:#fff;background:#ff746c;border-radius:99px;place-items:center;min-width:17px;height:17px;font-size:10px;display:grid;position:absolute;top:-3px;right:-1px}.btn.small{padding:7px 10px}.btn.danger,.danger{color:#ffb0b0;border-color:#663b3b}.card.compact{border-radius:12px;padding:13px}.sep{border:0;border-top:1px solid var(--line);margin:24px 0}.success-box{color:#c9f3d2;background:#14251a;border:1px solid #315a3c;border-radius:10px;padding:10px 12px}.filters{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.filters select,.filters input,.card select{border:1px solid var(--line);color:var(--text);background:#101319;border-radius:10px;padding:10px 12px}.status-active{color:#9ef0b2;border-color:#315a3c}.status-draft{color:#ffd27d;border-color:#6a5832}.status-closed{color:#b7bdc8}.status-archived{color:#8c94a2}.bonus{color:#ffe38f;border-color:#675a2e}.avatar-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.avatar-choice{border:1px solid var(--line);cursor:pointer;background:#11151b;border-radius:12px;place-items:center;gap:5px;padding:12px;display:grid}.avatar-choice input{width:auto}.avatar-icon{font-size:28px}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.achievement-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;gap:15px;padding:18px;display:flex}.achievement-card.locked{opacity:.5;filter:saturate(.3)}.achievement-icon{border:1px solid var(--line);background:#101319;border-radius:14px;place-items:center;width:52px;height:52px;font-size:34px;display:grid}.rarity{letter-spacing:.1em;font-size:10px;font-weight:900}.rarity-uncommon{color:#9fe4ac}.rarity-rare{color:#8fd3ff}.rarity-epic{color:#d3a4ff}.rarity-legendary{color:#ffd27d}.leaderboard{gap:8px;max-width:850px;display:grid}.leader-row{background:var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:50px 48px 1fr auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.rank{text-align:center;font-size:22px;font-weight:900}.avatar-sm{font-size:26px}.leader-name{display:grid}.leader-name span{color:var(--muted);font-size:12px}.leader-xp{font-weight:800}.rank-1{border-color:#76662d}.rank-2{border-color:#59616c}.rank-3{border-color:#6e4c36}.event-banner{background:linear-gradient(135deg,#251f0f,#171a21);border:1px solid #6d5b25;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:15px 18px;display:flex}.event-banner div:first-child{gap:4px;display:grid}.event-banner span{color:#dacb9b;font-size:13px}.event-mult{color:#ffe07a;font-size:22px;font-weight:900}.content-admin{border:1px solid var(--line);border-radius:12px;justify-content:space-between;gap:12px;padding:12px;display:flex}.content-admin strong{margin-top:6px;display:block}.content-stack{gap:22px;display:grid}.notice{border-left:4px solid var(--warn);background:#211d13;border-radius:8px;padding:15px}.notice p{margin-bottom:0}.resource{border:1px solid var(--line);background:#11151b;border-radius:12px;align-items:flex-start;gap:12px;padding:13px;display:flex}.resource p{margin:4px 0}.text-link{color:var(--accent);font-weight:700}.code-block{border:1px solid var(--line);background:#0b0e12;border-radius:12px;padding:14px;overflow:auto}.lesson-grid{grid-template-columns:minmax(0,2fr) minmax(290px,1fr)}.lesson{padding:24px}.lead{color:#c4cad4;max-width:850px;font-size:17px}.sticky-card{position:sticky;top:92px}.mission{border:1px solid var(--line);border-left-width:4px;border-radius:12px;padding:15px}.mission.completed{opacity:.75;background:#132019}.mission-head{justify-content:space-between;gap:8px;display:flex}.xp-chip{color:#ffd27d;font-weight:900}.grade-big{margin:12px 0;font-size:36px;font-weight:900}.grade-big small{color:var(--muted);font-size:14px}.dashboard-hero{padding:20px 0 22px}.dashboard-hero h1{margin:5px 0}.metric{background:var(--panel);border:1px solid var(--line);border-radius:15px;gap:6px;padding:18px;display:grid}.metric span{color:var(--muted);font-size:13px}.metric strong{font-size:30px}.metric.urgent{border-color:#654d2c}.section-title{justify-content:space-between;align-items:center;margin:28px 0 14px;display:flex}.section-title h2{margin:0}.section-title a{color:var(--accent)}.course-card{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:21px;display:block;position:relative;overflow:hidden}.course-card:before{content:"";background:#8fd3ff;width:4px;position:absolute;top:0;bottom:0;left:0}.theme-arcade:before{background:#ffd27d}.theme-xr:before{background:#b39cff}.theme-studio:before{background:#a8e6b0}.course-card h2{margin-top:14px}.course-card small{color:var(--muted)}.student-hero{align-items:center;gap:18px;padding:20px 0 24px;display:flex}.hero-avatar{background:var(--panel);border:1px solid var(--line);border-radius:20px;place-items:center;width:72px;height:72px;font-size:44px;display:grid}.student-hero h1{margin:4px 0}.level-progress{border:1px solid var(--line);background:#090b0f;border-radius:99px;width:min(380px,70vw);height:8px;overflow:hidden}.level-progress span{background:linear-gradient(90deg,#8fd3ff,#a8e6b0);height:100%;display:block}.mini-stats{margin:16px 0}.mini-stats div{gap:3px;display:grid}.mini-stats span{color:var(--muted);font-size:12px}.mini-stats strong{font-size:22px}.continue-btn{width:100%;margin-top:4px}@media (max-width:1100px){.topbar-inner{align-items:flex-start}.nav{white-space:nowrap;flex-wrap:nowrap;max-width:65vw;overflow-x:auto}.profile-name{display:none}.achievement-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:850px){.lesson-grid{grid-template-columns:1fr}.sticky-card{position:static}.achievement-grid{grid-template-columns:1fr}.avatar-grid{grid-template-columns:repeat(2,1fr)}.user-tools{margin-left:auto}.nav{flex-basis:100%;order:3;max-width:100%}.topbar-inner{flex-wrap:wrap}.page-head{flex-direction:column}.leader-row{grid-template-columns:38px 40px 1fr}.leader-xp{grid-column:3}.kpi-grid{grid-template-columns:repeat(2,1fr)}}.access-action{gap:6px;min-width:190px;display:grid}.access-action form{margin:0}.access-action .btn:disabled{cursor:not-allowed;opacity:.62;filter:none}.access-feedback{max-width:260px;font-size:11px;line-height:1.3}.semester-tools{margin-bottom:22px}.action-field{align-self:end}.phase-map{gap:28px;display:grid}.phase-section{gap:12px;display:grid}.phase-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.phase-title span{letter-spacing:.12em;color:var(--accent);font-size:13px;font-weight:900}.phase-title small{color:var(--muted)}.semester-road{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.week-node{background:var(--panel);border:1px solid var(--line);border-radius:16px;gap:9px;padding:16px;display:grid;position:relative}.week-node.is-live{border-color:#315a3c}.week-node-top{justify-content:space-between;align-items:center;display:flex}.week-number{color:#777f8c;font-size:28px;font-weight:950}.week-node h3{margin:0}.week-meta{color:var(--muted);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.week-node small{color:var(--muted);display:block}.week-actions{margin-top:auto}.week-actions form{gap:6px;display:flex}.tiny-input{width:62px!important;padding:7px 8px!important}.empty-state{border:1px dashed var(--line);text-align:center;color:var(--muted);border-radius:16px;padding:34px}.empty-state h2{color:var(--text)}.library-add{gap:8px;margin-bottom:16px;display:flex}.library-add select{border:1px solid var(--line);color:var(--text);background:#101319;border-radius:10px;flex:1;padding:10px 12px}.editor-stack{margin-top:12px}.editor-item{border:1px solid var(--line);background:#11151b;border-radius:12px;overflow:hidden}.editor-item>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;list-style:none;display:flex}.editor-item>summary::-webkit-details-marker{display:none}.editor-item>summary>div{align-items:center;gap:9px;min-width:0;display:flex}.editor-item>summary strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.editor-item>form,.editor-item>.actions{padding:0 14px 14px}.editor-actions{border-top:1px solid var(--line);padding-top:10px!important}.drag-index{width:24px;height:24px;color:var(--muted);background:#0d1015;border-radius:7px;place-items:center;font-size:11px;display:grid}.add-panel{border:1px dashed var(--line);border-radius:12px;margin-top:16px;padding:12px}.add-panel>summary{cursor:pointer;font-weight:800}.add-panel>form{padding-top:16px}.rubric-total{border-radius:10px;margin-bottom:12px;padding:10px 12px}.rubric-total.ok{background:#132019;border:1px solid #315a3c}.rubric-total.warn{background:#211d13;border:1px solid #66542b}.tag{color:var(--muted);background:#0d1015;border-radius:999px;padding:3px 7px;font-size:11px}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-hero{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin-bottom:24px;padding:24px 24px 20px;position:relative;overflow:hidden}.course-hero:before{content:"";background:#8fd3ff;width:5px;position:absolute;top:0;bottom:0;left:0}.course-hero.theme-arcade:before{background:#ffd27d}.course-hero.theme-xr:before{background:#b39cff}.course-hero.theme-studio:before{background:#a8e6b0}.course-hero h1{margin:12px 0}.progress.large{max-width:700px;height:12px;margin:16px 0 8px}.journey{gap:28px;display:grid}.journey-phase{gap:10px;display:grid}.journey-phase-title{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.journey-phase-title strong{letter-spacing:.13em;color:var(--accent);font-size:12px}.journey-phase-title span{color:var(--muted);font-size:12px}.journey-weeks{gap:8px;display:grid}.journey-week{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-columns:48px 1fr 24px;align-items:center;gap:14px;padding:14px 16px;transition:all .15s;display:grid}.journey-week:hover{border-color:#4a5360;transform:translate(3px)}.journey-week.done{background:#111a15;border-color:#315a3c}.journey-dot{border:1px solid var(--line);background:#0c1015;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.journey-week.done .journey-dot{color:#9ef0b2;background:#17301f;border-color:#315a3c}.journey-copy{gap:3px;display:grid}.journey-copy>span,.journey-copy>small{color:var(--muted)}.journey-arrow{color:var(--muted);font-size:20px}.lesson-nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:4px 0 22px;font-size:13px;display:grid}.lesson-nav>div:last-child{text-align:right}.lesson-nav a{color:var(--accent)}.lesson-nav.bottom{margin:24px 0 8px}.lesson-nav.bottom>:last-child{justify-self:end}.lesson-step{letter-spacing:.08em;border:1px solid var(--line);width:28px;height:28px;color:var(--accent);border-radius:9px;place-items:center;margin-bottom:8px;font-size:10px;font-weight:900;display:inline-grid}.xp-chip small{color:var(--muted);font-size:10px}@media (max-width:1000px){.semester-road{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.semester-road{grid-template-columns:1fr}.lesson-nav{text-align:left;grid-template-columns:1fr}.lesson-nav>div:last-child{text-align:left}.journey-week{grid-template-columns:42px 1fr}.journey-arrow{display:none}.library-add{flex-direction:column}}.player-hero{border:1px solid var(--line);background:radial-gradient(circle at 15% 20%,#8fd3ff14,#0000 32%),linear-gradient(145deg,#171b23,#12151b);border-radius:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-bottom:22px;padding:24px;display:grid;position:relative;overflow:hidden}.player-hero:after{content:"";border:1px solid #8fd3ff1f;border-radius:50%;width:240px;height:240px;position:absolute;top:-130px;right:-110px}.hero-avatar{isolation:isolate;position:relative}.hero-avatar,.podium-avatar,.avatar-sm{box-shadow:inset 0 0 0 1px #ffffff0f}.level-orbit{color:#0b0d11;border:3px solid var(--bg);background:#f3f5f7;border-radius:50%;place-items:center;width:28px;height:28px;font-size:11px;font-weight:950;display:grid;position:absolute;bottom:-7px;right:-8px}.player-identity h1{margin:4px 0 6px}.player-level-line{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.player-level-line>span:first-child{font-weight:850}.player-level-line b{font-size:13px}.streak-chip{color:#ffd0a2;background:#2a1912;border:1px solid #6c422d;border-radius:999px;padding:4px 9px;font-size:12px;display:inline-flex}.large-player{width:min(520px,60vw);height:10px}.hero-shortcuts{z-index:1;grid-template-columns:repeat(3,88px);gap:8px;display:grid}.hero-shortcuts a{border:1px solid var(--line);color:var(--muted);background:#10141a;border-radius:14px;place-items:center;gap:5px;padding:13px 8px;font-size:11px;transition:all .18s;display:grid}.hero-shortcuts a span{font-size:21px}.hero-shortcuts a b{font-weight:750}.hero-shortcuts a:hover{color:var(--text);border-color:#4c5868;transform:translateY(-2px)}.avatar-blue{background:linear-gradient(145deg,#122132,#15202d)!important;border-color:#284b67!important}.avatar-cyan{background:linear-gradient(145deg,#10272b,#152126)!important;border-color:#2f5a62!important}.avatar-purple{background:linear-gradient(145deg,#241933,#1d1827)!important;border-color:#584270!important}.avatar-orange{background:linear-gradient(145deg,#2d2116,#221b15)!important;border-color:#64472d!important}.avatar-red{background:linear-gradient(145deg,#2d1719,#211518)!important;border-color:#653940!important}.avatar-violet{background:linear-gradient(145deg,#281a35,#1e1728)!important;border-color:#60437b!important}.avatar-green{background:linear-gradient(145deg,#14281c,#141e18)!important;border-color:#386044!important}.avatar-gold{background:linear-gradient(145deg,#2e2815,#211e14)!important;border-color:#6c5c2b!important}.avatar-pink{background:linear-gradient(145deg,#2b1b29,#211820)!important;border-color:#67425f!important}.avatar-choice.locked{opacity:.42;cursor:not-allowed;filter:saturate(.4)}.avatar-choice small{color:var(--muted);font-size:10px}.avatar-choice:not(.locked):hover{border-color:#526070;transform:translateY(-2px)}.level-badge{border:1px solid var(--line);background:var(--panel);border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;min-width:130px;padding:13px 16px;display:grid}.level-badge>span{grid-row:1/3;font-size:26px}.level-badge strong{font-size:13px}.level-badge small{color:var(--muted)}.event-strip{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:24px;display:grid}.event-banner.mini{min-height:78px;margin:0}.dashboard-block{margin-top:30px}.class-quest-card{background:linear-gradient(145deg,#171b23,#12161c);border:1px solid #394655;border-radius:17px;gap:10px;padding:18px;display:grid;position:relative;overflow:hidden}.class-quest-card:after{content:"CO-OP";letter-spacing:.16em;color:#637184;font-size:9px;position:absolute;top:11px;right:12px}.quest-progress-head{color:var(--muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.quest-progress span{background:linear-gradient(90deg,#8fd3ff,#a8e6b0)}.player-course{transition:all .18s}.player-course:hover{border-color:#475260;transform:translateY(-3px)}.recent-achievements{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.recent-achievement{background:var(--panel);border:1px solid var(--line);border-left-width:3px;border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.recent-achievement>span{background:#101319;border-radius:11px;place-items:center;width:42px;height:42px;font-size:28px;display:grid}.recent-achievement>div{gap:3px;display:grid}.recent-achievement small{color:var(--muted)}.compact-empty{padding:22px}.rarity-border-common{border-color:#3c424c!important}.rarity-border-uncommon{border-color:#315a3c!important}.rarity-border-rare{border-color:#315f7c!important}.rarity-border-epic{border-color:#5b4273!important}.rarity-border-legendary{border-color:#76662d!important}.achievement-v2{min-height:200px;transition:all .18s}.achievement-v2.unlocked:hover{transform:translateY(-3px)}.achievement-copy{flex:1;align-content:start;display:grid}.achievement-copy h3{margin-top:8px}.achievement-progress{border:1px solid var(--line);background:#0c0f13;border-radius:99px;height:6px;margin-top:8px;overflow:hidden}.achievement-progress span{background:linear-gradient(90deg,#8fd3ff,#a8e6b0);height:100%;display:block}.achievement-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.collection-score{text-align:center;border:1px solid var(--line);background:var(--panel);border-radius:16px;min-width:130px;padding:12px 16px}.collection-score strong{font-size:27px;display:block}.collection-score span{color:var(--muted);font-size:11px}.podium{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:900px;margin:18px 0 22px;display:grid}.podium-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;place-items:center;gap:6px;padding:18px 14px;display:grid;position:relative}.podium-card.place-1{background:linear-gradient(145deg,#211e14,#17191e);border-color:#76662d;order:2;transform:translateY(-8px)}.podium-card.place-2{order:1}.podium-card.place-3{order:3}.podium-card.is-me,.leader-row.is-me{box-shadow:0 0 0 1px var(--accent);background:#151d25}.podium-medal{font-size:25px}.podium-avatar{border:1px solid var(--line);border-radius:17px;place-items:center;width:58px;height:58px;font-size:31px;display:grid}.podium-card>span{color:var(--muted);font-size:11px}.podium-card>b{color:#ffd27d}.my-rank{text-align:center;border:1px solid var(--line);background:var(--panel);border-radius:15px;min-width:110px;padding:10px 15px;display:grid}.my-rank span,.my-rank small{color:var(--muted);font-size:10px}.my-rank strong{font-size:26px}.leaderboard-v2{max-width:900px}.leaderboard-v2 .avatar-sm{border:1px solid var(--line);border-radius:11px;place-items:center;width:38px;height:38px;font-size:22px;display:grid}.gamification-tabs{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#0f1115eb;border-radius:13px;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding:8px;display:flex;position:sticky;top:72px}.gamification-tabs a{color:var(--muted);border-radius:9px;padding:7px 10px;font-size:12px}.gamification-tabs a:hover{background:var(--panel2);color:var(--text)}.gam-section{margin-top:20px;scroll-margin-top:130px}.section-title.inline{margin-top:0}.level-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.level-admin-card{border:1px solid var(--line);background:#11151b;border-radius:13px;gap:8px;padding:12px;display:grid}.level-admin-card input{width:100%;color:var(--text);border:1px solid var(--line);background:#0d1015;border-radius:8px;padding:8px}.level-admin-head{align-items:center;gap:8px;display:flex}.level-symbol{font-size:23px}.achievement-admin-list{max-height:520px;overflow:auto}.achievement-admin{border:1px solid var(--line);border-radius:11px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.achievement-mini-icon{background:#0e1116;border-radius:10px;place-items:center;width:40px;height:40px;font-size:22px;display:grid}.achievement-admin b{color:#ffd27d}.checkline{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.event-admin{gap:7px;display:grid}.class-quest-admin{border:1px solid var(--line);background:#11151b;border-radius:12px;gap:8px;padding:12px;display:grid}.class-quest-admin.completed{background:#111a15;border-color:#315a3c}.class-quest-admin small{color:var(--muted)}.success-box{animation:.35s both reward-pop}@keyframes reward-pop{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:none}}.xp-chip{animation:2.6s ease-in-out infinite soft-glow}@keyframes soft-glow{0%,to{text-shadow:none}50%{text-shadow:0 0 14px #ffd27d47}}@media (max-width:1050px){.player-hero{grid-template-columns:auto 1fr}.hero-shortcuts{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.level-admin-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:800px){.recent-achievements,.podium{grid-template-columns:1fr}.podium-card.place-1,.podium-card.place-2,.podium-card.place-3{order:initial;transform:none}.level-admin-grid{grid-template-columns:repeat(2,1fr)}.player-hero{text-align:center;grid-template-columns:1fr}.hero-avatar{margin:auto}.player-level-line{justify-content:center}.large-player{margin:auto}.hero-shortcuts{grid-column:auto}.collection-score,.my-rank{width:100%}}@media (max-width:560px){.level-admin-grid,.hero-shortcuts{grid-template-columns:1fr}.gamification-tabs{position:static}}.week-class-quest{margin-bottom:18px}.class-quest-card.completed{opacity:.85}.class-quest-admin.archived{opacity:.62}.quest-editor{border-top:1px solid var(--line);padding-top:8px}.quest-editor summary{cursor:pointer;color:var(--muted);font-size:13px}.quest-editor[open] summary{color:var(--text);margin-bottom:10px}.quest-edit-form{margin-top:4px}.badge.special{color:#ff9ed1;border-color:#68456a}.special-mission{background:linear-gradient(145deg,#b45ab814,#0000);border-left-color:#b45ab8}.btn.disabled{opacity:.7;cursor:default}.error-box{color:#ffc1c1;background:#2a1717;border:1px solid #6e3333;border-radius:10px;margin:12px 0;padding:10px 12px}.code-redeem{align-items:center;gap:8px;max-width:430px;display:flex}.code-redeem input{text-transform:uppercase;letter-spacing:.12em;color:var(--text);border:1px solid var(--line);background:#0d1015;border-radius:10px;flex:1;padding:10px 12px}.validation-session{background:#111821;border:1px solid #3b5366;border-radius:14px;gap:12px;padding:14px;display:grid}.validation-live{gap:9px;display:grid}.validation-code{letter-spacing:.16em;color:#d9f4ff;text-align:center;font-variant-numeric:tabular-nums;background:#0c1117;border:1px dashed #4d748f;border-radius:14px;padding:18px;font-size:42px;font-weight:950}.history-row{border:1px solid var(--line);border-radius:11px;justify-content:space-between;align-items:center;gap:16px;padding:11px 12px;display:flex}.history-row>div{gap:3px;display:grid}.history-row small{color:var(--muted)}.timetable-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.timetable-slot{border:1px solid var(--line);background:#11151b;border-radius:14px;gap:8px;padding:14px;display:grid}.timetable-slot>div:first-child{justify-content:space-between;align-items:center;display:flex}.timetable-slot input{width:100%;color:var(--text);border:1px solid var(--line);background:#0d1015;border-radius:8px;padding:8px}.timetable-slot.archived{opacity:.5}.week-calendar-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.week-calendar-card{border:1px solid var(--line);background:#11151b;border-radius:12px;gap:4px;padding:12px;display:grid}.week-calendar-card .week-num{color:var(--accent);font-size:22px;font-weight:900}.week-calendar-card small{color:var(--muted)}.feedback-admin{gap:9px;display:grid}.feedback-review{border-top:1px solid var(--line);padding-top:12px}.xp-ledger-row{border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:12px;display:grid}.xp-ledger-row>div{gap:3px;display:grid}.xp-ledger-row>div>strong{color:var(--good);font-size:18px}.xp-ledger-row>div>small{color:var(--muted)}.xp-ledger-row.negative>div>strong{color:var(--danger)}.xp-ledger-row form{gap:8px;display:flex}.xp-ledger-row form input{color:var(--text);border:1px solid var(--line);background:#0d1015;border-radius:8px;padding:8px}.xp-target-line{color:var(--muted);justify-content:space-between;gap:12px;margin:10px 0 7px;font-size:12px;display:flex}.xp-target-line strong{color:var(--text)}@media (max-width:1000px){.timetable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:650px){.timetable-grid,.week-calendar-grid{grid-template-columns:1fr}.code-redeem{flex-direction:column;align-items:stretch}.validation-code{font-size:30px}.xp-ledger-row{grid-template-columns:1fr}.xp-ledger-row form{flex-direction:column}.history-row{flex-direction:column;align-items:flex-start}}.calendar-session-list{gap:8px;margin-top:12px;display:grid}.calendar-session{border:1px solid var(--border);background:#ffffff05;border-radius:10px;gap:2px;padding:8px;display:grid}.calendar-session b{font-size:.76rem}.calendar-session span{font-size:.78rem}.calendar-session small{color:var(--muted);font-size:.7rem}.student-picker{min-width:0;position:relative}.student-picker-trigger{text-align:left;width:100%;min-height:44px;color:var(--text);border:1px solid var(--line);cursor:pointer;background:#0d1015;border-radius:10px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:9px 12px;display:grid}.student-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-picker-trigger small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-picker-trigger b{color:var(--accent)}.student-picker-popover{z-index:50;border:1px solid var(--line);background:#11151b;border-radius:14px;padding:10px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 18px 50px #00000073}.student-picker-popover>input{width:100%;margin-bottom:8px}.student-picker-results{gap:4px;max-height:340px;padding-right:3px;display:grid;overflow:auto}.student-picker-results>button,.student-picker-results>label{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;gap:2px;padding:9px 10px;display:grid}.student-picker-results>button:hover,.student-picker-results>label:hover,.student-picker-results .selected{background:#7dd3fc14;border-color:#7dd3fc4d}.student-picker-results span,.student-picker-results small{color:var(--muted);font-size:.75rem}.student-picker-results>label{grid-template-columns:auto 1fr;align-items:start}.student-picker-results>label input{margin-top:4px}.student-picker-actions{gap:6px;margin-bottom:8px;display:flex}.student-picker-popover.multi>.btn.primary{width:100%;margin-top:8px}.status-suspended{color:#f0b37e;background:#a86a381f;border-color:#a86a38}.access-policy{gap:14px;display:grid}.access-policy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.access-override-row{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 0;display:grid}.calendar-session.weekend{background:#a78bfa14;border-color:#a78bfa73}.calendar-session .day-chip{letter-spacing:.05em;color:#c4b5fd;width:max-content;font-size:.65rem;font-weight:800;display:inline-flex}.week-calendar-card .session-count{color:var(--accent);font-size:.68rem;font-weight:700}.suspension-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:850px){.access-policy-grid,.access-override-row{grid-template-columns:1fr}.student-picker-trigger{grid-template-columns:1fr auto}.student-picker-trigger small{grid-column:1/-1}}.tutorial-image{gap:8px;margin:0;display:grid}.tutorial-image img,.tutorial-image-preview img{border:1px solid var(--line);background:#0b0e12;border-radius:14px;max-width:100%;height:auto;display:block}.tutorial-image figcaption,.tutorial-image-preview figcaption{color:var(--muted);text-align:center;font-size:.82rem}.tutorial-image-preview{margin:8px 0 14px}.tutorial-image-preview img{object-fit:contain;max-height:320px;margin:auto}.form-hint{font-size:.78rem;line-height:1.45}.validation-guide{background:#538db812;border:1px solid #35485a;border-radius:14px;gap:10px;margin:14px 0 16px;padding:14px;display:grid}.validation-guide>strong{color:var(--accent)}.validation-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.validation-guide-grid>div{border:1px solid var(--line);background:#11151b;border-radius:10px;gap:4px;padding:10px;display:grid}.validation-guide-grid b{font-size:.82rem}.validation-guide-grid span{color:var(--muted);font-size:.76rem;line-height:1.45}.library-image-thumb{object-fit:cover;border:1px solid var(--line);border-radius:9px;max-width:180px;max-height:110px;margin-top:8px;display:block}@media (max-width:700px){.validation-guide-grid{grid-template-columns:1fr}}.resource-copy{gap:6px;min-width:0;display:grid}.resource-open{width:max-content;margin-top:2px;display:inline-flex}.report-list .resource{align-items:center}.report-action{color:var(--accent);margin-left:auto;font-size:.8rem;font-weight:700}.project-admin-card{gap:12px;display:grid}.project-admin-card.enabled{border-color:#3a596f}.project-toggle{border:1px solid var(--line);color:var(--muted);background:#101319;border-radius:999px;align-items:center;gap:8px;padding:9px 12px;font-size:.82rem;display:flex}.project-toggle input{width:auto}.project-student-card{gap:12px;display:grid}.project-due{color:#e7d89e;background:#221e13;border:1px solid #66562c;border-radius:10px;padding:10px 12px}.leaderboard-showcase{border:1px solid var(--line);background:radial-gradient(circle at 50% 0,#8fd3ff14,#0000 42%),linear-gradient(#151922,#11141a);border-radius:22px;margin:20px 0 30px;padding:24px 22px 0;overflow:hidden}.leaderboard-showcase-title{text-align:center}.leaderboard-showcase-title h2{margin:4px 0 0}.podium-stage{grid-template-columns:1fr 1.12fr 1fr;align-items:end;gap:14px;max-width:860px;margin:28px auto 0;display:grid}.podium-slot{align-items:end;display:grid}.podium-player{border:1px solid var(--line);z-index:1;background:#171b22;border-bottom:0;border-radius:18px 18px 0 0;place-items:center;gap:7px;min-height:178px;padding:17px 12px 14px;display:grid;position:relative}.podium-slot.rank-1 .podium-player{background:linear-gradient(#282214,#1a1d22);border-color:#8b7732;min-height:230px;padding-top:22px;box-shadow:0 -10px 50px #ffd27d14}.podium-slot.rank-2 .podium-player{min-height:190px}.podium-slot.rank-3 .podium-player{min-height:176px}.rank-symbol{font-size:30px;line-height:1}.podium-slot.rank-1 .rank-symbol{font-size:38px}.podium-slot .podium-avatar{border:1px solid var(--line);border-radius:18px;place-items:center;width:62px;height:62px;font-size:32px;display:grid}.podium-slot.rank-1 .podium-avatar{border-color:#8b7732;width:78px;height:78px;font-size:42px}.podium-player>span{color:var(--muted);font-size:.72rem}.podium-player>b{color:var(--warn);font-size:1rem}.podium-step{border:1px solid var(--line);background:#20252e;border-bottom:0;border-radius:12px 12px 0 0;align-content:center;place-items:center;height:78px;display:grid;box-shadow:inset 0 1px #ffffff08}.podium-slot.rank-1 .podium-step{background:linear-gradient(#6d5b25,#302817);border-color:#8b7732;height:128px}.podium-slot.rank-2 .podium-step{background:linear-gradient(#4d5662,#252a31);height:94px}.podium-slot.rank-3 .podium-step{background:linear-gradient(#604431,#2b211b);height:72px}.podium-step>span{font-size:34px;font-weight:950}.podium-slot.rank-1 .podium-step>span{color:#ffe18a;font-size:54px}.podium-step small{letter-spacing:.12em;color:var(--muted);font-size:.65rem;font-weight:800}.podium-slot.is-me .podium-player{box-shadow:0 0 0 2px var(--accent) inset}.leaderboard-list-section{max-width:900px;margin-top:8px}.leaderboard-v3{max-width:none}.leaderboard-v3 .leader-row{transition:all .16s}.leaderboard-v3 .leader-row:hover{border-color:#435061;transform:translate(3px)}.leaderboard-v3 .rank{color:var(--muted);font-size:18px}.calendar-session{border-color:var(--line)}@media (max-width:800px){.podium-stage{grid-template-columns:1fr;align-items:stretch}.podium-slot.rank-1{order:1}.podium-slot.rank-2{order:2}.podium-slot.rank-3{order:3}.podium-player,.podium-slot.rank-1 .podium-player,.podium-slot.rank-2 .podium-player,.podium-slot.rank-3 .podium-player{border-bottom:1px solid var(--line);border-radius:16px;min-height:0}.podium-step,.podium-slot.rank-1 .podium-step,.podium-slot.rank-2 .podium-step,.podium-slot.rank-3 .podium-step{border-top:0;border-radius:0 0 14px 14px;height:54px}.report-action{display:none}}.teacher-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.teacher-hub-card{grid-template-columns:auto 1fr auto;align-items:center;gap:13px;transition:all .16s;display:grid}.teacher-hub-card:hover{border-color:#405164;transform:translateY(-2px)}.teacher-hub-card>span{border:1px solid var(--line);width:42px;height:42px;color:var(--accent);background:#11151b;border-radius:12px;place-items:center;font-size:20px;display:grid}.teacher-hub-card h2{margin:0 0 4px;font-size:17px}.teacher-hub-card p{margin:0;font-size:.78rem}.teacher-hub-card>b{color:var(--accent)}@media (max-width:900px){.teacher-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.teacher-hub-grid{grid-template-columns:1fr}}.teacher-nav{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.teacher-nav>a,.teacher-nav-group>button{color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:9px;padding:8px 10px;list-style:none;transition:background .15s,color .15s}.teacher-nav>a:hover,.teacher-nav>a.active,.teacher-nav-group>button:hover,.teacher-nav-group.active>button{background:var(--panel);color:var(--text)}.teacher-nav-group{position:relative}.teacher-nav-group>button{font:inherit;background:0 0;border:0;align-items:center;gap:6px;display:flex}.teacher-nav-group>button[aria-expanded=true]{background:var(--panel);color:var(--text)}.teacher-nav-menu{border:1px solid var(--line);z-index:30;background:#151922;border-radius:14px;gap:3px;width:260px;padding:8px;display:grid;position:absolute;top:calc(100% + 9px);left:0;box-shadow:0 18px 50px #00000059}.teacher-nav-menu a{color:var(--text);border-radius:9px;gap:2px;padding:10px 11px;display:grid}.teacher-nav-menu a:hover,.teacher-nav-menu a.active{background:var(--panel2)}.teacher-nav-menu small{color:var(--muted);font-size:11px;font-weight:400}.save-feedback{align-items:center;min-height:22px;margin-top:9px;font-size:13px;display:flex}.save-feedback.saving{color:var(--muted)}.save-feedback.saved{color:var(--good)}.save-feedback.error{color:var(--danger)}@media (max-width:1100px){.teacher-nav{flex-wrap:nowrap;max-width:66vw;padding-bottom:2px;overflow-x:auto}.teacher-nav-menu{width:min(320px,100vw - 32px);position:fixed;top:72px;left:50%;transform:translate(-50%)}}@media (max-width:850px){.teacher-nav{flex-basis:100%;order:3;width:100%;max-width:100%}.teacher-nav-menu{top:118px}}.save-feedback-form.saving button{pointer-events:none;opacity:.68}.xp-target-form .save-feedback{grid-column:1/-1}.library-save-form input[type=file]{border:1px solid var(--line);width:100%;color:var(--text);background:#101319;border-radius:10px;padding:10px}.library-save-form .form-hint{margin:6px 0 10px}.status-suspended{color:#f4bb70;border-color:#80532e}.edition-empty{border:1px dashed var(--line);border-radius:12px;padding:18px}.edition-other-collection,.edition-status-group{border:1px solid var(--line);background:#151920;border-radius:14px}.edition-other-collection{margin-top:24px;padding:0 16px 16px}.edition-other-collection>summary,.edition-status-group>summary{cursor:pointer;align-items:center;gap:12px;padding:14px 12px;font-weight:750;list-style:none;display:flex}.edition-other-collection>summary::-webkit-details-marker{display:none}.edition-status-group>summary::-webkit-details-marker{display:none}.edition-other-collection>summary:hover,.edition-status-group>summary:hover{color:var(--accent)}.edition-other-collection>p{margin:0 12px 14px;font-size:13px}.edition-status-group{margin:10px 0;overflow:visible}.edition-other-groups{margin-top:25px}.edition-group-grid{padding:0 12px 14px}.edition-chevron{margin-left:auto;transition:transform .15s}.edition-status-group[open]>summary>.edition-chevron,.edition-other-collection[open]>summary>.edition-chevron{transform:rotate(180deg)}.edition-status-form{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:12px;display:flex}.edition-status-form .save-feedback{flex-basis:100%;margin-top:0}.edition-status-form select{max-width:170px}.library-howto{flex-wrap:wrap;align-items:center;gap:22px;margin:0 0 20px;display:flex}.library-howto>div{flex:240px}.library-howto h2{margin-bottom:6px}.library-howto p{margin:0;line-height:1.5}.library-howto ol{color:var(--muted);flex:2 340px;margin:0;padding-left:24px;font-size:13px;line-height:1.9}.library-howto .btn{white-space:nowrap}@media (max-width:650px){.library-howto{align-items:stretch}.library-howto .btn{width:100%}.edition-status-form select{max-width:none}}.course-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.course-card-heading>div:first-child{flex:1;min-width:0}.course-card-heading h2,.course-card-heading h3{overflow-wrap:anywhere}.course-degree-logo{object-fit:contain;object-position:right top;background:0 0;flex-shrink:0;width:clamp(72px,18%,140px);max-width:38%;height:68px;display:block}.course-degree-label{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 10px;font-size:13px;line-height:1.5}.course-card-heading+.course-degree-label{margin:0}.course-degree-management{margin-top:16px}.course-degree-management>p{padding:0 18px}.course-degree-management .edition-group-grid{padding:0 16px 16px}.course-degree-form .course-logo-current{align-items:center;gap:14px;margin-bottom:12px;display:flex}.course-logo-current img{object-fit:contain;max-width:160px;max-height:70px}.course-degree-form .course-logo-remove{color:var(--muted);align-items:center;gap:9px;margin:6px 0 15px;font-size:13px;display:flex}.course-logo-remove input{width:auto}@media (max-width:600px){.course-degree-logo{width:90px;height:58px}.course-card-heading{gap:8px}}.syntax-highlight{white-space:pre;tab-size:4;color:#d9e3f0;font-size:.88rem;line-height:1.58}.syntax-highlight .syntax-keyword{color:#c792ea}.syntax-highlight .syntax-type{color:#82aaff}.syntax-highlight .syntax-string{color:#c3e88d}.syntax-highlight .syntax-number,.syntax-highlight .syntax-literal{color:#f6c177}.syntax-highlight .syntax-comment{color:#8290a3;font-style:italic}.course-edit-card{scroll-margin-top:90px}.course-edit-card:target{outline:2px solid var(--accent);outline-offset:2px}.course-edit-card .course-degree-form h3{margin:0 0 7px}.course-edit-card .course-degree-form>.muted{margin:0 0 16px;font-size:13px}:is(.course-themed,.course-hero,.course-journey,.course-theme-preview).theme-default{--course-accent:#8fd3ff;--course-aura:#55aae830;--course-outline:#8fd3ff52}:is(.course-themed,.course-hero,.course-journey,.course-theme-preview).theme-xr{--course-accent:#c4a7ff;--course-aura:#8d5af642;--course-outline:#b39cff85}:is(.course-themed,.course-hero,.course-journey,.course-theme-preview).theme-arcade{--course-accent:#ffd27d;--course-aura:#eb9e293d;--course-outline:#ffd27d7a}:is(.course-themed,.course-hero,.course-journey,.course-theme-preview).theme-studio{--course-accent:#a8e6b0;--course-aura:#3fb68f38;--course-outline:#a8e6b075}.course-themed,.course-hero{background:radial-gradient(ellipse at 92% 1%,var(--course-aura,#55aae830),transparent 68%),var(--panel);border-color:var(--course-outline,#8fd3ff52);box-shadow:inset 0 1px #ffffff06}.course-themed{position:relative;overflow:hidden}.course-themed:before,.course-hero:before{background:var(--course-accent,#8fd3ff);content:"";width:4px;position:absolute;top:0;bottom:0;left:0}.course-themed .actions .badge:first-child,.course-themed>.course-card-heading .badge:first-child{border-color:var(--course-outline,#8fd3ff52);color:var(--course-accent,#8fd3ff)}.course-themed .progress>span,.course-hero .progress>span{background:linear-gradient(90deg,var(--course-accent,#8fd3ff),#e4e9f5)}.course-journey .journey-phase-title strong{color:var(--course-accent,#8fd3ff)}.course-journey .journey-dot{border-color:var(--course-outline,#8fd3ff52)}.course-theme-preview{border:1px solid var(--course-outline);border-left:4px solid var(--course-accent);background:radial-gradient(ellipse at 95% 10%,var(--course-aura),transparent 75%),#151920;color:var(--text);border-radius:12px;flex-direction:column;align-items:flex-start;gap:5px;margin-top:10px;padding:16px 18px;display:flex;position:relative}.course-theme-preview span{color:var(--course-accent);letter-spacing:.04em;font-size:11px;font-weight:700}.course-theme-preview strong{font-size:16px;line-height:1.3}.course-degree-logo{object-fit:contain;object-position:right top;width:clamp(160px,43%,240px);max-width:45%;height:108px}.course-logo-current img{width:auto;max-width:240px;height:auto;max-height:96px}@media (max-width:600px){.course-degree-logo{width:clamp(128px,38%,190px);max-width:42%;height:78px}.course-card-heading{gap:10px}}@media (max-width:390px){.course-card-heading{flex-wrap:wrap}.course-degree-logo{object-position:left top;width:min(240px,100%);max-width:100%;height:80px}}.gc404-page{background:radial-gradient(ellipse at 16% 18%,#8fd3ff18,transparent 38%), radial-gradient(ellipse at 86% 80%,#a8e6b013,transparent 37%), var(--bg);min-height:100dvh}.gc404-shell{flex-direction:column;width:min(1160px,100%);min-height:100dvh;margin:0 auto;padding:26px 28px;display:flex}.gc404-header,.gc404-footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.gc404-brand{margin-right:0;font-size:17px}.gc404-brand .brand-mark{border-radius:9px;width:32px;height:32px}.gc404-header-status{letter-spacing:.16em;color:var(--muted);font-size:10px;font-weight:800}.gc404-main{flex:1;align-content:center;padding:56px 0;display:grid}.gc404-panel{isolation:isolate;background:linear-gradient(125deg,#1b202a 0%,#171a21 52%,#131821 100%);border:1px solid #313b48;border-radius:26px;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:clamp(24px,4.5vw,66px);padding:clamp(28px,5.5vw,66px);display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000038}.gc404-panel:after{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#8fd3ff26,#0000 70%);border-radius:50%;width:440px;height:440px;position:absolute;top:-250px;left:-160px}.gc404-illustration{flex-direction:column;justify-content:center;align-items:flex-start;gap:26px;display:flex}.gc404-number{letter-spacing:-.09em;color:#0000;background:linear-gradient(140deg,#e6faff 4%,#8fd3ff 42%,#a8e6b0 95%);-webkit-background-clip:text;background-clip:text;padding-right:.11em;font-size:clamp(106px,15.5vw,198px);font-weight:900;line-height:1}.gc404-track{background:#10151c;border:1px solid #354151;border-radius:20px;width:min(300px,100%);height:8px;overflow:hidden}.gc404-track span{background:linear-gradient(90deg,#8fd3ff,#a8e6b0);border-radius:20px;width:38%;height:100%;display:block}.gc404-track-caption{letter-spacing:.14em;color:#b8c4d1;margin-top:-13px;font-size:11px;font-weight:700}.gc404-eyebrow{letter-spacing:.16em;color:var(--accent);align-items:center;gap:10px;margin:0 0 19px;font-size:12px;font-weight:800;display:flex}.gc404-dot{background:#8fd3ff;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #8fd3ff1f}.gc404-content h1{letter-spacing:-.035em;max-width:530px;margin:0 0 19px;font-size:clamp(29px,3.5vw,48px);line-height:1.13}.gc404-description{color:var(--muted);max-width:510px;margin:0;font-size:16px;line-height:1.7}.gc404-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.gc404-actions .btn{text-align:center;gap:11px;min-height:46px;padding:11px 17px;font-weight:700}.gc404-home{box-shadow:0 8px 30px #8fd3ff14}.gc404-back{background:#202630;border-color:#3a4653}.gc404-actions .btn:focus-visible,.gc404-brand:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.gc404-help{color:#a4b2c2;border-top:1px solid #303842;max-width:510px;margin:32px 0 0;padding-top:17px;font-size:13px;line-height:1.5}.gc404-footer{color:var(--muted);padding:12px 0 0;font-size:12px}@media (max-width:800px){.gc404-main{padding:40px 0}.gc404-panel{grid-template-columns:1fr;gap:26px}.gc404-illustration{gap:12px}.gc404-number{font-size:clamp(100px,24vw,180px)}.gc404-track{width:min(260px,100%)}.gc404-track-caption{margin-top:0}}@media (max-width:520px){.gc404-shell{padding:18px 16px}.gc404-header-status{letter-spacing:.06em;font-size:9px}.gc404-panel{border-radius:18px;padding:24px 21px}.gc404-actions{flex-direction:column}.gc404-actions .btn{width:100%}.gc404-footer{flex-direction:column;align-items:flex-start;gap:5px}}@media (prefers-reduced-motion:reduce){.gc404-actions .btn{transition:none}}.course-delete-zone{background:#21191c;border:1px solid #6d4244;border-radius:12px;margin-top:23px;overflow:hidden}.course-delete-zone>summary{cursor:pointer;color:#ffb5ba;padding:12px 14px;font-weight:700}.course-delete-content{padding:0 15px 16px;font-size:13px;line-height:1.55}.course-delete-content p{color:#e6c5c9}.course-delete-form{gap:11px;display:grid}.course-delete-form .field{margin:0}.course-delete-check{color:#f5d4d7;align-items:flex-start;gap:10px;display:flex}.course-delete-check input{width:auto;min-width:15px;margin-top:4px}.course-delete-form .btn.danger{color:#ffd7d9;background:#391c23;border-color:#c46a70;justify-self:start}.course-delete-form .btn.danger:disabled{opacity:.6}.backup-download{text-align:right;justify-items:end;gap:6px;max-width:260px;margin-left:auto;display:grid}.backup-download small{line-height:1.4}.backup-download-error{color:#ffb6bc}@media (max-width:650px){.backup-download{text-align:left;justify-items:start;max-width:100%;margin-left:0}.report-list .resource{flex-wrap:wrap}}.progression-hero{background:radial-gradient(at 100% 0,#8fd3ff29,#0000 60%),linear-gradient(135deg,#18222e,#141921 65%);border:1px solid #2d4358;border-radius:22px;grid-template-columns:minmax(0,1.4fr) minmax(275px,.85fr);align-items:center;gap:26px;margin:0 0 30px;padding:30px 32px;display:grid;position:relative;overflow:hidden}.progression-hero:before{content:"";background:linear-gradient(#8fd3ff,#a8e6b0);width:4px;position:absolute;top:0;bottom:0;left:0}.progression-hero h1{margin:8px 0 10px;font-size:clamp(30px,3.1vw,43px);line-height:1.15}.progression-hero-copy>p{color:var(--muted);max-width:550px;margin:0 0 25px;line-height:1.55}.progression-level{max-width:470px}.progression-level-header{justify-content:space-between;align-items:center;gap:12px;margin:0 0 9px;font-size:13px;display:flex}.progression-level-header span{color:var(--muted);font-size:12px}.progression-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.progression-hero-stats>div{background:#0c101680;border:1px solid #8fd3ff2b;border-radius:14px;gap:10px;min-width:0;padding:16px;display:grid}.progression-hero-stats>div:first-child{grid-column:1/-1}.progression-hero-stats span{color:var(--muted);font-size:12px}.progression-hero-stats strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:clamp(24px,3vw,32px);line-height:1}.progression-course-grid{align-items:stretch;margin-bottom:24px}.progression-course{flex-direction:column;gap:15px;min-width:0;padding:23px 24px;display:flex}.progression-course .course-card-heading{align-items:flex-start;min-height:112px}.progression-course h3{margin:13px 0 7px;font-size:20px;line-height:1.2}.progression-course .course-degree-label{color:var(--muted);margin:0;font-size:12px}.progression-course-identity{flex:1;min-width:0}.progression-course-goal{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.progression-course-goal strong{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.progression-course .progress.large{height:11px;margin:0}.progression-course-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:6px 0 0;display:grid}.progression-course-metrics>div{gap:7px;min-width:0;display:grid}.progression-course-metrics span{color:var(--muted);font-size:11px}.progression-course-metrics strong{font-variant-numeric:tabular-nums;font-size:22px;line-height:1.2}.progression-completed{color:var(--good);margin:0;font-size:12px;font-weight:700}.progression-course-link{color:var(--text);justify-content:center;align-self:stretch;align-items:center;margin-top:auto;font-weight:650;text-decoration:none;display:flex}.progression-recent{margin:20px 0 25px}.progression-activity-card{padding:8px 20px}.progression-activity-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:13px 0;display:flex}.progression-activity-row:last-child{border-bottom:0}.progression-activity-row>div{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.progression-activity-row strong{font-size:13px}.progression-activity-row small{color:var(--muted);font-size:11px}.progression-activity-row>b{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:15px}.progression-positive{color:var(--good)}.progression-negative{color:var(--danger)}.feedback-form-grid{align-items:start}.feedback-form-card{border:1px solid var(--line);padding:22px;position:relative;overflow:hidden}.feedback-form-card:before{content:"";background:var(--feedback-accent);width:100%;height:3px;position:absolute;top:0;left:0}.feedback-bug{--feedback-accent:#ffb089;background:radial-gradient(ellipse at 0% 0%,#ffb08917,transparent 55%),var(--panel)}.feedback-idea{--feedback-accent:#a8e6b0;background:radial-gradient(ellipse at 0% 0%,#a8e6b014,transparent 55%),var(--panel)}.feedback-form-heading{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;margin:0 0 20px;padding:0 0 18px;display:flex}.feedback-form-symbol{background:color-mix(in srgb,var(--feedback-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--feedback-accent) 38%,transparent);width:43px;height:43px;color:var(--feedback-accent);border-radius:13px;flex-shrink:0;place-items:center;font-size:24px;font-weight:900;display:grid}.feedback-form-heading h2{margin:5px 0 7px;font-size:20px}.feedback-form-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.feedback-form-card .field{margin-bottom:15px}.feedback-form-card .field label{margin-bottom:7px;display:block}.feedback-form-card button.primary{min-height:44px;margin-top:3px}.feedback-history{margin-top:25px}.feedback-history-entry{background:var(--panel);border:1px solid var(--line);border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:15px 17px;display:flex}.feedback-history-title{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.feedback-history-title strong{font-size:14px}.feedback-history-area{color:var(--muted);font-size:11px}.feedback-history-meta{white-space:nowrap;align-items:center;gap:12px;font-size:12px;display:flex}.feedback-history-meta small{color:var(--muted)}.feedback-bug-label{color:#ffb089;border-color:#82533e}.feedback-idea-label{color:#a8e6b0;border-color:#345c48}.feedback-admin-bug{border-left:3px solid #ffb089}.feedback-admin-idea{border-left:3px solid #a8e6b0}.feedback-report-location{flex-wrap:wrap;gap:12px;margin:3px 0;display:flex}.feedback-report-location>div{border:1px solid var(--line);background:#121922;border-radius:10px;gap:5px;min-width:175px;padding:10px 14px;display:grid}.feedback-report-location span{color:var(--muted);font-size:11px}.feedback-report-location strong{font-size:13px}.feedback-report-description,.feedback-report-details{white-space:pre-wrap;line-height:1.6}@media (max-width:850px){.progression-hero{grid-template-columns:1fr}.progression-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.progression-hero-stats>div:first-child{grid-column:auto}}@media (max-width:600px){.progression-hero{padding:24px 21px}.progression-hero-stats{grid-template-columns:1fr 1fr}.progression-hero-stats>div:first-child{grid-column:1/-1}.progression-course{padding:20px}.progression-course-goal{flex-wrap:wrap}.progression-course-metrics strong{font-size:19px}.feedback-form-heading{gap:10px}.feedback-history-entry{flex-direction:column;align-items:flex-start}.feedback-history-meta{justify-content:space-between;width:100%}}.feedback-queue-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 30px;display:grid}.feedback-queue-nav-item{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;padding:17px 19px;text-decoration:none;display:flex}.feedback-queue-nav-item:hover,.feedback-queue-nav-item:focus-visible{border-color:var(--accent);outline-offset:3px}.feedback-queue-nav-item>span{font-weight:650}.feedback-queue-nav-item>strong{font-size:24px}.feedback-queue-pending{border-left:3px solid #ffba81}.feedback-queue-tracking{border-left:3px solid #8fcfff}.feedback-queue-resolved{border-left:3px solid #91deb0}.feedback-teacher-group{margin:0 0 30px;scroll-margin-top:96px}.feedback-teacher-group .section-title{margin:0 0 6px}.feedback-group-description{margin:0 0 14px;font-size:13px}.feedback-empty{padding:18px 20px}.feedback-admin-collapsible{padding:0;overflow:hidden}.feedback-admin-collapsible[open]{padding-bottom:20px}.feedback-admin-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:19px 21px;list-style:none;display:flex}.feedback-admin-summary::-webkit-details-marker{display:none}.feedback-admin-summary:hover{background:#ffffff05}.feedback-admin-summary h3{margin:11px 0 7px}.feedback-admin-summary p{margin:0 0 8px;font-size:13px}.feedback-admin-reviewed{color:var(--muted);font-size:12px}.feedback-admin-toggle{color:var(--accent);white-space:nowrap;text-align:right;font-size:12px}.feedback-admin-toggle>span{margin-left:5px;font-size:19px}.feedback-admin-collapsible[open] .feedback-admin-toggle>span{display:inline-block;transform:rotate(180deg)}.feedback-admin-collapsible[open]>.feedback-admin-summary{border-bottom:1px solid var(--line)}.feedback-admin-details{padding:18px 21px 0}.feedback-admin-details .feedback-report-description{margin-top:16px}.feedback-phase{font-weight:650}.feedback-phase-pending{color:#ffba81;border-color:#76553c}.feedback-phase-tracking{color:#8fcfff;border-color:#385c77}.feedback-phase-resolved{color:#91deb0;border-color:#35604c}.feedback-admin-details .feedback-review{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}@media (max-width:700px){.feedback-queue-nav{grid-template-columns:1fr;gap:9px}.feedback-admin-summary{flex-direction:column;align-items:stretch}.feedback-admin-toggle{text-align:left}.feedback-admin-details{padding:16px}.feedback-admin-summary{padding:17px}}.player-report-download{width:100%;color:var(--accent);text-align:center;background:#8fd3ff0e;border-color:#8fd3ff42;margin-top:9px;font-size:.84rem;font-weight:650;display:flex}.player-report-download:hover{background:#8fd3ff1f;border-color:#8fd3ff73}.player-report-download:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.status-scheduled{color:#9bd7ff;border-color:#315a78}.week-list-item{gap:8px;text-decoration:none;display:grid}.week-list-item>.badge{justify-self:start}.week-list-item .actions{flex-wrap:wrap;gap:6px}.week-list-item small{font-size:12px}.teacher-weeks-overview{min-width:0}.teacher-weeks-top{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:10px;margin-bottom:17px;display:flex}.teacher-weeks-top h2{margin-bottom:5px}.teacher-weeks-top p{margin:0;font-size:13px;line-height:1.5}.teacher-weeks-scope{flex-wrap:wrap;gap:6px;display:flex}.teacher-weeks-filter{align-items:end;gap:8px;margin:0 0 9px;display:flex}.teacher-weeks-filter .field{flex:1;min-width:0;margin-bottom:0}.teacher-weeks-filter button{min-height:41px}.teacher-weeks-count{margin:6px 0 14px;font-size:12px}.teacher-week-editions{gap:17px;display:grid}.teacher-week-edition{background:#11151b;border:1px solid #344354;border-radius:13px;overflow:hidden}.teacher-week-edition-header{background:linear-gradient(120deg,#8fd3ff11,#0000 85%);justify-content:space-between;align-items:start;gap:10px;padding:16px 15px;display:flex}.teacher-week-edition-identity{min-width:0}.teacher-week-edition-badges{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.teacher-week-edition-header h3{margin:0 0 5px;font-size:16px;line-height:1.3}.teacher-week-degree{color:var(--muted);margin:0 0 10px;font-size:12px;line-height:1.4}.teacher-week-edition-class{color:#d4e9f7;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.teacher-week-edition-link{color:var(--accent);white-space:nowrap;padding-top:3px;font-size:12px}.teacher-week-edition-link:hover{text-decoration:underline}.teacher-week-edition-disclosure{border-top:1px solid var(--line)}.teacher-week-edition-toggle{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:12px 15px;font-size:13px;font-weight:700;list-style:none;transition:background .15s;display:flex}.teacher-week-edition-toggle::-webkit-details-marker{display:none}.teacher-week-edition-toggle::marker{content:""}.teacher-week-edition-toggle:hover{background:#8fd3ff0f}.teacher-week-edition-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:4px}.teacher-week-edition-toggle-label{flex:1}.teacher-week-edition-toggle-count{color:var(--muted);font-size:12px;font-weight:500}.teacher-week-edition-chevron{transform-origin:50%;font-size:20px;line-height:1;transition:transform .15s;display:inline-block}.teacher-week-edition-disclosure[open] .teacher-week-edition-chevron{transform:rotate(180deg)}.teacher-week-edition-weeks{border-top:1px solid var(--line);gap:0;display:grid}.teacher-week-entry{align-items:center;gap:9px;min-width:0;padding:11px 13px;text-decoration:none;transition:background .15s;display:flex}.teacher-week-entry+.teacher-week-entry{border-top:1px solid var(--line)}.teacher-week-entry:hover,.teacher-week-entry:focus-visible{background:#8fd3ff0f}.teacher-week-entry-number{width:30px;height:30px;color:var(--accent);background:#101319;border:1px solid #344354;border-radius:9px;flex-shrink:0;place-items:center;font-size:12px;font-weight:750;display:grid}.teacher-week-entry-title{overflow-wrap:anywhere;flex:1;min-width:0;font-size:13px;font-weight:650}.teacher-week-entry .badge{text-align:center;max-width:145px;font-size:10px;line-height:1.35}.teacher-week-entry-arrow{color:var(--accent)}@media (max-width:600px){.teacher-weeks-filter{flex-wrap:wrap}.teacher-weeks-filter .field{flex-basis:100%}.teacher-weeks-filter button{width:100%}.teacher-week-edition-header{flex-direction:column}.teacher-week-entry{flex-wrap:wrap}.teacher-week-entry-title{flex-basis:calc(100% - 65px)}.teacher-week-entry .badge{max-width:none;margin-left:39px}.teacher-week-entry-arrow{margin-left:auto}}.xp-overview,.xp-history{min-width:0}.xp-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.xp-section-heading h2{margin-bottom:6px}.xp-section-heading p,.xp-history>p{margin:0;font-size:13px;line-height:1.5}.xp-plan-filter{max-width:720px}.xp-course-groups,.xp-history-groups{gap:13px;display:grid}.xp-course-group,.xp-history-course{background:#11151b;border:1px solid #344354;border-radius:13px;min-width:0;overflow:hidden}.xp-course-header{background:linear-gradient(120deg,#8fd3ff0f,#0000 85%);justify-content:space-between;align-items:flex-start;gap:16px;padding:17px 18px;display:flex}.xp-course-header h3{margin:8px 0 5px;font-size:17px}.xp-course-header p{margin:0;font-size:12px}.xp-group-count{color:var(--muted);white-space:nowrap;font-size:12px}.xp-course-disclosure{border-top:1px solid var(--line)}.xp-course-disclosure>summary,.xp-history-disclosure>summary,.xp-history-edition>summary{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;font-size:13px;font-weight:700;list-style:none;display:flex}.xp-course-disclosure>summary::-webkit-details-marker{display:none}.xp-history-disclosure>summary::-webkit-details-marker{display:none}.xp-history-edition>summary::-webkit-details-marker{display:none}.xp-course-disclosure>summary::marker{content:""}.xp-history-disclosure>summary::marker{content:""}.xp-history-edition>summary::marker{content:""}.xp-course-disclosure>summary:hover,.xp-history-disclosure>summary:hover,.xp-history-edition>summary:hover{background:#8fd3ff0f}.xp-course-disclosure>summary:focus-visible,.xp-history-disclosure>summary:focus-visible,.xp-history-edition>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.xp-disclosure-icon{font-size:20px;line-height:1;transition:transform .15s;display:inline-block}.xp-course-disclosure[open]>summary .xp-disclosure-icon,.xp-history-disclosure[open]>summary .xp-disclosure-icon,.xp-history-edition[open]>summary .xp-disclosure-icon{transform:rotate(180deg)}.xp-edition-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:15px;display:grid}.xp-edition-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:0;padding:17px}.xp-edition-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.xp-edition-heading strong{font-size:14px}.xp-edition-card>p,.xp-edition-card .warning-box,.xp-edition-card .success-box{font-size:13px;line-height:1.5}.xp-empty{padding:15px 0}.xp-history>p{margin-bottom:18px}.xp-history-disclosure>summary{color:var(--text);padding:15px 18px}.xp-history-summary-main{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.xp-history-summary-main small{color:var(--muted);flex-basis:100%;margin-left:0;font-size:12px;font-weight:400}.xp-history-editions{border-top:1px solid var(--line);gap:10px;padding:14px;display:grid}.xp-history-edition{background:var(--panel);border:1px solid var(--line);border-radius:11px;overflow:hidden}.xp-history-edition>summary{color:var(--text);padding:12px 15px}.xp-history-edition>summary>span:first-child{flex-wrap:wrap;flex:1;align-items:center;gap:9px;min-width:0;display:flex}.xp-history-edition>summary strong{font-size:13px}.xp-history-movements{border-top:1px solid var(--line);padding:12px}@media (max-width:850px){.xp-edition-grid{grid-template-columns:1fr}}@media (max-width:600px){.xp-course-header{flex-wrap:wrap}.xp-section-heading .teacher-weeks-scope{width:100%}.xp-history-summary-main small{flex-basis:100%}.xp-history-edition>summary{flex-wrap:wrap}.xp-history-edition>summary .xp-group-count{margin-left:auto}.xp-edition-grid{padding:10px}}.student-search-direct{min-width:0}.student-search-direct>input[type=search]{width:100%;min-height:44px;color:var(--text);border:1px solid var(--line);background:#0d1015;border-radius:10px;padding:10px 12px}.student-search-help{color:var(--muted);margin-top:5px;font-size:.69rem;display:block}.student-search-results{min-width:100%;max-width:min(540px,90vw);max-height:320px;top:calc(100% + 5px);overflow-y:auto}.student-search-results>button{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;gap:3px;padding:9px 11px;display:grid}.student-search-results>button.selected,.student-search-results>button:hover{background:#7dd3fc1a;border-color:#7dd3fc52}.student-search-results>button span{color:var(--muted);overflow-wrap:anywhere;font-size:.72rem}.student-search-results p{padding:10px}.student-search-selection{border:1px solid var(--line);background:#0d1015;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:6px 9px;display:flex}.student-search-selection span{min-width:0;display:grid;overflow:hidden}.student-search-selection span small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.gc-courses-aligned,.gc-xp-aligned{width:100%;min-width:0}.gc-courses-aligned .grid,.gc-xp-aligned .grid{min-width:0}.gc-courses-aligned .grid.grid-2{align-items:stretch}.gc-courses-aligned .grid.grid-2>.card{flex-direction:column;align-self:stretch;gap:12px;min-width:0;height:100%;display:flex}.gc-courses-aligned .grid.grid-2>.card>form{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.gc-courses-aligned .grid.grid-2>.card>form>.actions:last-child{margin-top:auto}.gc-courses-aligned .grid.grid-2>.card>form>button:last-child{align-self:flex-start;margin-top:auto}.gc-courses-aligned .grid.grid-2>.card>.actions:last-child{margin-top:auto}.gc-courses-aligned .grid.grid-2>.card input,.gc-courses-aligned .grid.grid-2>.card select{min-width:0}.gc-courses-aligned .grid.grid-2>.card .grid{width:100%;min-width:0}.gc-xp-aligned .xp-edition-grid{grid-auto-rows:1fr;align-items:stretch}.gc-xp-aligned .xp-edition-grid>.xp-edition-card{flex-direction:column;align-self:stretch;gap:10px;min-width:0;height:100%;display:flex}.gc-xp-aligned .xp-edition-card .xp-edition-heading{min-height:32px}.gc-xp-aligned .xp-edition-card>p{margin-block:4px}.gc-xp-aligned .xp-edition-card .xp-target-form{align-items:end;margin-top:auto;padding-top:16px}.gc-xp-aligned .xp-target-form .action-field{align-items:flex-end;min-width:0;padding-bottom:0;display:flex}.gc-xp-aligned .xp-target-form button{white-space:normal;max-width:100%;min-height:43px}.gc-xp-aligned .xp-edition-card .field,.gc-courses-aligned .field{min-width:0}.gc-project-courses{grid-template-columns:1fr;gap:14px;min-width:0;display:grid}.gc-project-course{background:#12171e;border:1px solid #344354;border-radius:14px;min-width:0;overflow:hidden}.gc-project-course>details>summary,.gc-project-edition>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:14px;min-width:0;list-style:none;display:flex}.gc-project-course>details>summary::-webkit-details-marker{display:none}.gc-project-edition>summary::-webkit-details-marker{display:none}.gc-project-course>details>summary::marker{content:""}.gc-project-edition>summary::marker{content:""}.gc-project-course>details>summary{background:linear-gradient(100deg,#89cfff12,#0000 80%);padding:18px}.gc-project-course>details>summary:hover,.gc-project-edition>summary:hover{background-color:#89cfff0e}.gc-project-course summary:focus-visible,.gc-project-edition summary:focus-visible{outline-offset:-3px;outline:2px solid #8bd1ff}.gc-project-course-name,.gc-project-edition-name{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.gc-project-course-label{gap:3px;min-width:0;display:grid}.gc-project-course-label strong{font-size:1.04rem;line-height:1.3}.gc-project-course-label small{color:var(--muted);font-size:.76rem;font-weight:400;line-height:1.4}.gc-project-course-count,.gc-project-edition-flag{color:var(--muted);white-space:nowrap;font-size:.78rem}.gc-project-chevron{font-size:1.28rem;line-height:1;transition:transform .15s}.gc-project-course>details[open]>summary .gc-project-chevron,.gc-project-edition[open]>summary .gc-project-chevron{transform:rotate(180deg)}.gc-project-editions{border-top:1px solid var(--line);gap:10px;padding:12px;display:grid}.gc-project-edition{border:1px solid var(--line);background:var(--panel);border-radius:11px;min-width:0;overflow:hidden}.gc-project-edition>summary{padding:13px 15px;font-size:.85rem}.gc-project-edition>summary strong{font-size:.87rem}.gc-project-edition>.project-admin-card{border:0;border-top:1px solid var(--line);border-radius:0;min-width:0;margin:0;padding:18px}.gc-project-edition .project-admin-card>.section-title{margin-top:0}.gc-project-edition .project-admin-card button[type=submit]{justify-self:start}@media (max-width:850px){.gc-xp-aligned .xp-edition-grid{grid-template-columns:1fr;grid-auto-rows:auto}.gc-courses-aligned .grid.grid-2>.card{height:auto}}@media (max-width:600px){.gc-project-course-name,.gc-project-edition-name{align-items:flex-start}.gc-project-course>details>summary,.gc-project-edition>summary{flex-wrap:wrap;gap:9px}.gc-project-course-count,.gc-project-edition-flag{margin-left:auto}.gc-project-edition>.project-admin-card{padding:12px}.gc-project-edition .project-admin-card .grid.grid-2{grid-template-columns:1fr}}.gc-courses-aligned>.grid.grid-2>.card>form>.grid.grid-2{align-items:start}.gc-courses-aligned>.grid.grid-2>.card>form>.grid.grid-2>.field{flex-direction:column;justify-content:flex-start;align-self:start;gap:8px;min-width:0;display:flex}.gc-courses-aligned>.grid.grid-2>.card>form>.grid.grid-2>.field>:is(input,select){box-sizing:border-box;flex:none;width:100%;min-width:0;height:46px;min-height:46px}.gc-courses-aligned>.grid.grid-2>.card>form>.grid.grid-2>.field>label{margin:0;line-height:18px}.gc-courses-aligned>.grid.grid-2>.card>form>.grid.grid-2>.field>:is(small,p){margin:0;line-height:1.4}.gc-xp-aligned .gc-xp-manual-form{align-items:start;gap:16px}.gc-xp-aligned .gc-xp-manual-form>.field{flex-direction:column;justify-content:flex-start;align-self:start;gap:7px;min-width:0;margin-bottom:0;display:flex}.gc-xp-aligned .gc-xp-manual-form>.field>label{margin:0;line-height:18px}.gc-xp-aligned .gc-xp-manual-form>.field>:is(input,.student-picker){width:100%;min-width:0}.gc-xp-aligned .gc-xp-manual-form>.field>input,.gc-xp-aligned .gc-xp-manual-form .student-search-direct>input[type=search]{box-sizing:border-box;height:44px;min-height:44px}.gc-xp-aligned .gc-xp-manual-form>.action-field{align-self:start;align-items:flex-start;min-width:0;margin:0;padding:25px 0 0;display:flex}.gc-xp-aligned .gc-xp-manual-form>.action-field>button{box-sizing:border-box;min-height:44px}@media (max-width:850px){.gc-xp-aligned .gc-xp-manual-form>.action-field{padding-top:0}}.project-workspace{background:#11161d;gap:16px;min-width:0;padding:16px;display:grid}.project-workspace-panel{border:1px solid var(--line);background:var(--panel);border-radius:12px;min-width:0;padding:18px}.project-workspace-panel>h3,.project-rewards>h3,.project-panel-head h3{margin:0 0 6px;font-size:1rem}.project-panel-head{margin-bottom:14px}.project-panel-head p{margin:0;font-size:.83rem}.project-workspace>.project-admin-card{min-width:0;margin:0;padding:20px}.project-workspace .project-toggle{align-items:center;gap:12px;padding:12px 0;display:flex}.project-workspace .field,.project-workspace input,.project-workspace textarea,.project-workspace select{min-width:0}.project-rewards{border:1px solid var(--line);background:#7dd3fc06;border-radius:12px;margin-top:16px;padding:17px}.project-rewards p{font-size:.84rem}.project-rewards-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0;display:grid}.project-rewards-grid .field{flex-direction:column;gap:7px;display:flex}.project-rewards-grid .field label{min-height:2.8em;font-size:.82rem}.project-rewards-grid .field input{box-sizing:border-box;width:100%;height:44px}.project-resource-list{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px;margin:12px 0;display:grid}.project-resource-card{border:1px solid var(--line);background:#111820;border-radius:11px;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.project-resource-card form{margin-left:auto}.project-resource-card .btn{font-size:.78rem}.project-resource-preview{background:#080d15;border-radius:8px;flex:none;width:70px;height:60px;overflow:hidden}.project-resource-preview img{object-fit:cover;width:100%;height:100%}.project-resource-copy{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.project-resource-copy a{overflow-wrap:anywhere}.project-resource-copy small{color:var(--muted);overflow-wrap:anywhere;font-size:.72rem}.project-resource-form .field{flex-direction:column;justify-content:flex-end;gap:7px;margin:0;display:flex}.project-resource-form .field label{min-height:2.5em;font-size:.78rem}.project-resource-form input,.project-resource-form select{box-sizing:border-box;width:100%;min-height:44px}.project-resource-form input[type=file]{max-width:100%;padding:9px}.project-resource-form small{font-size:.67rem}.project-resource-form>.btn{min-height:44px}.project-deliveries{gap:12px;display:grid}.project-delivery{border:1px solid var(--line);background:#101720;border-radius:10px;min-width:0;padding:15px}.project-delivery-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-delivery p{overflow-wrap:anywhere;line-height:1.5}.project-review-form{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.project-review-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.project-student-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));align-items:start;gap:18px;display:grid}.project-student-workspace{gap:12px;min-width:0;display:grid}.project-student-workspace h2{margin:0}.project-student-description{overflow-wrap:anywhere;line-height:1.6}.project-student-workspace .project-workspace-panel{padding:14px}.project-stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.project-stage{border:1px solid var(--line);border-radius:9px;justify-content:space-between;gap:10px;padding:10px;font-size:.82rem;display:flex}.project-stage strong{white-space:nowrap;color:#8fe0bd}.project-submission-status{border:1px solid var(--line);background:#7dd3fc0b;border-radius:9px;gap:8px;margin:10px 0;padding:12px;display:grid}.project-student-form{gap:10px;display:grid}.project-student-form>.btn,.project-start-form>.btn{justify-self:start}.project-student-form .field{min-width:0}@media (max-width:1250px){.project-resource-form{grid-template-columns:repeat(2,minmax(0,1fr))}.project-resource-form>.btn{justify-self:start}}@media (max-width:760px){.project-rewards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-workspace{padding:10px}.project-resource-form{grid-template-columns:1fr}.project-resource-form .field label{min-height:0}.project-stages{grid-template-columns:1fr}}.project-workspace{gap:14px}.project-workspace>.project-admin-card,.project-workspace-panel{width:100%;min-width:0}.project-resource-form{border-top:1px solid var(--line);grid-template-columns:minmax(200px,1fr) minmax(260px,2fr);align-items:start;gap:13px 16px;margin-top:16px;padding-top:16px;display:grid}.project-resource-form>.field{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:7px;min-width:0;margin:0;display:flex}.project-resource-form>.field>label{min-height:18px;font-size:.81rem;line-height:18px}.project-resource-form>.field>:is(input,select){box-sizing:border-box;width:100%;min-width:0;height:45px;min-height:45px}.project-resource-form>.field>input[type=file]{height:auto;min-height:45px;padding:9px}.project-resource-form>.field>small{min-height:18px;line-height:1.45}.project-resource-form .project-resource-source{grid-column:1/-1}.project-resource-footer{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:15px;min-height:46px;display:flex}.project-resource-footer .btn{min-height:44px}.project-resource-footer p{margin:0;font-size:.84rem}.project-resource-error{color:#ffb9b9}.project-resource-success{color:var(--good)}.project-rewards-grid{align-items:stretch}.project-rewards-grid>.field{flex-direction:column;justify-content:flex-start;gap:8px;min-width:0;margin:0;display:flex}.project-rewards-grid>.field>label{align-items:end;min-height:2.9em;line-height:1.35;display:flex}.project-rewards-grid>.field>input{min-width:0;height:45px;min-height:45px}.project-badges-setup{border-top:1px solid var(--line);margin-top:18px;padding-top:8px}.project-badge-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:4px 0 12px;display:grid}.project-badge-grid>span{border:1px solid var(--line);background:#101820;border-radius:10px;align-content:start;gap:5px;min-width:0;padding:10px;font-size:.86rem;display:grid}.project-badge-grid>span>small{color:var(--muted);font-size:.72rem;line-height:1.4}.project-badges-setup>p{font-size:.78rem;line-height:1.55}.gam-achievement-award-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:start;gap:14px;margin-top:12px;display:grid}.gam-achievement-award-form>.field{flex-direction:column;align-self:start;gap:8px;min-width:0;margin:0;display:flex}.gam-achievement-award-form>.field>label{margin:0;line-height:18px}.gam-achievement-award-form>.field>select,.gam-achievement-award-form .student-search-direct>input[type=search]{box-sizing:border-box;width:100%;height:46px;min-height:46px}.gam-achievement-award-form>.action-field{align-self:start;align-items:flex-start;margin:0;padding-top:26px;display:flex}.gam-achievement-award-form>.action-field>.btn{height:46px;min-height:46px}.project-student-workspace>.project-workspace-panel{min-width:0}.project-stages{align-items:stretch}.project-stage{align-items:center;min-width:0;min-height:46px}.project-stage>span{min-width:0}@media (max-width:1000px){.project-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:850px){.gam-achievement-award-form{grid-template-columns:1fr 1fr}.gam-achievement-award-form>.action-field{grid-column:1/-1;padding-top:0}}@media (max-width:620px){.project-resource-form,.gam-achievement-award-form{grid-template-columns:1fr}.project-badge-grid,.project-rewards-grid{grid-template-columns:1fr 1fr}}@media (max-width:420px){.project-badge-grid{grid-template-columns:1fr}}.project-mode-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.project-mode-form>.field{flex:240px;min-width:0}.project-mode-form>.btn{flex:none}.project-group-form{gap:16px;display:grid}.project-group-form>.field{max-width:580px}.project-student-selector{border:1px solid var(--border,#303844);border-radius:14px;min-width:0;padding:16px}.project-student-selector legend{color:inherit;padding:0 8px;font-weight:600}.project-roster{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;max-height:250px;display:grid;overflow-y:auto}.project-roster label{border:1px solid var(--border,#303844);cursor:pointer;border-radius:10px;align-items:center;gap:9px;min-width:0;padding:9px 12px;display:flex}.project-roster label span{overflow-wrap:anywhere}.project-roster input{flex-shrink:0;width:auto}.project-group-list{gap:8px;margin:12px 0 18px;display:grid}.project-group-item{border:1px solid var(--border,#303844);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px;display:flex}.project-group-item>div{gap:5px;min-width:0;display:grid}.project-group-item small{overflow-wrap:anywhere;display:block}@media (max-width:700px){.project-mode-form{display:grid}.project-group-item{align-items:start}.project-roster{grid-template-columns:1fr}}.gc-calendar-browser{margin-bottom:15px}.gc-calendar-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;display:flex}.gc-calendar-course-list{gap:10px;margin-top:15px;display:grid}.gc-calendar-course{border:1px solid var(--line);background:#111821;border-radius:12px;overflow:hidden}.gc-calendar-course>summary{cursor:pointer;align-items:center;gap:14px;padding:13px 16px;list-style-position:inside;display:flex}.gc-calendar-course>summary>span:nth-child(2){flex:1;gap:3px;min-width:0;display:grid}.gc-calendar-course>summary small{color:var(--muted);font-size:.79rem}.gc-calendar-editions{border-top:1px solid var(--line);gap:7px;padding:12px;display:grid}.gc-calendar-edition{border:1px solid var(--line);color:inherit;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;text-decoration:none;display:flex}.gc-calendar-edition:hover,.gc-calendar-edition.selected{background:#7dd3fc14;border-color:#4c7088}.gc-calendar-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:14px 0;display:flex}.gc-calendar-summary h2{margin:8px 0}.gc-calendar-stats{flex:1;grid-template-columns:repeat(4,minmax(90px,1fr));gap:9px;max-width:690px;display:grid}.gc-calendar-stats>div{border:1px solid var(--line);text-align:center;border-radius:10px;gap:6px;padding:12px;display:grid}.gc-calendar-stats strong{font-size:1.4rem}.gc-calendar-stats small{color:var(--muted);font-size:.75rem}.gc-calendar-layout{grid-template-columns:minmax(0,1.35fr) minmax(310px,.85fr);align-items:start;gap:16px;display:grid}.gc-calendar-sessions,.gc-calendar-create{min-width:0}.gc-calendar-session-list{gap:12px;margin-top:17px;display:grid}.gc-calendar-session{border:1px solid var(--line);background:#111820;border-radius:12px;min-width:0;padding:16px}.gc-calendar-session-head{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:8px;display:flex}.gc-calendar-session-head>div:first-child{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gc-calendar-date{font-weight:700}.gc-calendar-tags{flex-wrap:wrap;gap:5px;display:flex}.gc-calendar-session h3{margin:13px 0 7px}.gc-calendar-origin{font-size:.79rem}.gc-calendar-summary-text{border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:9px;padding:12px}.gc-calendar-summary-text p{margin:6px 0 0}.gc-calendar-editor{border-top:1px solid var(--line);margin-top:13px;padding-top:12px}.gc-calendar-editor>summary{cursor:pointer;font-size:.85rem;font-weight:600}.gc-calendar-form{gap:12px;margin-top:13px;display:grid}.gc-calendar-form .field{gap:6px;min-width:0;margin:0;display:grid}.gc-calendar-form label{font-size:.82rem}.gc-calendar-form input,.gc-calendar-form select,.gc-calendar-form textarea{box-sizing:border-box;width:100%;min-width:0}.gc-calendar-form textarea{min-height:86px}.gc-calendar-form .btn{justify-self:start}.gc-calendar-fields{gap:12px;display:grid}.gc-calendar-three{grid-template-columns:repeat(3,minmax(0,1fr))}.gc-calendar-two{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-calendar-success{color:var(--good)}.gc-calendar-error{color:#ffb3b3}.gc-calendar-footnote{margin-top:14px;font-size:.8rem}.gc-cal-taught{color:#8fe0bd}.gc-cal-cancelled,.gc-cal-holiday{color:#ffc8a5}.gc-cal-planned{color:#b9d7f5}@media (max-width:1050px){.gc-calendar-layout{grid-template-columns:1fr}.gc-calendar-create{order:-1}.gc-calendar-stats{max-width:none}}@media (max-width:640px){.gc-calendar-three{grid-template-columns:1fr 1fr}.gc-calendar-three>.field:first-child{grid-column:1/-1}.gc-calendar-two,.gc-calendar-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-calendar-course>summary{flex-wrap:wrap;gap:8px}}.project-members-editor{border:1px solid var(--border,#303844);border-radius:14px;margin:14px 0;padding:16px}.project-members-editor>summary,.project-members-history>summary{cursor:pointer;padding:6px;font-weight:650}.project-participants-list{gap:8px;margin:14px 0;display:grid}.project-participant-row{border:1px solid var(--border,#303844);border-radius:12px;grid-template-columns:minmax(140px,1.1fr) minmax(170px,1fr) minmax(190px,1.5fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.project-participant-row .field{min-width:0;margin:0}.project-participant-row input,.project-participant-row select{width:100%;min-width:0}.project-participant-identity{align-self:center;gap:5px;min-width:0;display:grid}.project-participant-identity small{overflow-wrap:anywhere}.project-participant-row>.btn{white-space:nowrap;height:42px}.project-members-history{border-top:1px solid var(--border,#303844);margin-top:14px;padding-top:10px}@media (max-width:1050px){.project-participant-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.project-participant-row{grid-template-columns:minmax(0,1fr)}}.gc-official-import{gap:12px;margin-top:16px;display:grid}.gc-official-picker{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.gc-official-picker .field{flex:360px;min-width:220px}.gc-official-preview{border:1px solid var(--border,#304055);border-radius:12px;gap:10px;padding:16px;display:grid}.gc-official-preview details summary{cursor:pointer;font-weight:600}.gc-official-dates{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px;max-height:260px;padding:10px 0;display:grid;overflow:auto}.gc-official-dates span{border:1px solid var(--border,#304055);border-radius:8px;padding:7px 10px;font-size:13px}.gc-official-confirm{align-items:start;gap:12px;display:grid}.gc-official-confirm label{align-items:flex-start;gap:10px;font-size:14px;display:flex}.gc-official-confirm .btn{justify-self:start}.gc-calendar-warning{color:#f3c77c;border:1px solid #bd8b30;border-radius:10px;padding:12px}.gc-official-import .gc-calendar-error,.gc-official-import .gc-calendar-success{border-radius:10px;padding:12px}.project-mode-protected{border:1px solid var(--border,#304055);border-radius:12px;padding:12px 14px}.project-mode-protected p{margin-bottom:0}.gc-general-import-card{max-width:1080px;margin-top:16px}.gc-general-import-panel{gap:16px;max-width:950px;margin-top:16px;display:grid}.gc-general-import-panel .field{min-width:0}.gc-general-import-panel input[type=file]{width:100%;min-height:46px;padding:10px}.gc-general-import-preview{border:1px solid var(--border,#303b48);border-radius:14px;gap:12px;min-width:0;padding:20px;display:grid}.gc-general-import-preview ul{columns:2;margin:0;padding-left:22px}.gc-general-confirm{align-items:flex-start;gap:12px;line-height:1.5;display:flex}.gc-general-confirm input{width:auto;margin-top:5px}.gc-calendar-period-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.gc-general-period-links{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:800px){.gc-general-import-preview ul{columns:1}}.gc-istec-export{margin-top:16px}.gc-istec-export-form{gap:14px;max-width:1000px;margin:18px 0;display:grid}.gc-istec-export-form .field{min-width:0}.gc-teacher-nav-v53{flex-wrap:nowrap;align-items:center;gap:7px;min-width:0;display:flex}.gc-teacher-nav-v53>a,.gc-teacher-nav-v53 .teacher-nav-group>button{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;min-height:37px;padding:8px 12px;font-size:13px;display:inline-flex}.gc-teacher-nav-v53 .gc-nav-chevron{color:var(--muted);font-size:12px}.gc-teacher-nav-v53 .teacher-nav-menu{width:290px;max-height:min(70vh,550px);overflow-y:auto}.gc-teacher-nav-v53 .gc-nav-group-management .teacher-nav-menu{left:auto;right:0}.gc-teacher-nav-v53 .teacher-nav-menu a{padding:11px 12px}.gc-teacher-nav-v53 .teacher-nav-menu a strong{font-size:13px;font-weight:700}.gc-teacher-nav-v53 .teacher-nav-menu small{line-height:1.45}.gc-teacher-nav-v53 .teacher-nav-group.active>button{box-shadow:inset 0 -2px var(--accent)}.gc-teacher-nav-v53 a:focus-visible,.gc-teacher-nav-v53 button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:1200px){.topbar-inner{flex-wrap:wrap;gap:10px 16px}.gc-teacher-nav-v53{flex-basis:100%;order:3;justify-content:flex-start;max-width:none;overflow:visible}.user-tools{margin-left:auto}.gc-teacher-nav-v53 .teacher-nav-menu{position:absolute;top:calc(100% + 9px);left:0;right:auto;transform:none}.gc-teacher-nav-v53 .gc-nav-group-management .teacher-nav-menu{left:auto;right:0}}@media (max-width:640px){.gc-teacher-nav-v53{white-space:normal;flex-wrap:wrap;gap:3px}.gc-teacher-nav-v53>a,.gc-teacher-nav-v53 .teacher-nav-group>button{padding:7px 9px;font-size:12px}.gc-teacher-nav-v53 .teacher-nav-menu{width:auto;max-width:none;max-height:70vh;position:fixed;top:112px;transform:none;left:12px!important;right:12px!important}}.avatar-choice{align-content:center;justify-items:center;min-height:135px;transition:border-color .18s,transform .18s,box-shadow .18s;position:relative}.avatar-choice .avatar-icon{background:#00000040;border-radius:18px;place-items:center;width:60px;height:60px;font-size:33px;display:grid}.avatar-choice:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent);border-color:var(--accent)}.avatar-choice:focus-within{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:620px){.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.teacher-public-inline{margin:18px 0}.teacher-week-author{margin:0 0 16px}.teacher-week-author a{color:var(--accent,#8cc9ff);text-underline-offset:3px;text-decoration:underline}.teacher-public-course{border-bottom:1px solid var(--line,#303b48);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.teacher-public-course:last-child{border-bottom:0}
