:root{--font-main:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", var(--font-main);--font-mono:"JetBrains Mono", monospace;--font-pixel:"Press Start 2P", monospace;--bg-space:#070a14;--bg-deep:#0b0f20;--bg-surface:#11172f;--bg-surface-elevated:#182245;--bg-glass:#11172fd9;--border-subtle:#ffffff1a;--border-bright:#00f0ff59;--color-cyan:#00f0ff;--color-cyan-glow:#00f0ff73;--color-purple:#a855f7;--color-purple-glow:#a855f773;--color-gold:#facc15;--color-gold-glow:#facc1573;--color-emerald:#10b981;--color-emerald-glow:#10b98173;--color-coral:#f43f5e;--color-coral-glow:#f43f5e73;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:9999px;--shadow-panel:0 16px 40px -10px #00000080, 0 0 1px 1px #ffffff14;--shadow-neon-cyan:0 0 20px -3px var(--color-cyan-glow);--shadow-neon-purple:0 0 20px -3px var(--color-purple-glow);font-family:var(--font-main);color:var(--text-primary);background-color:var(--bg-space);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{background-color:var(--bg-space);min-width:320px;min-height:100vh;color:var(--text-primary);margin:0;padding:0}body{background-color:#070a14;background-image:radial-gradient(circle at 15% 15%,#00f0ff14 0%,#0000 40%),radial-gradient(circle at 85% 25%,#a855f71a 0%,#0000 45%),radial-gradient(circle at 50% 85%,#10b9810f 0%,#0000 50%),linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px),none;background-position:0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat;background-size:100% 100%,100% 100%,100% 100%,36px 36px,36px 36px,100% 100%;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box;overflow-x:hidden}button,input,select,textarea{font:inherit;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0b0f2099}::-webkit-scrollbar-thumb{background:#00f0ff33;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00f0ff66}.retro-sound-controls{border:1px solid var(--border-subtle);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070a14bf;align-items:center;gap:6px;padding:3px 6px;display:inline-flex}.retro-sound-btn{border-radius:var(--radius-full);color:var(--text-secondary);font-family:var(--font-display);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:800;transition:all .2s;display:inline-flex}.retro-sound-btn:hover{color:var(--color-cyan);background:#00f0ff1f;border-color:#00f0ff4d}.retro-sound-btn.active{color:var(--color-cyan);border-color:var(--color-cyan);box-shadow:0 0 8px var(--color-cyan-glow);background:#00f0ff26}.retro-sound-btn.muted{color:var(--color-coral);background:#f43f5e1a;border-color:#f43f5e66}.retro-bgm-btn.active{color:var(--color-purple);border-color:var(--color-purple);box-shadow:0 0 8px var(--color-purple-glow);background:#a855f733}.retro-sound-icon{font-size:12px;line-height:1}.retro-sound-label{letter-spacing:.05em;font-size:10px}#root{flex-direction:column;min-height:100vh;display:flex}body{font-family:var(--font-main);background:var(--bg-space);color:var(--text-primary);margin:0}button,select,input{font:inherit}.studio-brand,.panel-eyebrow,.lesson-slide-type{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--color-cyan);text-shadow:0 0 10px var(--color-cyan-glow);align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.lesson-page{background:radial-gradient(circle at 10% 10%, #00f0ff0d, transparent 40%), radial-gradient(circle at 90% 90%, #a855f70f, transparent 50%), var(--bg-space);min-height:100vh;color:var(--text-primary);padding:24px}.lesson-header{background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:var(--radius-lg);max-width:1400px;box-shadow:var(--shadow-panel), var(--shadow-neon-cyan);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:24px;margin:0 auto 24px;padding:16px 24px;display:flex}.lesson-header h1{color:#fff;font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0 6px;font-size:26px;font-weight:800}.lesson-breadcrumb{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.lesson-breadcrumb strong{color:var(--color-cyan);font-weight:700}.lesson-counter{border:1px solid var(--border-bright);border-radius:var(--radius-full);color:var(--color-cyan);font-family:var(--font-mono);background:#00f0ff14;align-self:center;padding:8px 16px;font-size:13px;font-weight:700;box-shadow:inset 0 0 10px #00f0ff1a}.lesson-shell{grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:24px;max-width:1400px;margin:0 auto;display:grid}.lesson-sidebar{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-panel);align-self:start;padding:22px}.lesson-sidebar h2{color:#fff;font-family:var(--font-display);margin:6px 0 16px;font-size:18px;font-weight:700}.lesson-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lesson-list-item{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;text-align:left;background:#ffffff08;border:1px solid #0000;flex-direction:column;gap:4px;padding:12px 16px;transition:all .2s;display:flex}.lesson-list-item span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.lesson-list-item strong{color:var(--text-primary);font-size:14px;font-weight:600}.lesson-list-item:hover{background:#ffffff12;border-color:#ffffff26;transform:translate(4px)}.lesson-list-item-active{border-color:var(--color-cyan);background:linear-gradient(135deg,#00f0ff26,#a855f726);box-shadow:0 0 15px #00f0ff33}.lesson-list-item-active span{color:var(--color-cyan)}.lesson-list-item-active strong{color:#fff}.lesson-main{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-panel);flex-direction:column;gap:20px;padding:32px;display:flex}.lesson-progress{font-size:12px;font-family:var(--font-mono);color:var(--text-muted);align-items:center;gap:16px;display:flex}.lesson-progress-track{border-radius:var(--radius-full);background:#ffffff14;flex:1;height:8px;overflow:hidden}.lesson-progress-fill{background:linear-gradient(90deg, var(--color-cyan), var(--color-purple));border-radius:var(--radius-full);height:100%;box-shadow:0 0 10px var(--color-cyan-glow);transition:width .3s}.lesson-slide{flex-direction:column;gap:20px;min-height:380px;display:flex}.lesson-slide h2{font-family:var(--font-display);color:#fff;margin:0;font-size:26px;font-weight:800}.lesson-slide-title{flex-direction:column;gap:6px;display:flex}.lesson-slide-subtitle{color:var(--text-secondary);font-size:15px;line-height:1.5}.lesson-slide-text{color:#e2e8f0;border-radius:var(--radius-md);border-left:4px solid var(--color-cyan);background:#ffffff08;padding:20px 24px;font-size:16px;line-height:1.65}.lesson-block-example{border:1px dashed var(--color-purple);border-radius:var(--radius-md);background:#a855f70f;padding:20px}.lesson-example-row{align-items:center;gap:14px;margin-top:12px;display:flex}.lesson-example-number{background:var(--color-purple);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:flex}.lesson-example-block{border:2px solid var(--color-cyan);border-radius:var(--radius-sm);color:#fff;font-family:var(--font-mono);background:#1e293b;padding:10px 18px;font-weight:700;box-shadow:0 4px 12px #0006}.lesson-slide-exercise{margin-top:10px}.lesson-exercise-card{border:1px solid var(--color-cyan);border-radius:var(--radius-lg);box-shadow:var(--shadow-neon-cyan);background:linear-gradient(135deg,#00f0ff1a,#a855f71a);justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.lesson-exercise-card strong{color:#fff;margin-bottom:6px;font-size:18px;display:block}.lesson-exercise-card span{color:var(--text-secondary);font-size:14px;display:block}.lesson-exercise-button{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-cyan), #09f);color:#070a14;font-family:var(--font-display);cursor:pointer;box-shadow:0 0 20px var(--color-cyan-glow);white-space:nowrap;border:none;padding:14px 28px;font-size:15px;font-weight:800;transition:all .2s}.lesson-exercise-button:hover{box-shadow:0 0 30px var(--color-cyan-glow);transform:translateY(-2px)scale(1.02)}.lesson-navigation{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;display:flex}.lesson-nav-button{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background:#ffffff0d;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s}.lesson-nav-button:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff40}.lesson-nav-button:disabled{opacity:.4;cursor:not-allowed}.lesson-nav-button-primary{background:var(--color-cyan);border-color:var(--color-cyan);color:#070a14;box-shadow:0 0 15px var(--color-cyan-glow);font-weight:800}.lesson-nav-button-primary:hover:not(:disabled){background:#38bdf8;border-color:#38bdf8}.lesson-slide-dots{align-items:center;gap:8px;display:flex}.lesson-slide-dot{cursor:pointer;background:#fff3;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:all .2s}.lesson-slide-dot-active{background:var(--color-cyan);box-shadow:0 0 8px var(--color-cyan-glow);transform:scale(1.3)}.lesson-secondary-action{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:#ffffff0f;padding:10px 18px;font-size:14px;font-weight:600;transition:all .2s}.lesson-secondary-action:hover{color:#fff;background:#ffffff1f}.lesson-error{border-radius:var(--radius-lg);border:1px solid var(--color-coral);color:#fecdd3;text-align:center;background:#f43f5e1a;padding:24px}.studio-page{background:var(--bg-space);flex-direction:column;gap:16px;min-height:100vh;padding:16px 20px;display:flex}.studio-header{background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel), 0 0 15px #00f0ff26;justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;display:flex}.studio-header h1{font-family:var(--font-display);color:#fff;margin:2px 0 4px;font-size:22px;font-weight:800}.studio-back-button{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;margin-bottom:6px;padding:6px 12px;font-size:12px;font-weight:700;transition:all .2s}.studio-back-button:hover{color:#fff;border-color:var(--color-cyan);background:#ffffff1f}.studio-learning-context{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.studio-learning-context strong{color:var(--color-cyan)}.exercise-badge{background:var(--bg-surface-elevated);border:1px solid var(--border-bright);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);cursor:pointer;padding:8px 14px;font-size:13px;font-weight:700;box-shadow:inset 0 1px #ffffff1a}.exercise-badge option{background:var(--bg-surface-elevated);color:#fff}.studio-layout{flex:1;grid-template-columns:minmax(240px,280px) minmax(340px,1fr) minmax(500px,1.35fr);gap:18px;min-height:calc(100vh - 110px);display:grid}@media (width>=1440px){.studio-layout{grid-template-columns:260px 1fr 1.45fr;gap:22px}}@media (width>=1800px){.studio-layout{grid-template-columns:280px 1fr 1.6fr;gap:26px}}@media (width<=1200px){.studio-layout{grid-template-columns:280px 1fr}.scene-panel{grid-column:span 2}}.studio-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);flex-direction:column;display:flex;overflow:hidden}.panel-heading{border-bottom:1px solid var(--border-subtle);background:#ffffff05;padding:14px 18px}.panel-heading h2{font-family:var(--font-display);color:#fff;margin:2px 0 0;font-size:16px;font-weight:700}.instruction-panel{gap:16px;padding:18px;overflow-y:auto}.instruction-panel h2{color:#fff;margin:4px 0 8px;font-size:18px}.instruction-panel p{color:#cbd5e1;margin:0;font-size:14px;line-height:1.5}.guided-progress-summary{font-size:12px;font-family:var(--font-mono);color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.guided-progress-summary strong{color:var(--color-cyan)}.guided-progress-bar{border-radius:var(--radius-full);background:#ffffff14;height:6px;margin-top:6px;overflow:hidden}.guided-progress-fill{background:linear-gradient(90deg, var(--color-cyan), var(--color-purple));border-radius:var(--radius-full);height:100%;box-shadow:0 0 8px var(--color-cyan-glow)}.guided-step-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.guided-step{border-radius:var(--radius-md);color:var(--text-muted);background:#ffffff05;border:1px solid #0000;align-items:flex-start;gap:12px;padding:10px 12px;font-size:13px;display:flex}.guided-step-marker{width:22px;height:22px;color:var(--text-secondary);background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.guided-step-active{color:#fff;background:#00f0ff14;border-color:#00f0ff4d;box-shadow:0 0 12px #00f0ff1a}.guided-step-active .guided-step-marker{background:var(--color-cyan);color:#070a14;box-shadow:0 0 8px var(--color-cyan-glow)}.guided-step-completed{color:#a7f3d0;background:#10b9810f;border-color:#10b98133}.guided-step-completed .guided-step-marker{background:var(--color-emerald);color:#070a14}.current-guidance{border:1px solid var(--color-cyan);border-radius:var(--radius-md);background:linear-gradient(135deg,#00f0ff1a,#a855f71a);padding:14px}.current-guidance strong{text-transform:uppercase;letter-spacing:.1em;color:var(--color-cyan);margin-bottom:4px;font-size:12px;display:block}.current-guidance span{color:#fff;font-size:13px}.hint-box{border-radius:var(--radius-md);background:#facc1514;border:1px solid #facc154d;padding:14px}.hint-box strong{text-transform:uppercase;letter-spacing:.1em;color:var(--color-gold);margin-bottom:4px;font-size:12px;display:block}.hint-box span{color:#fef08a;font-size:13px;line-height:1.45}.code-panel{position:relative}.blockly-host{background:#080d1e;flex:1;min-height:400px}.scene-panel{gap:14px;padding:16px}.phaser-host{border-radius:var(--radius-md);border:2px solid var(--border-bright);background:#050711;overflow:hidden;box-shadow:0 0 20px #00f0ff26,inset 0 0 10px #000c}.phaser-host canvas{display:block;width:100%!important;height:100%!important}.studio-controls{gap:10px;display:flex}.control-button{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface-elevated);color:#fff;font-family:var(--font-display);cursor:pointer;flex:1;padding:12px 16px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 4px 10px #0000004d}.control-button:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-2px)}.control-button.primary{background:linear-gradient(135deg, var(--color-cyan), #09f);border-color:var(--color-cyan);color:#070a14;box-shadow:0 0 16px var(--color-cyan-glow);font-weight:900}.control-button.primary:hover:not(:disabled){background:linear-gradient(135deg, #38bdf8, var(--color-cyan));box-shadow:0 0 24px var(--color-cyan-glow)}.control-button:disabled{opacity:.4;cursor:not-allowed;transform:none}.studio-status{border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--text-muted);background:#ffffff0a;padding:6px 12px;font-size:12px}.studio-status strong{color:var(--color-cyan)}.validation-feedback{border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:16px 20px;animation:.3s cubic-bezier(.16,1,.3,1) slideInFeedback;display:flex}@keyframes slideInFeedback{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.validation-success{border:1px solid var(--color-emerald);box-shadow:0 0 20px var(--color-emerald-glow);background:linear-gradient(135deg,#10b98133,#00f0ff26)}.validation-success strong{font-family:var(--font-display);color:#6ee7b7;font-size:16px}.validation-success span{color:#ecfdf5;font-size:14px}.validation-incomplete{border:1px solid var(--color-coral);background:#f43f5e26}.validation-incomplete strong{font-family:var(--font-display);color:#fda4af;font-size:15px}.validation-incomplete span{color:#fff1f2;font-size:13px}.validation-auto-reset-indicator{flex-direction:column;gap:8px;margin-top:10px;display:flex}.auto-reset-header{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.auto-reset-badge{border-radius:var(--radius-sm);font-family:var(--font-display);color:#ffe4e6;background:#f43f5e33;border:1px solid #f43f5e66;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.auto-reset-badge .spin-icon{font-size:13px;animation:3s linear infinite spinSlow;display:inline-block}.auto-reset-tip{color:#fda4af;opacity:.85;font-size:11px;font-style:italic}.auto-reset-track{background:#0006;border-radius:999px;width:100%;height:5px;overflow:hidden;box-shadow:inset 0 1px 2px #00000080}.auto-reset-fill{background:linear-gradient(90deg,#f43f5e,#fb7185,#fda4af);border-radius:999px;width:100%;height:100%;animation:3.5s linear forwards autoResetShrink;box-shadow:0 0 10px #f43f5eb3}.validation-feedback:hover .auto-reset-fill{animation-play-state:paused}@keyframes autoResetShrink{0%{width:100%}to{width:0%}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.validation-continue-button{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-emerald), #059669);color:#070a14;font-family:var(--font-display);cursor:pointer;box-shadow:0 0 15px var(--color-emerald-glow);border:none;align-self:flex-start;margin-top:10px;padding:12px 24px;font-size:14px;font-weight:800;transition:all .2s}.validation-continue-button:hover{box-shadow:0 0 25px var(--color-emerald-glow);transform:translateY(-2px)scale(1.02)}.panel-title-inline{align-items:center;gap:8px;display:flex}.panel-title-inline .panel-eyebrow{font-family:var(--font-display);color:var(--color-cyan);letter-spacing:.1em;margin:0;font-size:11px;font-weight:800}.panel-title-inline .panel-divider{color:var(--text-muted);font-family:var(--font-mono);opacity:.45;font-size:12px}.panel-title-inline h2{font-family:var(--font-display);color:#fff;margin:0;font-size:14px;font-weight:700}.guided-step-content{flex-direction:column;gap:2px;min-width:0;display:flex}.guided-step-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--color-cyan);font-size:11px;font-weight:800}.guided-step-completed .guided-step-label{color:var(--color-emerald)}.guided-step-text{color:#e2e8f0;font-size:13px;line-height:1.45}.blocklyToolbox,.blocklyToolboxDiv{color:#f8fafc!important;z-index:70!important;background-color:#0b1120!important;border-right:1px solid #00f0ff40!important;padding:8px 6px!important;box-shadow:4px 0 16px #00000080!important}.blocklyToolboxCategory,.blocklyTreeRow{cursor:pointer!important;box-sizing:border-box!important;background-color:#0f172ad9!important;border-style:solid!important;border-width:1px 1px 1px 8px!important;border-top-color:#ffffff1a!important;border-bottom-color:#ffffff1a!important;border-right-color:#ffffff1a!important;border-radius:8px!important;align-items:center!important;height:auto!important;min-height:38px!important;margin:6px 4px!important;padding:8px 12px!important;line-height:normal!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:flex!important}.blocklyTreeRowContentContainer{align-items:center!important;width:100%!important;display:flex!important}.blocklyToolboxCategory:not(.blocklyToolboxSelected):hover,.blocklyTreeRow:not(.blocklyTreeSelected):hover{transform:translate(3px);background-color:#00f0ff24!important;border-top-color:#00f0ff66!important;border-bottom-color:#00f0ff66!important;border-right-color:#00f0ff66!important}.blocklyToolboxCategory.blocklyToolboxSelected,.blocklyTreeRow.blocklyTreeSelected{border-top-color:var(--color-cyan)!important;border-right-color:var(--color-cyan)!important;border-bottom-color:var(--color-cyan)!important;background-color:#00f0ff40!important;box-shadow:0 0 16px #00f0ff59!important}.blocklyToolboxCategoryLabel,.blocklyTreeLabel{color:#f8fafc!important;font-family:var(--font-display,"Space Grotesk", sans-serif)!important;letter-spacing:.03em!important;text-shadow:0 1px 3px #000000e6!important;padding:0 4px!important;font-size:13.5px!important;font-weight:700!important}.blocklyToolboxSelected .blocklyToolboxCategoryLabel,.blocklyTreeSelected .blocklyTreeLabel{color:#fff!important;text-shadow:0 0 12px #00f0ffcc!important}.blocklyToolboxCategoryIcon{margin-right:6px!important}.blocklyFlyoutBackground{fill:#090e1c!important;fill-opacity:.98!important;stroke:#00f0ff40!important;stroke-width:1px!important}.blocklyMainBackground{stroke-width:0!important}.blocklyScrollbarHandle{fill:#00f0ff73!important}.blocklyScrollbarHandle:hover{fill:var(--color-cyan)!important}.lesson-video-frame{border-radius:var(--radius-lg);background:#000;border:1px solid #00f0ff59;margin:18px 0 20px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0009,0 0 20px #00f0ff26}.lesson-video-element{object-fit:contain;background:#000;width:100%;max-height:440px;display:block}.lesson-exercise-button-locked{opacity:.55!important;cursor:not-allowed!important;filter:grayscale(.8)!important;box-shadow:none!important;color:#94a3b8!important;pointer-events:auto!important;background:#ffffff1a!important;transform:none!important}.lesson-exercise-button-unlocked{animation:2s ease-in-out infinite pulseNeonCyan}@keyframes pulseNeonCyan{0%,to{box-shadow:0 0 15px #00f0ff66}50%{box-shadow:0 0 28px #00f0ffd9}}.auth-page{background:radial-gradient(circle at 50% 20%, #00f0ff1f, transparent 45%), radial-gradient(circle at 80% 80%, #a855f71a, transparent 45%), var(--bg-space);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.auth-card{border:1px solid var(--border-bright);border-radius:var(--radius-lg);background:var(--bg-surface);width:min(440px,100%);box-shadow:var(--shadow-panel), 0 0 25px #00f0ff1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:36px 32px;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg, var(--color-cyan), var(--color-purple), var(--color-gold));height:4px;position:absolute;top:0;left:0;right:0}.auth-brand{text-align:center;margin-bottom:28px}.auth-brand img.auth-mascot{object-fit:contain;width:72px;height:72px;filter:drop-shadow(0 0 12px var(--color-cyan-glow));margin-bottom:12px}.auth-brand-kicker{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--color-cyan);margin-bottom:6px;font-size:.78rem;font-weight:800;display:inline-block}.auth-brand h1{font-family:var(--font-display);color:#fff;margin:0 0 8px;font-size:2rem;font-weight:800}.auth-brand p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.55}.auth-form{gap:18px;display:grid}.auth-field{color:#e2e8f0;gap:7px;font-size:13px;font-weight:700;display:grid}.auth-field input{box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;font:inherit;color:#fff;background:#ffffff0d;padding:12px 16px;transition:all .2s}.auth-field input:focus{border-color:var(--color-cyan);box-shadow:0 0 12px var(--color-cyan-glow);background:#ffffff14;outline:none}.auth-submit{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-cyan), #08f);color:#070a14;font:inherit;font-family:var(--font-display);cursor:pointer;box-shadow:0 0 16px var(--color-cyan-glow);border:0;padding:14px 20px;font-size:15px;font-weight:800;transition:all .2s}.auth-submit:hover:not(:disabled){box-shadow:0 0 24px var(--color-cyan-glow);transform:translateY(-2px)}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-demo-btn{border:1px solid var(--color-purple);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);cursor:pointer;background:#a855f71f;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.auth-demo-btn:hover{box-shadow:0 0 18px var(--color-purple-glow);background:#a855f740;transform:translateY(-2px)}.auth-divider{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:12px;margin:4px 0;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-error{border:1px solid var(--color-coral);border-radius:var(--radius-md);color:#fda4af;background:#f43f5e26;padding:12px 16px;font-size:13px;line-height:1.45}.auth-loading{min-height:100vh;font-family:var(--font-display);color:var(--color-cyan);place-items:center;font-size:18px;font-weight:800;display:grid}.auth-session-bar{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:20px;padding:12px 24px;display:flex}.auth-session-user{align-items:center;gap:12px;display:flex}.auth-session-avatar{border:2px solid var(--color-cyan);object-fit:cover;background:#000;border-radius:50%;width:32px;height:32px}.auth-session-name{color:#fff;font-weight:800}.auth-session-role{border:1px solid var(--color-cyan);border-radius:var(--radius-full);font-family:var(--font-mono);color:var(--color-cyan);letter-spacing:.05em;background:#00f0ff1f;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.auth-session-role.super_admin,.auth-session-role.role-super_admin{color:#fbbf24;-webkit-text-fill-color:#fbbf24;letter-spacing:.08em;text-transform:uppercase;background:#f59e0b2e;border:1px solid #f59e0b80;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;box-shadow:0 0 12px #f59e0b33}.auth-signout{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:#ffffff0d;padding:6px 14px;font-size:13px;font-weight:700;transition:all .2s}.auth-signout:hover{color:#fff;border-color:var(--color-coral);background:#ffffff1f}.auth-demo-section{border:1px dashed var(--border-subtle);border-radius:var(--radius-md);background:#00f0ff08;margin-bottom:20px;padding:12px}.auth-demo-label{font-family:var(--font-display);letter-spacing:.05em;color:var(--color-cyan);text-transform:uppercase;text-align:center;margin-bottom:8px;font-size:11px;font-weight:800}.auth-demo-grid{grid-template-columns:1fr;gap:8px;display:grid}.auth-demo-btn{border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.auth-demo-btn-student{border:1px solid var(--color-cyan);color:#fff;background:#00f0ff1f}.auth-demo-btn-student:hover{box-shadow:0 0 16px var(--color-cyan-glow);background:#00f0ff40;transform:translateY(-2px)}.auth-demo-btn-teacher{border:1px solid var(--color-emerald);color:#fff;background:#10b9811f}.auth-demo-btn-teacher:hover{background:#10b98140;transform:translateY(-2px);box-shadow:0 0 16px #10b98159}.auth-demo-btn-admin{border:1px solid var(--color-gold);color:#fff;background:#facc151f}.auth-demo-btn-admin:hover{background:#facc1540;transform:translateY(-2px);box-shadow:0 0 16px #facc1559}.auth-session-nav-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.auth-nav-btn{border:1px solid var(--border-bright);border-radius:var(--radius-full);color:var(--color-cyan);font-family:var(--font-display);cursor:pointer;background:#00f0ff14;align-items:center;gap:6px;padding:6px 16px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.auth-nav-btn:hover{border-color:var(--color-cyan);box-shadow:0 0 14px var(--color-cyan-glow);background:#00f0ff33;transform:translateY(-1px)}.auth-segmented-nav{background:#0f172ab3;border:1px solid #ffffff1a;border-radius:9999px;align-items:center;gap:6px;padding:4px;display:flex;box-shadow:0 4px 16px #0000004d}.auth-nav-btn.active.student{box-shadow:0 0 14px #38bdf866;color:#fff!important;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%)!important;border-color:#38bdf8!important}.auth-nav-btn.active.teacher{box-shadow:0 0 14px #a855f766;color:#fff!important;background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%)!important;border-color:#c084fc!important}.auth-nav-btn.active.admin{box-shadow:0 0 14px #3b82f666;color:#fff!important;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%)!important;border-color:#60a5fa!important}.auth-demo-role-switcher{color:#38bdf8;cursor:pointer;background:#0f172af2;border:1px solid #00f0ff73;border-radius:9999px;outline:none;padding:4px 10px;font-size:.78rem;font-weight:700;transition:all .2s}.auth-demo-role-switcher:hover{border-color:#38bdf8;box-shadow:0 0 12px #38bdf866}.auth-card{width:min(480px,100%);transition:width .3s}.auth-tab-bar{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:#0f172ab3;gap:8px;margin-bottom:22px;padding:6px;display:flex}.auth-tab-btn{border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-display);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.auth-tab-btn:hover{color:#fff;background:#ffffff0d}.auth-tab-btn.active{border-color:var(--color-cyan);color:#fff;background:linear-gradient(135deg,#00f0ff2e,#3b82f638);box-shadow:0 0 16px #00f0ff40}.auth-class-search-box{gap:16px;display:grid}.auth-code-input-wrapper{align-items:stretch;gap:10px;display:flex}.auth-class-code-input{border:2px solid var(--border-bright);border-radius:var(--radius-md);font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--color-cyan);text-align:center;background:#00f0ff0a;flex:1;padding:14px 18px;font-size:20px;font-weight:800;transition:all .2s;box-shadow:inset 0 2px 8px #0006}.auth-class-code-input:focus{border-color:var(--color-cyan);box-shadow:0 0 18px var(--color-cyan-glow), inset 0 2px 8px #0006;background:#00f0ff14;outline:none}.auth-code-submit-btn{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-cyan), #09f);color:#070a14;font-family:var(--font-display);cursor:pointer;box-shadow:0 0 16px var(--color-cyan-glow);white-space:nowrap;border:none;padding:0 20px;font-size:15px;font-weight:800;transition:all .2s}.auth-code-submit-btn:hover:not(:disabled){box-shadow:0 0 24px var(--color-cyan-glow);transform:translateY(-2px)}.auth-code-submit-btn:disabled{opacity:.5;cursor:not-allowed}.auth-quick-chips{border-radius:var(--radius-md);background:#ffffff05;border:1px dashed #ffffff1f;margin-top:4px;padding:12px}.auth-quick-chips-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.auth-chips-list{flex-wrap:wrap;gap:8px;display:flex}.auth-chip{border-radius:var(--radius-full);color:#38bdf8;cursor:pointer;background:#00f0ff14;border:1px solid #00f0ff4d;padding:6px 12px;font-size:12px;font-weight:700;transition:all .2s}.auth-chip:hover{border-color:var(--color-cyan);background:#00f0ff33;transform:translateY(-1px);box-shadow:0 0 10px #00f0ff59}.auth-class-banner{border:1px solid var(--border-bright);border-radius:var(--radius-md);background:linear-gradient(135deg,#00f0ff14,#a855f714);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.auth-class-badge{text-transform:uppercase;color:var(--color-cyan);letter-spacing:.06em;margin-right:6px;font-size:10px;font-weight:800;display:inline-block}.auth-class-banner strong{color:#fff;font-size:15px;display:block}.auth-class-school{color:var(--text-secondary);font-size:12px}.auth-change-class-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:#cbd5e1;cursor:pointer;white-space:nowrap;background:#ffffff0d;padding:6px 12px;font-size:12px;font-weight:700;transition:all .2s}.auth-change-class-btn:hover{color:#fff;background:#ffffff26}.auth-student-grid-title{color:var(--color-cyan);text-align:center;margin-bottom:12px;font-size:13px;font-weight:700}.auth-student-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;max-height:280px;padding:4px;display:grid;overflow-y:auto}.auth-student-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;text-align:center;background:#ffffff0a;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 10px;transition:all .2s;display:flex}.auth-student-card:hover{border-color:var(--color-cyan);background:#00f0ff1f;transform:translateY(-2px);box-shadow:0 0 16px #00f0ff40}.auth-student-avatar{filter:drop-shadow(0 2px 6px #00000080);font-size:32px;line-height:1}.auth-student-name{color:#fff;word-break:break-word;font-size:13px;font-weight:800}.auth-student-pin-indicator{border-radius:var(--radius-full);color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b4d;padding:2px 6px;font-size:10px;font-weight:700}.auth-student-pin-indicator.free{color:#10b981;background:#10b98126;border-color:#10b9814d}.auth-pin-container{flex-direction:column;align-items:center;padding:6px 0;display:flex}.auth-pin-student-header{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff0a;align-items:center;gap:12px;width:100%;margin-bottom:16px;padding:10px 14px;display:flex}.auth-pin-student-avatar{font-size:28px}.auth-pin-student-label{color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:700}.auth-pin-student-header strong{color:#fff;font-size:15px;display:block}.auth-pin-back-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:#cbd5e1;cursor:pointer;background:0 0;padding:6px 12px;font-size:12px;font-weight:700;transition:all .2s}.auth-pin-back-btn:hover{color:#fff;background:#ffffff1a}.auth-pin-prompt{color:#e2e8f0;text-align:center;margin-bottom:14px;font-size:14px;font-weight:700}.auth-pin-display{gap:14px;margin-bottom:20px;display:flex}.auth-pin-dot{border:2px solid var(--border-bright);width:28px;height:28px;color:var(--text-muted);background:#0006;border-radius:50%;justify-content:center;align-items:center;font-size:20px;transition:all .2s;display:flex}.auth-pin-dot.filled{border-color:var(--color-cyan);color:var(--color-cyan);box-shadow:0 0 12px var(--color-cyan-glow);background:#00f0ff33}.auth-keypad{grid-template-columns:repeat(3,1fr);gap:10px;width:min(280px,100%);display:grid}.auth-keypad-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);cursor:pointer;background:#ffffff0d;justify-content:center;align-items:center;padding:14px 0;font-size:20px;font-weight:800;transition:all .15s;display:flex}.auth-keypad-btn:hover{border-color:var(--color-cyan);background:#00f0ff26;transform:translateY(-2px);box-shadow:0 0 12px #00f0ff40}.auth-keypad-btn:active{transform:translateY(1px)}.auth-keypad-clear{color:#f87171;font-size:16px}.auth-keypad-backspace{color:#fbbf24;font-size:18px}.universes-hub-section{margin:28px 0 36px}.universes-bar-wrapper{margin-bottom:22px}.universes-bar-label{letter-spacing:.14em;text-transform:uppercase;color:#38bdf8;margin-bottom:12px;font-size:.72rem;font-weight:800;display:block}.universes-tab-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ab3;border:1px solid #ffffff14;border-radius:16px;flex-wrap:wrap;gap:12px;padding:8px;display:flex}.universe-tab-btn{color:#94a3b8;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px solid #0000;border-radius:12px;flex:auto;justify-content:center;align-items:center;gap:10px;min-width:150px;padding:10px 18px;font-size:.92rem;font-weight:700;transition:all .22s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}.universe-tab-btn .tab-icon{font-size:1.25rem;line-height:1}.universe-tab-btn .tab-lock{opacity:.8;margin-left:4px;font-size:.82rem}.universe-tab-btn:hover:not(.locked){color:#f8fafc;background:#ffffff14;border-color:#ffffff26;transform:translateY(-1px)}.universe-tab-btn.active{color:#fff;background:var(--btn-theme,#0284c7);box-shadow:0 4px 16px var(--btn-glow,#0284c773);border-color:#fff3}.universe-tab-btn.locked{opacity:.45;filter:grayscale(80%);cursor:not-allowed;border-style:dashed;border-color:#ffffff14}.universe-tab-btn.locked:hover{opacity:.6}.universe-locked-alert{color:#fca5a5;background:#ef44441f;border:1px solid #ef44444d;border-radius:12px;align-items:center;gap:10px;margin-top:14px;padding:12px 18px;font-size:.86rem;display:flex}.universe-two-frames-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:6px;display:grid}@media (width<=860px){.universe-two-frames-grid{grid-template-columns:1fr}}.universe-frame-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172acc;border:1px solid #ffffff17;border-radius:18px;flex-direction:column;justify-content:space-between;padding:24px;transition:border-color .25s;display:flex;position:relative;box-shadow:0 12px 28px -10px #00000080}.universe-frame-card:before{content:"";background:var(--universe-theme,#0284c7);height:2px;box-shadow:0 0 12px var(--universe-theme,#0284c7);border-radius:2px;position:absolute;top:0;left:20px;right:20px}.universe-frame-header{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.universe-frame-kicker{letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:800}.universe-frame-badge{color:#cbd5e1;background:#ffffff14;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700}.universe-frame-badge.status-completed{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.universe-frame-badge.status-progress{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.universe-frame-title{color:#f8fafc;margin:0 0 8px;font-size:1.32rem;font-weight:800;line-height:1.25}.universe-frame-desc{color:#94a3b8;margin-bottom:16px;font-size:.88rem;line-height:1.5}.universe-frame-meta-row{color:#94a3b8;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.8rem;display:flex}.universe-frame-progress-bar-bg{background:#ffffff14;border-radius:999px;height:7px;margin-bottom:20px;overflow:hidden}.universe-frame-progress-bar-fill{background:var(--universe-theme,#0284c7);height:100%;box-shadow:0 0 10px var(--universe-theme,#0284c7);border-radius:999px;transition:width .35s ease-out}.universe-resume-bubble{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;margin-bottom:16px;padding:10px 14px;font-size:.84rem}.universe-resume-bubble span{text-transform:uppercase;color:#64748b;margin-bottom:2px;font-size:.72rem;font-weight:700;display:block}.universe-resume-bubble strong{color:#e2e8f0}.universe-frame-action-btn{cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:auto;padding:12px 20px;font-size:.92rem;font-weight:800;transition:all .22s;display:flex}.universe-frame-action-btn.primary{background:var(--universe-theme,#0284c7);color:#fff;box-shadow:0 4px 18px var(--universe-glow,#0284c759)}.universe-frame-action-btn.primary:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 6px 22px var(--universe-glow,#0284c780);transform:translateY(-2px)}.universe-frame-action-btn.secondary{color:#f8fafc;background:#ffffff0f;border-color:#ffffff24}.universe-frame-action-btn.secondary:hover:not(:disabled){border-color:var(--universe-theme,#0284c7);background:#ffffff1a;transform:translateY(-2px)}.universe-frame-action-btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale()}.diploma-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;background:#030712d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.diploma-dialog{width:100%;max-width:820px;animation:.3s cubic-bezier(.16,1,.3,1) popDiploma;position:relative}@keyframes popDiploma{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.diploma-close-button{color:#fbbf24;cursor:pointer;z-index:10;background:#1e293b;border:2px solid #f59e0b;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:-14px;right:-14px;box-shadow:0 4px 12px #00000080}.diploma-close-button:hover{color:#fff;background:#dc2626;border-color:#f87171;transform:scale(1.1)}.diploma-frame{color:#f8fafc;background:radial-gradient(circle at 50% 30%,#1e1b4b 0%,#0f172a 70%,#020617 100%);border:4px solid #f59e0b;border-radius:18px;padding:12px;box-shadow:0 0 40px #f59e0b40,0 25px 50px -12px #000000e6}.diploma-inner-border{text-align:center;background:#0f172aa6;border:2px dashed #f59e0b80;border-radius:12px;padding:36px 40px}.diploma-header{margin-bottom:20px}.diploma-emblem-kicker{letter-spacing:.2em;color:#fbbf24;text-transform:uppercase;margin-bottom:6px;font-size:.85rem;font-weight:800}.diploma-subtitle-top{letter-spacing:.12em;color:#94a3b8;text-transform:uppercase;font-size:.75rem}.diploma-seal-center{background:radial-gradient(circle,#f59e0b40 0%,#f59e0b0d 70%);border:2px solid #f59e0b;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin:14px auto;display:flex;box-shadow:0 0 24px #f59e0b59}.diploma-seal-icon{font-size:2.4rem}.diploma-main-title{letter-spacing:-.01em;background:linear-gradient(135deg,#fef08a 0%,#f59e0b 50%,#d97706 100%);-webkit-text-fill-color:transparent;text-transform:uppercase;-webkit-background-clip:text;margin:10px 0 6px;font-size:2.1rem;font-weight:900}.diploma-sector-tag{color:#38bdf8;margin:0 0 24px;font-size:1rem;font-weight:600}.diploma-body{margin:20px 0}.diploma-presented-to{color:#cbd5e1;margin-bottom:12px;font-size:.95rem;font-style:italic}.diploma-recipient-name{color:#fff;letter-spacing:-.02em;text-shadow:0 2px 14px #00f0ff66;margin:8px 0;font-size:2.2rem;font-weight:900}.diploma-recipient-school{color:#94a3b8;margin-bottom:18px;font-size:.9rem}.diploma-mention-text{color:#e2e8f0;background:#1e293b66;border-left:3px solid #f59e0b;border-radius:8px;max-width:620px;margin:0 auto 20px;padding:12px 20px;font-size:.95rem;line-height:1.5}.diploma-rank-badge{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b66;border-radius:9999px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 18px;font-size:.85rem;display:inline-flex}.diploma-footer{border-top:1px solid #f59e0b33;justify-content:space-between;align-items:flex-end;margin-top:10px;padding-top:20px;display:flex}.diploma-signature-block{text-align:center;width:220px}.diploma-signature-line{background:#ffffff4d;height:1px;margin-bottom:8px}.diploma-signatory-name{color:#f1f5f9;font-size:.88rem;font-weight:700}.diploma-signatory-role{color:#94a3b8;font-size:.72rem}.diploma-gold-stamp{background:radial-gradient(circle,#f59e0b26 0%,#0f172acc 100%);border:3px double #f59e0b;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;display:flex;transform:rotate(-8deg);box-shadow:0 0 16px #f59e0b4d}.diploma-stamp-inner{text-align:center;color:#f59e0b;line-height:1.1}.diploma-stamp-inner span{letter-spacing:.15em;font-size:.65rem;font-weight:800;display:block}.diploma-stamp-inner strong{font-size:.95rem;font-weight:900;display:block}.diploma-modal-actions{justify-content:center;gap:14px;margin-top:20px;display:flex}.diploma-print-button{color:#0f172a;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;border-radius:10px;padding:10px 22px;font-size:.92rem;font-weight:800;transition:all .2s;box-shadow:0 4px 14px #f59e0b4d}.diploma-print-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b73}.diploma-cancel-button{color:#cbd5e1;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;border-radius:10px;padding:10px 20px;font-weight:600;transition:all .2s}.diploma-cancel-button:hover{color:#fff;background:#ffffff2e}@media print{.no-print{display:none!important}.diploma-overlay{background:0 0;padding:0;position:static}.diploma-frame{box-shadow:none}}.holotheque-overlay{z-index:9999;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#030712e0;justify-content:center;align-items:center;padding:24px;animation:.25s ease-out holoFadeIn;display:flex;position:fixed;inset:0}@keyframes holoFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.holotheque-modal{background:linear-gradient(135deg,#0f172af2 0%,#1e293bf2 100%);border:1px solid #38bdf859;border-radius:20px;flex-direction:column;width:100%;max-width:840px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 50px #38bdf840,0 20px 40px #0009}.holotheque-header{background:#0f172acc;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.holotheque-header-title{align-items:center;gap:12px;display:flex}.holo-trans-dot{background:#ef4444;border-radius:50%;width:10px;height:10px;animation:1.5s infinite holoPulse;box-shadow:0 0 10px #ef4444}@keyframes holoPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.holotheque-header h2{color:#f8fafc;align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.holotheque-header-kicker{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d;border-radius:12px;padding:2px 8px;font-size:.72rem;font-weight:700}.holotheque-close-btn{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;transition:all .2s;display:flex}.holotheque-close-btn:hover{color:#fca5a5;background:#ef444433;border-color:#ef444466;transform:rotate(90deg)}.holotheque-player-wrapper{aspect-ratio:16/9;background:#000;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.holotheque-video{object-fit:contain;width:100%;height:100%;display:block}.holotheque-body{background:#0f172ae6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.holotheque-video-info h3{color:#f8fafc;margin:0 0 6px;font-size:1.05rem;font-weight:700}.holotheque-video-info p{color:#94a3b8;max-width:520px;margin:0;font-size:.85rem;line-height:1.4}.holotheque-actions{align-items:center;gap:10px;display:flex}.holotheque-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:all .2s;display:inline-flex}.holotheque-btn.primary{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#2563eb 100%);box-shadow:0 4px 14px #2563eb59}.holotheque-btn.primary:hover{background:linear-gradient(135deg,#0369a1 0%,#1d4ed8 100%);transform:translateY(-2px)}.holotheque-btn.secondary{color:#e2e8f0;background:#1e293bcc;border-color:#ffffff26}.holotheque-btn.secondary:hover{background:#334155e6;border-color:#38bdf866}.holotheque-library-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;max-height:480px;padding:20px 24px;display:grid;overflow-y:auto}.holotheque-card{cursor:pointer;background:#1e293b99;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:12px;padding:18px;transition:all .2s;display:flex}.holotheque-card:hover{background:#1e293be6;border-color:#38bdf866;transform:translateY(-3px);box-shadow:0 8px 24px #0006}.holotheque-card-header{align-items:center;gap:12px;display:flex}.holotheque-card-icon{background:#0284c733;border:1px solid #38bdf84d;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;display:flex}.holotheque-card-title-group h4{color:#f8fafc;margin:0;font-size:.98rem;font-weight:700}.holotheque-card-title-group span{color:#94a3b8;font-size:.75rem}.holotheque-card p{color:#cbd5e1;flex:1;margin:0;font-size:.82rem;line-height:1.4}.holotheque-card-footer{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.student-metric-pill-btn{text-align:left;cursor:pointer;background:#0ea5e91f;border:1px solid #0ea5e94d;font-family:inherit;transition:all .2s}.student-metric-pill-btn:hover{background:#0ea5e940;border-color:#38bdf899;transform:translateY(-2px);box-shadow:0 4px 14px #0ea5e933}@media (width<=640px){.holotheque-modal{border-radius:14px}.holotheque-body{flex-direction:column;align-items:flex-start}}.student-home{color:#f7f8ff;background:radial-gradient(circle at 14% 16%,#7054ff38,#0000 34%),radial-gradient(circle at 88% 12%,#00d6c929,#0000 28%),linear-gradient(#0b1020 0%,#11182b 52%,#0b1020 100%);min-height:calc(100vh - 72px);padding:42px 24px 64px}.student-home-shell{width:min(1180px,100%);margin:0 auto}.student-home-hero{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;display:flex}.student-home-kicker,.student-home-section-label{letter-spacing:.16em;text-transform:uppercase;color:#8ef0e7;font-size:.74rem;font-weight:800;display:inline-block}.student-home-hero h1{letter-spacing:-.04em;margin:10px 0 8px;font-size:clamp(2rem,5vw,3.65rem);line-height:.98}.student-home-hero p{color:#b9c0d5;max-width:650px;margin:0;font-size:1.03rem;line-height:1.65}.student-home-level-chip{background:#ffffff0e;border:1px solid #ffffff1f;border-radius:18px;align-items:baseline;gap:7px;min-width:170px;padding:16px 20px;display:flex;box-shadow:inset 0 1px #ffffff0f,0 20px 50px #00000029}.student-home-level-chip strong{color:#fff;font-size:1.65rem}.student-home-level-chip span{color:#aeb7cf;font-size:.9rem}.student-home-next,.student-home-complete{background:linear-gradient(135deg,#5b45da61,#181f3af5 46%,#0d1a2bfa);border:1px solid #8f7bff66;border-radius:26px;position:relative;overflow:hidden;box-shadow:0 28px 70px #00000047,inset 0 1px #ffffff12}.student-home-next{grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);min-height:360px;display:grid}.student-home-next-copy{z-index:2;padding:38px 42px 40px;position:relative}.student-home-path-meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.student-home-path-meta span,.student-home-path-level{color:#dfe3f4;background:#ffffff14;border-radius:999px;align-items:center;min-height:28px;padding:5px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.student-home-next h2{letter-spacing:-.035em;max-width:720px;margin:18px 0 12px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.08}.student-home-next-copy>p,.student-home-complete p{color:#c1c7da;max-width:720px;margin:0;line-height:1.65}.student-home-resume{background:linear-gradient(135deg,#58e2c71a,#705cff14);border:1px solid #8ef0e73d;border-radius:13px;gap:5px;width:min(590px,100%);margin-top:16px;padding:14px 16px;display:grid}.student-home-resume span{color:#8ef0e7;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:900}.student-home-resume strong{color:#fff;font-size:.95rem}.student-home-resume small{color:#b8c1d7;font-size:.78rem}.student-home-next-stats{color:#dde2f3;flex-wrap:wrap;gap:10px 18px;margin-top:26px;font-size:.86rem;font-weight:700;display:flex}.student-home-progress{background:#04081480;border:1px solid #ffffff1c;border-radius:999px;width:min(590px,100%);height:12px;margin-top:14px;position:relative;overflow:hidden}.student-home-progress span{border-radius:inherit;background:linear-gradient(90deg,#705cff,#42bdf4,#58e2c7);width:0;height:100%;transition:width .24s;display:block;box-shadow:0 0 22px #5cddd152}.student-home-primary-action{color:#111629;min-height:52px;font:inherit;cursor:pointer;background:#f7f8ff;border:1px solid #ffffff38;border-radius:14px;align-items:center;gap:13px;margin-top:26px;padding:0 22px;font-weight:900;transition:transform .14s,box-shadow .14s;display:inline-flex;box-shadow:0 16px 30px #0000003d}.student-home-primary-action:hover{transform:translateY(-2px);box-shadow:0 20px 38px #0000004d}.student-home-primary-action:focus-visible{outline-offset:4px;outline:3px solid #8ef0e7}.student-home-primary-action span{font-size:1.15rem}.student-home-mission-visual{background:linear-gradient(#060b1b26,#060b1b80);border-left:1px solid #ffffff14;place-items:center;min-height:100%;display:grid;position:relative}.student-home-mission-visual:before,.student-home-mission-visual:after{content:"";background:#8ef0e7;width:9px;height:9px;position:absolute;box-shadow:36px 22px #8a74ffd9,-46px 66px #54c1f6bf,70px 105px #ffffff52}.student-home-mission-visual:before{top:52px;right:74px}.student-home-mission-visual:after{bottom:78px;right:128px;transform:scale(.65)}.student-home-console{z-index:2;background:#272e49;border:3px solid #cfd5f5;border-radius:24px;width:178px;padding:14px;position:relative;transform:rotate(4deg);box-shadow:12px 14px #11162a,0 24px 50px #00000052}.student-home-console-light{background:#8ef0e7;border-radius:50%;width:10px;height:10px;margin:0 0 10px auto;display:block;box-shadow:0 0 16px #8ef0e7cc}.student-home-console-screen{background:linear-gradient(#111a2e,#172944);border:3px solid #12172b;border-radius:14px;place-items:center;min-height:118px;display:grid;box-shadow:inset 0 0 28px #51decd14}.student-home-console-screen span{letter-spacing:.2em;color:#8ef0e7;font-size:.72rem}.student-home-console-screen strong{color:#fff;font-size:3rem;line-height:1}.student-home-console-controls{justify-content:flex-end;gap:9px;padding:13px 5px 2px;display:flex}.student-home-console-controls span{background:#705cff;border-radius:50%;width:15px;height:15px}.student-home-console-controls span:nth-child(2){background:#42bdf4}.student-home-console-controls span:nth-child(3){background:#58e2c7}.student-home-pixel-orbit{border:1px dashed #8ef0e738;border-radius:50%;position:absolute}.student-home-pixel-orbit-one{width:280px;height:280px}.student-home-pixel-orbit-two{border-color:#856fff2e;width:340px;height:340px}.student-home-complete{padding:38px 42px}.student-home-complete h2{margin:14px 0 10px}.student-home-paths{margin-top:34px}.student-home-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.student-home-section-heading h2{margin:7px 0 0;font-size:1.55rem}.student-home-path-count{color:#9ca6c1;font-size:.88rem}.student-home-path-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px;display:grid}.student-home-path-card{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:19px;padding:22px;box-shadow:inset 0 1px #ffffff0b}.student-home-path-card-top,.student-home-path-footer{justify-content:space-between;align-items:center;gap:14px;display:flex}.student-home-path-card-top strong{color:#8ef0e7;font-size:1rem}.student-home-path-card h3{margin:18px 0 9px;font-size:1.18rem}.student-home-path-card p{color:#aeb7cf;min-height:48px;margin:0;font-size:.9rem;line-height:1.5}.student-home-progress-small{width:100%;height:8px;margin-top:20px}.student-home-path-footer{color:#8994b1;margin-top:14px;font-size:.78rem}.student-home-path-action{color:#f7f8ff;width:fit-content;min-height:42px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#705cff33,#58e2c71c);border:1px solid #8ef0e76b;border-radius:11px;justify-content:center;align-items:center;gap:10px;margin-top:20px;padding:0 15px;font-size:.82rem;font-weight:900;transition:transform .14s,border-color .14s,background .14s;display:inline-flex;box-shadow:inset 0 1px #ffffff0f,0 10px 24px #00000024}.student-home-path-action:hover{background:linear-gradient(135deg,#705cff4d,#58e2c72e);border-color:#8ef0e7b8;transform:translateY(-1px)}.student-home-path-action:focus-visible{outline-offset:4px;outline:3px solid #8ef0e7}@media (width<=780px){.student-home{padding:28px 16px 48px}.student-home-hero{flex-direction:column;align-items:stretch}.student-home-level-chip{width:fit-content}.student-home-next{grid-template-columns:1fr}.student-home-next-copy{padding:30px 24px 32px}.student-home-mission-visual{border-top:1px solid #ffffff14;border-left:0;min-height:230px}.student-home-section-heading{flex-direction:column;align-items:flex-start}}@media (width<=480px){.student-home-hero h1{font-size:2.25rem}.student-home-next{border-radius:20px}.student-home-next-copy{padding:26px 20px 28px}.student-home-next h2{font-size:1.75rem}.student-home-path-card{padding:19px}.student-home-path-footer{flex-direction:column;align-items:flex-start;gap:6px}}.student-home-shell{flex-direction:column;gap:36px;display:flex}.student-profile-hud-card{background:radial-gradient(circle at 10% 20%,#38bdf838,#0000 40%),radial-gradient(circle at 90% 15%,#a855f733,#0000 45%),linear-gradient(135deg,#171f38f2 0%,#0d1426fa 100%);border:1px solid #38bdf859;border-radius:26px;flex-direction:column;gap:28px;padding:34px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000059,inset 0 1px #ffffff1f}.student-profile-hud-main{align-items:center;gap:32px;display:flex}.student-profile-avatar-box{background:linear-gradient(135deg,#0369a1 0%,#0c4a6e 100%);border:2px solid #38bdf880;border-radius:26px;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative;box-shadow:0 12px 30px #0ea5e94d}.student-profile-avatar-glow{z-index:0;filter:blur(8px);opacity:.6;background:linear-gradient(135deg,#38bdf899,#a855f799);border-radius:30px;position:absolute;inset:-4px}.student-profile-avatar-emoji{z-index:1;font-size:3.2rem;line-height:1;position:relative}.student-avatar-level-badge{white-space:nowrap;color:#fff;z-index:2;border:1px solid #ffffff40;border-radius:999px;padding:4px 12px;font-size:.72rem;font-weight:900;position:absolute;bottom:-10px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.student-profile-info{flex:1;min-width:0}.student-profile-name{letter-spacing:-.03em;color:#fff;margin:6px 0;font-size:clamp(2rem,3.8vw,2.9rem);font-weight:900}.student-profile-sub{color:#94a3b8;margin:0 0 16px;font-size:.98rem}.student-xp-gauge-wrapper{background:#0f172ab3;border:1px solid #ffffff1a;border-radius:16px;max-width:720px;padding:14px 18px}.student-xp-gauge-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.student-xp-current-display{align-items:center;gap:8px;display:flex}.xp-bolt{color:#fbbf24;font-size:1.25rem}.student-xp-current-display strong{color:#fff;font-size:1.25rem;font-weight:900}.xp-current-level-tag{color:#38bdf8;font-size:.82rem;font-weight:700}.student-xp-next-info{color:#94a3b8;font-size:.82rem;font-weight:700}.student-xp-bar-outer{background:#ffffff14;border-radius:999px;height:12px;overflow:hidden;box-shadow:inset 0 2px 4px #0006}.student-xp-bar-inner{background:linear-gradient(90deg,#06b6d4 0%,#3b82f6 50%,#8b5cf6 100%);border-radius:999px;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 0 12px #38bdf899}.student-profile-metrics-row{flex-wrap:wrap;gap:16px;display:flex}.student-metric-pill{background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;flex:1;align-items:center;gap:14px;min-width:180px;padding:14px 18px;display:flex}.student-metric-pill .metric-icon{font-size:1.8rem}.student-metric-pill .metric-data{flex-direction:column;display:flex}.student-metric-pill .metric-data strong{color:#fff;font-size:1.2rem;font-weight:900}.student-metric-pill .metric-data span{color:#94a3b8;font-size:.76rem;font-weight:600}.student-diplomas-section{flex-direction:column;gap:24px;display:flex}.student-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.student-section-heading h2{letter-spacing:-.025em;color:#fff;margin:6px 0;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900}.student-section-desc{color:#94a3b8;max-width:680px;margin:0;font-size:.95rem}.student-diplomas-summary-pill{color:#fbbf24;white-space:nowrap;background:#f59e0b24;border:1px solid #f59e0b59;border-radius:999px;padding:8px 16px;font-size:.84rem;font-weight:800}.student-diplomas-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;display:grid}.student-diploma-card{border-radius:22px;flex-direction:column;gap:16px;padding:26px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative}.student-diploma-card.unlocked{background:radial-gradient(circle at 90% 10%,#f59e0b26,#0000 50%),linear-gradient(135deg,#1e293bd9 0%,#0f172af2 100%);border:1px solid #f59e0b66;box-shadow:0 14px 35px #00000059,0 0 25px #f59e0b1a}.student-diploma-card.unlocked:hover{border-color:#f59e0bb3;transform:translateY(-4px);box-shadow:0 18px 45px #00000073,0 0 35px #f59e0b40}.student-diploma-card.locked{opacity:.85;background:#0f172a99;border:1px dashed #ffffff26}.diploma-card-seal-icon{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:18px;justify-content:center;align-items:center;width:60px;height:60px;font-size:2.2rem;display:flex}.student-diploma-card.unlocked .diploma-card-seal-icon{background:linear-gradient(135deg,#f59e0b40 0%,#d9770659 100%);border-color:#f59e0b80;box-shadow:0 6px 20px #f59e0b4d}.diploma-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.diploma-sector-tag{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;font-size:.74rem;font-weight:800}.diploma-status-badge{border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:800}.diploma-status-badge.status-won{color:#34d399;background:#10b98133;border:1px solid #10b98166}.diploma-status-badge.status-progress{color:#94a3b8;background:#ffffff14;border:1px solid #ffffff1f}.diploma-card-title{color:#fff;margin:0 0 4px;font-size:1.25rem;font-weight:900}.diploma-card-subtitle{color:#cbd5e1;margin:0 0 10px;font-size:.84rem;font-weight:700}.diploma-card-mention{color:#94a3b8;flex:1;margin:0 0 14px;font-size:.82rem;line-height:1.5}.btn-view-diploma{color:#0b1120;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 18px;font-size:.88rem;font-weight:900;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 20px #f59e0b59}.btn-view-diploma:hover{transform:translateY(-2px);box-shadow:0 12px 25px #f59e0b80}.diploma-locked-hint{color:#64748b;text-align:center;background:#0003;border-radius:8px;padding:8px 10px;font-size:.78rem;font-style:italic;font-weight:600}.student-badges-section{flex-direction:column;gap:24px;display:flex}.student-badge-filter-buttons{flex-wrap:wrap;gap:8px;display:flex}.badge-filter-btn{color:#cbd5e1;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:8px 16px;font-size:.82rem;font-weight:700;transition:all .2s}.badge-filter-btn:hover{color:#fff;background:#ffffff1f}.badge-filter-btn.active{color:#0b1120;background:#38bdf8;border-color:#38bdf8;font-weight:800;box-shadow:0 4px 14px #38bdf866}.student-badges-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;display:grid}.student-badge-card{border-radius:18px;align-items:flex-start;gap:14px;padding:18px 20px;transition:transform .2s,border-color .2s;display:flex;position:relative}.student-badge-card.badge-unlocked{background:linear-gradient(135deg,#1e293bcc 0%,#0f172af2 100%);border:1px solid #38bdf859;box-shadow:0 10px 25px #00000040}.student-badge-card.badge-unlocked:hover{border-color:#38bdf899;transform:translateY(-3px)}.student-badge-card.badge-locked{opacity:.75;background:#0f172a66;border:1px dashed #ffffff1a}.student-badge-icon-wrap{background:#ffffff14;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.7rem;display:flex;position:relative}.student-badge-sparkle{font-size:.9rem;position:absolute;top:-4px;right:-4px}.student-badge-details{flex:1;min-width:0}.student-badge-header{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.student-badge-title{color:#fff;margin:0;font-size:.98rem;font-weight:800}.student-badge-xp-reward{color:#fbbf24;white-space:nowrap;font-size:.76rem;font-weight:900}.student-badge-desc{color:#94a3b8;margin:4px 0 6px;font-size:.8rem;line-height:1.4}.student-badge-goal{color:#cbd5e1;font-size:.74rem}.goal-label{color:#38bdf8;font-weight:800}.student-badge-stamp{align-self:center}.stamp-unlocked{color:#34d399;white-space:nowrap;background:#10b98133;border:1px solid #10b98159;border-radius:6px;padding:3px 8px;font-size:.68rem;font-weight:800}.stamp-locked{color:#64748b;white-space:nowrap;background:#ffffff0d;border-radius:6px;padding:3px 8px;font-size:.68rem;font-weight:700}.student-cosmetics-section{flex-direction:column;gap:22px;display:flex}.student-cosmetics-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.student-cosmetic-card{border-radius:18px;align-items:center;gap:16px;padding:18px 20px;transition:transform .2s;display:flex}.student-cosmetic-card.cosmetic-unlocked{background:linear-gradient(135deg,#1e293bb3 0%,#0f172ad9 100%);border:1px solid #a855f759}.student-cosmetic-card.cosmetic-locked{opacity:.75;background:#0f172a66;border:1px dashed #ffffff1a}.cosmetic-icon-box{background:#ffffff14;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:2rem;display:flex}.cosmetic-info{flex:1}.cosmetic-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.cosmetic-category{text-transform:uppercase;color:#a855f7;letter-spacing:.06em;font-size:.72rem;font-weight:800}.cosmetic-level-tag{border-radius:6px;padding:2px 8px;font-size:.7rem;font-weight:800}.cosmetic-level-tag.unlocked{color:#34d399;background:#10b98133}.cosmetic-level-tag.locked{color:#94a3b8;background:#ffffff0f}.cosmetic-name{color:#fff;margin:0 0 3px;font-size:.95rem;font-weight:800}.cosmetic-desc{color:#94a3b8;margin:0;font-size:.78rem;line-height:1.4}@media (width<=768px){.student-profile-hud-main{text-align:center;flex-direction:column}.student-profile-avatar-box{margin:0 auto}.student-xp-gauge-header{flex-direction:column;align-items:center}.student-section-heading{flex-direction:column;align-items:stretch}}.student-assignments-section{background:radial-gradient(circle at 0 0,#10b9811f,#0000 40%),radial-gradient(circle at 100% 100%,#38bdf81a,#0000 40%),#0f172ab3;border:1px solid #10b9814d;border-radius:24px;flex-direction:column;gap:20px;padding:28px 32px;display:flex;box-shadow:0 16px 40px #00000059}.student-assignments-count-badge{color:#34d399;background:#10b98126;border:1px solid #10b98166;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.84rem;font-weight:800;display:inline-flex}.student-assignments-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px;display:grid}.student-assignment-card{background:linear-gradient(135deg,#1e293bcc 0%,#0f172af2 100%);border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;gap:14px;padding:20px 24px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0000004d}.student-assignment-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px #00000073}.student-assignment-card.pending{border-color:#38bdf866}.student-assignment-card.pending:hover{border-color:#38bdf8;box-shadow:0 14px 32px #0ea5e933}.student-assignment-card.completed{background:linear-gradient(135deg,#064e3b4d 0%,#0f172af2 100%);border-color:#10b98166}.assignment-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.assignment-author-tag{color:#38bdf8;font-size:.8rem;font-weight:800}.assignment-due-tag{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:6px;padding:3px 8px;font-size:.76rem;font-weight:700}.assignment-nodate-tag{color:#94a3b8;font-size:.74rem}.assignment-title{color:#fff;margin:0;font-size:1.15rem;font-weight:800;line-height:1.35}.assignment-note{color:#cbd5e1;background:#00000059;border-left:3px solid #38bdf8;border-radius:8px;margin:0;padding:8px 12px;font-size:.82rem;line-height:1.4}.assignment-footer{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:10px;display:flex}.assignment-meta-rewards{align-items:center;gap:8px;display:flex}.reward-xp{color:#fbbf24;background:#fbbf2426;border:1px solid #fbbf244d;border-radius:6px;padding:3px 8px;font-size:.82rem;font-weight:800}.assignment-stars-earned{color:#fbbf24;font-size:.85rem;font-weight:800}.btn-launch-assignment{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:9px 18px;font-size:.88rem;font-weight:800;transition:all .2s;display:inline-flex}.btn-launch-assignment.start{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 14px #10b98166}.btn-launch-assignment.start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #10b9818c}.btn-launch-assignment.replay{color:#cbd5e1;background:#ffffff14;border:1px solid #ffffff26}.btn-launch-assignment.replay:hover{color:#fff;background:#ffffff26}.cosmic-adventure-map-container{width:100%;font-family:var(--font-body);flex-direction:column;gap:18px;display:flex;position:relative}.cosmic-map-arcade-hud{border:2px solid var(--border-bright);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle at 10%,#00f0ff26,#0000 40%),radial-gradient(circle at 90%,#facc151f,#0000 40%),#070a14e6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 25px #00f0ff26,inset 0 1px #ffffff1a}.cosmic-map-arcade-hud:before{content:"";background:linear-gradient(90deg, var(--color-cyan), var(--color-gold), var(--color-purple));height:3px;position:absolute;top:0;left:0;right:0}.arcade-hud-left{flex-direction:column;gap:4px;display:flex}.arcade-hud-world-tag{color:var(--color-cyan);letter-spacing:.1em;text-transform:uppercase;text-shadow:0 0 8px var(--color-cyan-glow);font-family:"Press Start 2P",monospace,sans-serif;font-size:11px}.arcade-hud-title{font-family:var(--font-display);color:#fff;margin:0;font-size:1.4rem;font-weight:800}.arcade-hud-center{align-items:center;display:flex}.arcade-pilot-badge{border:1px solid var(--border-bright);border-radius:var(--radius-full);background:#00f0ff14;align-items:center;gap:12px;padding:6px 18px 6px 8px;display:flex;box-shadow:0 0 12px #00f0ff26}.arcade-pilot-avatar{object-fit:contain;width:38px;height:38px;filter:drop-shadow(0 0 8px var(--color-cyan-glow))}.arcade-pilot-name{font-family:var(--font-display);color:#fff;letter-spacing:.05em;font-size:13px;font-weight:800}.arcade-pilot-mission{font-family:var(--font-mono);color:var(--color-gold);font-size:11px;font-weight:700}.arcade-hud-right{align-items:center;gap:20px;display:flex}.arcade-stat-item{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.arcade-stat-label{font-family:var(--font-display);color:var(--text-muted);letter-spacing:.1em;font-size:10px;font-weight:800}.arcade-stat-val{font-family:var(--font-display);font-size:1.1rem;font-weight:800}.arcade-stars{color:var(--color-gold);text-shadow:0 0 10px #facc1580}.arcade-xp{color:var(--color-cyan);text-shadow:0 0 10px var(--color-cyan-glow)}.cosmic-sector-tabs{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sector-tabs-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cosmic-sector-tab{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d1326bf;align-items:center;gap:10px;padding:10px 18px;transition:all .25s;display:flex}.cosmic-sector-tab:hover:not(.locked){border-color:var(--color-cyan);color:#fff;background:#00f0ff1a;transform:translateY(-2px)}.cosmic-sector-tab.selected{border-color:var(--color-cyan);color:#fff;background:linear-gradient(135deg,#00f0ff33,#a855f726);box-shadow:0 0 18px #00f0ff40}.cosmic-sector-tab.locked{opacity:.55;cursor:not-allowed;filter:grayscale(.5)}.sector-tab-icon{font-size:18px}.sector-tab-text{flex-direction:column;align-items:flex-start;gap:1px;display:flex}.sector-tab-kicker{font-family:var(--font-display);color:var(--color-cyan);letter-spacing:.08em;font-size:10px;font-weight:800}.sector-tab-name{font-family:var(--font-display);font-size:13px;font-weight:700}.sector-lock-icon{margin-left:4px;font-size:12px}.sector-check-icon{color:var(--color-emerald);margin-left:4px;font-weight:800}.map-view-toggle{border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:#070a14b3;gap:6px;padding:4px;display:flex}.map-toggle-btn{border-radius:var(--radius-full);color:var(--text-secondary);font-family:var(--font-display);cursor:pointer;background:0 0;border:0;padding:6px 14px;font-size:12px;font-weight:700;transition:all .2s}.map-toggle-btn.active{background:var(--color-cyan);color:#070a14;box-shadow:0 0 10px var(--color-cyan-glow)}.cosmic-trail-canvas{border-radius:var(--radius-lg);border:2px solid var(--border-bright);background:radial-gradient(circle at 20% 30%,#a855f738,#0000 45%),radial-gradient(circle at 80% 70%,#00f0ff2e,#0000 45%),radial-gradient(circle at 50% 10%,#facc151f,#0000 40%),linear-gradient(#050813 0%,#080c1e 50%,#03050c 100%);width:100%;height:940px;position:relative;overflow:hidden;box-shadow:inset 0 0 80px #000c,0 0 30px #00f0ff1f}.cosmic-trail-canvas:before{content:"";opacity:.6;pointer-events:none;background-image:radial-gradient(1px 1px at 20px 30px,#fff,#0000),radial-gradient(1.5px 1.5px at 150px 80px,#00f0ff,#0000),radial-gradient(1px 1px at 90px 220px,#a855f7,#0000),radial-gradient(2px 2px at 280px 160px,#facc15,#0000),radial-gradient(1px 1px at 450px 320px,#fff,#0000),radial-gradient(1.5px 1.5px at 620px 110px,#38bdf8,#0000),radial-gradient(1px 1px at 780px 420px,#fff,#0000);background-size:400px 400px;position:absolute;inset:0}.cosmic-decor-planet{pointer-events:none;border-radius:50%;position:absolute}.planet-purple{opacity:.85;background:radial-gradient(circle at 35% 35%,#c084fc,#7e22ce 60%,#3b0764);width:140px;height:140px;top:14%;left:6%;box-shadow:0 0 45px #a855f766,inset -8px -8px 25px #000000b3}.planet-purple:after{content:"";border:4px solid #e879f973;border-radius:50%;width:140%;height:28px;position:absolute;top:50%;left:-20%;transform:translateY(-50%)rotate(-25deg);box-shadow:0 0 16px #e879f980}.planet-green{opacity:.8;background:radial-gradient(circle at 30% 30%,#4ade80,#15803d 60%,#052e16);width:110px;height:110px;bottom:22%;right:5%;box-shadow:0 0 35px #22c55e59,inset -6px -6px 20px #000c}.planet-ring{opacity:.7;background:radial-gradient(circle at 30% 30%,#fde047,#ca8a04 70%,#713f12);width:60px;height:60px;top:48%;right:12%;box-shadow:0 0 25px #facc1566}.cosmic-decor-station{background:radial-gradient(circle,#00f0ff33,#0000 70%);border:1px dashed #00f0ff66;border-radius:50%;width:90px;height:90px;animation:30s linear infinite spin;position:absolute;bottom:8%;left:3%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cosmic-trail-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cosmic-svg-path-glow{fill:none;stroke:#00f0ff73;stroke-width:14px;stroke-linecap:round;filter:blur(8px)}.cosmic-svg-path-core{fill:none;stroke:#00f0ffd9;stroke-width:5px;stroke-linecap:round}.cosmic-svg-path-pulse{fill:none;stroke:#fff;stroke-width:3px;stroke-dasharray:12 24;animation:2.5s linear infinite trail-pulse}@keyframes trail-pulse{0%{stroke-dashoffset:72px}to{stroke-dashoffset:0}}.cosmic-trail-nodes-layer{position:absolute;inset:0}.cosmic-mission-node{cursor:pointer;z-index:10;outline:none;flex-direction:column;align-items:center;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;transform:translate(-50%,-50%)}.cosmic-mission-node:hover:not(.locked){z-index:20;transform:translate(-50%,-58%)scale(1.12)}.node-stars-badge{color:var(--color-gold);text-shadow:0 0 10px #facc15cc;letter-spacing:2px;font-size:15px;animation:3s ease-in-out infinite alternate star-float;position:absolute;top:-26px}@keyframes star-float{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.node-hero-sprite{pointer-events:none;z-index:15;flex-direction:column;align-items:center;animation:2.2s ease-in-out infinite alternate hero-hover;display:flex;position:absolute;top:-85px}@keyframes hero-hover{0%{transform:translateY(0)}to{transform:translateY(-9px)}}.hero-speech-bubble{background:var(--color-cyan);color:#070a14;font-family:var(--font-display);letter-spacing:.05em;border-radius:var(--radius-full);box-shadow:0 0 12px var(--color-cyan-glow);white-space:nowrap;margin-bottom:2px;padding:3px 8px;font-size:9px;font-weight:800}.hero-robot-img{object-fit:contain;width:54px;height:54px;filter:drop-shadow(0 0 14px var(--color-cyan-glow))}.hero-plasma-glow{background:var(--color-cyan);filter:blur(3px);width:22px;height:6px;box-shadow:0 0 12px var(--color-cyan-glow);border-radius:50%;margin-top:-3px}.node-asteroid-platform{border:2px solid var(--border-bright);background:radial-gradient(circle at 35% 35%,#334155,#1e293b 70%,#0f172a);border-radius:50%;place-items:center;width:68px;height:68px;transition:all .25s;display:grid;position:relative;box-shadow:0 12px 24px #000000a6,0 0 18px #00f0ff33}.cosmic-mission-node.current .node-asteroid-platform{border-color:var(--color-cyan);box-shadow:0 0 35px var(--color-cyan-glow), 0 0 15px #00f0ff80, inset 0 0 15px #00f0ff66;animation:2s ease-in-out infinite platform-pulse}@keyframes platform-pulse{0%,to{box-shadow:0 0 25px var(--color-cyan-glow), inset 0 0 12px #00f0ff66}50%{box-shadow:0 0 45px var(--color-cyan-glow), inset 0 0 20px #00f0ff99}}.cosmic-mission-node.completed .node-asteroid-platform{border-color:var(--color-emerald);box-shadow:0 0 25px #10b98166,inset 0 0 12px #10b9814d}.cosmic-mission-node.boss .node-asteroid-platform{border-color:var(--color-gold);background:radial-gradient(circle at 35% 35%,#475569,#1e293b 60%,#0f172a);width:82px;height:82px;box-shadow:0 0 35px #facc1573}.cosmic-mission-node.locked .node-asteroid-platform{box-shadow:none;opacity:.7;background:#111827;border-color:#ffffff1f}.node-orb-beacon{width:44px;height:44px;font-family:var(--font-display);color:#fff;background:#070a14d9;border:1px solid #fff3;border-radius:50%;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.cosmic-mission-node.boss .node-orb-beacon{width:52px;height:52px;font-size:1.4rem}.orb-num-glyph.active{color:var(--color-cyan);text-shadow:0 0 8px var(--color-cyan)}.cosmic-mission-node.completed .orb-num-glyph{color:var(--color-emerald);text-shadow:0 0 8px var(--color-emerald)}.orb-lock-glyph{opacity:.6;font-size:16px}.node-label-plate{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070a14d9;margin-top:8px;padding:4px 10px;transition:all .2s;box-shadow:0 4px 10px #00000080}.cosmic-mission-node:hover:not(.locked) .node-label-plate{border-color:var(--color-cyan);background:#00f0ff26}.node-plate-title{font-family:var(--font-display);color:#e2e8f0;letter-spacing:.03em;font-size:11px;font-weight:700}.galaxy-sectors-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.galaxy-sector-card{border:2px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1326d9;flex-direction:column;gap:16px;padding:24px;transition:all .25s;display:flex;box-shadow:0 8px 24px #0006}.galaxy-sector-card:hover:not(.locked){border-color:var(--color-cyan);transform:translateY(-4px);box-shadow:0 12px 32px #00f0ff33}.galaxy-sector-card.completed{border-color:var(--color-emerald)}.galaxy-sector-card.locked{opacity:.55;cursor:not-allowed}.galaxy-card-preview{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:radial-gradient(circle,#00f0ff26,#070a14f2);place-items:center;height:120px;display:grid;position:relative;overflow:hidden}.galaxy-card-badge{border:1px solid var(--color-cyan);color:var(--color-cyan);border-radius:var(--radius-full);font-family:var(--font-display);background:#00f0ff33;padding:2px 8px;font-size:10px;font-weight:800;position:absolute;top:10px;left:10px}.galaxy-planet-illustration{border-radius:50%;width:70px;height:70px}.planet-station{box-shadow:0 0 24px var(--color-cyan-glow);background:radial-gradient(circle at 35% 35%,#38bdf8,#0284c7 60%,#082f49)}.planet-cyber{box-shadow:0 0 24px var(--color-purple-glow);background:radial-gradient(circle at 35% 35%,#c084fc,#7e22ce 60%,#3b0764)}.galaxy-card-info h3{font-family:var(--font-display);color:#fff;margin:0;font-size:1.25rem;font-weight:800}.galaxy-card-info p{color:var(--text-secondary);margin:4px 0 0;font-size:13px;line-height:1.45}.galaxy-card-stats{color:var(--text-muted);justify-content:space-between;margin-top:8px;font-size:12px;font-weight:700;display:flex}.galaxy-percent{color:var(--color-cyan)}.galaxy-progress-bar{border-radius:var(--radius-full);background:#ffffff14;height:6px;margin-top:4px;overflow:hidden}.galaxy-progress-fill{background:linear-gradient(90deg, var(--color-cyan), var(--color-emerald));border-radius:var(--radius-full);height:100%}.galaxy-enter-btn{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-cyan), #0284c7);color:#070a14;font-family:var(--font-display);cursor:pointer;border:0;padding:12px;font-size:13px;font-weight:800;transition:all .2s}.galaxy-enter-btn:hover:not(:disabled){box-shadow:0 0 16px var(--color-cyan-glow);transform:translateY(-2px)}.galaxy-enter-btn:disabled{color:var(--text-muted);background:#ffffff1a}.mission-modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:999;background:#03060fd9;place-items:center;padding:20px;animation:.2s ease-out fade-in;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.mission-hologram-card{border:2px solid var(--border-bright);border-radius:var(--radius-lg);background:radial-gradient(circle at 10% 10%,#00f0ff2e,#0000 50%),#0a0f1ef2;flex-direction:column;gap:20px;width:min(520px,100%);padding:28px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 45px #00f0ff40,inset 0 0 20px #00f0ff26}.hologram-scanline{pointer-events:none;background:linear-gradient(#fff0 50%,#00f0ff0a 50%) 0 0/100% 4px;position:absolute;inset:0}.hologram-header{justify-content:space-between;align-items:center;display:flex}.hologram-kicker{color:var(--color-cyan);letter-spacing:.1em;font-family:"Press Start 2P",monospace;font-size:10px}.hologram-close-btn{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;transition:all .2s;display:grid}.hologram-close-btn:hover{border-color:var(--color-coral);color:var(--color-coral)}.hologram-hero{align-items:center;gap:16px;display:flex}.hologram-avatar{object-fit:contain;width:64px;height:64px;filter:drop-shadow(0 0 16px var(--color-cyan-glow))}.hologram-title{font-family:var(--font-display);color:#fff;margin:0 0 6px;font-size:1.45rem;font-weight:800}.hologram-badge-concept{color:var(--text-secondary);font-size:12px}.hologram-badge-concept strong{color:var(--color-gold)}.hologram-briefing-box{border-left:3px solid var(--color-cyan);border-radius:0 var(--radius-md) var(--radius-md) 0;color:#e2e8f0;background:#00f0ff0d;padding:14px 16px;font-size:13.5px;line-height:1.55}.hologram-briefing-box p{margin:0}.hologram-rewards{border-radius:var(--radius-md);color:#fef08a;background:#facc1514;border:1px solid #facc154d;justify-content:space-between;align-items:center;padding:10px 16px;font-size:12px;font-weight:800;display:flex}.hologram-stars{color:var(--color-gold);text-shadow:0 0 8px #facc1599;font-size:14px}.hologram-footer{flex-wrap:wrap;gap:12px;display:flex}.hologram-btn-studio{background:linear-gradient(135deg, var(--color-cyan), #08f);border-radius:var(--radius-md);color:#070a14;font-family:var(--font-display);cursor:pointer;box-shadow:0 0 16px var(--color-cyan-glow);border:0;flex:1.4;padding:14px 20px;font-size:14px;font-weight:800;transition:all .2s}.hologram-btn-studio:hover{box-shadow:0 0 24px var(--color-cyan-glow);transform:translateY(-2px)}.hologram-btn-lesson{border:1px solid var(--border-bright);border-radius:var(--radius-md);color:#fff;font-family:var(--font-display);cursor:pointer;background:#ffffff14;flex:1;padding:14px 18px;font-size:14px;font-weight:700;transition:all .2s}.hologram-btn-lesson:hover{background:#ffffff26;border-color:#fff}@media (width<=768px){.cosmic-trail-canvas{height:1100px}.cosmic-map-arcade-hud{flex-direction:column;align-items:flex-start}}.student-path{color:#f7f8ff;background:radial-gradient(circle at 8% 8%,#7054ff33,#0000 32%),radial-gradient(circle at 92% 18%,#00d6c921,#0000 28%),linear-gradient(#0b1020 0%,#11182b 54%,#0b1020 100%);min-height:calc(100vh - 72px);padding:34px 24px 64px}.student-path-shell{width:min(1180px,100%);margin:0 auto}.student-path-back{color:#b8c1da;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.student-path-back:hover{color:#fff}.student-path-back:focus-visible{outline-offset:5px;border-radius:4px;outline:3px solid #8ef0e7}.student-path-hero{grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:end;gap:48px;padding:38px 0 34px;display:grid}.student-path-kicker{color:#8ef0e7;letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;font-weight:900;display:inline-block}.student-path-hero h1{letter-spacing:-.045em;max-width:760px;margin:10px 0 12px;font-size:clamp(2.1rem,5vw,4rem);line-height:.98}.student-path-hero p{color:#b7bfd5;max-width:720px;margin:0;font-size:1rem;line-height:1.65}.student-path-summary{background:#ffffff0d;border:1px solid #ffffff1c;border-radius:20px;padding:22px}.student-path-summary strong{margin-bottom:5px;font-size:2rem;line-height:1;display:block}.student-path-summary>span{color:#9ea9c5;font-size:.84rem}.student-path-progress,.student-path-module-progress{background:#0408148c;border:1px solid #ffffff1a;border-radius:999px;height:9px;overflow:hidden}.student-path-progress{margin-top:16px}.student-path-progress span,.student-path-module-progress span{border-radius:inherit;background:linear-gradient(90deg,#705cff,#42bdf4,#58e2c7);height:100%;display:block}.student-path-content{border-top:1px solid #ffffff14;padding-top:24px}.student-path-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.student-path-heading h2{margin:7px 0 0;font-size:1.55rem}.student-path-heading-meta{align-items:center;gap:12px;display:flex}.student-path-view-switch{background:#04081457;border:1px solid #ffffff1f;border-radius:999px;align-items:center;padding:3px;display:inline-flex}.student-path-view-switch button{color:#909bb7;min-height:30px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 12px;font-size:.74rem;font-weight:900;transition:background .14s,color .14s,transform .14s}.student-path-view-switch button:hover{color:#fff}.student-path-view-switch button:focus-visible{outline-offset:3px;outline:3px solid #8ef0e7}.student-path-view-switch .student-path-view-switch-active{color:#fff;background:linear-gradient(135deg,#705cfff2,#42bdf4d1);box-shadow:0 6px 16px #0003}.student-path-module-count{color:#909bb7;font-size:.85rem}.student-path-modules{gap:14px;display:grid}.student-path-module{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:20px;grid-template-columns:92px minmax(0,1fr) minmax(145px,190px);align-items:stretch;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.student-path-module-recommended{background:linear-gradient(90deg,#6951ed29,#ffffff0b 48%);border-color:#7e68ff9e}.student-path-module-locked{opacity:.58}.student-path-module-number{text-align:center;background:#04081440;border-right:1px solid #ffffff14;place-content:center;display:grid}.student-path-module-number span{color:#8994b1;letter-spacing:.13em;font-size:.6rem;font-weight:900}.student-path-module-number strong{margin-top:3px;font-size:1.8rem;line-height:1}.student-path-module-copy{padding:20px 24px}.student-path-module-meta{flex-wrap:wrap;gap:7px;display:flex}.student-path-module-meta span{color:#c6cde0;background:#ffffff12;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:800;display:inline-flex}.student-path-module-meta .student-path-recommended{color:#8ef0e7;background:#58e2c721}.student-path-module h3{margin:12px 0 7px;font-size:1.16rem}.student-path-module p{color:#aeb7cf;max-width:760px;margin:0;font-size:.88rem;line-height:1.5}.student-path-module-stats{color:#9ba6c2;flex-wrap:wrap;gap:8px 18px;margin-top:15px;font-size:.76rem;font-weight:700;display:flex}.student-path-module-progress{width:min(520px,100%);height:7px;margin-top:11px}.student-path-module-action{border-left:1px solid #ffffff14;place-items:center;padding:20px;display:grid}.student-path-module-action button{color:#111629;width:100%;min-height:44px;font:inherit;cursor:pointer;background:#f7f8ff;border:1px solid #fff3;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:0 15px;font-weight:900;display:inline-flex}.student-path-module-action button:hover{transform:translateY(-1px)}.student-path-module-action button:focus-visible{outline-offset:4px;outline:3px solid #8ef0e7}.student-path-lock{color:#8994b1;text-align:center;justify-items:center;gap:9px;display:grid}.student-path-lock>span{border:1px solid #ffffff26;border-radius:50%;place-items:center;width:34px;height:34px;font-size:1.25rem;display:grid}.student-path-lock small{max-width:145px;font-size:.7rem;line-height:1.4}@media (width<=800px){.student-path{padding:28px 16px 48px}.student-path-hero{grid-template-columns:1fr;gap:24px}.student-path-summary{max-width:360px}.student-path-module{grid-template-columns:70px minmax(0,1fr)}.student-path-module-action{border-top:1px solid #ffffff14;border-left:0;grid-column:1/-1}.student-path-module-action button{max-width:260px}}@media (width<=520px){.student-path-heading{flex-direction:column;align-items:flex-start}.student-path-heading-meta{justify-content:space-between;width:100%}.student-path-view-switch{flex-shrink:0}.student-path-module{grid-template-columns:1fr}.student-path-module-number{place-content:initial;text-align:left;border-bottom:1px solid #ffffff14;border-right:0;grid-auto-flow:column;justify-content:start;align-items:baseline;gap:8px;padding:14px 18px}.student-path-module-number strong{font-size:1.2rem}.student-path-module-copy{padding:18px}}.teacher-portal-container{color:#f1f5f9;background:radial-gradient(circle at 50% 0,#171d3a 0%,#080c18 100%);min-height:100vh;padding:24px 32px 64px;font-family:inherit}.teacher-portal-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.teacher-header-title-block h1{letter-spacing:-.02em;background:linear-gradient(135deg,#a78bfa 0%,#38bdf8 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 6px;font-size:1.85rem;font-weight:800}.teacher-header-subtitle{color:#94a3b8;margin:0;font-size:.95rem}.teacher-header-nav-actions{gap:12px;display:flex}.teacher-nav-button{color:#cbd5e1;cursor:pointer;background:#1e293bd9;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.teacher-nav-button:hover{color:#fff;background:#334155e6;border-color:#a78bfa80;transform:translateY(-1px)}.teacher-nav-button.primary{color:#fff;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);border:none;box-shadow:0 4px 14px #6d28d959}.teacher-nav-button.primary:hover{background:linear-gradient(135deg,#a78bfa 0%,#8b5cf6 100%);box-shadow:0 6px 20px #6d28d980}.teacher-class-selector-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172acc;border:1px solid #ffffff1a;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:18px 24px;display:flex;box-shadow:0 8px 24px #00000040}.teacher-class-selector-left{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.teacher-class-selector-label{color:#cbd5e1;align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:flex}.teacher-class-select{color:#fff;cursor:pointer;background:#1e293be6;border:1px solid #ffffff2e;border-radius:10px;outline:none;min-width:260px;padding:10px 18px;font-size:.98rem;font-weight:600}.teacher-class-select:focus{border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa4d}.teacher-class-meta-badges{align-items:center;gap:8px;display:flex}.teacher-meta-badge{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f659;border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:600}.teacher-stats-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin-bottom:24px;display:grid}.teacher-stat-icon{background:#1e293b99;border:1px solid #ffffff14;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.8rem;display:flex}.teacher-stat-val{color:#f8fafc;font-size:1.6rem;font-weight:800;line-height:1.2}.teacher-stat-lbl{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:600}.teacher-matrix-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.teacher-search-box{color:#fff;background:#0f172acc;border:1px solid #ffffff1f;border-radius:10px;outline:none;min-width:260px;padding:10px 16px;font-size:.9rem}.teacher-search-box:focus{border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa40}.teacher-filter-pills{gap:8px;display:flex}.teacher-pill-btn{color:#94a3b8;cursor:pointer;background:#1e293b99;border:1px solid #ffffff14;border-radius:9999px;padding:7px 14px;font-size:.82rem;font-weight:600;transition:all .2s}.teacher-pill-btn:hover{color:#fff;background:#334155cc}.teacher-pill-btn.active{color:#c084fc;background:#8b5cf640;border-color:#8b5cf6}.teacher-matrix-table-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ab3;border:1px solid #ffffff14;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px #00000040}.teacher-matrix-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.teacher-matrix-table th{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;background:#1e293ba6;border-bottom:1px solid #ffffff14;padding:14px 18px;font-size:.8rem;font-weight:700}.teacher-matrix-table td{color:#e2e8f0;vertical-align:middle;border-bottom:1px solid #ffffff0d;padding:14px 18px}.teacher-matrix-table tr:hover td{background:#1e293b59}.sector-status-badge{white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:5px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.sector-status-badge.completed{color:#34d399;background:#10b98126;border:1px solid #10b98166}.sector-status-badge.in-progress{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f666}.sector-status-badge.unlocked{color:#c084fc;background:#a855f726;border:1px solid #a855f766}.sector-status-badge.locked{color:#94a3b8;background:#47556933;border:1px solid #4755694d}.sector-status-badge.overridden{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b66}.sector-override-btn{color:#fbbf24;cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b59;border-radius:6px;margin-left:8px;padding:4px 10px;font-size:.76rem;font-weight:700;transition:all .2s}.sector-override-btn:hover{color:#fff;background:#f59e0b40;border-color:#f59e0b;transform:scale(1.03)}.sector-override-btn.revoke{color:#f87171;background:#ef44441f;border-color:#ef444459}.sector-override-btn.revoke:hover{color:#fff;background:#ef444440}.teacher-drawer-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000b3;justify-content:flex-end;display:flex;position:fixed;inset:0}.teacher-drawer-card{background:#0f172a;border-left:1px solid #ffffff26;width:100%;max-width:540px;height:100%;padding:32px 28px;animation:.25s slideDrawer;overflow-y:auto;box-shadow:-10px 0 30px #00000080}@keyframes slideDrawer{0%{transform:translate(100%)}to{transform:translate(0)}}.teacher-drawer-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.teacher-student-detail-sector{background:#1e293b66;border:1px solid #ffffff14;border-radius:12px;margin-bottom:14px;padding:16px}.teacher-student-detail-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.teacher-exercise-progress-item{border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:6px 0;font-size:.86rem;display:flex}.teacher-btn-enroll{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:1px solid #34d399;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.88rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #10b98133}.teacher-btn-enroll:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);transform:translateY(-1px);box-shadow:0 4px 16px #10b98159}.teacher-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.teacher-modal-card{background:#0f172a;border:1px solid #ffffff26;border-radius:16px;width:100%;max-width:520px;padding:28px;animation:.2s ease-out popTeacherModal;box-shadow:0 25px 50px -12px #000000b3}@keyframes popTeacherModal{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.teacher-modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.teacher-modal-title{color:#f8fafc;margin:0;font-size:1.25rem;font-weight:700}.teacher-modal-close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.25rem;transition:all .2s}.teacher-modal-close-btn:hover{color:#fff;background:#ffffff1a}.teacher-sector-exercise-list{border-top:1px solid #ffffff0d;flex-direction:column;gap:6px;margin-top:12px;padding-top:10px;display:flex}.teacher-exercise-progress-item{background:#0f172a80;border:1px solid #ffffff0a;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.teacher-ex-info{align-items:center;gap:10px;display:flex}.teacher-ex-status-icon{font-size:.95rem}.teacher-ex-title{font-size:.84rem;font-weight:600;line-height:1.3;display:block}.teacher-ex-title.done{color:#4ade80}.teacher-ex-title.current{color:#38bdf8}.teacher-ex-title.pending{color:#94a3b8}.teacher-ex-goal{color:#64748b;font-size:.74rem;display:block}.teacher-ex-badge{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:9999px;padding:2px 7px;font-size:.7rem;font-weight:700}.teacher-ex-badge.done{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.teacher-ex-badge.current{color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d}.teacher-ex-badge.locked{color:#64748b;background:#94a3b814;border:1px solid #94a3b826}.teacher-override-audit-box{background:#f59e0b14;border:1px solid #f59e0b40;border-radius:10px;margin-top:16px;padding:12px 14px}.teacher-override-audit-item{border-bottom:1px solid #f59e0b26;justify-content:space-between;align-items:center;padding:6px 0;font-size:.84rem;display:flex}.teacher-override-audit-item:last-child{border-bottom:none}.teacher-custom-assignments-card{background:#0f172ab3;border:1px solid #8b5cf64d;border-radius:20px;flex-direction:column;gap:20px;margin-bottom:24px;padding:24px 28px;display:flex;box-shadow:0 12px 32px #0000004d}.teacher-card-heading-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.teacher-section-badge{letter-spacing:.1em;color:#c4b5fd;text-transform:uppercase;background:#8b5cf633;border:1px solid #8b5cf666;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:900}.teacher-card-title{color:#fff;margin:6px 0 4px;font-size:1.35rem;font-weight:800}.teacher-card-subtitle{color:#94a3b8;margin:0;font-size:.88rem}.btn-create-assign-jump{color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);border:none;border-radius:12px;padding:10px 18px;font-size:.88rem;font-weight:800;transition:all .2s;box-shadow:0 4px 14px #8b5cf666}.btn-create-assign-jump:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf699}.teacher-no-assignments-box{text-align:center;background:#0003;border:1px dashed #ffffff1f;border-radius:14px;flex-direction:column;align-items:center;gap:12px;padding:24px;display:flex}.teacher-no-assignments-box p{color:#94a3b8;margin:0;font-size:.92rem}.btn-quick-create-assign{color:#c4b5fd;cursor:pointer;background:#8b5cf633;border:1px solid #8b5cf666;border-radius:10px;padding:8px 16px;font-size:.85rem;font-weight:700;transition:all .2s}.btn-quick-create-assign:hover{color:#fff;background:#8b5cf659}.teacher-assignments-cards-list{flex-direction:column;gap:14px;display:flex}.teacher-assignment-monitor-item{background:#1e293b99;border:1px solid #ffffff1a;border-radius:16px;transition:border-color .2s;overflow:hidden}.teacher-assignment-monitor-item:hover{border-color:#8b5cf666}.monitor-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;display:flex}.monitor-item-title-group h3{color:#fff;margin:0 0 6px;font-size:1.12rem}.monitor-item-meta-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meta-badge-universe{color:#38bdf8;background:#0ea5e926;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:800}.meta-badge-due{color:#fbbf24;background:#f59e0b26;border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:700}.meta-badge-teacher{color:#94a3b8;font-size:.72rem}.monitor-item-instructions{color:#cbd5e1;margin:8px 0 0;font-size:.82rem;font-style:italic}.monitor-item-stats-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.monitor-progress-box{flex-direction:column;gap:6px;min-width:200px;display:flex}.monitor-progress-text{color:#cbd5e1;font-size:.8rem}.monitor-progress-bar-outer{background:#ffffff1a;border-radius:999px;width:100%;height:8px;overflow:hidden}.monitor-progress-bar-inner{background:linear-gradient(90deg,#10b981,#06b6d4);border-radius:999px;height:100%;transition:width .3s}.btn-toggle-assignment-details{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:all .2s}.btn-toggle-assignment-details:hover{color:#fff;background:#ffffff2e}.btn-archive-assignment-portal{color:#fca5a5;cursor:pointer;background:#ef44441f;border:1px solid #ef44444d;border-radius:10px;padding:8px 12px;font-size:.8rem;font-weight:700;transition:all .2s}.btn-archive-assignment-portal:hover{color:#fff;background:#ef444440}.monitor-submissions-drawer{background:#0f172acc;border-top:1px solid #ffffff14;padding:16px 20px}.monitor-submissions-table{border-collapse:collapse;width:100%}.monitor-submissions-table th{text-align:left;text-transform:uppercase;color:#94a3b8;border-bottom:1px solid #ffffff0f;padding:8px 12px;font-size:.76rem;font-weight:800}.monitor-submissions-table td{border-bottom:1px solid #ffffff0a;padding:10px 12px;font-size:.86rem}.sub-status-pill{border-radius:6px;padding:3px 8px;font-size:.76rem;font-weight:800;display:inline-block}.sub-status-pill.completed{color:#34d399;background:#10b98126}.sub-status-pill.in-progress{color:#fbbf24;background:#f59e0b26}.sub-status-pill.pending{color:#94a3b8;background:#ffffff0d}.teacher-universes-card{background:radial-gradient(circle at 100% 0,#0ea5e91f,#0000 45%),#0f172ad9;border:1px solid #38bdf840;border-radius:20px;flex-direction:column;gap:18px;margin-top:24px;padding:24px 28px;display:flex;box-shadow:0 12px 32px #00000059}.teacher-universes-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;display:grid}.teacher-universe-item{background:#1e293b99;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;justify-content:space-between;gap:12px;padding:16px;transition:all .25s;display:flex}.teacher-universe-item.unlocked{background:linear-gradient(135deg,#1e293bd9 0%,#0f172af2 100%);border-color:#38bdf866;box-shadow:0 4px 16px #0ea5e91a}.teacher-universe-item.locked{opacity:.6;filter:grayscale(45%)}.teacher-universe-item-top{align-items:center;gap:12px;display:flex}.teacher-universe-item-icon{font-size:1.8rem;line-height:1}.teacher-universe-item-title{color:#f8fafc;margin:0;font-size:.95rem;font-weight:800}.teacher-universe-item-sub{color:#94a3b8;margin:2px 0 0;font-size:.78rem}.teacher-universe-toggle-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:.82rem;font-weight:800;transition:all .2s;display:flex}.teacher-universe-toggle-btn.btn-unlocked{color:#34d399;background:#10b98126;border-color:#10b98166}.teacher-universe-toggle-btn.btn-unlocked:hover{background:#10b98140}.teacher-universe-toggle-btn.btn-locked{color:#94a3b8;background:#ffffff0d;border-color:#ffffff26}.teacher-universe-toggle-btn.btn-locked:hover{color:#f1f5f9;background:#ffffff1a}.teacher-student-universes-box{background:#0f172a99;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:12px;margin-bottom:20px;padding:16px;display:flex}.admin-schools-container{color:#f1f5f9;background:radial-gradient(circle at 50% 0,#151e38 0%,#080c18 100%);min-height:100vh;padding:24px 32px 64px;font-family:inherit}.admin-schools-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.admin-header-title-block h1{letter-spacing:-.02em;background:linear-gradient(135deg,#60a5fa 0%,#c084fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 6px;font-size:1.85rem;font-weight:800}.admin-header-subtitle{color:#94a3b8;margin:0;font-size:.95rem}.admin-header-nav-actions{gap:12px;display:flex}.admin-nav-button{color:#cbd5e1;cursor:pointer;background:#1e293bd9;border:1px solid #ffffff1f;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.admin-nav-button:hover{color:#fff;background:#334155e6;border-color:#60a5fa80;transform:translateY(-1px)}.admin-nav-button.primary{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;box-shadow:0 4px 14px #2563eb59}.admin-nav-button.primary:hover{background:linear-gradient(135deg,#60a5fa 0%,#3b82f6 100%);box-shadow:0 6px 20px #2563eb80}.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:28px;display:grid}.admin-stat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172abf;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:18px;padding:18px 22px;transition:transform .2s;display:flex;box-shadow:0 8px 24px #00000040}.admin-stat-card:hover{border-color:#60a5fa4d;transform:translateY(-2px)}.admin-stat-icon{background:#1e293b99;border:1px solid #ffffff14;border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;font-size:2rem;display:flex}.admin-stat-value{color:#f8fafc;font-size:1.8rem;font-weight:800;line-height:1.2}.admin-stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.admin-flash-banner{border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:12px 20px;font-size:.92rem;animation:.3s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.admin-flash-banner.success{color:#34d399;background:#10b98126;border:1px solid #10b98166}.admin-flash-banner.error{color:#f87171;background:#ef444426;border:1px solid #ef444466}.admin-tabs-bar{border-bottom:1px solid #ffffff1a;gap:8px;margin-bottom:24px;padding-bottom:2px;display:flex}.admin-tab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:10px 20px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.admin-tab-btn:hover{color:#e2e8f0}.admin-tab-btn.active{color:#60a5fa;background:#3b82f614;border-bottom-color:#3b82f6;border-radius:8px 8px 0 0}.admin-section-actions-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.admin-search-input{color:#fff;background:#0f172acc;border:1px solid #ffffff1f;border-radius:10px;outline:none;min-width:260px;padding:10px 16px;font-size:.9rem}.admin-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.admin-create-trigger-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #10b9814d}.admin-create-trigger-btn:hover{background:linear-gradient(135deg,#34d399 0%,#10b981 100%);box-shadow:0 6px 18px #10b98173}.admin-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.admin-class-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ab3;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:14px;padding:20px;transition:all .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #0003}.admin-class-card:hover{border-color:#60a5fa66;transform:translateY(-2px)}.admin-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.admin-card-title{color:#f1f5f9;margin:0 0 4px;font-size:1.25rem;font-weight:700}.admin-card-school{color:#94a3b8;margin:0;font-size:.85rem}.admin-grade-badge{color:#c084fc;white-space:normal;word-break:break-word;background:#a855f733;border:1px solid #a855f766;border-radius:9999px;align-items:center;max-width:100%;padding:3px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.admin-card-teachers{font-size:.88rem}.admin-card-teachers-label{color:#64748b;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:700}.admin-tag-list{flex-wrap:wrap;gap:6px;display:flex}.admin-teacher-tag{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f64d;border-radius:6px;padding:3px 9px;font-size:.8rem;font-weight:500}.admin-card-footer{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.admin-student-count-badge{color:#38bdf8;align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:inline-flex}.admin-card-action-btn{color:#cbd5e1;cursor:pointer;background:#33415580;border:1px solid #ffffff1a;border-radius:8px;padding:6px 12px;font-size:.8rem;transition:all .2s}.admin-card-action-btn:hover{color:#fff;background:#475569cc;border-color:#60a5fa66}.admin-table-container{background:#0f172ab3;border:1px solid #ffffff14;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px #00000040}.admin-data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.admin-data-table th{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;background:#1e293b99;border-bottom:1px solid #ffffff14;padding:14px 18px;font-size:.8rem;font-weight:700}.admin-data-table td{color:#e2e8f0;border-bottom:1px solid #ffffff0d;padding:14px 18px}.admin-data-table tr:hover td{background:#1e293b59}.admin-user-cell{align-items:center;gap:12px;display:flex}.admin-user-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.admin-user-name{color:#f1f5f9;font-weight:600}.admin-user-email{color:#64748b;font-size:.8rem}.admin-class-tag{color:#6ee7b7;background:#10b98126;border:1px solid #10b9814d;border-radius:6px;padding:3px 9px;font-size:.8rem;font-weight:500}.admin-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal-card{background:#0f172a;border:1px solid #ffffff26;border-radius:16px;width:100%;max-width:520px;padding:28px;animation:.25s modalPop;box-shadow:0 20px 40px #00000080}@keyframes modalPop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.admin-modal-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.admin-modal-title{color:#f8fafc;margin:0;font-size:1.35rem;font-weight:700}.admin-modal-close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.4rem}.admin-modal-close-btn:hover{color:#fff}.admin-form-group{margin-bottom:18px}.admin-form-label{color:#cbd5e1;margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.admin-form-input,.admin-form-select{box-sizing:border-box;color:#fff;background:#1e293bcc;border:1px solid #ffffff1f;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:.92rem}.admin-form-input:focus,.admin-form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.admin-checkbox-group{background:#1e293b66;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;gap:8px;max-height:140px;padding:10px 12px;display:flex;overflow-y:auto}.admin-checkbox-label{color:#cbd5e1;cursor:pointer;align-items:center;gap:8px;font-size:.88rem;display:flex}.admin-modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.admin-btn-cancel{color:#cbd5e1;cursor:pointer;background:#334155cc;border:1px solid #ffffff1a;border-radius:8px;padding:10px 18px;font-weight:600}.admin-btn-cancel:hover{color:#fff;background:#475569e6}.admin-btn-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;border-radius:8px;padding:10px 22px;font-weight:600;box-shadow:0 4px 14px #2563eb59}.admin-btn-submit:hover{background:linear-gradient(135deg,#60a5fa 0%,#3b82f6 100%)}.admin-empty-state{text-align:center;color:#94a3b8;padding:48px 20px}.admin-empty-icon{margin-bottom:12px;font-size:3rem}.admin-curriculum-badge{color:#e2e8f0;background:#1e293bb3;border:1px solid #ffffff1f;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:.76rem;font-weight:600;display:inline-flex}.admin-code-badge{color:#fbbf24;letter-spacing:.04em;background:#f59e0b26;border:1px solid #f59e0b59;border-radius:6px;padding:3px 8px;font-size:.76rem;font-weight:700}.admin-curriculum-selector-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:6px;display:grid}.admin-curriculum-btn{color:#94a3b8;cursor:pointer;text-align:center;background:#1e293b99;border:1px solid #ffffff1a;border-radius:8px;padding:8px 10px;font-size:.82rem;font-weight:600;transition:all .2s}.admin-curriculum-btn:hover{color:#fff;background:#334155cc}.admin-curriculum-btn.selected{color:#60a5fa;background:#3b82f633;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f64d}.admin-card-badges-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.admin-role-badge{border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:.76rem;font-weight:600;display:inline-flex}.admin-role-badge.admin{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b66;font-weight:700}.admin-role-badge.teacher{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f659}.super-admin-dashboard{color:#f1f5f9;background:radial-gradient(circle at 15% 15%,#0ea5e914 0%,#0000 40%),radial-gradient(circle at 85% 85%,#a855f714 0%,#0000 40%),#070b14;min-height:100vh;padding:32px 40px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.sad-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172ab3;border:1px solid #38bdf833;border-radius:16px;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px 32px;display:flex;box-shadow:0 8px 32px #0006}.sad-title-group h1{background:linear-gradient(135deg,#f8fafc 0%,#38bdf8 50%,#c084fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:12px;margin:0 0 8px;font-size:1.85rem;font-weight:800;display:flex}.sad-role-badge{text-transform:uppercase;letter-spacing:.08em;color:#fbbf24;-webkit-text-fill-color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b73;border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:700}.sad-subtitle{color:#94a3b8;max-width:900px;margin:0;font-size:.95rem}.sad-header-actions{flex-wrap:wrap;gap:12px;display:flex}.sad-action-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.sad-action-btn.primary{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#2563eb 100%);box-shadow:0 4px 14px #2563eb59}.sad-action-btn.primary:hover{background:linear-gradient(135deg,#0369a1 0%,#1d4ed8 100%);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb80}.sad-action-btn.secondary{color:#e2e8f0;background:#1e293bcc;border-color:#ffffff26}.sad-action-btn.secondary:hover{background:#334155e6;border-color:#38bdf866;transform:translateY(-2px)}.sad-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px;display:grid}.sad-kpi-card{background:#0f172aa6;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:18px;padding:20px 24px;transition:transform .2s,border-color .2s;display:flex}.sad-kpi-card:hover{border-color:#38bdf84d;transform:translateY(-3px)}.sad-kpi-icon{background:#1e293bcc;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.6rem;display:flex}.sad-kpi-card.blue .sad-kpi-icon{background:#0ea5e926;border-color:#0ea5e959}.sad-kpi-card.purple .sad-kpi-icon{background:#a855f726;border-color:#a855f759}.sad-kpi-card.emerald .sad-kpi-icon{background:#10b98126;border-color:#10b98159}.sad-kpi-card.amber .sad-kpi-icon{background:#f59e0b26;border-color:#f59e0b59}.sad-kpi-content{flex:1}.sad-kpi-val{color:#f8fafc;margin-bottom:4px;font-size:1.85rem;font-weight:800;line-height:1.1}.sad-kpi-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:.85rem;font-weight:600}.sad-kpi-sub{color:#64748b;gap:8px;font-size:.78rem;display:flex}.sad-tabs-bar{border-bottom:1px solid #ffffff1a;gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex;overflow-x:auto}.sad-tab-btn{color:#94a3b8;cursor:pointer;white-space:nowrap;background:#1e293b80;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .2s;display:inline-flex}.sad-tab-btn:hover{color:#f8fafc;background:#33415599}.sad-tab-btn.active{color:#38bdf8;background:#0284c733;border-color:#38bdf880;box-shadow:0 0 16px #38bdf833}.sad-tab-pill-count{color:#e2e8f0;background:#ffffff1a;border-radius:12px;padding:2px 7px;font-size:.72rem;font-weight:700}.sad-tab-btn.active .sad-tab-pill-count{color:#fff;background:#38bdf84d}.sad-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172aa6;border:1px solid #ffffff14;border-radius:16px;padding:28px;box-shadow:0 8px 32px #0000004d}.sad-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.sad-panel-title{color:#f8fafc;align-items:center;gap:10px;margin:0;font-size:1.25rem;font-weight:700;display:flex}.sad-panel-subtitle{color:#94a3b8;margin:4px 0 0;font-size:.85rem}.sad-sub-selectors{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sad-select{color:#f8fafc;cursor:pointer;background:#0f172ae6;border:1px solid #38bdf84d;border-radius:8px;outline:none;padding:8px 14px;font-size:.88rem}.sad-select:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf833}.sad-table-wrapper{overflow-x:auto}.sad-table{border-collapse:collapse;width:100%;font-size:.88rem}.sad-table th{text-align:left;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #ffffff14;padding:12px 16px;font-size:.75rem;font-weight:600}.sad-table td{color:#e2e8f0;border-bottom:1px solid #ffffff0d;padding:14px 16px}.sad-table tr:hover td{background:#ffffff05}.sad-tag{border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.sad-tag.blue{color:#38bdf8;background:#0284c72e;border:1px solid #38bdf859}.sad-tag.purple{color:#c084fc;background:#a855f72e;border:1px solid #c084fc59}.sad-tag.emerald{color:#34d399;background:#10b9812e;border:1px solid #34d39959}.sad-tag.amber{color:#fbbf24;background:#f59e0b2e;border:1px solid #fbbf2459}.sad-progress-cell{width:140px}.sad-progress-bar-bg{background:#ffffff1a;border-radius:4px;width:100%;height:8px;margin-bottom:4px;overflow:hidden}.sad-progress-bar-fill{border-radius:4px;height:100%;transition:width .4s}.sad-progress-bar-fill.blue{background:linear-gradient(90deg,#0284c7,#38bdf8)}.sad-progress-bar-fill.emerald{background:linear-gradient(90deg,#059669,#10b981)}.sad-progress-bar-fill.purple{background:linear-gradient(90deg,#7c3aed,#a855f7)}.sad-progress-text{color:#94a3b8;font-size:.75rem;font-weight:600}.sad-universes-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.sad-universe-card{background:#0f172ab3;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:14px;padding:22px;transition:all .2s;display:flex}.sad-universe-card:hover{border-color:#38bdf859;transform:translateY(-3px);box-shadow:0 10px 24px #0006}.sad-universe-card-header{align-items:center;gap:14px;display:flex}.sad-universe-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.6rem;display:flex}.sad-universe-title-group h3{color:#f8fafc;margin:0;font-size:1.1rem;font-weight:700}.sad-universe-subtitle{color:#94a3b8;font-size:.8rem}.sad-universe-desc{color:#cbd5e1;flex:1;font-size:.85rem;line-height:1.4}.sad-universe-metrics{text-align:center;background:#1e293b80;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px;display:grid}.sad-um-val{color:#f8fafc;font-size:1.1rem;font-weight:700}.sad-um-lbl{color:#94a3b8;text-transform:uppercase;margin-top:2px;font-size:.7rem}.sad-modules-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:16px;display:grid}.sad-module-card{background:#1e293b99;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:10px;padding:18px;display:flex}.sad-module-card h4{color:#f8fafc;margin:0;font-size:1rem;font-weight:700}.sad-module-card p{color:#94a3b8;margin:0;font-size:.82rem;line-height:1.4}@media (width<=900px){.super-admin-dashboard{padding:20px}.sad-header{flex-direction:column;gap:16px}.sad-header-actions{width:100%}}.teacher-home-container{color:#f1f5f9;background:radial-gradient(circle at 12% 14%,#0ea5e92e,#0000 32%),radial-gradient(circle at 88% 18%,#8b5cf633,#0000 35%),linear-gradient(#090e1a 0%,#0d1527 50%,#080c16 100%);min-height:calc(100vh - 72px);padding:40px 24px 64px}.teacher-home-shell{flex-direction:column;gap:32px;width:min(1200px,100%);margin:0 auto;display:flex}.teacher-hero-card{background:linear-gradient(135deg,#1e293bd9 0%,#0f172af2 100%);border:1px solid #38bdf840;border-radius:24px;justify-content:space-between;align-items:center;gap:32px;padding:36px 40px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 45px #0006,inset 0 1px #ffffff14}.teacher-hero-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 80%,#0ea5e91f,#0000 70%);width:250px;height:100%;position:absolute;top:0;right:0}.teacher-hero-left{align-items:center;gap:28px;display:flex}.teacher-avatar-wrapper{flex-direction:column;align-items:center;gap:10px;display:flex}.teacher-avatar-icon{background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:2px solid #38bdf866;border-radius:24px;justify-content:center;align-items:center;width:90px;height:90px;font-size:3rem;display:flex;box-shadow:0 10px 25px #0284c759}.teacher-badge-pulse{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8;background:#0ea5e933;border:1px solid #38bdf859;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:800}.teacher-kicker{letter-spacing:.15em;text-transform:uppercase;color:#38bdf8;margin-bottom:6px;font-size:.78rem;font-weight:800}.teacher-hero-title{letter-spacing:-.03em;color:#fff;margin:0 0 8px;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:900}.teacher-hero-subtitle{color:#94a3b8;max-width:580px;margin:0 0 16px;font-size:1.02rem;line-height:1.5}.teacher-hero-tags{flex-wrap:wrap;gap:10px;display:flex}.teacher-tag{color:#cbd5e1;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.teacher-tag-highlight{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b4d}.teacher-hero-quick-actions{flex-direction:column;gap:12px;min-width:260px;display:flex}.teacher-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:14px 22px;font-size:.95rem;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 10px 25px #0284c766}.teacher-btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0284c78c}.teacher-btn-secondary{color:#f1f5f9;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:12px 20px;font-size:.92rem;font-weight:700;transition:all .2s;display:inline-flex}.teacher-btn-secondary:hover{background:#ffffff24}.teacher-btn-outline{color:#94a3b8;cursor:pointer;background:0 0;border:1px dashed #fff3;border-radius:12px;justify-content:center;align-items:center;padding:10px 18px;font-size:.86rem;font-weight:600;transition:all .2s;display:inline-flex}.teacher-btn-outline:hover{color:#fff;border-color:#fff6}.teacher-stats-row{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;display:grid}.teacher-stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ab3;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:18px;padding:22px 24px;display:flex;box-shadow:0 10px 25px #0003}.teacher-stat-icon-wrapper{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.8rem;display:flex}.xp-glow{background:#f59e0b29;border:1px solid #f59e0b59;box-shadow:0 0 20px #f59e0b33}.student-glow{background:#0ea5e929;border:1px solid #0ea5e959;box-shadow:0 0 20px #0ea5e933}.badge-glow{background:#8b5cf629;border:1px solid #8b5cf659;box-shadow:0 0 20px #8b5cf633}.diploma-glow{background:#10b98129;border:1px solid #10b98159;box-shadow:0 0 20px #10b98133}.teacher-stat-value{color:#fff;letter-spacing:-.02em;font-size:1.8rem;font-weight:900;line-height:1.1}.teacher-stat-label{color:#94a3b8;margin-top:4px;font-size:.82rem}.teacher-class-selector-tabs{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0;display:flex}.selector-label{color:#94a3b8;font-size:.88rem;font-weight:700}.class-tab-pill{color:#cbd5e1;cursor:pointer;background:#1e293bb3;border:1px solid #ffffff1a;border-radius:999px;padding:10px 20px;font-size:.88rem;font-weight:700;transition:all .2s}.class-tab-pill:hover{color:#fff;background:#334155e6}.class-tab-pill.active{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border-color:#38bdf8;box-shadow:0 6px 18px #0284c759}.teacher-active-class-banner{background:linear-gradient(135deg,#1e293b99 0%,#0f172acc 100%);border:1px solid #94a3b833;border-radius:20px;justify-content:space-between;align-items:center;gap:24px;padding:26px 32px;display:flex}.class-banner-badge{letter-spacing:.12em;color:#38bdf8;margin-bottom:6px;font-size:.72rem;font-weight:800;display:inline-block}.class-banner-left h2{color:#fff;margin:0 0 10px;font-size:1.6rem;font-weight:800}.class-banner-details{color:#94a3b8;flex-wrap:wrap;gap:16px;font-size:.86rem;display:flex}.btn-direct-matrix{color:#04101e;cursor:pointer;background:#38bdf8;border:none;border-radius:12px;align-items:center;gap:10px;padding:12px 22px;font-size:.92rem;font-weight:800;transition:all .2s;display:inline-flex}.btn-direct-matrix:hover{background:#7dd3fc;transform:translate(3px)}.teacher-students-gamification-section{flex-direction:column;gap:22px;display:flex}.section-header-row{justify-content:space-between;align-items:flex-end;display:flex}.section-kicker{letter-spacing:.16em;color:#38bdf8;text-transform:uppercase;font-size:.74rem;font-weight:800}.section-title{letter-spacing:-.02em;color:#fff;margin:6px 0;font-size:1.85rem;font-weight:900}.section-subtitle{color:#94a3b8;margin:0;font-size:.94rem}.teacher-student-cards-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:22px;display:grid}.teacher-student-card{background:linear-gradient(135deg,#1e293bb3 0%,#0f172ad9 100%);border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;gap:18px;padding:24px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 12px 30px #00000040}.teacher-student-card:hover{border-color:#38bdf866;transform:translateY(-3px)}.student-card-header{align-items:center;gap:14px;display:flex}.student-avatar{background:#ffffff14;border:1px solid #ffffff26;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.8rem;display:flex}.student-meta{flex:1}.student-name{color:#fff;margin:0 0 4px;font-size:1.15rem;font-weight:800}.student-level-chip{color:#fff;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.74rem;font-weight:800;display:inline-flex;box-shadow:0 4px 10px #0003}.student-xp-pill{color:#fbbf24;white-space:nowrap;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:10px;padding:6px 12px;font-size:.88rem;font-weight:900}.student-xp-bar-container{flex-direction:column;gap:6px;display:flex}.student-xp-labels{color:#94a3b8;justify-content:space-between;font-size:.75rem;font-weight:700;display:flex}.student-xp-bar-track{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.student-xp-bar-fill{background:linear-gradient(90deg,#38bdf8 0%,#818cf8 100%);border-radius:999px;height:100%;transition:width .4s}.student-achievements-row{background:#00000040;border:1px solid #ffffff0f;border-radius:12px;gap:16px;padding:10px 14px;display:flex}.achievement-stat{color:#94a3b8;align-items:baseline;gap:6px;font-size:.82rem;display:flex}.achievement-stat strong{color:#fff;font-size:1.05rem}.student-diplomas-list{flex-direction:column;gap:10px;display:flex}.diplomas-subheading{text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;font-size:.76rem;font-weight:800}.diploma-tags-grid{flex-direction:column;gap:8px;display:flex}.diploma-status-tag{border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:.82rem;transition:all .2s;display:flex}.diploma-status-tag.unlocked{color:#a7f3d0;background:#10b9811f;border:1px solid #10b9814d}.diploma-status-tag.locked{color:#64748b;background:#ffffff08;border:1px solid #ffffff12}.diploma-icon{font-size:1.1rem}.diploma-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.diploma-view-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:800;transition:transform .15s;box-shadow:0 4px 10px #10b9814d}.diploma-view-btn:hover{transform:scale(1.05)}.diploma-locked-label{color:#64748b;font-size:.72rem;font-style:italic;font-weight:700}.teacher-loading-card,.teacher-empty-students-card{text-align:center;color:#94a3b8;background:#0f172a99;border:1px dashed #ffffff26;border-radius:20px;padding:48px}@media (width<=900px){.teacher-hero-card{flex-direction:column;align-items:stretch}.teacher-hero-left{text-align:center;flex-direction:column}.teacher-active-class-banner{flex-direction:column;align-items:stretch}}.studio-builder-container{color:#f1f5f9;background:radial-gradient(circle at 10% 12%,#0ea5e929,#0000 30%),radial-gradient(circle at 90% 16%,#a855f72e,#0000 35%),linear-gradient(#070b14 0%,#0c1222 50%,#060911 100%);min-height:calc(100vh - 72px);padding:32px 24px 64px}.studio-builder-shell{flex-direction:column;gap:28px;width:min(1200px,100%);margin:0 auto;display:flex}.studio-top-bar{background:linear-gradient(135deg,#1e293bcc 0%,#0f172af2 100%);border:1px solid #38bdf84d;border-radius:20px;justify-content:space-between;align-items:center;gap:24px;padding:22px 28px;display:flex;box-shadow:0 16px 40px #00000059}.studio-top-left{align-items:center;gap:16px;display:flex}.studio-back-btn{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:.84rem;font-weight:700;transition:all .2s;display:inline-flex}.studio-back-btn:hover{color:#fff;background:#ffffff26}.studio-title-badge-area{flex-direction:column;gap:4px;display:flex}.studio-kicker{letter-spacing:.12em;text-transform:uppercase;color:#38bdf8;font-size:.72rem;font-weight:800}.studio-title-input{color:#fff;background:0 0;border:none;border-bottom:2px dashed #38bdf880;outline:none;min-width:320px;padding:2px 4px;font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:900;transition:border-color .2s}.studio-title-input:focus{border-bottom-color:#38bdf8}.studio-top-actions{align-items:center;gap:12px;display:flex}.btn-studio-save{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 20px;font-size:.92rem;font-weight:800;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 6px 18px #10b98159}.btn-studio-save:hover{transform:translateY(-2px);box-shadow:0 10px 24px #10b98180}.btn-studio-preview{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-size:.92rem;font-weight:800;transition:transform .15s;display:inline-flex;box-shadow:0 6px 18px #0284c759}.btn-studio-preview:hover{transform:translateY(-2px)}.studio-stepper-bar{gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.stepper-tab-btn{color:#94a3b8;cursor:pointer;white-space:nowrap;background:#1e293b99;border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:10px;padding:12px 20px;font-size:.88rem;font-weight:700;transition:all .2s;display:flex}.stepper-tab-btn:hover{color:#fff;background:#334155cc}.stepper-tab-btn.active{color:#fff;background:linear-gradient(135deg,#0284c74d 0%,#0ea5e966 100%);border-color:#38bdf8;box-shadow:0 4px 15px #0284c740}.step-num{background:#ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.78rem;font-weight:900;display:inline-flex}.stepper-tab-btn.active .step-num{color:#0b1120;background:#38bdf8}.studio-panel-card{background:linear-gradient(135deg,#1e293bb3 0%,#0f172ae6 100%);border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;gap:28px;padding:32px 36px;display:flex;box-shadow:0 20px 50px #00000059}.panel-section-title{flex-direction:column;gap:6px;display:flex}.panel-section-title h2{color:#fff;margin:0;font-size:1.6rem;font-weight:900}.panel-section-title p{color:#94a3b8;margin:0;font-size:.92rem}.form-grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em;font-size:.84rem;font-weight:800}.form-input,.form-select,.form-textarea{color:#fff;background:#0f172acc;border:1px solid #ffffff24;border-radius:12px;outline:none;padding:12px 16px;font-family:inherit;font-size:.92rem;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#38bdf8}.form-textarea{resize:vertical;min-height:100px}.theory-pages-section{background:#00000040;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;gap:16px;padding:20px;display:flex}.theory-header-row{justify-content:space-between;align-items:center;display:flex}.btn-add-theory{color:#38bdf8;cursor:pointer;background:#38bdf826;border:1px solid #38bdf859;border-radius:10px;padding:6px 14px;font-size:.82rem;font-weight:800;transition:all .2s}.btn-add-theory:hover{background:#38bdf84d}.theory-card{background:#1e293b99;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex}.theory-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.btn-remove-theory{color:#ef4444;cursor:pointer;background:0 0;border:none;font-size:.85rem;font-weight:700}.asset-cards-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.asset-select-card{text-align:center;cursor:pointer;background:#0f172ab3;border:2px solid #ffffff1a;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:18px;transition:all .2s;display:flex}.asset-select-card:hover{border-color:#38bdf866;transform:translateY(-2px)}.asset-select-card.selected{background:linear-gradient(135deg,#0284c733 0%,#0ea5e94d 100%);border-color:#38bdf8;box-shadow:0 6px 20px #0284c74d}.asset-icon-preview{font-size:2.8rem;line-height:1}.asset-card-title{color:#fff;font-size:.95rem;font-weight:800}.asset-card-desc{color:#94a3b8;font-size:.76rem;line-height:1.35}.blocks-quick-actions-bar{flex-wrap:wrap;gap:10px;display:flex}.btn-quick-block{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;padding:8px 14px;font-size:.8rem;font-weight:700;transition:all .2s}.btn-quick-block:hover{color:#fff;background:#ffffff26}.blocks-category-group{flex-direction:column;gap:12px;display:flex}.blocks-category-title{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:.88rem;font-weight:900;display:flex}.blocks-grid-picker{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.block-item-checkbox-card{cursor:pointer;background:#0f172ab3;border:1px solid #ffffff1a;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;transition:all .2s;display:flex}.block-item-checkbox-card:hover{border-color:#ffffff4d}.block-item-checkbox-card.selected{background:#1e293bcc;border-color:#38bdf899}.block-color-bar{border-radius:999px;flex-shrink:0;align-self:stretch;width:6px;height:100%}.block-item-content{flex:1}.block-item-title{color:#fff;margin-bottom:3px;font-size:.88rem;font-weight:800}.block-item-desc{color:#94a3b8;font-size:.74rem;line-height:1.35}.objectives-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.objective-card{cursor:pointer;background:#0f172ab3;border:2px solid #ffffff1a;border-radius:16px;flex-direction:column;gap:8px;padding:18px;transition:all .2s;display:flex}.objective-card.selected{background:linear-gradient(135deg,#10b98126 0%,#05966940 100%);border-color:#10b981;box-shadow:0 6px 20px #10b98133}.objective-card-header{align-items:center;gap:10px;display:flex}.objective-icon{font-size:1.6rem}.objective-title{color:#fff;font-size:.95rem;font-weight:800}.objective-desc{color:#94a3b8;font-size:.78rem;line-height:1.35}.sandbox-preview-container{background:#0006;border:1px solid #38bdf84d;border-radius:20px;flex-direction:column;gap:16px;padding:24px;display:flex}.sandbox-banner{justify-content:space-between;align-items:center;display:flex}.sandbox-pill{color:#38bdf8;background:#38bdf833;border:1px solid #38bdf866;border-radius:999px;padding:4px 12px;font-size:.78rem;font-weight:800}.custom-exercises-table-card{background:linear-gradient(135deg,#1e293bb3 0%,#0f172ad9 100%);border:1px solid #ffffff1a;border-radius:20px;padding:28px}.exercise-list-table{border-collapse:collapse;width:100%}.exercise-list-table th{text-align:left;color:#94a3b8;text-transform:uppercase;border-bottom:1px solid #ffffff1a;padding:12px 16px;font-size:.78rem;font-weight:800}.exercise-list-table td{border-bottom:1px solid #ffffff0f;padding:16px;font-size:.88rem}.exercise-row-title strong{color:#fff;font-size:.96rem}.exercise-actions-cell{gap:8px;display:flex}.btn-action-small{cursor:pointer;border:none;border-radius:8px;padding:6px 12px;font-size:.78rem;font-weight:800;transition:transform .15s}.btn-action-small:hover{transform:scale(1.04)}.btn-action-edit{color:#0b1120;background:#38bdf8}.btn-action-test{color:#fff;background:#10b981}.btn-action-dup{color:#fff;background:#ffffff1a}.btn-action-del{color:#f87171;background:#ef444426}.sandbox-modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;background:#040812eb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.sandbox-modal-window{background:#090e1c;border:1px solid #38bdf859;border-radius:24px;flex-direction:column;width:min(1360px,98vw);height:min(920px,95vh);display:flex;overflow:hidden;box-shadow:0 25px 70px #0009,0 0 40px #0ea5e926}.sandbox-header{background:linear-gradient(135deg,#1e293be6 0%,#0f172af2 100%);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.sandbox-header-left{align-items:center;gap:12px;display:flex}.sandbox-header-badge{letter-spacing:.12em;color:#38bdf8;background:#0ea5e933;border:1px solid #38bdf859;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:900}.sandbox-header-title{color:#fff;margin:0;font-size:1.25rem;font-weight:900}.sandbox-header-actions{align-items:center;gap:10px;display:flex}.btn-theory-toggle{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:10px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:all .2s}.btn-theory-toggle.active{color:#fff;background:#a855f740;border-color:#a855f7}.btn-close-sandbox{color:#fca5a5;cursor:pointer;background:#ef444426;border:1px solid #ef444459;border-radius:10px;padding:8px 16px;font-size:.82rem;font-weight:800;transition:all .2s}.btn-close-sandbox:hover{color:#fff;background:#ef44444d}.sandbox-theory-drawer{background:#0f172af2;border-bottom:1px solid #a855f74d;flex-direction:column;gap:12px;max-height:200px;padding:16px 24px;display:flex;overflow-y:auto}.theory-drawer-tabs{gap:8px;display:flex}.theory-tab-chip{color:#cbd5e1;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;padding:4px 10px;font-size:.76rem;font-weight:700}.theory-tab-chip.active{color:#fff;background:#a855f7;border-color:#a855f7}.theory-drawer-content h3{color:#fff;margin:0 0 6px;font-size:1.05rem}.theory-drawer-content p{color:#cbd5e1;margin:0;font-size:.88rem;line-height:1.45}.theory-drawer-tip{color:#38bdf8;margin-top:8px;font-size:.8rem;font-weight:700}.sandbox-main-split{background:#ffffff14;flex:1;grid-template-columns:minmax(420px,1fr) minmax(460px,1fr);gap:1px;min-height:0;display:grid}.sandbox-blockly-panel,.sandbox-stage-panel{background:#090e1c;flex-direction:column;min-height:0;display:flex}.panel-sub-header{letter-spacing:.08em;color:#94a3b8;background:#0f172a99;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:10px 18px;font-size:.76rem;font-weight:800;display:flex}.sandbox-hint-text{color:#fbbf24;font-size:.76rem}.sandbox-main-split{background:#ffffff14;flex:1;grid-template-columns:minmax(420px,1fr) minmax(460px,1fr);gap:1px;min-height:480px;display:grid;overflow:hidden}.sandbox-blockly-panel{background:#090e1c;flex-direction:column;min-height:480px;display:flex;position:relative;overflow:hidden}.sandbox-blockly-workspace-wrap{flex-direction:column;flex:1;width:100%;height:100%;min-height:440px;display:flex;position:relative;overflow:hidden}.sandbox-blockly-workspace-wrap .blockly-host{background:#080d1e;flex:1;min-height:440px;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.sandbox-modal-window .blocklyToolboxDiv{z-index:100!important;background-color:#0b1120!important}.sandbox-modal-window .blocklyFlyout{z-index:95!important}.sandbox-modal-window .blocklyWidgetDiv,.sandbox-modal-window .blocklyDropDownDiv{z-index:10000!important}.sandbox-modal-window .blocklyTooltipDiv{z-index:10001!important}.sandbox-stage-wrap{background:#050811;flex:1;justify-content:center;align-items:center;min-height:380px;padding:16px;display:flex;position:relative;overflow:hidden}.sandbox-stage-wrap>div{justify-content:center;width:100%;max-width:640px;display:flex}.sandbox-validation-banner{align-items:center;gap:10px;padding:12px 18px;font-size:.88rem;font-weight:700;display:flex}.sandbox-validation-banner.success{color:#34d399;background:#10b98133;border-top:1px solid #10b98166}.sandbox-validation-banner.failure{color:#fbbf24;background:#f59e0b2e;border-top:1px solid #f59e0b66}.validation-icon{font-size:1.25rem}.sandbox-controls-bar{background:#0f172acc;border-top:1px solid #ffffff14;align-items:center;gap:12px;padding:14px 20px;display:flex}.btn-sandbox-run{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:900;transition:all .2s;display:inline-flex;box-shadow:0 6px 18px #10b98166}.btn-sandbox-run:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #10b9818c}.btn-sandbox-reset{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:12px;align-items:center;gap:6px;padding:12px 18px;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-sandbox-reset:hover:not(:disabled){color:#fff;background:#ffffff26}@media (width<=900px){.sandbox-main-split{grid-template-columns:1fr}}.assign-modal-window{max-height:90vh;overflow-y:auto;max-width:780px!important}.assign-modal-body{background:#0b1120;flex-direction:column;gap:22px;padding:24px 28px;display:flex}.assign-exercise-preview{background:linear-gradient(135deg,#1e293bb3,#0f172ae6);border:1px solid #8b5cf64d;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 20px;display:flex}.assign-ex-badge{text-transform:uppercase;color:#a78bfa;letter-spacing:.08em;font-size:.7rem;font-weight:800}.assign-ex-meta h3{color:#fff;margin:4px 0 6px;font-size:1.15rem}.assign-ex-meta p{color:#94a3b8;margin:0;font-size:.84rem;line-height:1.4}.assign-ex-stats{color:#cbd5e1;white-space:nowrap;background:#00000040;border-radius:10px;flex-direction:column;gap:6px;padding:8px 14px;font-size:.8rem;display:flex}.assign-feedback-banner{border-radius:10px;padding:12px 16px;font-size:.88rem;font-weight:700}.assign-feedback-banner.success{color:#34d399;background:#10b98126;border:1px solid #10b98159}.assign-feedback-banner.error{color:#f87171;background:#ef444426;border:1px solid #ef444459}.assign-form{flex-direction:column;gap:16px;display:flex}.assign-form-group{flex-direction:column;gap:8px;display:flex}.assign-form-group label{color:#cbd5e1;font-size:.84rem;font-weight:700}.assign-form-group label .req{color:#f43f5e}.assign-input-select,.assign-input-text,.assign-input-textarea{color:#fff;box-sizing:border-box;background:#0f172acc;border:1px solid #ffffff26;border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:.88rem;transition:all .2s}.assign-input-select:focus,.assign-input-text:focus,.assign-input-textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf640}.assign-due-date-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.assign-due-date-row input{flex:1;min-width:220px}.quick-date-buttons{gap:6px;display:flex}.btn-quick-date{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;padding:7px 12px;font-size:.78rem;font-weight:700;transition:all .2s}.btn-quick-date:hover{color:#fff;background:#8b5cf640;border-color:#8b5cf6}.assign-form-actions{justify-content:flex-end;margin-top:4px;display:flex}.btn-confirm-assign{color:#fff;cursor:pointer;background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);border:none;border-radius:12px;padding:12px 24px;font-size:.95rem;font-weight:800;transition:all .2s;box-shadow:0 6px 18px #8b5cf666}.btn-confirm-assign:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #8b5cf68c}.assign-existing-section{border-top:1px solid #ffffff14;padding-top:18px}.assign-existing-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;font-size:.9rem;font-weight:800}.assign-existing-empty{color:#64748b;margin:0;font-size:.84rem;font-style:italic}.assign-existing-list{flex-direction:column;gap:10px;display:flex}.assign-existing-card{background:#0f172a80;border:1px solid #ffffff14;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.assign-card-badge-row{align-items:center;gap:8px;display:flex}.assign-card-class-badge{color:#38bdf8;background:#0ea5e926;border:1px solid #38bdf84d;border-radius:6px;padding:3px 8px;font-size:.8rem;font-weight:800}.assign-card-date-badge{color:#fbbf24;font-size:.74rem;font-weight:700}.assign-card-nodate-badge{color:#94a3b8;font-size:.74rem}.assign-card-instructions{color:#cbd5e1;margin:4px 0 0;font-size:.78rem;font-style:italic}.btn-archive-assign{color:#fca5a5;cursor:pointer;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;padding:6px 12px;font-size:.75rem;font-weight:700;transition:all .2s}.btn-archive-assign:hover{color:#fff;background:#ef444440}.btn-action-assign{color:#c4b5fd!important;background:#8b5cf626!important;border-color:#8b5cf666!important}.btn-action-assign:hover{color:#fff!important;background:#8b5cf64d!important}.assigned-classes-pill{color:#c4b5fd;background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.assigned-classes-pill.none{color:#64748b;background:#ffffff0d;border-color:#ffffff1a}.player-teacher-banner{background:linear-gradient(135deg,#10b9811f,#06b6d41f);border-bottom:1px solid #10b98140;flex-direction:column;gap:8px;padding:14px 24px;display:flex}.player-banner-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.player-teacher-tag{color:#34d399;font-size:.8rem;font-weight:800}.player-due-tag{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:6px;padding:2px 8px;font-size:.78rem;font-weight:700}.player-xp-tag{color:#38bdf8;background:#0ea5e926;border:1px solid #38bdf84d;border-radius:6px;padding:2px 8px;font-size:.78rem;font-weight:800}.player-teacher-note{color:#f1f5f9;background:#0000004d;border-left:3px solid #10b981;border-radius:8px;margin:0;padding:8px 12px;font-size:.86rem}.player-objective-bar{color:#e2e8f0;font-size:.88rem}.player-max-blocks-hint{color:#fbbf24;margin-left:8px;font-size:.8rem}.player-celebration-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10002;background:#030712d9;justify-content:center;align-items:center;animation:.3s ease-out fadeInCelebration;display:flex;position:absolute;inset:0}@keyframes fadeInCelebration{0%{opacity:0}to{opacity:1}}.player-celebration-card{text-align:center;background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 100%);border:2px solid #10b981;border-radius:24px;flex-direction:column;align-items:center;gap:16px;width:min(500px,90%);padding:32px 28px;animation:.4s cubic-bezier(.175,.885,.32,1.275) scaleUpCelebration;display:flex;box-shadow:0 20px 60px #10b9814d,0 0 40px #38bdf833}@keyframes scaleUpCelebration{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.player-celebration-seal{filter:drop-shadow(0 0 16px #fbbf2499);font-size:3.5rem}.player-celebration-card h2{background:linear-gradient(135deg,#34d399,#38bdf8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:1.6rem;font-weight:900}.player-celebration-sub{color:#cbd5e1;margin:0;font-size:.95rem}.player-celebration-stars{gap:12px;margin:6px 0;font-size:2.8rem;display:flex}.player-celebration-stars .star-icon{color:#475569;transition:transform .2s}.player-celebration-stars .star-icon.earned{color:#fbbf24;text-shadow:0 0 20px #fbbf24cc;animation:.5s ease-out starPop}@keyframes starPop{0%{transform:scale(.5)}50%{transform:scale(1.3)}to{transform:scale(1)}}.player-celebration-stats{justify-content:center;gap:16px;width:100%;display:flex}.celebration-stat-box{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:4px;padding:10px 18px;display:flex}.celebration-stat-box.xp{background:#0ea5e91a;border-color:#38bdf84d}.celebration-stat-box .stat-label{color:#94a3b8;text-transform:uppercase;font-size:.72rem}.celebration-stat-box .stat-value{color:#fff;font-size:1.25rem;font-weight:900}.celebration-stat-box.xp .stat-value{color:#38bdf8}.player-celebration-teacher-note{color:#94a3b8;background:#0000004d;border-radius:8px;margin:0;padding:8px 14px;font-size:.84rem}.btn-celebration-done{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:14px;margin-top:6px;padding:14px 28px;font-size:1rem;font-weight:800;transition:all .2s;box-shadow:0 8px 24px #10b98166}.btn-celebration-done:hover{transform:translateY(-2px);box-shadow:0 12px 30px #10b98199}.assign-target-radios{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:4px;display:grid}.assign-target-option{cursor:pointer;background:#0f172ab3;border:1px solid #ffffff1f;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.assign-target-option.active{background:#8b5cf626;border-color:#8b5cf6;box-shadow:0 0 12px #8b5cf640}.assign-target-option input[type=radio]{accent-color:#8b5cf6;margin-top:3px}.option-copy{flex-direction:column;gap:3px;display:flex}.option-copy strong{color:#fff;font-size:.88rem}.option-copy span{color:#94a3b8;font-size:.76rem}.assign-students-picker-box{background:#0000004d;border:1px solid #8b5cf64d;border-radius:14px;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.picker-header-actions{color:#cbd5e1;justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.btn-select-all,.btn-select-none{cursor:pointer;color:#cbd5e1;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:700;transition:all .15s}.btn-select-all:hover,.btn-select-none:hover{color:#fff;background:#8b5cf640;border-color:#8b5cf6}.students-checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;max-height:200px;padding-right:4px;display:grid;overflow-y:auto}.student-check-card{cursor:pointer;background:#0f172a99;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;transition:all .15s;display:flex}.student-check-card.checked{background:#8b5cf633;border-color:#8b5cf680}.student-check-card input[type=checkbox]{accent-color:#8b5cf6}.student-check-avatar{color:#fff;background:linear-gradient(135deg,#10b981,#3b82f6);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:800;display:flex}.student-check-info{flex-direction:column;display:flex;overflow:hidden}.student-check-info strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.student-check-info small{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.assign-card-target-badge{color:#d8b4fe;background:#a855f726;border:1px solid #a855f759;border-radius:6px;padding:2px 7px;font-size:.72rem;font-weight:800}
