html,body{background:#0a0e1a;height:100%;margin:0;overflow:hidden}canvas{display:block}#loading{color:#ffe9c4;z-index:10;pointer-events:none;background:linear-gradient(#1a2a4a,#0a0e1a);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-family:system-ui,sans-serif;transition:opacity .4s;display:flex;position:fixed;inset:0}#loading .bar{background:#2a3a5a;border-radius:3px;width:240px;height:6px}#loading .fill{background:#ffd9a0;border-radius:3px;width:0;height:100%;transition:width .2s}#join{color:#ffe9c4;z-index:10;background:linear-gradient(#1a2a4a,#0a0e1a);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-family:system-ui,sans-serif;display:flex;position:fixed;inset:0}#join form{flex-direction:column;align-items:center;gap:10px;display:flex}#join label{color:#ffe9c4;flex-direction:column;gap:4px;font-size:14px;display:flex}#join input{color:#ffe9c4;background:#17233f;border:none;border-radius:6px;width:220px;padding:8px 10px;font-size:16px}#join button{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:8px;padding:8px 20px;font-size:16px;font-weight:600}#join button:disabled{opacity:.6;cursor:default}#join .error{color:#ff9a9a;text-align:center;max-width:280px}#join .opprett-rom-seksjon{border-top:1px solid #ffe9c440;flex-direction:column;align-items:center;gap:8px;max-width:280px;margin-top:6px;padding-top:16px;display:flex}#join .opprett-rom-skille{color:#cdb999;text-align:center;margin:0;font-size:13px}#join .opprett-rom-knapp{color:#ffd9a0;cursor:pointer;background:0 0;border:1px solid #ffd9a0;border-radius:8px;padding:6px 16px;font-size:14px;font-weight:600}#join .opprett-rom-knapp:disabled{opacity:.6;cursor:default}#join .opprett-rom-feil{color:#ff9a9a;text-align:center;margin:0;font-size:13px}#join .opprett-rom-koder{box-sizing:border-box;background:#17233f99;border-radius:8px;flex-direction:column;align-items:center;gap:4px;width:100%;padding:10px 14px;display:flex}#join .opprett-rom-koder[hidden]{display:none}#join .opprett-rom-label{color:#cdb999;margin:6px 0 0;font-size:12px}#join .romkode-stor{letter-spacing:3px;color:#ffe9c4;margin:0;font-size:30px;font-weight:700}#join .laererkode-verdi{color:#ffe9c4;word-break:break-all;text-align:center;margin:0;font-family:monospace;font-size:15px}#join .kopier-laererkode-knapp{color:#ffe9c4;cursor:pointer;background:#2a3a5a;border:none;border-radius:6px;margin-top:4px;padding:4px 12px;font-size:12px}#join .laererkode-advarsel{color:#ff9a9a;text-align:center;margin:4px 0 0;font-size:11px}#start-menu{z-index:10;box-sizing:border-box;color:#ffe9c4;background:linear-gradient(#1a2a4a,#0a0e1a);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px 16px;font-family:system-ui,sans-serif;display:flex;position:fixed;inset:0;overflow-y:auto}#start-menu h1{letter-spacing:.02em;margin:0;font-size:30px}#start-menu h2{color:#ffd9a0;margin:0 0 2px;font-size:20px;font-weight:600}#start-menu .sm-tagline{color:#cdb999;text-align:center;margin:0 0 10px;font-size:14px}#start-menu .sm-view{flex-direction:column;align-items:center;gap:10px;width:100%;max-width:320px;display:flex}#start-menu .sm-view[hidden]{display:none}#start-menu .sm-choice{color:#ffe9c4;cursor:pointer;text-align:left;background:#17233fbf;border:1px solid #ffd9a059;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:76px;padding:12px 18px;font-family:inherit;display:flex}#start-menu .sm-choice:disabled{opacity:.45;cursor:default}#start-menu .sm-choice-title{color:#ffd9a0;font-size:20px;font-weight:700}#start-menu .sm-choice-sub{color:#cdb999;font-size:13px;line-height:1.3}#start-menu .sm-server-missing{color:#ff9a9a;text-align:center;margin:4px 0 0;font-size:13px}#start-menu .sm-form{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}#start-menu label{color:#ffe9c4;flex-direction:column;gap:4px;width:100%;font-size:14px;display:flex}#start-menu input{color:#ffe9c4;box-sizing:border-box;background:#17233f;border:none;border-radius:8px;width:100%;min-height:44px;padding:8px 12px;font-family:inherit;font-size:16px}#start-menu .sm-primary{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:10px;width:100%;min-height:48px;padding:10px 20px;font-family:inherit;font-size:17px;font-weight:700}#start-menu .sm-primary:disabled{opacity:.6;cursor:default}#start-menu .sm-secondary{color:#ffd9a0;cursor:pointer;background:0 0;border:1px solid #ffd9a0;border-radius:10px;width:100%;min-height:44px;padding:8px 18px;font-family:inherit;font-size:15px;font-weight:600}#start-menu .sm-back{color:#cdb999;cursor:pointer;background:0 0;border:none;border-radius:10px;min-height:44px;padding:8px 20px;font-family:inherit;font-size:15px;text-decoration:underline}#start-menu .sm-back:disabled{opacity:.45;cursor:default;text-decoration:none}#start-menu .sm-sub-heading{color:#cdb999;text-align:center;margin:0;font-size:14px;font-weight:600}#start-menu .sm-hint{color:#cdb999;text-align:center;margin:0;font-size:12px}#start-menu .sm-error{color:#ff9a9a;text-align:center;margin:0;font-size:13px}#start-menu .sm-teacher-create{border-bottom:1px solid #ffe9c440;flex-direction:column;align-items:center;gap:8px;width:100%;padding-bottom:12px;display:flex}#start-menu .sm-code-label{color:#cdb999;text-align:center;margin:6px 0 0;font-size:12px}#start-menu .sm-room-code-big{letter-spacing:6px;color:#ffe9c4;margin:0;font-size:46px;font-weight:700}#start-menu .sm-teacher-code-value{color:#ffe9c4;word-break:break-all;text-align:center;margin:0;font-family:monospace;font-size:15px}#start-menu .sm-copy{color:#ffe9c4;cursor:pointer;background:#2a3a5a;border:none;border-radius:8px;min-height:44px;padding:8px 16px;font-family:inherit;font-size:13px}#start-menu .sm-warning{color:#ff9a9a;text-align:center;margin:2px 0 6px;font-size:11px}#start-menu .sm-save-hint{color:#cdb999;text-align:center;margin:0 0 6px;font-size:11px;line-height:1.35}#start-menu .sm-wall-key{color:#ffe9c4;text-align:center;background:#ffd9a01a;border:1px solid #ffd9a08c;border-radius:8px;max-width:340px;margin:0 0 10px;padding:8px 10px;font-size:12.5px;line-height:1.4}#join .laererkode-veggnokkel{color:#ffe9c4;text-align:center;background:#ffd9a01a;border:1px solid #ffd9a08c;border-radius:8px;margin:6px 0 0;padding:8px 10px;font-size:12px;line-height:1.4}#settings-btn{z-index:5;color:#fff;cursor:pointer;background:#0a142880;border:none;border-radius:8px;width:40px;height:40px;font-size:20px;position:fixed;top:12px;right:12px}#settings-panel{z-index:30;background:#0a1428cc;border-radius:8px;padding:12px;position:fixed;top:60px;right:12px}#scene-fade{opacity:0;pointer-events:none;z-index:20;background:#000;position:fixed;inset:0}#door-hint{color:#ffe9c4;text-shadow:0 0 12px #ffd9a0e6,0 0 24px #ffb45a99;opacity:0;pointer-events:none;z-index:6;letter-spacing:.02em;font-family:system-ui,sans-serif;font-size:20px;font-weight:600;transition:opacity .25s;position:fixed;bottom:14%;left:50%;transform:translate(-50%)}#character-select{z-index:10;background:#05060a;position:fixed;inset:0}#character-select canvas{width:100%;height:100%;display:block}#character-select .cs-overlay{pointer-events:none;color:#ffe9c4;flex-direction:column;justify-content:flex-end;align-items:center;gap:14px;padding-bottom:6%;font-family:system-ui,sans-serif;display:flex;position:absolute;inset:0}#character-select h1{letter-spacing:.02em;text-shadow:0 0 18px #ff965080;margin:0;font-size:28px;position:absolute;top:6%}#character-select .cs-picker{pointer-events:auto;align-items:center;gap:18px;display:flex}#character-select .cs-name{text-align:center;text-shadow:0 0 10px #ffb46499;min-width:220px;font-size:18px;font-weight:600}#character-select .cs-arrow{color:#ffd9a0;cursor:pointer;background:#ffd9a026;border:1px solid #ffd9a059;border-radius:50%;width:44px;height:44px;font-size:22px}#character-select .cs-arrow:hover{background:#ffd9a047}#character-select .cs-thumbs{pointer-events:auto;gap:8px;display:flex}#character-select .cs-thumb{color:#ffe9c4;cursor:pointer;background:#ffffff0f;border:1px solid #ffd9a059;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:40px;height:46px;padding:5px 0 4px;font-size:12px;display:flex}#character-select .cs-thumb-swatch{border:1px solid #00000059;border-radius:5px;width:20px;height:20px;box-shadow:inset 0 0 0 1px #ffffff40}#character-select .cs-thumb-label{line-height:1}#character-select .cs-thumb.active{color:#1a2a4a;background:#ffd9a0;font-weight:700}#character-select .cs-error{pointer-events:none;color:#ffcf8a;text-align:center;background:#5a280a73;border:1px solid #ffb46466;border-radius:6px;max-width:80vw;margin-top:6px;padding:6px 14px;font-size:13px}#character-select .cs-confirm{pointer-events:auto;color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:8px;padding:10px 28px;font-size:16px;font-weight:600}#teacher-desk #teacher-overlay.in-desk{z-index:auto;background:0 0;border:none;border-radius:0;width:auto;max-width:none;max-height:none;margin:0 0 14px;padding:0;position:static}#teacher-desk #teacher-overlay.in-desk h2{color:#ffd9a0;margin:0 0 6px;font-size:13px;font-weight:600}#teacher-desk #teacher-overlay.in-desk .teacher-actions button{min-height:40px}#teacher-desk #teacher-overlay.in-desk .teacher-roster-row{flex-wrap:wrap;row-gap:6px}#teacher-desk #teacher-overlay.in-desk .teacher-roster-name{flex:100%}#teacher-desk #teacher-overlay.in-desk .teacher-roster-row button{flex:auto;min-height:40px}#teacher-desk #teacher-overlay.in-desk .teacher-alphabet-panel{display:none}#teacher-overlay{z-index:5;color:#ffe9c4;background:#0a1428d1;border-radius:10px;width:260px;max-height:70vh;padding:12px 14px;font-family:system-ui,sans-serif;position:fixed;top:12px;left:12px;overflow-y:auto}#teacher-overlay h2{color:#ffd9a0;margin:0 0 8px;font-size:15px}#teacher-overlay .teacher-actions{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}#teacher-overlay .teacher-actions button{flex:auto}#teacher-overlay button{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:600}#teacher-overlay ul.teacher-roster{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}#teacher-overlay .teacher-roster-row{background:#ffffff0f;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;display:flex}#teacher-overlay .teacher-roster-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12px;overflow:hidden}#teacher-overlay .teacher-alphabet-panel{border-top:1px solid #ffffff26;margin-top:4px;padding-top:8px}#teacher-overlay .teacher-alphabet-panel h3{color:#ffd9a0;margin:0 0 6px;font-size:13px}#teacher-overlay .teacher-alphabet-panel button:disabled{opacity:.5;cursor:default}#alphabet-feedback{z-index:6;color:#ffe9c4;opacity:0;pointer-events:none;background:#0a1428d9;border-radius:8px;padding:8px 16px;font-family:system-ui,sans-serif;font-size:14px;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;top:16px;left:50%;transform:translate(-50%,-8px)}#alphabet-feedback.visible{opacity:1;transform:translate(-50%)}#alphabet-hud{z-index:6;pointer-events:none;color:#ffe9c4;font-family:system-ui,sans-serif;position:fixed;inset:0}#alphabet-hud .ahud-score{opacity:0;background:#0a1428d1;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;transition:opacity .2s;position:fixed;bottom:12px;right:12px}#alphabet-hud .ahud-score.visible{opacity:1}#alphabet-hud .ahud-stardust{color:#ffd9a0;letter-spacing:.3px;opacity:0;background:#0a1428d1;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:700;transition:opacity .2s;position:fixed;bottom:48px;right:12px}#alphabet-hud .ahud-stardust.visible{opacity:1}#alphabet-hud .ahud-round{opacity:0;pointer-events:none;text-align:center;background:#0a1428c7;border-radius:12px;padding:14px 26px;transition:opacity .25s,transform .25s;position:fixed;top:84px;left:50%;transform:translate(-50%,-8px)}#alphabet-hud .ahud-round.visible{opacity:1;transform:translate(-50%)}#alphabet-hud .ahud-round-counter{color:#cdb999;margin-bottom:4px;font-size:13px}#alphabet-hud .ahud-glyph{text-shadow:0 0 14px #ffd9a099;font-family:Noto Naskh Arabic,system-ui,sans-serif;font-size:64px;font-weight:400;line-height:1.1}#alphabet-hud .ahud-prompt{color:#ffe9c4;margin-top:4px;font-size:14px}#alphabet-hud .ahud-prompt-glyph{color:#ffd9a0;vertical-align:-2px;font-family:Noto Naskh Arabic,system-ui,sans-serif;font-size:20px;line-height:1}#alphabet-hud .ahud-audio-btn{color:#ffe9c4;cursor:pointer;background:#ffd9a040;border:none;border-radius:8px;margin:8px auto 0;padding:5px 12px;font-family:inherit;font-size:12px;display:block}#alphabet-hud .ahud-round.visible .ahud-audio-btn{pointer-events:auto}#alphabet-hud .ahud-audio-btn:hover{background:#ffd9a066}#alphabet-hud .ahud-progress{justify-content:center;gap:3px;min-height:5px;margin:0 0 8px;display:flex}#alphabet-hud .ahud-slot{background:#ffe9c429;border-radius:2px;width:10px;height:5px}#alphabet-hud .ahud-slot-riktig{background:#ffd9a0;box-shadow:0 0 6px #ffd9a0b3}#alphabet-hud .ahud-slot-spilt{background:#ffe9c461}#alphabet-hud .ahud-slot-naa{background:#7ec8ffd9;animation:1.4s ease-in-out infinite ahud-slot-pulse;box-shadow:0 0 7px #7ec8ff99}@keyframes ahud-slot-pulse{0%,to{opacity:.55}50%{opacity:1}}#alphabet-hud .ahud-glyph.ahud-countdown{color:#ffd9a0;letter-spacing:.02em;text-shadow:0 0 18px #ffd9a0bf;font-family:system-ui,sans-serif;font-weight:800}#alphabet-hud .ahud-glyph.ahud-countdown:empty:before{content:" "}#alphabet-hud .ahud-round.ahud-letter-hidden .ahud-prompt,#alphabet-hud .ahud-round.ahud-letter-hidden .ahud-audio-btn,#alphabet-hud .ahud-round.ahud-letter-hidden .ahud-glyph:not(.ahud-countdown){display:none}#alphabet-hud .ahud-status{color:#ffe9c4;opacity:0;margin-top:6px;font-size:15px;font-weight:700;transition:opacity .2s}#alphabet-hud .ahud-status.visible{opacity:1}#alphabet-hud .ahud-status:empty{display:none}#alphabet-hud .ahud-status-sub{color:#cdb999;opacity:0;margin-top:2px;font-size:12px;transition:opacity .2s}#alphabet-hud .ahud-status-sub.visible{opacity:1}#alphabet-hud .ahud-status-sub:empty{display:none}@media (width<=480px) and (height<=750px){#alphabet-hud .ahud-round{padding:10px 20px}#alphabet-hud .ahud-glyph{font-size:44px}#alphabet-hud .ahud-progress{margin-bottom:5px}#alphabet-hud .ahud-audio-btn{margin-top:5px;padding:4px 10px}#alphabet-hud .ahud-status{margin-top:4px}}#alphabet-hud .ahud-result{opacity:0;pointer-events:none;text-align:center;background:#0a1428d9;border-radius:12px;min-width:220px;padding:14px 22px;transition:opacity .25s,transform .25s;position:fixed;top:84px;left:50%;transform:translate(-50%,-8px)}#alphabet-hud .ahud-result.visible{opacity:1;transform:translate(-50%)}#alphabet-hud .ahud-result-answer{font-size:22px;font-weight:600}#alphabet-hud .ahud-result-own{color:#ffd9a0;margin-top:6px;font-size:14px}#alphabet-hud .ahud-result-wall{color:#bcd8ff;opacity:0;margin-top:5px;font-size:13px;transition:opacity .25s}#alphabet-hud .ahud-result-wall.visible{opacity:1}#alphabet-hud .ahud-result-wall:empty{display:none}#alphabet-hud .ahud-result-wall.is-rescue{color:#ffe0a6;text-shadow:0 0 12px #ffcd8280;font-weight:700}#alphabet-hud .ahud-podium{flex-direction:column;gap:4px;margin:10px 0 0;padding:0;list-style:none;display:flex}#alphabet-hud .ahud-podium-row{background:#ffffff14;border-radius:6px;justify-content:space-between;gap:14px;padding:4px 10px;font-size:13px;display:flex}#alphabet-hud .ahud-podium-row.ahud-self{background:#ffd9a04d;font-weight:700}#alphabet-hud .ahud-podium-feathers{color:#ffd9a0;white-space:nowrap;margin-left:10px}#alphabet-hud .ahud-podium-rescued{color:#bcd8ff;white-space:nowrap;margin-left:10px}#alphabet-hud .ahud-session-end{opacity:0;pointer-events:none;text-align:center;background:#0a1428e6;border-radius:14px;min-width:240px;padding:22px 30px;transition:opacity .3s;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}#alphabet-hud .ahud-session-end.visible{opacity:1}#alphabet-hud .ahud-session-end h3{color:#ffd9a0;margin:0 0 10px;font-size:18px}#alphabet-hud .ahud-session-rescued{color:#bcd8ff;margin-bottom:4px;font-size:16px}#alphabet-hud .ahud-session-stardust{color:#ffd9a0;margin-bottom:12px;font-size:16px;font-weight:700}#alphabet-hud .ahud-session-rescued:empty,#alphabet-hud .ahud-session-stardust:empty{display:none}#alphabet-hud .ahud-session-home{color:#ffe0a6;text-shadow:0 0 16px #ffcd8273;margin-bottom:8px;font-size:19px;font-weight:800}#alphabet-hud .ahud-session-home:empty{display:none}#alphabet-hud.ahud-celebrating .ahud-result{box-shadow:0 0 40px #ffd9a08c}.ahud-confetti{z-index:7;pointer-events:none;position:fixed;inset:0}#alphabet-hud .ahud-choice{opacity:0;pointer-events:none;text-align:center;white-space:nowrap;background:#0a1428e0;border:2px solid #ffb733;border-radius:14px;padding:10px 22px;transition:opacity .14s,transform .14s;position:fixed;top:46%;left:50%;transform:translate(-50%)scale(.94)}#alphabet-hud .ahud-choice.visible{opacity:1;transform:translate(-50%)scale(1)}#alphabet-hud .ahud-choice-label{color:#ffe9c4;margin-right:8px;font-size:15px}#alphabet-hud .ahud-choice-glyph{color:#ffd9a0;vertical-align:middle;font-family:Noto Naskh Arabic,system-ui,sans-serif;font-size:40px;line-height:1.1}#alphabet-hud .ahud-choice-name{color:#ffd9a0;margin-left:8px;font-size:17px;font-weight:600}#alphabet-hud .ahud-arena-hint{opacity:0;pointer-events:none;color:#ffe9c4;white-space:nowrap;text-overflow:ellipsis;background:#0a1428b8;border-radius:999px;max-width:92vw;padding:7px 16px;font-size:14px;transition:opacity .4s;position:fixed;bottom:21%;left:50%;overflow:hidden;transform:translate(-50%)}#alphabet-hud .ahud-arena-hint.visible{opacity:1}#perch-aim-hint{z-index:6;pointer-events:none;opacity:0;color:#2a1608;white-space:nowrap;background:#ffb733f0;border-radius:999px;padding:5px 13px;font-size:14px;font-weight:600;transition:opacity .25s;position:fixed;transform:translate(-50%,-100%)}#perch-aim-hint.visible{opacity:1}#alphabet-hud .ahud-quest-chip.tappable{cursor:pointer}#alif-pickup-hint{z-index:6;pointer-events:none;opacity:0;color:#2a1608;white-space:nowrap;background:#ffb733f0;border-radius:999px;padding:5px 13px;font-size:14px;font-weight:600;transition:opacity .25s;position:fixed;transform:translate(-50%,-100%)}#alif-pickup-hint.visible{opacity:1}#aim-crosshair{z-index:6;pointer-events:none;opacity:0;border:2px solid #ffffffbf;border-radius:50%;width:18px;height:18px;transition:opacity .2s;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000059,inset 0 0 0 1px #00000059}#aim-crosshair.visible{opacity:1}#alphabet-hud .ahud-story{opacity:0;pointer-events:none;text-align:center;color:#ffe9c4;text-shadow:0 0 18px #ffd9a073;background:#0a1428c7;border-radius:14px;max-width:70vw;padding:12px 24px;font-size:18px;font-weight:600;line-height:1.35;transition:opacity .5s,transform .5s;position:fixed;bottom:calc(21% + 44px);left:50%;transform:translate(-50%)translateY(6px)}#alphabet-hud .ahud-story.visible{opacity:1;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){#alphabet-hud .ahud-round,#alphabet-hud .ahud-result,#alphabet-hud .ahud-score,#alphabet-hud .ahud-choice,#alphabet-hud .ahud-arena-hint,#perch-aim-hint,#alif-pickup-hint,#alphabet-hud .ahud-story,#alphabet-hud .ahud-stardust,#aim-crosshair,#alphabet-hud .ahud-status,#alphabet-hud .ahud-status-sub{transition:none}#alphabet-hud .ahud-slot-naa{opacity:1;animation:none}}#voip-overlay{z-index:5;color:#ffe9c4;background:#0a1428d1;border-radius:10px;flex-direction:column;gap:6px;max-width:240px;padding:10px 14px;font-family:system-ui,sans-serif;font-size:12px;display:flex;position:fixed;bottom:12px;left:12px}#voip-overlay .voip-knapp{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600}#voip-overlay .voip-knapp:disabled{opacity:.6;cursor:default}#voip-overlay .voip-knapp[hidden],#voip-overlay .voip-apen-mikrofon[hidden]{display:none}#voip-overlay .voip-apen-mikrofon{cursor:pointer;align-items:center;gap:6px;display:flex}#voip-overlay .voip-tavle-varsel{color:#ffd9a0;margin:0}#voip-overlay .voip-ptt-hint{color:#cdb999;margin:0}#voip-overlay .voip-ptt-hint kbd{background:#ffffff1f;border-radius:4px;padding:1px 6px;font-family:monospace}#voip-overlay .voip-taler{color:#8fe38f;margin:0;font-weight:600}#voip-overlay .voip-mutet{color:#ff9a9a;margin:0;font-weight:600}#voip-overlay .voip-lyd-blokkert[hidden]{display:none}#voip-overlay .voip-lyd-blokkert{color:#2a1010;cursor:pointer;background:#ff9a9a;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:600}#voip-overlay .voip-status{color:#cdb999;margin:0}#voip-overlay .voip-feil{color:#ff9a9a;margin:0}#touch-controls{z-index:4;pointer-events:none;position:fixed;inset:0}#touch-controls .tc-joystick-base{pointer-events:auto;background:#ffd9a024;border:2px solid #ffd9a047;border-radius:50%;width:120px;height:120px;position:absolute;bottom:24px;left:24px}#touch-controls .tc-joystick-knob{pointer-events:none;background:#ffd9a066;border-radius:50%;width:56px;height:56px;margin:-28px 0 0 -28px;transition:background .1s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#touch-controls .tc-jump-btn,#touch-controls .tc-ptt-btn{color:#ffe9c4;pointer-events:auto;-webkit-tap-highlight-color:transparent;background:#0a142859;border:2px solid #ffd9a066;border-radius:50%;font-size:26px;line-height:1;position:absolute;right:24px}#touch-controls .tc-jump-btn{width:72px;height:72px;bottom:28px}#touch-controls .tc-ptt-btn{border-color:#7ec8ff66;width:60px;height:60px;font-size:22px;bottom:116px}#touch-controls .tc-jump-btn.tc-active,#touch-controls .tc-ptt-btn.tc-active{background:#ffd9a066}#touch-controls .tc-ptt-btn.tc-active{background:#7ec8ff66}#teacher-desk{z-index:8;color:#ffe9c4;box-sizing:border-box;-webkit-tap-highlight-color:transparent;background:#0a1428db;border:1px solid #ffd9a038;border-radius:12px;flex-direction:column;width:min(360px,44vw);padding:12px;font-family:system-ui,sans-serif;display:flex;position:fixed;top:60px;bottom:12px;right:12px}@media (width<=640px){#teacher-desk{width:auto;padding:10px;inset:56px 12px 8px}#teacher-desk h2{margin-bottom:6px;font-size:15px}}#teacher-desk h2{color:#ffd9a0;letter-spacing:.01em;margin:0 0 8px;font-size:17px}#teacher-desk h3{color:#ffd9a0;margin:0 0 6px;font-size:13px;font-weight:600}#teacher-desk h4{color:#e8d3b0;margin:0 0 5px;font-size:12px;font-weight:600}#teacher-desk .desk-settings-header{border-top:1px solid #ffe9c433;margin-bottom:8px;padding-top:10px}#teacher-desk .desk-settings-header h3{opacity:.85;margin:0;font-size:12px}#teacher-desk .desk-controls-end{margin-top:4px}#teacher-desk .desk-body{overscroll-behavior:contain;flex:auto;overflow-y:auto}#teacher-desk .desk-now{margin:0 0 10px}#teacher-desk .desk-now[hidden]{display:none}#teacher-desk .desk-now .desk-btn:last-child{margin-bottom:0}#teacher-desk .desk-tabs{background:#ffe9c414;border-radius:10px;gap:4px;margin:0 0 10px;padding:3px;display:flex}#teacher-desk .desk-tab{cursor:pointer;color:#ffe9c4b8;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:8px;flex:1 1 0;min-width:0;min-height:40px;padding:6px 4px;font-family:inherit;font-size:13px;font-weight:700;overflow:hidden}#teacher-desk .desk-tab.selected{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}#teacher-desk .desk-pane[hidden]{display:none}#teacher-desk .desk-pane>.desk-section:last-child{margin-bottom:0}#teacher-desk .desk-section{margin-bottom:14px}#teacher-desk .desk-arena-warning{color:#ffc98a;background:#ffb45a1f;border-left:3px solid #ffb45a;border-radius:4px;margin:0 0 8px;padding:8px 10px;font-size:13px;line-height:1.35;display:none}#teacher-desk.outside-arena .desk-arena-warning{display:block}#teacher-desk .desk-goto-arena{color:#1a2a4a;cursor:pointer;background:#ffb45a;border:none;border-radius:8px;width:100%;min-height:44px;margin:0 0 10px;font-size:15px;font-weight:700;display:block}#teacher-desk .desk-goto-arena[hidden]{display:none}#teacher-desk .desk-btn{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:10px;width:100%;min-height:48px;margin-bottom:8px;font-size:15px;font-weight:700;display:block}#teacher-desk .desk-btn[hidden]{display:none}#teacher-desk .desk-btn:disabled{opacity:.42;cursor:default}#teacher-desk .desk-btn.active{background:#7ee0a0}#teacher-desk .desk-board-status{opacity:.85;margin:0 0 8px;font-size:12px}#teacher-desk .desk-board-status.sharing{color:#7ee0a0;opacity:1;font-weight:700}#teacher-desk .desk-share-stop{color:#ffb0b0;background:0 0;border:1px solid #ffb0b080;font-weight:600}#teacher-desk .desk-board-error{color:#ffb0b0;margin:0 0 8px;font-size:12px;line-height:1.35}#teacher-desk .desk-focus{color:#14202c;background:#ffd166;font-weight:700}#teacher-desk .desk-focus.active{background:#ff9f45}#teacher-desk .desk-focus[hidden]{display:none}#teacher-desk .desk-focus-auto{opacity:.85;cursor:pointer;align-items:center;gap:6px;margin:0 0 8px;font-size:12px;display:flex}#teacher-desk .desk-focus-auto[hidden]{display:none}#teacher-desk .desk-focus-auto input{accent-color:#ffd166;width:16px;height:16px}#teacher-desk .desk-focus-status{color:#ffd166;margin:0 0 8px;font-size:12px;font-weight:700}#teacher-desk .desk-focus-status[hidden]{display:none}#teacher-desk .desk-focus-check{opacity:.75;margin:-4px 0 8px;font-size:11px;line-height:1.35}#teacher-desk .desk-focus-check[hidden]{display:none}#board-focus{z-index:20;opacity:0;transform-origin:50% 44%;background:#05060a;transition:opacity .2s ease-out,transform .22s cubic-bezier(.22,.61,.36,1);display:block;position:fixed;inset:0;transform:scale(1.04)}#board-focus.bf-in{opacity:1;transform:none}#board-focus:not(.bf-in){pointer-events:none}#board-focus.bf-stalled{pointer-events:none;background:0 0}#board-focus.bf-stalled .bf-main,#board-focus.bf-stalled .bf-pip{visibility:hidden}#board-focus.bf-stalled .bf-waiting{background:#080c14d1;border-radius:10px;padding:10px 18px}@media (prefers-reduced-motion:reduce){#board-focus{transition-duration:1ms}}#board-focus[hidden]{display:none}#board-focus .bf-stage{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#board-focus .bf-main{object-fit:contain;image-rendering:auto;background:#05060a;width:100%;height:100%}#board-focus .bf-pip{object-fit:contain;background:#05060a;border-radius:8px;width:22%;max-height:30%;position:absolute;bottom:3%;right:2%;box-shadow:0 4px 20px #0000008c}#board-focus .bf-waiting{color:#cfd6e2;letter-spacing:.02em;margin:0;font-size:18px;position:absolute}#board-focus .bf-bar{color:#eaf0f8;background:#080c14c7;flex-wrap:wrap;align-items:baseline;gap:2px 12px;padding:7px 18px;display:flex;position:absolute;bottom:0;left:0;right:0}#board-focus .bf-title{font-size:15px;font-weight:700}#board-focus .bf-hint{opacity:.8;font-size:13px}#teacher-desk .desk-reveal{letter-spacing:.06em;background:#7ee0a0;min-height:62px;font-size:20px}#teacher-desk .desk-reveal[hidden]{display:none}#teacher-desk .desk-stop{color:#ffb0b0;background:0 0;border:1px solid #ffb0b080;font-weight:600}#teacher-desk .desk-story{color:#dbe8ff;background:#7ea8e038;border:1px solid #a0c8ff8c;font-weight:600}#teacher-desk .desk-choices{flex-wrap:wrap;gap:6px;display:flex}#teacher-desk .desk-choice{cursor:pointer;color:#ffe9c4;text-align:left;background:#17233fb3;border:1px solid #ffe9c440;border-radius:8px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:flex-start;gap:2px;min-width:92px;min-height:52px;padding:6px 10px;display:flex}#teacher-desk .desk-choice-wide{flex:100%}#teacher-desk .desk-choice.selected{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}#teacher-desk .desk-choice:disabled{opacity:.45;cursor:default}#teacher-desk .desk-choice-label{font-size:14px;font-weight:700}#teacher-desk .desk-choice-hint{opacity:.8;font-size:11px;line-height:1.25}#teacher-desk .desk-live{letter-spacing:.08em;text-transform:uppercase;color:#7ee0a0;margin-left:6px;font-size:10px;font-weight:600}#teacher-desk ul.desk-standing-list,#teacher-desk ul.desk-summary-list{margin:0;padding:0;list-style:none}#teacher-desk .desk-standing-row{background:#17233f8c;border-radius:6px;align-items:center;gap:8px;min-height:40px;margin-bottom:3px;padding:4px 8px;display:flex}#teacher-desk .desk-standing-row.has-players{background:#ffd9a024}#teacher-desk .desk-standing-row.is-target{border-left:3px solid #7ee0a0}#teacher-desk .desk-standing-glyph{text-align:center;color:#ffe9c4;flex:0 0 30px;font-size:22px;line-height:1}#teacher-desk .desk-standing-names{word-break:break-word;flex:auto;font-size:12px;line-height:1.3}#teacher-desk .desk-standing-count{color:#ffd9a0;text-align:right;flex:none;min-width:16px;font-size:12px;font-weight:700}#teacher-desk .desk-standing-floor{opacity:.75}#teacher-desk .desk-summary[hidden]{display:none}#teacher-desk .desk-summary-row{background:#17233f8c;border-radius:6px;align-items:center;gap:8px;min-height:32px;margin-bottom:3px;padding:3px 8px;font-size:12px;display:flex}#teacher-desk .desk-summary-row.correct{border-left:3px solid #7ee0a0}#teacher-desk .desk-summary-row.wrong{border-left:3px solid #ffe9c440}#teacher-desk .desk-summary-name{flex:auto}#teacher-desk .desk-summary-mark{color:#7ee0a0;flex:none;font-weight:700}#teacher-desk .desk-summary-feathers{color:#ffd9a0;flex:none}.letterset-picker{flex-direction:column;gap:5px;display:flex}.letterset-picker .letterset-option{cursor:pointer;color:#ffe9c4;text-align:left;background:#17233fb3;border:1px solid #ffe9c440;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:8px;min-height:44px;padding:6px 10px;font-family:inherit;display:flex}.letterset-picker .letterset-option.selected{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}.letterset-picker .letterset-option:disabled{opacity:.45;cursor:default}.letterset-picker .letterset-label{font-size:13px;font-weight:700}.letterset-picker .letterset-glyphs{letter-spacing:.08em;font-size:19px;line-height:1.1}.letterset-picker .letterset-hint{opacity:.78;flex:100%;font-size:11px;line-height:1.25}.letterset-picker.letterset-compact{flex-flow:wrap;gap:4px}.letterset-picker.letterset-compact .letterset-option{min-height:38px;padding:4px 8px}.letterset-picker.letterset-compact .letterset-label{font-size:11px}.letterset-picker.letterset-compact .letterset-glyphs{font-size:15px}#solo-letterset{z-index:5;color:#ffe9c4;background:#0a1428cc;border:1px solid #ffd9a033;border-radius:10px;max-width:min(330px,52vw);padding:8px 10px;font-family:system-ui,sans-serif;position:fixed;bottom:12px;left:12px}#solo-letterset h3{color:#ffd9a0;margin:0 0 6px;font-size:12px;font-weight:600}#alphabet-hud .ahud-quest{opacity:0;pointer-events:none;text-align:center;color:#ffe9c4;background:#0a1428cc;border-radius:14px;max-width:74vw;padding:12px 24px;transition:opacity .35s,transform .35s;position:fixed;top:84px;left:50%;transform:translate(-50%)translateY(-6px)}#alphabet-hud .ahud-quest.visible{opacity:1;transform:translate(-50%)translateY(0)}#alphabet-hud .ahud-quest-main{font-size:18px;font-weight:700;line-height:1.3}#alphabet-hud .ahud-quest-sub{opacity:.85;margin-top:4px;font-size:14px;font-weight:500;line-height:1.3}#alphabet-hud .ahud-quest-sub-ar{color:#ffd9a0;vertical-align:-1px;font-family:Noto Naskh Arabic,system-ui,sans-serif;font-size:17px;line-height:1}#alphabet-hud .ahud-quest-sub-sep{opacity:.7}#alphabet-hud .ahud-quest-chip{opacity:0;pointer-events:none;color:#ffe9c4;background:#0a1428d1;border-radius:10px;padding:6px 12px;font-size:15px;font-weight:700;transition:opacity .3s;position:fixed;top:88px;left:12px}#alphabet-hud .ahud-quest-chip.visible{opacity:1}@media (prefers-reduced-motion:reduce){#alphabet-hud .ahud-quest,#alphabet-hud .ahud-quest-chip{transition:none}}#alphabet-hud .ahud-stardust{border:1px solid #ffd9a073;padding:7px 14px;font-size:16px;box-shadow:0 0 14px #ffd9a02e}@keyframes ahud-stardust-pop{0%{transform:scale(1)}35%{transform:scale(1.22);box-shadow:0 0 26px #ffd9a0a6}to{transform:scale(1)}}#alphabet-hud .ahud-stardust-pop{animation:.6s ease-out ahud-stardust-pop}#alphabet-hud .ahud-stardust-flyer{z-index:6;pointer-events:none;color:#ffd9a0;text-shadow:0 0 16px #ffd9a0bf;font-size:22px;font-weight:800;transition:left .9s cubic-bezier(.4,0,.2,1),top .9s cubic-bezier(.4,0,.2,1),opacity .9s ease-in,transform .9s ease-in;position:fixed;top:58%;left:50%;transform:translate(-50%)scale(1)}#alphabet-hud .ahud-stardust-flyer.flying{opacity:0;top:calc(100% - 62px);left:calc(100% - 60px);transform:translate(-50%)scale(.62)}#alphabet-hud .ahud-session-stardust{color:#ffd9a0;text-shadow:0 0 14px #ffd9a066;font-size:18px;font-weight:800}@media (prefers-reduced-motion:reduce){#alphabet-hud .ahud-stardust-pop{animation:none}}#teacher-desk .desk-next-letter{color:#10241a;background:#7ee0a0;border-color:#7ee0a0;min-height:62px;font-size:17px;font-weight:800}#teacher-desk .desk-next-letter[hidden],#teacher-desk .desk-start[hidden]{display:none}#teacher-desk .desk-answered{color:#ffe9c4;background:#17233fa6;border-radius:6px;margin:0 0 6px;padding:4px 8px;font-size:13px;font-weight:700;display:none}#teacher-desk .desk-answered.visible{display:block}#teacher-desk .desk-answered.all-in{color:#d8ffe6;background:#7ee0a038}#teacher-desk ul.desk-roster-list{margin:0;padding:0;list-style:none}#teacher-desk .desk-roster-row{background:#17233f8c;border-radius:6px;align-items:center;gap:8px;min-height:44px;margin-bottom:4px;padding:4px 8px;font-size:13px;display:flex}#teacher-desk .desk-roster-row.answered{border-left:3px solid #7ee0a0}#teacher-desk .desk-roster-name{word-break:break-word;flex:auto}#teacher-desk .desk-roster-mark{color:#7ee0a0;flex:0 0 14px;font-weight:700}#teacher-desk .desk-roster-summon{cursor:pointer;color:#dbe8ff;background:#7ea8e03d;border:1px solid #ffe9c44d;border-radius:8px;flex:none;min-height:36px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}#teacher-desk .desk-roster-row{flex-wrap:wrap;row-gap:6px}#teacher-desk .desk-roster-actions{flex-wrap:wrap;flex:100%;gap:6px;display:flex}#teacher-desk .desk-roster-actions button{cursor:pointer;text-align:center;color:#dbe8ff;background:#7ea8e03d;border:1px solid #ffe9c44d;border-radius:8px;flex:auto;min-width:92px;min-height:40px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}#teacher-desk .desk-roster-actions button:disabled{cursor:default;opacity:.55}#teacher-desk .desk-roster-give{color:#ffe9c4;background:#f0b45a42;border-color:#f0b45a80}#teacher-desk .desk-roster-give.sent{color:#d8ffe6;opacity:1;background:#7ee0a03d;border-color:#7ee0a080}#teacher-desk .desk-roster-zone{letter-spacing:.02em;color:#cfe0ff;white-space:nowrap;background:#7ea8e02e;border-radius:999px;flex:none;padding:2px 6px;font-size:10px;font-weight:700}#teacher-desk .desk-roster-row.offline{opacity:.62}#teacher-desk .desk-roster-row.offline .desk-roster-zone{color:#ffd0d0;background:#e07e7e38}#teacher-desk .desk-roster-stars{color:#ffd9a0;flex:none;font-size:12px;font-weight:800}#teacher-desk .desk-roster-empty{opacity:.7;margin:0;font-size:11px}#teacher-desk .desk-roster-summary{color:#cfe0ff;opacity:.9;margin:0 0 6px;font-size:11px;font-weight:700;line-height:1.4}#teacher-desk .desk-reward-hint{opacity:.78;margin:0 0 8px;font-size:11px;line-height:1.35}#teacher-desk .desk-btn.desk-reward-class.sent{color:#16321f;opacity:1;background:#9fe6a0}#teacher-desk .desk-goto-choices .desk-choice{min-width:72px;min-height:46px;font-size:13px;font-weight:700}#teacher-desk .desk-sort-group{margin-top:8px}#teacher-desk .desk-sort-label{opacity:.75;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px;display:block}#teacher-desk .desk-sort-choices .desk-choice{min-width:72px;min-height:40px;font-size:13px;font-weight:700}#leaderboard{z-index:6;pointer-events:none;opacity:0;color:#ffe9c4;background:#0a1428e6;border:1px solid #ffd9a052;border-radius:14px;min-width:min(330px,62vw);max-width:min(360px,62vw);max-height:62vh;padding:12px 16px 10px;font-family:system-ui,sans-serif;transition:opacity .25s;position:fixed;top:50%;left:12px;overflow-y:auto;transform:translateY(-50%);box-shadow:0 8px 30px #00000073}#leaderboard.visible{opacity:1}@media (width<=480px) and (height<=750px){#leaderboard{max-height:calc(79vh - 441px);top:380px;bottom:auto;transform:none}#leaderboard .lb-title{margin-bottom:4px;font-size:14px}#leaderboard .lb-head{padding-bottom:2px}#leaderboard .lb-row{min-height:28px;margin-bottom:2px;font-size:13px}}#leaderboard .lb-title{color:#ffd9a0;text-align:center;letter-spacing:.02em;margin:0 0 8px;font-size:17px;font-weight:800}#leaderboard .lb-head,#leaderboard .lb-row{align-items:center;gap:8px;display:flex}#leaderboard .lb-head{letter-spacing:.06em;text-transform:uppercase;opacity:.6;padding:0 8px 4px;font-size:10px}#leaderboard .lb-head-rank{flex:0 0 34px}#leaderboard .lb-head-name{flex:auto}#leaderboard .lb-head-points{text-align:right;flex:0 0 54px}#leaderboard .lb-head-stardust{text-align:right;flex:0 0 74px}#leaderboard ol.lb-rows{margin:0;padding:0;list-style:none}#leaderboard .lb-row{background:#17233f99;border-radius:7px;min-height:34px;margin-bottom:3px;padding:3px 8px;font-size:14px}#leaderboard .lb-row.is-self{background:#ffd9a033;font-weight:700}#leaderboard .lb-identity{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}#leaderboard .lb-rank{color:#ffd9a0;flex:0 0 34px;font-weight:700}#leaderboard .lb-name{word-break:break-word;flex:auto}#leaderboard .lb-points{text-align:right;flex:0 0 54px;font-weight:700}#leaderboard .lb-stardust{text-align:right;color:#ffd9a0;flex:0 0 74px;font-weight:700}#leaderboard .lb-head-points.lb-sort-active,#leaderboard .lb-head-stardust.lb-sort-active{opacity:1;color:#ffd9a0}#leaderboard .lb-points.lb-sort-active,#leaderboard .lb-stardust.lb-sort-active{color:#fff2d9;text-shadow:0 0 6px #ffd9a099}#leaderboard .lb-empty,#leaderboard .lb-self{text-align:center;margin:8px 0 0;font-size:13px;display:none}#leaderboard .lb-empty.visible,#leaderboard .lb-self.visible{display:block}#leaderboard .lb-self{color:#ffd9a0;font-weight:700}@media (width<=480px){#leaderboard .lb-row{flex-wrap:wrap;justify-content:flex-end;row-gap:4px}#leaderboard .lb-identity{flex:100%}}.lettergrid{flex-direction:column;gap:6px;display:flex}.lettergrid.disabled{opacity:.5}.lettergrid .lettergrid-title{color:#e8d3b0;margin:0;font-size:12px;font-weight:600}.lettergrid .lettergrid-hint{opacity:.75;margin:0;font-size:11px;line-height:1.3}.lettergrid .lettergrid-cells{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:4px;display:grid}.lettergrid .lettergrid-cell{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c438;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:52px;padding:4px 2px;font-family:inherit;display:flex}.lettergrid .lettergrid-cell.selected{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}.lettergrid .lettergrid-cell.at-home{box-shadow:inset 0 -3px #f0b45a}.lettergrid .lettergrid-cell.at-home.selected{box-shadow:inset 0 -3px #8a5a12}.lettergrid .lettergrid-cell:disabled{cursor:default}.lettergrid .lettergrid-glyph{font-size:24px;line-height:1.05}.lettergrid .lettergrid-name{opacity:.8;letter-spacing:.02em;font-size:9px}.lettergrid .lettergrid-actions{z-index:1;background:#081122f5;border-top:1px solid #ffd9a038;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;padding:8px 4px;display:flex;position:sticky;bottom:0}.lettergrid .lettergrid-count{opacity:.8;flex:auto;font-size:11px}.lettergrid .lettergrid-clear,.lettergrid .lettergrid-apply{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c44d;border-radius:8px;min-height:40px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:700}.lettergrid .lettergrid-apply{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}.lettergrid .lettergrid-clear:disabled,.lettergrid .lettergrid-apply:disabled{opacity:.42;cursor:default}.wallpanel{flex-direction:column;gap:6px;display:flex}.wallpanel .wallpanel-title{color:#ffe9c4;margin:0;font-size:13px;font-weight:700}.wallpanel .wallpanel-progress{color:#f0b45a;font-size:15px;font-weight:800}.wallpanel .wallpanel-progress.full{color:#9fe6a0}.wallpanel .wallpanel-next{color:#ffe9c4;background:#f0b45a24;border-left:3px solid #f0b45a;border-radius:6px;margin:0;padding:6px 8px;font-size:12px;line-height:1.35}.wallpanel .wallpanel-hint{opacity:.75;margin:0;font-size:11px;line-height:1.3}.wallpanel .wallpanel-cells{grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:3px;display:grid}.wallpanel .wallpanel-cell{cursor:pointer;color:#ffe9c480;background:#17233fb3;border:1px solid #ffe9c42e;border-radius:6px;justify-content:center;align-items:center;min-height:40px;padding:2px;font-family:inherit;display:flex}.wallpanel .wallpanel-cell[data-state=off]{color:#ffe9c457;background:#0e1628b8;border-color:#ffe9c424}.wallpanel .wallpanel-cell[data-state=away]{color:#cfe0ef;background:#34445c8c;border-color:#9eb8d29e}.wallpanel .wallpanel-cell[data-state=home]{color:#ffe9c4;background:#f0b45a38;border-color:#f0b45a}.wallpanel .wallpanel-cell.by-class{color:#1a2a4a;cursor:default;background:#f0b45a;border-color:#f0b45a}.wallpanel .wallpanel-glyph{font-size:18px;line-height:1}.wallpanel .wallpanel-reset{cursor:pointer;color:#ffe9c4bf;background:#17233fb3;border:1px solid #ffe9c447;border-radius:8px;min-height:40px;margin-top:4px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:700}.wallpanel .wallpanel-reset.armed{color:#fff3e6;background:#b3452f;border-color:#e26a4f}.wallpanel .wallpanel-reset-hint{opacity:.6;margin:0;font-size:10px;line-height:1.3}.wallpanel .wallpanel-actions{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.wallpanel .wallpanel-actions button{cursor:pointer;color:#ffe9c4;background:#17233fcc;border:1px solid #ffe9c44d;border-radius:8px;flex:140px;min-height:40px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}.wallpanel .wallpanel-actions button:disabled{opacity:.42;cursor:default}#alphabet-hud .ahud-summon{opacity:0;pointer-events:none;color:#0d1c33;text-align:center;background:#7ea8e0eb;border-radius:999px;max-width:80vw;padding:9px 20px;font-size:16px;font-weight:800;transition:opacity .25s,transform .25s;position:fixed;top:18px;left:50%;transform:translate(-50%)translateY(-6px);box-shadow:0 4px 18px #00000059}#alphabet-hud .ahud-summon.visible{opacity:1;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){#alphabet-hud .ahud-summon{transition:none}}#cosmeticShop{z-index:7;pointer-events:none;opacity:0;color:#f7e8c8;background:#18100aeb;border:1px solid #e8c46a6b;border-radius:14px;width:min(340px,64vw);max-height:min(62vh,100vh - 240px);padding:12px 14px 10px;font-family:system-ui,sans-serif;transition:opacity .2s;position:fixed;top:50%;right:12px;overflow-y:auto;transform:translateY(-50%);box-shadow:0 8px 30px #00000080}#cosmeticShop.visible{opacity:1;pointer-events:auto}#cosmeticShop .cs-title{color:#ffd98a;letter-spacing:.01em;margin:0 0 2px;font-size:17px}#cosmeticShop .cs-balance{color:#ffe9c4;margin:0 0 6px;font-size:15px;font-weight:600}#cosmeticShop .cs-hint{color:#f7e8c8b3;margin:0 0 8px;font-size:12px;line-height:1.35}#cosmeticShop .cs-grid{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}#cosmeticShop .cs-item{cursor:pointer;background:#ffe9c40f;border:1px solid #0000;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:48px 1fr auto;align-items:center;gap:1px 8px;min-height:64px;padding:7px 9px;transition:background .15s,border-color .15s;display:grid;position:relative}#cosmeticShop .cs-item:hover{background:#ffe9c41c}#cosmeticShop .cs-item.cs-trying{background:#8fd6e824;border-color:#8fd6e8d9}#cosmeticShop .cs-item.cs-worn{border-color:#e8c46abf}#cosmeticShop .cs-icon{background:#ffe9c41a;border-radius:9px;grid-area:1/1/span 2;justify-content:center;align-items:center;width:44px;height:44px;display:flex}#cosmeticShop .cs-icon canvas{width:44px;height:44px;display:block}#cosmeticShop .cs-name{grid-area:1/2;font-size:14px;font-weight:600}#cosmeticShop .cs-blurb{color:#f7e8c8a8;grid-area:2/2;font-size:11px;line-height:1.3}#cosmeticShop .cs-price{color:#ffd98a;white-space:nowrap;grid-area:1/3;font-size:14px;font-weight:700}#cosmeticShop .cs-badge{color:#9fe0a8;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;grid-area:1/3;font-size:11px;font-weight:700}#cosmeticShop .cs-badge[hidden],#cosmeticShop .cs-price[hidden]{display:none}#cosmeticShop .cs-btn{color:#ffe9c4;min-width:74px;min-height:30px;font:inherit;cursor:pointer;background:#ffe9c41f;border:1px solid #ffe9c44d;border-radius:8px;grid-area:2/3;justify-self:end;padding:4px 12px;font-size:13px;font-weight:600}#cosmeticShop .cs-btn:hover:not(:disabled){background:#ffe9c438}#cosmeticShop .cs-btn.cs-btn-buy:not(:disabled){background:#78b47847;border-color:#9fe0a88c}#cosmeticShop .cs-btn:disabled{opacity:.45;cursor:default}#cosmeticShop .cs-message{color:#9fe0a8;min-height:17px;margin:8px 0 0;font-size:13px;line-height:1.35}#cosmeticShop .cs-message.cs-deny{color:#ffd98a}#cosmeticShop .cs-empty{color:#f7e8c8b3;padding:12px 4px;font-size:13px;list-style:none}#cosmeticShop.cs-closed .cs-hint{opacity:.5}#cosmeticShop.cs-closed .cs-item{cursor:default}#writing-board{z-index:9;-webkit-tap-highlight-color:transparent;font-family:system-ui,sans-serif;position:fixed;bottom:12px;left:12px}body.har-touch-kontroller #writing-board{bottom:160px}#writing-board .wb-sheet{box-sizing:border-box;color:#ffe9c4;background:#0a1428e6;border:1px solid #ffd9a03d;border-radius:14px;flex-direction:column;gap:8px;width:min(360px,46vw);max-height:calc(100vh - 24px);padding:12px;display:flex;overflow-y:auto;box-shadow:0 10px 34px #00000073}#writing-board .wb-sheet[hidden]{display:none}body.har-touch-kontroller #writing-board .wb-sheet{max-height:calc(100vh - 172px)}#writing-board .wb-head{justify-content:space-between;align-items:center;gap:8px;display:flex}#writing-board .wb-title{color:#ffd9a0;font-size:20px;font-weight:800}#writing-board .wb-hide{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c44d;border-radius:8px;min-height:34px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:700}#writing-board .wb-paper-wrap{position:relative}#writing-board .wb-canvas{aspect-ratio:1;touch-action:none;cursor:crosshair;background:#fdfaf3;border-radius:10px;width:100%;display:block;box-shadow:inset 0 0 0 1px #3c5a822e}#writing-board .wb-banner{text-align:center;color:#1a2a4a;background:#ffd9a0f2;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:700;position:absolute;bottom:8px;left:8px;right:8px;box-shadow:0 4px 14px #00000040}#writing-board .wb-hint{opacity:.9;margin:0;font-size:12px;line-height:1.35}#writing-board .wb-colors{align-items:center;gap:8px;display:flex}#writing-board .wb-colors-label{opacity:.7;font-size:11px}#writing-board .wb-swatches{flex-wrap:wrap;gap:6px;display:flex}#writing-board .wb-swatch{cursor:pointer;background:var(--wb-swatch,#22304a);border:2px solid #ffe9c440;border-radius:50%;width:34px;height:34px;padding:0}#writing-board .wb-swatch.valgt{border-color:#ffe9c4;box-shadow:0 0 0 3px #ffd9a059}#writing-board .wb-actions{gap:6px;display:flex}#writing-board .wb-actions button{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c44d;border-radius:8px;flex:1;min-height:40px;padding:6px 8px;font-family:inherit;font-size:12px;font-weight:700}#writing-board .wb-send{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}#writing-board .wb-actions button:disabled{opacity:.5;cursor:default}#writing-board .wb-reopen{cursor:pointer;color:#ffe9c4;background:#0a1428e0;border:1px solid #ffd9a04d;border-radius:10px;min-height:40px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:700}.wrev{flex-direction:column;gap:6px;display:flex}.wrev .wrev-title{color:#ffe9c4;margin:0;font-size:13px;font-weight:700}.wrev .wrev-works-title{color:#ffe9c4;margin:6px 0 0;font-size:12px;font-weight:700}.wrev .wrev-letters{grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:3px;display:grid}.wrev .wrev-letter{cursor:pointer;color:#ffe9c499;background:#17233fb3;border:1px solid #ffe9c42e;border-radius:6px;min-height:40px;font-family:inherit;font-size:20px;line-height:1}.wrev .wrev-letter.valgt{color:#1a2a4a;background:#f0b45a;border-color:#f0b45a}.wrev .wrev-letter{position:relative}.wrev .wrev-letter.har-guide:after{content:"";background:#ffd9a0d9;border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:4px;left:50%}.wrev .wrev-letter.har-guide.valgt:after{background:#1a2a4a}.wrev .wrev-letters-hint{opacity:.7;margin:0;font-size:11px;line-height:1.3}.wrev .wrev-modes{gap:4px;display:flex}.wrev .wrev-mode{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c43d;border-radius:8px;flex:1;min-height:40px;padding:4px 6px;font-family:inherit;font-size:12px;font-weight:700}.wrev .wrev-mode.valgt{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}.wrev .wrev-mode-hint,.wrev .wrev-demo-hint{opacity:.75;margin:0;font-size:11px;line-height:1.3}.wrev .wrev-open,.wrev .wrev-close,.wrev .wrev-demo-clear{cursor:pointer;color:#ffe9c4;background:#17233fb3;border:1px solid #ffe9c44d;border-radius:8px;min-height:40px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:700}.wrev .wrev-open{color:#1a2a4a;background:#ffd9a0;border-color:#ffd9a0}.wrev .wrev-works-empty{opacity:.7;margin:0;font-size:11px;line-height:1.3}.wrev .wrev-works{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.wrev .wrev-work{background:#17233f8c;border:1px solid #ffe9c424;border-radius:8px;align-items:center;gap:8px;padding:4px;display:flex}.wrev .wrev-work.rost{background:#f0b45a24;border-color:#f0b45a}.wrev .wrev-mini{background:#fdfaf3;border-radius:6px;flex:none;width:48px;height:48px}.wrev .wrev-mini.laster{opacity:.4}.wrev .wrev-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.wrev .wrev-letterglyph{color:#ffd9a0;font-size:18px;line-height:1}.wrev .wrev-name{color:#ffe9c4;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.wrev .wrev-mode-tag{opacity:.65;font-size:10px}.wrev .wrev-praise{cursor:pointer;color:#ffe9c4;background:#17233fcc;border:1px solid #ffe9c44d;border-radius:8px;flex:none;min-height:40px;padding:4px 8px;font-family:inherit;font-size:11px;font-weight:700}.wrev .wrev-praise:disabled{opacity:.55;cursor:default}.wrev .wrev-work{cursor:pointer}.wrev .wrev-work:hover{border-color:#ffe9c466}.wrev .wrev-work:focus-visible{outline-offset:2px;border-color:#ffe9c48c;outline:2px solid #ffd9a0}.wrev .wrev-zoom{background:#0a142899;border:1px solid #ffd9a052;border-radius:10px;flex-direction:column;gap:6px;margin-top:6px;padding:8px;display:flex}.wrev .wrev-zoom[hidden]{display:none}.wrev .wrev-zoom-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.wrev .wrev-zoom-title{color:#ffd9a0;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.wrev .wrev-zoom-close{cursor:pointer;color:#ffe9c4;background:#17233fcc;border:1px solid #ffe9c44d;border-radius:8px;flex:none;min-height:40px;padding:4px 12px;font-family:inherit;font-size:12px;font-weight:700}.wrev .wrev-zoom-canvas{aspect-ratio:1;background:#fdfaf3;border-radius:8px;width:100%;height:auto;display:block}.wrev .wrev-zoom-status{opacity:.75;margin:0;font-size:11px}.wrev .wrev-zoom-status[hidden]{display:none}.wrev .wrev-zoom-hint{opacity:.7;margin:0;font-size:11px;line-height:1.3}.colour-palette{pointer-events:auto;flex-direction:column;align-items:center;gap:10px;font-family:system-ui,sans-serif;display:flex}.colour-palette .cp-prompt{color:#ffd9a0;text-align:center;font-size:15px}.colour-palette .cp-prompt[hidden]{display:none}.colour-palette .cp-grid{flex-wrap:wrap;justify-content:center;gap:12px;max-width:380px;display:flex}.colour-palette .cp-swatch{cursor:pointer;-webkit-tap-highlight-color:transparent;border:4px solid;border-radius:50%;width:72px;height:72px;padding:0;transition:transform .12s,box-shadow .12s;position:relative}.colour-palette .cp-swatch:hover{transform:scale(1.06)}.colour-palette .cp-swatch.active{transform:scale(1.14);box-shadow:0 0 0 4px #ffd9a0e6,0 4px 14px #00000073}.colour-palette .cp-taken{letter-spacing:1px;pointer-events:none;font-size:15px;line-height:1;position:absolute;bottom:6px;left:0;right:0}.colour-palette .cp-word{text-align:center;flex-direction:column;align-items:center;gap:2px;min-height:96px;display:none}.colour-palette .cp-word.visible{display:flex}.colour-palette .cp-glyph{color:#ffe9c4;align-items:baseline;gap:18px;font-size:44px;line-height:1.15;display:flex}.colour-palette .cp-translit{color:#ffd9a0;font-size:17px;font-style:italic}.colour-palette .cp-name{color:#ffe9c4;font-size:15px;font-weight:600}.colour-palette .cp-sentence{color:#ffe9c4;font-size:14px}.colour-palette .cp-say{gap:2px;margin-top:2px;display:grid}.colour-palette .cp-say-row{grid-template-columns:auto auto;justify-content:center;align-items:baseline;gap:10px;display:grid}.colour-palette .cp-say-row>span:first-child{color:#ffe9c4;font-size:19px}.colour-palette .cp-say-row>span:last-child{color:#cdb999;font-size:13px;font-style:italic}.colour-palette .cp-done,#colour-panel .cp-done{color:#1a2a4a;cursor:pointer;background:#ffd9a0;border:none;border-radius:8px;min-height:44px;padding:8px 24px;font-size:15px;font-weight:600}#character-select .colour-palette{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080e1c9e;border-radius:14px;flex-flow:wrap;justify-content:center;align-items:center;gap:8px 20px;max-width:min(94vw,820px);margin-top:2px;padding:10px 16px}#character-select .colour-palette .cp-grid{flex:none;gap:12px;max-width:calc(4*clamp(44px,7vh,72px) + 36px)}#character-select .colour-palette .cp-taken{display:none}#character-select .colour-palette .cp-prompt{flex-basis:100%;max-width:none}#character-select .colour-palette .cp-swatch{border-width:4px;width:clamp(44px,7vh,72px);height:clamp(44px,7vh,72px)}#character-select .colour-palette .cp-word{flex:260px;gap:1px;min-width:0;min-height:0}#character-select .colour-palette .cp-glyph{gap:16px;font-size:clamp(26px,4.2vh,40px);line-height:1.1}#character-select .colour-palette .cp-translit{font-size:clamp(13px,1.7vh,17px)}#character-select .colour-palette .cp-name{font-size:clamp(13px,1.5vh,15px)}#character-select .colour-palette .cp-sentence{font-size:clamp(13px,1.4vh,14px)}#character-select .colour-palette .cp-say-row>span:first-child{font-size:clamp(15px,1.9vh,19px)}#character-select .colour-palette .cp-say-row>span:last-child{font-size:clamp(13px,1.3vh,13px)}@media (height<=640px){#character-select .colour-palette .cp-say{display:none}#character-select .colour-palette{gap:6px 16px;padding:8px 14px}#character-select .cs-overlay{gap:8px}}#colour-btn{z-index:5;cursor:pointer;-webkit-tap-highlight-color:transparent;border:3px solid;border-radius:50%;width:44px;height:44px;padding:0;font-size:20px;line-height:1;position:fixed;top:12px;right:62px}#colour-btn.open{box-shadow:0 0 0 3px #ffd9a0d9}#colour-panel{z-index:30;color:#ffe9c4;background:#0a1428f0;border-radius:12px;flex-direction:column;align-items:center;gap:10px;max-height:calc(100vh - 84px);padding:14px 16px;font-family:system-ui,sans-serif;display:flex;position:fixed;top:62px;right:12px;overflow-y:auto;box-shadow:0 8px 28px #00000080}#colour-panel[hidden]{display:none}#colour-panel h2{color:#ffd9a0;margin:0;font-size:16px}.privacy-panel{flex-direction:column;gap:6px;display:flex}.privacy-panel .pv-title{color:#ffd9a0;margin:0;font-size:14px}.privacy-panel .pv-status{margin:0;font-size:13px;font-weight:700}.privacy-panel .pv-status[data-on="1"]{color:#7ee0a0}.privacy-panel .pv-status[data-on="0"]{color:#ffb0b0}#teacher-desk .privacy-panel .pv-toggle[data-on="1"]{background:#7ee0a0}.privacy-panel .pv-hint{opacity:.85;margin:0 0 4px;font-size:12px;line-height:1.35}.privacy-panel .pv-children{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.privacy-panel .pv-child{background:#17233f8c;border:1px solid #ffe9c424;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px;display:flex}.privacy-panel .pv-child-name{flex:100%;font-size:14px;font-weight:700}.privacy-panel .pv-child button{color:#ffe9c4;min-height:34px;font:inherit;cursor:pointer;background:#ffd9a02e;border:none;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600}.privacy-panel .pv-child-consent[data-denied="1"]{color:#3a1414;background:#ffb0b0}.privacy-panel .pv-child-delete,#teacher-desk .privacy-panel .pv-delete-all{color:#ffb0b0;background:0 0;border:1px solid #ffb0b080}.privacy-panel .pv-receipt{color:#7ee0a0;margin:4px 0 0;font-size:12px}.privacy-panel .pv-receipt[hidden]{display:none}.privacy-panel .pv-link{background:#17233f8c;border:1px solid #ffe9c424;border-radius:8px;margin-top:6px;padding:8px}.privacy-panel .pv-link[hidden]{display:none}.privacy-panel .pv-link-hint{opacity:.85;margin:0 0 6px;font-size:12px;line-height:1.35}.privacy-panel .pv-link-url{color:#ffe9c4;width:100%;min-height:38px;font:inherit;background:#0a101ebf;border:1px solid #ffe9c440;border-radius:8px;padding:6px 8px;font-size:12px}
