.login-page{--login-ink:#293c44;--login-muted:#69797f;--login-accent:#486573;--login-line:#dbe2e3;min-height:100vh;min-height:100svh;color:var(--login-ink);background:#f5f5f1;flex-direction:column;padding:32px 40px 24px;display:flex}.login-page__header{width:min(100%,1120px);margin:0 auto}.login-page__brand .brand-stone{width:40px;height:40px;box-shadow:inset 0 0 0 8px #303e43}.login-page .login-page__brand strong{font-size:23px}.login-page .login-page__brand small{color:var(--login-muted);margin-top:4px;font-size:11px}.login-page__content{flex-direction:column;flex:1;justify-content:center;width:min(100%,1000px);margin:0 auto;padding-top:44px;display:flex}.login-page__surface{border:1px solid var(--login-line);background:#fff;border-radius:24px;grid-template-columns:.9fr 1.1fr;display:grid;overflow:hidden;box-shadow:0 12px 40px #2d414b06}.login-page__intro{background:#eaf0ee;flex-direction:column;justify-content:space-between;min-width:0;padding:42px 40px 24px;display:flex}.login-page__eyebrow{color:#58716c;letter-spacing:.15em;margin-bottom:22px;font-size:13px;font-weight:600}.login-page__intro h1{letter-spacing:.04em;margin-bottom:18px;font-family:Songti SC,STSong,serif;font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.55}.login-page__description{color:#586e67;margin:0;font-size:14px;line-height:1.9}.login-page__illustration{width:min(100%,320px);margin:18px auto 0}.login-page__illustration svg{width:100%;height:auto;display:block}.login-page__stone-shadow{fill:#283c3b;opacity:.1}.login-page__panel{place-items:center;min-width:0;padding:52px 58px;display:grid}.login-page__form{width:100%;max-width:380px}.login-page__heading{margin-bottom:34px}.login-page__welcome{color:var(--login-muted);font-size:13px}.login-page__heading h2{letter-spacing:-.025em;margin:12px 0 10px;font-size:28px;font-weight:650}.login-page__heading p{color:var(--login-muted);margin:0;font-size:14px;line-height:1.7}.login-page__field{gap:10px;margin-bottom:22px;font-size:14px;font-weight:600;display:grid}.login-page__field input{width:100%;min-width:0;min-height:52px;color:var(--login-ink);background:#fafbfb;border:1px solid #d5dee1;border-radius:9px;padding:0 15px;font-size:16px;font-weight:400}.login-page__field input::placeholder{color:#64747b}.login-page__field input:focus{border-color:var(--login-accent);background:#fff;box-shadow:0 0 0 3px #48657312}.login-page :is(input,button):focus-visible{outline:2px solid var(--login-accent);outline-offset:3px}.login-page__submit{border:1px solid var(--login-accent);color:#fff;background:var(--login-accent);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:14px;width:100%;min-height:52px;margin-top:28px;padding:12px 20px;font-size:16px;font-weight:600;display:flex}.login-page__submit:hover:not(:disabled){background:#344f5d;border-color:#344f5d}.login-page__submit:disabled{opacity:.65;cursor:wait}.login-page__account-note{color:var(--login-muted);text-align:center;margin:24px 0 0;font-size:12px;line-height:1.9}.login-page__error{color:#9b3f31;overflow-wrap:anywhere;background:#fff4f1;border:1px solid #edcfc9;border-radius:9px;margin:0;padding:12px 14px;font-size:13px;line-height:1.7}.login-page__footer{color:#617278;letter-spacing:.08em;text-align:center;padding-top:24px;font-size:12px}@media (max-width:900px){.login-page{padding:28px}.login-page__intro{padding:34px 26px 24px}.login-page__panel{padding:40px 30px}.login-page__intro h1{font-size:28px}.login-page__heading h2{font-size:26px}}@media (max-width:650px){.login-page{padding:24px 20px}.login-page__header{max-width:430px}.login-page__content{justify-content:flex-start;max-width:430px;padding-top:36px}.login-page__surface{box-shadow:none;background:0 0;border:0;border-radius:0;display:block;overflow:visible}.login-page__intro{display:none}.login-page__panel{border:1px solid var(--login-line);background:#fff;border-radius:18px;padding:30px 24px}.login-page__heading{margin-bottom:28px}.login-page__heading h2{font-size:25px}.login-page__heading p{font-size:13px}.login-page__account-note{font-size:11px}}.classroom-lecture-page .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.classroom-lecture-page .fox-kifu-board-toolbar{grid-template-columns:auto minmax(0,1fr)}.board-workspace.classroom-lecture-page .fox-kifu-board-panel{grid-template-rows:minmax(0,1fr);gap:0}.classroom-primary-controls{grid-template-columns:minmax(280px,440px) auto;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:grid}.classroom-primary-controls .fox-kifu-playback-buttons{width:100%}.classroom-primary-controls .fox-kifu-playback-buttons>button{padding-inline:6px}.board-workspace.classroom-lecture-page .fox-kifu-tool-buttons.classroom-analysis-tools{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.classroom-analysis-tools>button{width:100%}.classroom-analysis-tools .fox-kifu-ai-active-state{grid-column:1/-1;justify-self:start}.classroom-lecture-toolbar>.fox-kifu-ai-error{grid-column:1/-1}.classroom-placement-buttons{flex:none;grid-template-columns:repeat(3,42px);gap:6px;display:grid}.classroom-placement-buttons>button{border:1px solid var(--line);background:var(--paper);border-radius:8px;place-items:center;min-width:0;min-height:40px;padding:4px;display:grid;position:relative}.classroom-placement-hint{z-index:4;color:var(--green-900);background:var(--paper);pointer-events:none;white-space:nowrap;border:1px solid #2c4a5838;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700;line-height:1;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);box-shadow:0 5px 14px #1f333b24}.classroom-placement-hint:after{background:var(--paper);content:"";border-bottom:1px solid #2c4a5838;border-right:1px solid #2c4a5838;width:7px;height:7px;position:absolute;top:100%;left:50%;transform:translate(-50%,-4px)rotate(45deg)}.classroom-placement-buttons>button.is-active{background:var(--workspace-blue);border-color:#9bb8c6;box-shadow:inset 0 -2px #789baa}.classroom-placement-buttons>button:disabled{cursor:not-allowed;opacity:.48}.classroom-lecture-page button.classroom-control-busy:disabled,.classroom-lecture-page .workspace-mobile-progress input.is-busy:disabled{opacity:1;cursor:progress}.classroom-lecture-page .fox-kifu-vertical-progress :is(strong,small),.classroom-lecture-page .fox-kifu-move-status strong{font-variant-numeric:tabular-nums;white-space:nowrap}.classroom-placement-buttons .stone-preview{border-radius:50%;width:24px;height:24px;margin:0;display:block}.classroom-double-stone{align-items:center;display:flex}.classroom-double-stone .stone-preview+.stone-preview{margin-left:-7px}.classroom-lecture-sidebar{gap:12px;overflow:hidden}.classroom-sidebar-content{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.classroom-sidebar-content .classroom-notes-card{flex:1}.board-workspace .workspace-tool-dock .classroom-fox-search-panel{width:100%;max-width:calc(100vw - 32px);max-height:calc(100dvh - 16px);color:var(--ink);background:var(--paper);border:1px solid #cbdbe3;border-radius:12px;padding:12px;position:relative;inset:auto;overflow:auto}.board-workspace .workspace-tool-dock .classroom-fox-search-panel[style]{width:min(360px,100vw - 32px);box-shadow:0 10px 28px #303a4029}.classroom-fox-search-panel>header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:1fr auto auto;align-items:center;gap:7px;min-height:42px;padding-bottom:9px;display:grid}.classroom-fox-search-panel>header:active{cursor:grabbing}.classroom-fox-search-panel>header span{display:none}.classroom-fox-search-panel>header button{border:1px solid var(--line);min-height:36px;color:var(--green-900);background:var(--paper);border-radius:8px;padding:5px 9px}.classroom-fox-search-panel form{gap:10px;display:grid}.classroom-fox-search-panel form>label,.classroom-fox-search-panel .fox-kifu-date-row>label{color:var(--green-800);gap:5px;font-size:12px;font-weight:700;display:grid}.classroom-fox-search-panel :is(input,.primary-button){width:100%;min-height:40px}.classroom-lecture-page .classroom-sidebar-controls{flex-shrink:0;grid-column:1/-1;grid-template-columns:minmax(0,1fr);display:grid;position:relative;box-shadow:0 -8px 24px #303a4014;container:classroom-controls/inline-size}.classroom-sidebar-controls>.classroom-position-error{z-index:5;background:#fff4f0;border:1px solid #e8b7ac;border-radius:8px;max-height:110px;margin:0;padding:10px 12px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 4px 14px #303a4014}.classroom-control-heading{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.classroom-control-heading .fox-kifu-move-status{flex:1 1 0;min-width:0;display:grid}.classroom-control-heading .classroom-position-status{text-overflow:ellipsis;white-space:nowrap;height:18px;line-height:18px;display:block;overflow:hidden}.classroom-board-actions{flex-shrink:0;align-items:center;gap:6px;display:flex;position:relative}.classroom-switch-board{color:#314a56;white-space:nowrap;background:#fff;border:1px solid #c7d6dd;border-radius:8px;min-height:34px;padding:5px 10px;font-size:12px;font-weight:700}.classroom-switch-board:hover,.classroom-switch-board[aria-expanded=true]{background:#edf3f6;border-color:#9bb7c3}.classroom-board-size-menu{z-index:25;background:#fff;border:1px solid #c7d6dd;border-radius:9px;gap:3px;width:124px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 20px #303a4024}.classroom-board-size-menu>button{color:#314a56;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;min-height:36px;padding:6px 10px;font-size:13px;display:flex}.classroom-board-size-menu>button:hover,.classroom-board-size-menu>button[aria-pressed=true]{background:#edf3f6}.classroom-board-size-menu small{color:#597583;font-size:11px}.classroom-board-size-menu--confirm{gap:8px;width:min(270px,100vw - 48px);padding:12px}.classroom-board-size-menu--confirm strong{color:#314a56;font-size:14px}.classroom-board-size-menu--confirm p{color:#597583;margin:0;font-size:12px;line-height:1.6}.classroom-board-size-confirm-actions{justify-content:flex-end;gap:6px;display:flex}.classroom-board-size-confirm-actions>button{color:#314a56;background:#fff;border:1px solid #c7d6dd;border-radius:7px;min-height:34px;padding:5px 10px;font-size:12px}.classroom-board-size-confirm-actions>button:last-child{color:#93483b;background:#fff7f4;border-color:#d8b5ac}.classroom-clear-board{color:#93483b;white-space:nowrap;background:#fff7f4;border:1px solid #d8b5ac;border-radius:8px;min-height:34px;padding:5px 10px;font-size:12px;font-weight:700}.classroom-clear-board:hover{background:#fcebe6;border-color:#c88f82}.classroom-sidebar-controls>.classroom-primary-controls{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto}.board-workspace.classroom-lecture-page .classroom-sidebar-controls .fox-kifu-tool-buttons.classroom-analysis-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.classroom-sidebar-controls :is(.fox-kifu-playback-buttons,.classroom-analysis-tools) button{min-height:38px;padding-inline:5px;font-size:12px}.board-workspace.classroom-lecture-page .classroom-sidebar-controls .fox-kifu-playback-buttons>button{white-space:normal;min-width:0;height:44px;min-height:44px;padding:3px 2px;line-height:14px}@container classroom-controls (width<=349px){.classroom-sidebar-controls>.classroom-primary-controls{grid-template-columns:minmax(0,1fr)}.classroom-primary-controls .classroom-placement-buttons{justify-self:end}}.classroom-sidebar-controls>.fox-kifu-ai-error{grid-column:1/-1}.classroom-notes-card{background:var(--workspace-blue);grid-template-rows:auto minmax(150px,1fr);gap:12px;min-height:230px;display:grid}.classroom-notes-card .fox-kifu-section-heading{align-items:center;gap:10px}.classroom-note-toolbar{justify-content:flex-end;align-items:center;gap:5px;display:flex}.classroom-note-tool,.classroom-note-size{color:#314a56;background:#fff;border:1px solid #c7d6dd;border-radius:7px;justify-content:center;align-items:center;min-width:34px;min-height:32px;padding:4px 7px;display:inline-flex}.classroom-note-tool:hover,.classroom-note-size:hover{background:#f7fafb;border-color:#9bb7c3}.classroom-note-tool--bold{font-family:Georgia,serif;font-size:16px;font-weight:800}.classroom-note-tool--text-color{padding-bottom:7px;font-family:Georgia,serif;font-weight:700;position:relative}.classroom-note-tool--text-color>i{border-radius:2px;height:3px;position:absolute;bottom:4px;left:6px;right:6px}.classroom-note-tool--highlight>span{border-radius:3px;padding:1px 4px;font-family:Georgia,serif;font-weight:700}.classroom-note-dropdown{position:relative}.classroom-note-palette{z-index:20;background:#fff;border:1px solid #c7d6dd;border-radius:9px;gap:3px;width:108px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 20px #303a4024}.classroom-note-palette>button{color:#314a56;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:7px;min-height:30px;padding:4px 7px;font-size:12px;display:flex}.classroom-note-palette>button:hover{background:#edf3f6}.classroom-note-palette i{border:1px solid #314a562e;border-radius:4px;width:15px;height:15px}.classroom-note-size{gap:3px;width:72px;min-width:72px;height:32px;min-height:32px;padding:3px 5px 3px 8px;font-family:Georgia,serif;font-weight:700}.classroom-note-size>span[aria-hidden=true]{flex:none;font-size:14px;line-height:1}.classroom-note-size select{color:#314a56;width:38px;min-width:0;height:24px;min-height:24px;box-shadow:none;background:0 0;border:0;border-radius:4px;padding:0 1px;font:600 10px/1 sans-serif}.classroom-note-size select:focus{box-shadow:none;border:0}.classroom-notes-editor{width:100%;height:100%;min-height:150px;color:var(--ink);font:inherit;white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid #ccdbe2;border-radius:9px;outline:none;padding:14px;line-height:1.7;overflow:auto}.classroom-notes-editor:focus{border-color:#87aab9;box-shadow:0 0 0 3px #87aab929}.classroom-notes-editor:empty:before{content:attr(data-placeholder);color:#8a9499;pointer-events:none}.classroom-selected-record{color:#4d626d;background:#edf3f6;border-radius:8px;margin:0;padding:9px 10px;font-size:12px;line-height:1.5}@media (max-width:900px){.board-workspace.classroom-lecture-page .classroom-lecture-sidebar{display:flex;overflow:visible}.classroom-sidebar-content{overflow:visible}.classroom-sidebar-content .classroom-notes-card{min-height:320px}.classroom-analysis-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.classroom-notes-card{min-height:190px}.classroom-notes-card .fox-kifu-section-heading{flex-direction:column;align-items:flex-start}.classroom-note-toolbar{justify-content:flex-start;width:100%}}@media (max-width:600px){.classroom-analysis-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.classroom-primary-controls{grid-template-columns:minmax(0,1fr) auto;gap:6px}.classroom-placement-buttons{grid-template-columns:repeat(3,36px);width:auto}.classroom-placement-buttons>button{min-height:40px}.classroom-primary-controls .fox-kifu-playback-buttons>button{padding-inline:3px;font-size:11px}}.lobby-dialog-card:has(.class-match-panel){width:min(900px,100vw - 32px)}.class-match-panel{color:#2d3b42;min-width:0}.class-match-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.class-match-heading small{color:#647983;font-size:12px}.class-match-heading h2{margin:5px 0 10px;font-size:26px}.class-match-heading p{color:#687880;margin:0;font-size:14px;line-height:1.6}.class-match-heading .dialog-close{flex-shrink:0}.class-match-filters{justify-content:space-between;align-items:center;gap:12px;padding:20px 0 16px;display:flex}.class-match-filters [role=group]{flex-wrap:wrap;gap:6px;display:flex}.class-match-filters button{color:#536d7a;background:#fff;border:1px solid #dae2e5;border-radius:8px;min-height:38px;padding:8px 12px;font-size:13px}.class-match-filters button[aria-pressed=true]{color:#173f35;background:#e8f1ed;border-color:#abcabb;font-weight:700}.class-match-filters button span{opacity:.7;font-variant-numeric:tabular-nums;margin-left:7px}.class-match-refresh{flex-shrink:0}.class-match-list{gap:12px;display:grid}.class-match{background:#fff;border:1px solid #dce3e5;border-radius:12px;overflow:hidden}.class-match header{justify-content:space-between;align-items:center;gap:12px;padding:14px 18px 10px;display:flex}.class-match header>strong{overflow-wrap:anywhere;font-size:14px}.class-match-status{color:#60727b;background:#eef2f4;border-radius:6px;flex-shrink:0;padding:4px 9px;font-size:12px}.class-match-status[data-status=PLAYING],.class-match-status[data-status=SCORING],.class-match-status[data-status=COUNTING_REQUESTED]{color:#26744b;background:#e4f2e9}.class-match-status[data-status=WAITING],.class-match-status[data-status=READY]{color:#89652d;background:#fff0da}.class-match-players{grid-template-columns:1fr 1fr;gap:12px;padding:8px 18px 18px;display:grid}.class-match-players>span{grid-template-columns:26px 1fr;align-items:center;column-gap:9px;min-width:0;display:grid}.class-match-players i{background:radial-gradient(circle at 35% 25%,#66716d,#18211f 65%);border:1px solid #263731;border-radius:50%;grid-row:span 2;width:24px;height:24px}.class-match-players i[data-color=WHITE]{background:radial-gradient(circle at 35% 25%,#fff,#e6e5da 75%);border-color:#cacbbc}.class-match-players small{color:#849098;font-size:11px}.class-match-players strong{overflow-wrap:anywhere;font-size:16px}.class-match footer{background:#fafcfc;border-top:1px solid #edf0f1;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.class-match-meta{color:#62727b;gap:4px;font-size:12px;display:grid}.class-match-meta small{font-size:11px}.class-match-meta time{color:#344e5b;font-variant-numeric:tabular-nums}.class-match footer button{color:#204d3e;background:#eaf3ee;border:1px solid #b5cbc0;border-radius:8px;flex-shrink:0;min-height:38px;padding:8px 14px;font-size:13px;font-weight:700}.class-match-empty{text-align:center;color:#647983;background:#f5f8f9;border-radius:10px;padding:40px 18px}.teacher-data__view-tabs{flex-wrap:wrap;gap:8px;display:flex}.teacher-data__view-tabs button{color:#536d7a;background:#fff;border:1px solid #d4dfe4;border-radius:8px;padding:9px 16px;font-size:14px}.teacher-data__view-tabs button[aria-pressed=true]{color:#173f35;background:#e8f1ed;border-color:#abcabb;font-weight:700}@media (max-width:540px){.lobby-dialog-card:has(.class-match-panel){padding:16px}.class-match-heading h2{font-size:23px}.class-match-heading p{font-size:12px}.class-match-filters{align-items:flex-start;gap:6px}.class-match-filters button{padding:7px 9px;font-size:12px}.class-match-filters button span{margin-left:4px}.class-match header,.class-match footer{padding:12px}.class-match-players{gap:8px;padding:5px 12px 14px}.class-match-players strong{font-size:14px}.class-match footer{flex-wrap:wrap}.class-match footer button{margin-left:auto}}.lobby-page.role-home-lobby{--home-ink:#303a40;--home-muted:#626d73;--home-primary:#705744;--home-primary-hover:#594432;--home-accent:#526774;--home-surface:#fffdfa;--home-highlight:#dfedf3;--home-highlight-hover:#d4e5ed;--home-mint:#e8f1ea;--home-mint-hover:#dbeade;--home-lavender:#f4eef8;--home-lavender-hover:#eae2f0;--home-cream:#fffaf1;--home-cream-hover:#f7eedd;--home-button:#fcedd7;--home-button-hover:#f3e1c7;--home-button-line:#dcc9ae;--home-line:#5267742e;width:min(100% - 48px,1200px);padding:28px 0 32px}.app-frame:has(>.topbar--role-home){background:#f8f7f5}.topbar.topbar--role-home{--green-900:#303a40;color:#303a40;background:#fffdfb;border-bottom-color:#e0e4e6}.topbar--role-home .brand small,.topbar--role-home .account-chip small{color:#626d73}.topbar--role-home .account-avatar{color:#fffdfb;background:#303a40;border-color:#52616a}.topbar--role-home .text-button{color:#705744;background:#faf4ea;border-color:#d2bfa9}.topbar--role-home .text-button:hover{background:#f0ddc8}.topbar--role-home button:focus-visible{outline-offset:4px;outline:3px solid #526774}.role-home{min-width:0;color:var(--home-ink);gap:28px;display:grid}.role-home__heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.role-home__heading>div{min-width:0}.role-home__heading p{color:var(--home-muted);margin:0 0 6px;font-size:14px;font-weight:650}.role-home__heading h1{overflow-wrap:anywhere;margin:0;font-family:inherit;font-size:clamp(24px,2.2vw,28px);font-weight:750;line-height:1.35}.role-home__identity{max-width:35%;color:var(--home-muted);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.role-home__action{--home-action-surface:var(--home-surface);--home-action-hover:#f0f4f5;--home-action-line:var(--home-line);border:1px solid var(--home-action-line);min-width:0;min-height:108px;color:var(--home-ink);background:var(--home-action-surface);text-align:left;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;transition:border-color .14s,background-color .14s;display:flex}.role-home__action:hover{border-color:var(--home-accent);background:var(--home-action-hover)}.role-home__action:active{background:var(--home-action-hover)}.role-home__action:focus-visible{outline:3px solid var(--home-accent);outline-offset:4px}.role-home__action-copy{gap:8px;min-width:0;display:grid}.role-home__action-copy strong{overflow-wrap:anywhere;font-size:20px;font-weight:750;line-height:1.4}.role-home__action-copy>span{color:var(--home-muted);overflow-wrap:anywhere;font-size:15px;line-height:1.6}.role-home__arrow{color:var(--home-accent);flex:none;font-size:22px}.role-home__cta{border:1px solid var(--home-button-line);min-height:44px;color:var(--home-primary);background:var(--home-button);white-space:nowrap;border-radius:9px;flex:none;justify-content:space-between;align-self:flex-start;align-items:center;gap:14px;padding:0 14px;font-size:15px;font-weight:750;transition:background-color .14s;display:inline-flex}.role-home__action:hover .role-home__cta,.role-home__action:active .role-home__cta{background:var(--home-button-hover)}.role-home__action--primary{--home-action-surface:var(--home-highlight);--home-action-hover:var(--home-highlight-hover);--home-action-line:#bfd3df;flex-direction:column;align-items:stretch}.role-home__action--primary .role-home__action-copy>span{color:#52636d}.role-home__action--warm{--home-action-surface:var(--home-mint);--home-action-hover:var(--home-mint-hover);--home-action-line:#c2d7cc}.role-home__action--compact{min-height:58px;padding:14px 18px}.role-home__action--compact strong{font-size:16px}.role-home__student-main{grid-template-columns:1fr 1.1fr;gap:20px;display:grid}.role-home__student-main>.role-home__action{padding:28px}.role-home__student-main>.role-home__action strong{font-size:28px}.role-home__student-main>.role-home__action .role-home__action-copy{gap:12px;max-width:360px}.role-home__student-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.role-home__student-games>:first-child{grid-column:1/-1}.role-home__section{gap:12px;display:grid}.role-home__section h2{margin:0;font-family:inherit;font-size:17px;font-weight:750;line-height:1.5}.role-home__records{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.role-home__records>:first-child,.role-home__management>:first-child{--home-action-surface:var(--home-lavender);--home-action-hover:var(--home-lavender-hover);--home-action-line:#d9d0e3}.role-home__records>:last-child,.role-home__teaching>:last-child{--home-action-surface:var(--home-cream);--home-action-hover:var(--home-cream-hover);--home-action-line:#e5d9c8}.role-home__teaching>:nth-child(2){--home-action-surface:var(--home-mint);--home-action-hover:var(--home-mint-hover);--home-action-line:#c2d7cc}.role-home__teaching,.role-home__management,.role-home__teacher-workspaces{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.role-home--teacher .role-home__action{border-radius:10px;padding:18px 20px}.role-home__teaching .role-home__action{flex-direction:column;align-items:stretch;gap:12px;min-height:164px}.role-home__teacher-workspaces>.role-home__action{--home-action-surface:var(--home-mint);--home-action-hover:var(--home-mint-hover);--home-action-line:#c2d7cc;flex-direction:column;align-items:stretch;min-height:156px}.role-home__teacher-workspaces>.role-home__action:nth-child(3){--home-action-surface:var(--home-highlight);--home-action-hover:var(--home-highlight-hover);--home-action-line:#bfd4de}.role-home__feature-cluster{--home-cluster-surface:var(--home-cream);--home-cluster-line:#e5d9c8;border:1px solid var(--home-cluster-line);background:var(--home-cluster-surface);border-radius:10px;grid-template-rows:minmax(0,1fr) auto;min-width:0;display:grid;overflow:hidden}.role-home__feature-cluster>.role-home__action{background:0 0;border:0;border-radius:0;min-height:0}.role-home__feature-cluster>.role-home__action:hover{background:#ffffff6b}.role-home__feature-heading{width:100%;min-width:0;color:var(--home-ink);text-align:left;cursor:pointer;background:0 0;border:0;padding:18px 20px;transition:background-color .14s;display:block}.role-home__feature-heading:hover,.role-home__feature-heading:active{background:#ffffff6b}.role-home__feature-heading:focus-visible{outline:3px solid var(--home-accent);outline-offset:-3px}.role-home__feature-actions{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.role-home__feature-actions .role-home__action,.role-home--teacher .role-home__feature-actions .role-home__action{border-color:var(--home-button-line);width:auto;min-height:44px;color:var(--home-primary);background:var(--home-button);white-space:nowrap;border-radius:9px;flex-direction:row;flex:none;justify-content:space-between;align-items:center;gap:14px;padding:0 14px}.role-home__feature-actions .role-home__action:hover,.role-home--teacher .role-home__feature-actions .role-home__action:hover{border-color:var(--home-button-line);background:var(--home-button-hover)}.role-home__feature-actions .role-home__action-copy{justify-items:start}.role-home__feature-actions .role-home__action-copy strong{color:var(--home-primary);overflow-wrap:normal;white-space:nowrap;font-size:15px;font-weight:750}.role-home__feature-actions .role-home__arrow{color:var(--home-primary);font-size:15px}.role-home__feature-cluster--homework .role-home__feature-actions .role-home__action:last-child{margin-left:auto}.role-home__feature-cluster--create{min-height:164px}.role-home__feature-cluster--homework{--home-cluster-surface:var(--home-lavender);--home-cluster-line:#d9d0e3;min-height:156px}.role-home__management .role-home__action-copy strong{font-size:18px}.role-home__management .role-home__action-copy>span{font-size:14px}.role-home__shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.role-home__feedback{border:1px solid var(--home-line);color:var(--home-accent);overflow-wrap:anywhere;background:#eaf1f5;border-radius:10px;margin:0;padding:12px 16px;font-size:15px;line-height:1.6}.role-home__feedback.is-error{color:var(--danger);background:#fff3ef;border-color:#e7c5bc}.role-home-lobby>.authority-note{border:0;border-top:1px solid var(--home-line);color:var(--home-muted);background:0 0;border-radius:0;margin-top:24px;padding:12px 0;font-size:13px;line-height:1.6}.role-home-lobby>.history-panel{--ink:var(--home-ink);--muted:var(--home-muted);--line:var(--home-line);--green-900:var(--home-primary-hover);--green-800:var(--home-primary);--green-700:var(--home-accent);color:var(--home-ink);box-shadow:none;border-radius:10px;padding:18px 20px}.role-home-lobby>.authority-note strong{color:var(--home-ink)}.role-home-lobby>.history-panel .eyebrow{display:none}.role-home-lobby>.history-panel .history-heading h2{font-family:inherit;font-size:18px}.role-home-lobby>.history-panel .history-heading p:last-child{color:var(--home-muted);font-size:14px;line-height:1.6}@media (max-width:900px){.role-home__student-main{grid-template-columns:1fr 1fr;gap:14px}.role-home__student-games{grid-template-columns:1fr;gap:10px}.role-home__student-games>:first-child{flex-wrap:wrap;gap:4px}.role-home__shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.role-home__management .role-home__action{align-items:flex-start;gap:8px;padding:16px}}@media (max-width:620px){.lobby-page.role-home-lobby{width:calc(100% - 32px);padding-top:20px}.role-home,.role-home--teacher{gap:20px}.role-home__heading{flex-direction:column;align-items:flex-start;gap:6px}.role-home__identity{max-width:100%;font-size:14px}.role-home__student-main,.role-home__teaching,.role-home__management,.role-home__teacher-workspaces{grid-template-columns:1fr;gap:12px}.role-home__student-main>.role-home__action{min-height:196px;padding:22px}.role-home__student-main>.role-home__action strong{font-size:26px}.role-home__student-games{grid-template-columns:repeat(2,minmax(0,1fr))}.role-home__student-games>:first-child{flex-wrap:nowrap;gap:8px;padding:18px}.role-home__action--compact,.role-home--teacher .role-home__action--compact{gap:8px;padding:14px 12px}.role-home__records{grid-template-columns:1fr;gap:10px}.role-home__records .role-home__action{min-height:90px;padding:18px}.role-home__teaching .role-home__action{flex-direction:row;align-items:center;min-height:96px;padding:16px}.role-home__teaching .role-home__feature-cluster>.role-home__action{min-height:78px}.role-home__feature-cluster--create,.role-home__feature-cluster--homework,.role-home__teacher-workspaces>.role-home__action{min-height:0}.role-home__teacher-workspaces>.role-home__action{flex-direction:row;align-items:center;min-height:96px}.role-home__teaching .role-home__cta{flex:none;align-self:center;gap:10px}.role-home__teaching .role-home__action-copy strong{font-size:18px}.role-home__teaching .role-home__action-copy>span{font-size:14px}.role-home__management .role-home__action{align-items:center;min-height:84px}.role-home-lobby>.history-panel{padding:16px}.role-home-lobby>.history-panel .history-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}}@media (prefers-reduced-motion:reduce){.role-home__action,.role-home__cta{transition:none}}.role-home--student{gap:30px}.student-home__heading{justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:4px 0 8px;display:flex}.student-home__heading>div{flex:none}.student-home__heading>div>p{color:var(--home-muted);letter-spacing:.08em;margin:0 0 8px;font-size:13px}.student-home__heading h1{color:var(--home-ink);margin:0;font-size:28px;font-weight:750;line-height:1.4}.student-home__greeting{min-width:0;max-width:50%;color:var(--home-muted);white-space:nowrap;margin:0;font-size:14px;display:flex}.student-home__greeting span{text-overflow:ellipsis;overflow:hidden}.student-home__workspace{grid-template-columns:minmax(0,2.15fr) minmax(0,1fr);align-items:stretch;gap:28px;display:grid}.student-home__learning,.student-home__review{flex-direction:column;gap:16px;min-width:0;display:flex}.student-home__section-heading{justify-content:space-between;align-items:center;gap:10px;min-height:26px;display:flex}.student-home__section-heading h2{margin:0;font-size:17px;font-weight:700;line-height:1.5}.student-home__section-heading>span{color:var(--home-muted);font-size:12px}.student-home__features{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-home__feature{--student-card:#e5f0f5;--student-border:#cbdde5;--student-hover:#ddebf2;--student-icon:#466776;border:1px solid var(--student-border);min-width:0;min-height:282px;color:var(--home-ink);background:var(--student-card);text-align:left;cursor:pointer;border-radius:18px;flex-direction:column;align-items:flex-start;gap:22px;padding:26px;transition:background-color .14s;display:flex}.student-home__feature--board{--student-card:#edf2e9;--student-border:#d4dfcf;--student-hover:#e3ecdd;--student-icon:#55694f}.student-home__feature:hover{background:var(--student-hover)}.student-home__icon{width:46px;height:46px;color:var(--student-icon);background:#ffffff80;border:1px solid #ffffff90;border-radius:12px;flex:none;place-items:center;display:grid}.student-home__icon svg{width:28px;height:28px}.student-home__feature-copy{gap:10px;display:grid}.student-home__feature-copy strong{font-size:24px;font-weight:750;line-height:1.4}.student-home__feature-copy>span{color:#596b73;max-width:270px;font-size:14px;line-height:1.75}.student-home__cta{color:#6b5541;background:#fbecd7;border:1px solid #dbcaaf;border-radius:10px;justify-content:space-between;align-items:center;gap:26px;min-height:44px;margin-top:auto;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.student-home__feature:hover .student-home__cta{background:#f5e3c8}.student-home__cta>span{font-size:18px}.student-home__free-play{background:#fffdfb;border:1px solid #e0e4e4;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;min-width:0;min-height:100px;padding:20px 22px;display:flex}.student-home__free-play h3{margin:0 0 6px;font-size:16px}.student-home__free-play p{color:var(--home-muted);margin:0;font-size:12px;line-height:1.6}.student-home__quick-actions{flex-wrap:wrap;flex:none;gap:10px;display:flex}.student-home__quick-actions button{color:#48616d;cursor:pointer;background:#f3f6f7;border:1px solid #d8e0e4;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;min-height:44px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.student-home__quick-actions button:hover{background:#e8eff2;border-color:#acbdc5}.student-home__quick-actions button>span:last-child{font-size:20px;font-weight:400}.student-home__records{flex:1;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-home__record{--student-icon:#75638b;min-width:0;color:var(--home-ink);text-align:left;cursor:pointer;background:#fcfaff;border:1px solid #e0dce7;border-radius:16px;grid-template-columns:46px minmax(0,1fr);align-content:center;align-items:center;gap:18px 14px;padding:26px;transition:background-color .14s;display:grid}.student-home__record .student-home__icon{background:#f0e9f7;border-color:#e8dfef}.student-home__record:hover{background:#f3edf9}.student-home__record--fox{--student-icon:#897050;background:#fffcf7;border-color:#e7dfd4}.student-home__record--fox .student-home__icon{background:#f7eddd;border-color:#ede1cd}.student-home__record--fox:hover{background:#faf2e6}.student-home__record-copy{gap:7px;display:grid}.student-home__record-copy strong{font-size:18px;line-height:1.4}.student-home__record-copy>span{color:var(--home-muted);font-size:13px;line-height:1.6}.student-home__record-link{color:var(--student-icon);grid-column:2;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;display:flex}.student-home__record-link>span{font-size:20px}.role-home--student button:focus-visible{outline-offset:4px;outline:3px solid #526774}@media (max-width:1100px){.student-home__workspace{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:20px}.student-home__feature,.student-home__record{padding:22px}.student-home__free-play{flex-direction:column;align-items:flex-start;gap:14px}.student-home__quick-actions{width:100%}.student-home__quick-actions button{white-space:nowrap;flex:auto}.student-home__record{grid-template-columns:1fr;gap:14px}.student-home__record-link{grid-column:1}}@media (max-width:850px){.student-home__workspace{grid-template-columns:1fr;gap:28px}.student-home__free-play{flex-direction:row;align-items:center}.student-home__quick-actions{width:auto}.student-home__records{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.student-home__record{grid-template-columns:46px minmax(0,1fr);min-height:150px}.student-home__record-link{grid-column:2}}@media (max-width:620px){.role-home--student{gap:24px}.student-home__heading{flex-direction:column;align-items:flex-start;gap:10px;padding:0}.student-home__heading h1{font-size:25px}.student-home__greeting{max-width:100%;font-size:13px}.student-home__section-heading{flex-wrap:wrap}.student-home__section-heading>span{font-size:11px}.student-home__features{grid-template-columns:1fr;gap:12px}.student-home__feature{grid-template-columns:minmax(0,1fr) 44px;gap:18px 14px;min-height:180px;padding:20px;display:grid}.student-home__feature>.student-home__icon{grid-area:1/2;width:44px;height:44px}.student-home__feature-copy{grid-area:1/1;gap:8px}.student-home__feature-copy strong{font-size:22px}.student-home__feature-copy>span{font-size:13px}.student-home__cta{justify-self:start;gap:20px}.student-home__free-play{flex-direction:column;align-items:flex-start;padding:18px}.student-home__quick-actions{gap:8px;width:100%}.student-home__quick-actions button{gap:8px;min-width:0;padding:0 10px;font-size:12px}.student-home__records{grid-template-columns:1fr;gap:10px}.student-home__record{grid-template-columns:42px minmax(0,1fr) auto;gap:12px;min-height:100px;padding:18px}.student-home__record .student-home__icon{width:42px;height:42px}.student-home__record-copy strong{font-size:17px}.student-home__record-copy>span{font-size:12px}.student-home__record-link{grid-column:2/-1;padding-left:0}}@media (prefers-reduced-motion:reduce){.student-home__feature,.student-home__record{transition:none}}.role-home--teacher{gap:26px}.teacher-home__heading{justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:2px 0 4px;display:flex}.teacher-home__heading h1{margin:0;font-size:27px;font-weight:750;line-height:1.4}.teacher-home__heading p{color:var(--home-muted);margin:8px 0 0;font-size:13px;line-height:1.6}.teacher-home__identity{color:#536770;text-overflow:ellipsis;white-space:nowrap;background:#f2f5f5;border:1px solid #dce3e5;border-radius:8px;max-width:36%;padding:9px 13px;font-size:13px;display:block;overflow:hidden}.teacher-home__section{flex-direction:column;gap:12px;min-width:0;display:flex}.teacher-home__section h2{margin:0;font-size:16px;font-weight:700;line-height:1.6}.teacher-home__priority,.teacher-home__resources{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.teacher-home__action{--teacher-icon:#506d7a;--teacher-icon-bg:#e5eff4;min-width:0;color:var(--home-ink);text-align:left;cursor:pointer;background:#fffdfb;border:1px solid #dce3e6;border-radius:12px;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:18px 14px;padding:22px;transition:background-color .14s,border-color .14s;display:grid}.teacher-home__action:hover{background:#f4f7f8;border-color:#aabcc5}.teacher-home__action--task{min-height:162px}.teacher-home__action--homework_review{background:#edf4f7;border-color:#cbdde6}.teacher-home__action--homework_review:hover{background:#e3eef3}.teacher-home__action--homework_assign{--teacher-icon:#557065;--teacher-icon-bg:#e9f0e9}.teacher-home__action--classroom_lecture{--teacher-icon:#866b49;--teacher-icon-bg:#f3e9d8;background:#fffbf4;border-color:#e6dccd}.teacher-home__action--classroom_lecture:hover{background:#f9f1e4}.teacher-home__icon{width:40px;height:40px;color:var(--teacher-icon);background:var(--teacher-icon-bg);border-radius:9px;flex:none;place-items:center;display:grid}.teacher-home__icon svg{width:25px;height:25px}.teacher-home__copy{gap:7px;min-width:0;display:grid}.teacher-home__copy strong{font-size:18px;font-weight:700;line-height:1.5}.teacher-home__copy>span{color:var(--home-muted);overflow-wrap:anywhere;font-size:13px;line-height:1.65}.teacher-home__cta{color:#705744;white-space:nowrap;background:#fbedda;border:1px solid #decbb0;border-radius:8px;grid-column:2;justify-content:space-between;place-self:end start;align-items:center;gap:18px;min-height:44px;padding:0 14px;font-size:13px;font-weight:650;display:inline-flex}.teacher-home__cta>span,.teacher-home__arrow{font-size:19px;font-weight:400}.teacher-home__operations{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;display:grid}.teacher-home__panel{background:#fffdfb;border:1px solid #dce3e6;border-radius:12px;flex:1;min-width:0}.teacher-home__create{justify-content:space-between;align-items:center;gap:18px;min-width:0;padding:22px;display:flex}.teacher-home__entry-heading{min-width:0;color:var(--home-ink);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.teacher-home__entry-heading:hover strong{color:#4d6b7a;text-underline-offset:4px;text-decoration:underline}.teacher-home__entry-heading .teacher-home__copy strong{font-size:17px}.teacher-home__shortcuts{flex-wrap:wrap;flex:none;gap:10px;display:flex}.teacher-home__shortcuts button{color:#4c6370;white-space:nowrap;cursor:pointer;background:#f1f5f7;border:1px solid #d4dfe5;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:44px;padding:0 13px;font-size:13px;font-weight:650;display:inline-flex}.teacher-home__shortcuts button:hover{background:#e7eff3;border-color:#acbec7}.teacher-home__shortcuts button>span:last-child{font-size:18px;font-weight:400}.teacher-home__games>.teacher-home__action--row{border-width:1px 0 0;border-color:#e6eaec;border-radius:0 0 12px 12px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:20px 22px}.teacher-home__action--row .teacher-home__icon{width:36px;height:36px}.teacher-home__action--row .teacher-home__copy strong{font-size:16px}.teacher-home__action--row .teacher-home__cta{color:#4c6370;background:#f1f5f7;border-color:#d4dfe5;grid-column:3;align-self:center}.teacher-home__homework{flex-direction:column;justify-content:space-between;gap:24px;padding:22px;display:flex}.teacher-home__shortcuts--data{justify-content:space-between;gap:16px}.teacher-home__shortcuts--data button{color:#6f5c80;background:#f5f0f9;border-color:#dfd6e9;flex:1;min-height:48px}.teacher-home__shortcuts--data button:hover{background:#ede5f4;border-color:#c3b5d2}.teacher-home__action--resource{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:100px;padding:20px}.teacher-home__action--resource .teacher-home__icon{background:#f0f3f4;width:36px;height:36px}.teacher-home__action--resource .teacher-home__copy strong{font-size:16px}.teacher-home__action--resource .teacher-home__copy>span{font-size:12px}.teacher-home__arrow{color:#6d808a}.role-home--teacher button:focus-visible{outline-offset:4px;outline:3px solid #526774}@media (max-width:1100px){.teacher-home__operations{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.teacher-home__create{flex-direction:column;align-items:flex-start;gap:14px}.teacher-home__action{gap:16px 10px;padding:18px}.teacher-home__action--task .teacher-home__cta{grid-column:1/-1}.teacher-home__action--resource{grid-template-columns:32px minmax(0,1fr)}.teacher-home__action--resource .teacher-home__arrow{display:none}.teacher-home__action--row .teacher-home__cta{grid-column:2/-1}}@media (max-width:760px){.teacher-home__heading{align-items:flex-start}.teacher-home__heading h1{font-size:24px}.teacher-home__priority,.teacher-home__operations,.teacher-home__resources{grid-template-columns:1fr}.teacher-home__priority{gap:10px}.teacher-home__action--task{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:118px}.teacher-home__action--task .teacher-home__icon{width:36px;height:36px}.teacher-home__action--task .teacher-home__cta{grid-column:3;align-self:center;gap:10px}.teacher-home__resources{gap:10px}.teacher-home__action--resource{grid-template-columns:36px minmax(0,1fr) auto;min-height:84px}.teacher-home__action--resource .teacher-home__arrow{display:block}.teacher-home__homework,.teacher-home__create{padding:20px}.teacher-home__shortcuts{width:100%}.teacher-home__shortcuts button{flex:1}}@media (max-width:480px){.role-home--teacher{gap:24px}.teacher-home__identity{max-width:32%;padding:7px 9px;font-size:12px}.teacher-home__heading p{font-size:12px}.teacher-home__action--task{grid-template-columns:32px minmax(0,1fr);gap:14px;min-height:138px;padding:18px}.teacher-home__action--task .teacher-home__icon{width:32px;height:32px}.teacher-home__action--task .teacher-home__cta{grid-column:2;gap:16px}.teacher-home__copy strong{font-size:17px}.teacher-home__copy>span{font-size:12px}.teacher-home__games>.teacher-home__action--row{grid-template-columns:32px minmax(0,1fr);padding:18px 20px}.teacher-home__action--row .teacher-home__cta{grid-column:2}.teacher-home__shortcuts--data{gap:10px}}@media (prefers-reduced-motion:reduce){.teacher-home__action{transition:none}}.teacher-ai-management{gap:16px;display:grid}.teacher-ai-management__menu{gap:18px;display:grid}.teacher-ai-management__menu>p{color:var(--dialog-muted,#66747a);margin:0;line-height:1.7}.teacher-ai-management__choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.teacher-ai-management__choices button{color:#26363d;text-align:left;cursor:pointer;background:#f4f8fa;border:1px solid #c8d7dd;border-radius:12px;align-content:center;gap:8px;min-height:138px;padding:20px;display:grid}.teacher-ai-management__choices button:nth-child(2){background:#fff8eb;border-color:#d9cfbc}.teacher-ai-management__choices button:nth-child(3){background:#eef7f1;border-color:#c9d9cf}.teacher-ai-management__choices button:hover:not(:disabled){border-color:#70858e;transform:translateY(-1px)}.teacher-ai-management__choices button:disabled{cursor:not-allowed;opacity:.5}.teacher-ai-management__choices strong{font-size:19px}.teacher-ai-management__choices span{color:#68777d;font-size:14px;line-height:1.6}.teacher-ai-management__detail,.teacher-ai-management__form,.teacher-ai-management__access{gap:16px;display:grid}.teacher-ai-management__subheading{justify-content:space-between;align-items:center;gap:16px;display:flex}.teacher-ai-management__subheading>strong{color:#26363d;font-size:18px}.teacher-ai-management__form label,.teacher-ai-management__account-select{color:#3f535b;gap:7px;min-width:0;font-size:13px;font-weight:700;display:grid}.teacher-ai-management__form label small{color:#748086;font-weight:500}.teacher-ai-management__form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.teacher-ai-management__summary{color:#56676d;background:#f2f5f6;border-radius:9px;margin:0;padding:10px 12px;font-size:13px}.teacher-ai-management__access-list{border:1px solid #d9e1e4;border-radius:12px;max-height:min(430px,45dvh);display:grid;overflow:auto}.teacher-ai-management__access-row{border-bottom:1px solid #e3e8ea;grid-template-columns:minmax(150px,1fr) 100px minmax(124px,auto);align-items:center;gap:12px;min-width:0;padding:13px 14px;display:grid}.teacher-ai-management__access-row:last-child{border-bottom:0}.teacher-ai-management__access-row>span:nth-child(2){color:#6d7a80;font-size:13px}@media (max-width:720px){.teacher-ai-management__choices,.teacher-ai-management__form-grid{grid-template-columns:1fr}.teacher-ai-management__choices button{min-height:100px}.teacher-ai-management__access-row{grid-template-columns:minmax(0,1fr) auto}.teacher-ai-management__access-row>span:nth-child(2){display:none}}.teacher-ai-management__weight{gap:8px;min-width:0;display:grid}.teacher-ai-management__weight small{overflow-wrap:anywhere;color:var(--text-secondary,#60727b)}.teacher-ai-management__catalog-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.teacher-ai-management__catalog-actions button{flex:none;min-height:36px;padding:6px 10px}.teacher-ai-management__weight .teacher-ai-management__catalog-warning{color:#9b5420}.student-play-workspace .student-people-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column;flex:1 0 190px;min-height:190px;padding:12px;display:flex;overflow:hidden}.student-people-card>header{align-items:center;gap:6px;min-height:32px;display:flex}.student-people-card h2{margin:0;font-family:inherit;font-size:15px}.student-people-card header>span{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.student-people-card button{min-height:30px;padding:5px 7px;font-size:11px}.student-people-card button,.student-watch-list button,.student-observation-page .action-card>button{border:1px solid var(--line);color:var(--green-900);cursor:pointer;background:#f5f8f8;border-radius:8px}.student-people-card button:disabled,.student-watch-list button:disabled{opacity:.45;cursor:default}.student-people-card button:focus-visible,.student-watch-list button:focus-visible{outline-offset:2px;outline:2px solid #789baa}.student-people-body{flex:1;min-height:0;font-size:12px;overflow:auto}.student-people-body ul{margin:4px 0;padding:0;list-style:none}.student-people-body li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:44px;display:flex}.student-people-body strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.student-people-body li>span{white-space:nowrap;color:var(--muted);font-size:11px}.student-people-body .is-complete{color:#346557}.student-people-card footer{flex-shrink:0;justify-content:space-between;align-items:center;gap:4px;padding-top:8px;font-size:11px;display:flex}.student-watch-list>header,.student-watch-list>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-watch-list>header p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.student-watch-list ul{margin:16px 0;padding:0;list-style:none}.student-watch-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.student-watch-list li>div{gap:8px;min-width:0;display:grid}.student-watch-list li span,.student-watch-list small{color:var(--muted);font-size:12px}.student-watch-list li strong{overflow-wrap:anywhere}.student-watch-list button{flex-shrink:0;min-height:36px;padding:6px 12px;font-size:13px}.student-observation-page .action-card>button{min-height:36px;padding:6px 12px}.student-watch-empty{text-align:center;color:var(--muted);padding:32px 0}@media (max-width:900px){.student-play-workspace .homework-answer-sidebar>.student-people-card{grid-area:5/1/auto/-1;height:272px}.board-workspace.student-play-workspace .homework-problem-info{grid-row:6}.student-play-workspace.game-page .student-people-card{flex:none;order:5;height:272px}}@media (max-width:420px){.student-watch-list li{gap:8px;padding:12px 0}.student-watch-list>header{align-items:start}.student-watch-list>footer{gap:4px;font-size:12px}}.role-dialog.role-dialog--teacher .lobby-dialog-card--teacher-data{background:#fffdfb;border-radius:16px;width:min(1180px,100%);padding:24px}.role-dialog--teacher .lobby-dialog-card--teacher-data>.lobby-dialog-heading{border-bottom:1px solid #dfe5e8;margin:0 0 18px;padding-bottom:16px}.teacher-data{color:#303d44;gap:18px;min-width:0;font-size:14px;line-height:1.6;display:grid}.teacher-data :is(h3,p){margin:0}.teacher-data h3{font:inherit;overflow-wrap:anywhere;font-size:18px;font-weight:750}.teacher-data :is(button,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #688eaa}.teacher-data :is(.teacher-data__intro,.teacher-data__toolbar){justify-content:space-between;align-items:center;gap:16px;display:flex}.teacher-data .teacher-data__intro p,.teacher-data .teacher-data__intro-copy p{color:#52636e;font-size:14px}.teacher-data__intro-copy{gap:4px;min-width:0;display:grid}.teacher-data__intro-copy>span{color:#718089;font-size:12px}.teacher-data__count{color:#5b707d;flex-shrink:0;font-size:12px;font-weight:650}.teacher-data .teacher-data__button{color:#455b68;max-width:100%;min-height:44px;font:inherit;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #d7e0e5;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:9px 14px;font-size:13px;font-weight:650;line-height:1.4;display:inline-flex}.teacher-data .teacher-data__button--primary{color:#3d6075;background:#eaf3f7;border-color:#bdd3df}.teacher-data .teacher-data__button--caution{color:#826044;background:#fffaf2;border-color:#e6d5bd}.teacher-data .teacher-data__button:hover:not(:disabled){background:#f2f7fa;border-color:#8daabd}.teacher-data .teacher-data__button--caution:hover:not(:disabled){background:#fbefdc;border-color:#c7a476}.teacher-data .teacher-data__button:disabled{opacity:.48;cursor:not-allowed}.teacher-data .teacher-data__filters{background:#f5f8fa;border:1px solid #e0e7eb;border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:end;gap:14px;padding:16px;display:grid}.teacher-data :is(.teacher-data__filters,.teacher-data__student-filter) label{color:#536873;gap:6px;min-width:0;margin:0;font-size:12px;font-weight:650;display:grid}.teacher-data :is(.teacher-data__filters,.teacher-data__student-filter) select{color:#344b59;width:100%;min-width:0;height:44px;min-height:44px;font:inherit;text-overflow:ellipsis;background:#fff;border:1px solid #ccd9e1;border-radius:8px;padding:8px 12px;font-size:14px}.teacher-data__table-wrap{background:#fff;border:1px solid #dfe5e9;border-radius:10px;min-width:0;overflow-x:auto}.teacher-data__table{border-collapse:collapse;table-layout:fixed;text-align:left;font-variant-numeric:tabular-nums;width:100%}.teacher-data__table :is(th,td){vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #e7ebee;padding:16px 14px}.teacher-data__table th{font-weight:650}.teacher-data__table thead th{color:#647783;background:#f1f5f7;padding:11px 14px;font-size:12px;font-weight:600}.teacher-data__table tbody tr:last-child>*{border-bottom:0}.teacher-data__table tbody tr:hover{background:#fafcfd}.teacher-data__table--games th:first-child{width:27%}.teacher-data__table--games th:nth-child(2){width:18%}.teacher-data__table--games th:nth-child(3){width:15%}.teacher-data__table--games th:nth-child(4){width:40%}.teacher-data__cell-stack{justify-items:start;gap:4px;display:grid}.teacher-data__cell-stack small{color:#73818a;font-size:12px;font-weight:400}.teacher-data__players>span{grid-template-columns:14px 28px minmax(0,1fr);align-items:center;gap:8px;display:grid}.teacher-data__players>span+span{margin-top:8px}.teacher-data__players small{color:#77858c;font-size:12px;font-weight:400}.teacher-data__stone{background:#34444a;border:1px solid #34444a;border-radius:50%;width:12px;height:12px;display:block}.teacher-data__stone--white{background:#fff;border-color:#b5bfc3}.teacher-data__status{color:#6a6474;background:#f1eef5;border-radius:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.teacher-data__status[data-status=FINISHED]{color:#507561;background:#edf4ef}.teacher-data__status[data-status=PLAYING]{color:#456c85;background:#e8f2f8}.teacher-data__status[data-status=ABORTED]{color:#737a7d;background:#f0f1f2}.teacher-data__actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.teacher-data__actions .teacher-data__button{padding:8px 11px}.teacher-data__button.teacher-data__button--danger{color:#a82f2f;background:#fff0ee;border-color:#e3a6a0}.teacher-data__button.teacher-data__button--danger:not(:disabled):hover{color:#fff;background:#b33434;border-color:#b33434}.teacher-data .teacher-data__footnote{color:#7a858b;font-size:12px;line-height:1.7}.teacher-data .teacher-data__notice{color:#597488;font-size:13px}.teacher-data__empty{text-align:center;background:#f9fbfc;border:1px dashed #d6e0e5;border-radius:10px;align-content:center;justify-items:center;gap:7px;min-height:200px;padding:28px 18px;display:grid}.teacher-data__empty strong{color:#4a606d;font-size:16px}.teacher-data__empty span{color:#7a878f;font-size:13px}.teacher-data__table--homeworks th:first-child{width:39%}.teacher-data__table--homeworks th:nth-child(2){width:18%}.teacher-data__table--homeworks th:nth-child(3),.teacher-data__table--homeworks th:nth-child(4){width:12%}.teacher-data__table--homeworks th:nth-child(5){width:19%}.teacher-data__table--homeworks .teacher-data__actions-cell{text-align:right}.teacher-data__detail{gap:16px;min-width:0;display:grid}.teacher-data__detail-heading{align-items:center;gap:16px;min-width:0;padding:14px 0;display:flex}.teacher-data__detail-heading>div{flex:1;min-width:0}.teacher-data__detail-heading p{color:#7a878f;font-size:12px}.teacher-data__table--performance th:first-child{width:32%}.teacher-data__table--performance th:last-child{width:14%}.teacher-data__table--performance :is(td,thead th):not(:first-child){text-align:center}.teacher-data__table--performance :is(th,td){padding:14px 10px}.teacher-data__table--performance tbody td{color:#657983;font-size:13px}.teacher-data__number{font-size:15px;font-weight:650}.teacher-data__number--correct{color:#456b61}.teacher-data__accuracy{color:#436779;white-space:nowrap;font-size:15px}.teacher-data__ranked-name{align-items:center;gap:12px;display:flex}.teacher-data__rank{text-align:center;color:#87939a;flex-shrink:0;min-width:24px;font-size:12px;font-weight:400}.teacher-data__student-filter{background:#f6f5fa;border:1px solid #e1e5ee;border-radius:10px;align-items:end;gap:18px;padding:16px;display:flex}.teacher-data__student-filter label{flex:0 380px}.teacher-data__student-filter>span{color:#7c7a88;padding-bottom:11px;font-size:12px}.teacher-data__student-heading{align-items:center;gap:12px;min-width:0;padding:4px 0;display:flex}.teacher-data__student-heading>div{min-width:0}.teacher-data__student-heading p{color:#77858e;font-size:12px}.teacher-data__avatar{color:#75658a;background:#eee9f5;border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;font-weight:650;display:grid}.teacher-data__footer{border-top:1px solid #e2e7eb;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.teacher-data__footer>span{color:#849098;font-size:12px}.teacher-data .management-subdialog-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#28343c5c}.teacher-data .management-subdialog-card{background:#fffdfb;border-radius:14px;padding:24px;box-shadow:0 16px 60px #1e2d3729}.teacher-data .management-subdialog-card h3{font-family:inherit}.teacher-data .management-subdialog-card .primary-button{color:#795530;box-shadow:none;background:#fcecd6;border-color:#ddc4a1}@media (max-width:1000px){.teacher-data__actions{justify-content:flex-start}.teacher-data__table--games th:first-child{width:29%}.teacher-data__table--games th:nth-child(2){width:20%}.teacher-data__table--games th:nth-child(3){width:17%}.teacher-data__table--games th:nth-child(4){width:34%}.teacher-data__detail-heading{flex-wrap:wrap}}@media (max-width:720px){.role-dialog.role-dialog--teacher .lobby-dialog-card--teacher-data{max-height:calc(100dvh - 20px);padding:16px}.teacher-data{gap:14px}.teacher-data__intro{flex-wrap:wrap;align-items:flex-start;gap:6px!important}.teacher-data__toolbar{align-items:flex-start!important;gap:10px!important}.teacher-data .teacher-data__filters{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px}.teacher-data__filters label:first-child{grid-column:1/-1}.teacher-data__table-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.teacher-data__table,.teacher-data__table tbody{width:100%;display:block}.teacher-data__table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.teacher-data__table tbody{gap:12px;display:grid}.teacher-data__table tbody tr{background:#fff;border:1px solid #dfe6ea;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;padding:14px;display:grid}.teacher-data__table tbody :is(th,td){border:0;width:auto;min-width:0;padding:0;display:block;text-align:left!important}.teacher-data__table tbody th{border-bottom:1px solid #edf0f2;grid-column:1/-1;padding-bottom:10px}.teacher-data__table tbody th:first-child{width:auto}.teacher-data__table td[data-label]:before{content:attr(data-label);color:#87949c;margin-bottom:4px;font-size:11px;font-weight:400;display:block}.teacher-data__table .teacher-data__actions-cell{grid-column:1/-1}.teacher-data__table--games .teacher-data__actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.teacher-data__table--games .teacher-data__button:last-child{grid-column:1/-1}.teacher-data__table--homeworks tbody tr{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-data__table--homeworks td:nth-child(2){grid-column:1/-1}.teacher-data__table--homeworks .teacher-data__actions-cell .teacher-data__button{width:100%}.teacher-data__table--performance tbody tr{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-data__ranked-name{gap:6px}.teacher-data__rank{min-width:18px}.teacher-data__detail-heading{align-items:flex-start;gap:12px;padding:0}.teacher-data__detail-heading>div{flex-basis:calc(100% - 140px)}.teacher-data__detail-heading>.teacher-data__count{flex-basis:100%}.teacher-data__student-filter{gap:8px;padding:12px;display:grid}.teacher-data__student-filter>span{padding:0}.teacher-data__footer{flex-direction:column;align-items:flex-start}.teacher-data .management-subdialog-card{padding:18px}}button.fullscreen-action{font-weight:750;box-shadow:0 3px 9px #087d6938;color:#fff!important;background:#087d69!important;border-color:#087d69!important}button.fullscreen-action:hover:not(:disabled){background:#056352!important}button.fullscreen-action:focus-visible{outline-offset:3px;outline:3px solid #efac38}button.fullscreen-action:disabled{opacity:.5;box-shadow:none}button.return-button{font-weight:700;box-shadow:0 2px 5px #1765ad29;color:#fff!important;background:#1765ad!important;border-color:#1765ad!important}button.return-button:hover:not(:disabled){background:#104c87!important;border-color:#104c87!important}button.return-button:focus-visible{outline-offset:3px;outline:3px solid #edb445}button.return-button:disabled{opacity:.5;box-shadow:none}.student-observation-page .observation-playback{min-width:0;margin-top:auto}.observation-playback header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.observation-playback input[type=range]{accent-color:#1765ad;width:100%;min-width:0;padding:0}.observation-playback__buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.student-observation-page .observation-playback__buttons>button{border:1px solid var(--line);min-width:0;min-height:40px;color:var(--green-900);white-space:nowrap;cursor:pointer;background:#f5f8f8;border-radius:8px;padding:9px 4px;font-size:13px;font-weight:600}.student-observation-page .observation-playback__buttons>.primary-button{color:#fff;background:#1765ad;border-color:#1765ad}.student-observation-page .observation-playback__buttons>button:disabled{opacity:.45;cursor:default}.classroom-note-toolbar .classroom-note-tool[aria-pressed=true]{color:#fff;background:#1765ad;border-color:#1765ad}.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-result{background:#fffdfb;border-radius:18px;flex-direction:column;width:min(1160px,100%);height:min(840px,100dvh - 40px);min-height:0;padding:24px;display:flex;overflow:hidden}.lobby-dialog-card--homework-result>.lobby-dialog-heading{flex:none;margin-bottom:18px}.student-homework-result{color:#303d44;flex-direction:column;flex:auto;gap:16px;min-width:0;min-height:0;font-size:14px;line-height:1.5;display:flex}.student-homework-result :is(h3,h4,p){margin:0}.student-homework-result>:not(.student-homework-result__body){flex-shrink:0}.student-homework-result__header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.student-homework-result button{color:#435b68;min-height:40px;font:inherit;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #d9e2e7;border-radius:8px;padding:8px 13px;font-size:13px;font-weight:650}.student-homework-result button:focus-visible{outline-offset:2px;outline:3px solid #759bae}.student-homework-result__identity{min-width:0}.student-homework-result__identity>small{color:#61727c;margin-bottom:3px;font-size:11px;display:block}.student-homework-result__identity h3{overflow-wrap:anywhere;font-family:inherit;font-size:22px;font-weight:750;line-height:1.4}.student-homework-result__assignment-status{color:#48715f;white-space:nowrap;background:#edf4ef;border-radius:5px;padding:4px 10px;font-size:12px;font-weight:650}.student-homework-result__dates{color:#61727c;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 24px;font-size:12px;display:flex}.student-homework-result__summary{background:#f6f8f9;border:1px solid #dfe6ea;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));padding:16px 0;display:grid}.student-homework-result__summary>div{gap:4px;padding:0 22px;display:grid}.student-homework-result__summary>div+div{border-left:1px solid #dde5e9}.student-homework-result__summary>div>span{color:#61727c;font-size:12px}.student-homework-result__summary strong{color:#344f5d;font-variant-numeric:tabular-nums;font-size:26px;line-height:1.3}.student-homework-result__summary .is-correct strong{color:#267559}.student-homework-result__summary .is-incorrect strong{color:#b44a43}.student-homework-result__summary strong small{color:#61727c;margin-left:6px;font-size:12px;font-weight:500}.student-homework-result__list-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.student-homework-result__list-heading h4{font-size:15px}.student-homework-result__filters{flex-wrap:wrap;gap:6px;display:flex}.student-homework-result__filters button{background:#f2f5f6;border-color:#0000;align-items:center;gap:7px;min-height:36px;padding:6px 10px;font-size:12px;display:inline-flex}.student-homework-result__filters button span{font-variant-numeric:tabular-nums;opacity:.8}.student-homework-result__filters button:hover{border-color:#9fb3be}.student-homework-result__filters button[aria-pressed=true]{color:#fff;background:#344f5d}.student-homework-result__body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:100px;overflow:hidden auto}.student-homework-result__questions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-homework-result__question{background:#fff;border:1px solid #dfe6ea;border-radius:10px;grid-template-columns:minmax(100px,154px) minmax(0,1fr);align-items:center;gap:16px;min-width:0;padding:14px;display:grid}.student-homework-result__question-info{gap:10px;min-width:0;display:grid}.student-homework-result__question-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.student-homework-result__question-heading h4{font-size:15px;font-weight:700}.student-homework-result__status{color:#63717b;background:#edf0f2;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:650;display:inline-block}.student-homework-result__status.is-correct{color:#267559;background:#eaf4ee}.student-homework-result__status.is-incorrect{color:#b44a43;background:#fcefed}.student-homework-result__status.is-pending{color:#886335;background:#fcf1de}.student-homework-result__question-title{color:#506775;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.student-homework-result__question-meta{color:#61727c;flex-wrap:wrap;gap:3px 12px;font-size:12px;display:flex}.student-homework-result__preview{aspect-ratio:1;background:#f3f5f6;border-radius:7px;place-items:center;width:100%;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.student-homework-result__preview .board-shell{width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;box-shadow:none;border:0;border-radius:7px;padding:0;position:absolute;inset:0}.student-homework-result__preview .go-board{width:100%;height:100%}.student-homework-result__preview>span{color:#61727c;text-align:center;padding:12px;font-size:12px}.student-homework-result__empty{text-align:center;color:#506775;padding:40px 18px}.student-homework-result__empty p{color:#61727c;margin-top:8px;font-size:13px}.student-homework-result__footer{color:#61727c;border-top:1px solid #e1e7eb;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding-top:12px;font-size:12px;display:flex}@media (max-width:900px){.student-homework-result__questions{grid-template-columns:minmax(0,1fr)}}@media (max-width:600px){.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-result{border-radius:14px;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:14px}.lobby-dialog-card--homework-result>.lobby-dialog-heading{margin-bottom:12px}.student-homework-result{gap:12px}.student-homework-result__header{grid-template-columns:minmax(0,1fr) auto;gap:10px}.student-homework-result__header>button{grid-column:1/-1;justify-self:start;min-height:36px}.student-homework-result__identity h3{font-size:18px}.student-homework-result__summary{padding:12px 0}.student-homework-result__summary>div{padding:0 9px}.student-homework-result__summary strong{font-size:20px}.student-homework-result__summary strong small{display:none}.student-homework-result__filters{gap:5px}.student-homework-result__filters button{gap:4px;min-height:44px;padding:6px 7px}.student-homework-result__question{grid-template-columns:110px minmax(0,1fr);gap:12px;padding:11px}.student-homework-result__question-info{gap:7px}.student-homework-result__question-heading h4{font-size:14px}}@media (max-width:360px){.student-homework-result__question{grid-template-columns:88px minmax(0,1fr);gap:10px}.student-homework-result__summary strong{font-size:18px}}@media (max-height:650px){.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-result{height:auto;overflow-y:auto}.student-homework-result{flex-shrink:0}.student-homework-result__body{overflow:visible}}.admin-console{--ac-ink:#293b46;--ac-muted:#71808a;--ac-line:#e0e5e9;--ac-accent:#42637a;min-height:calc(100dvh - 72px);color:var(--ac-ink);background:#f5f6f8;grid-template-columns:216px minmax(0,1fr);font-size:14px;line-height:1.6;display:grid}.app-frame:has(.admin-console){background:#f5f6f8}.app-frame:has(.admin-console)>.topbar{color:#293b46;min-height:72px;box-shadow:none;background:#fff;border-bottom:1px solid #e0e5e9;padding:12px 28px}:is(.app-frame:has(.admin-console) .topbar .brand small,.app-frame:has(.admin-console) .topbar .account-chip small){color:#71808a}.app-frame:has(.admin-console) .topbar .account-avatar{color:#42637a;background:#eaf0f4;border-color:#d6e0e6}.app-frame:has(.admin-console) .topbar .text-button{color:#526673;background:#fff;border:1px solid #dce3e8}.admin-console__sidebar{border-right:1px solid var(--ac-line);background:#fbfcfd;flex-direction:column;gap:10px;padding:28px 16px 24px;display:flex}.admin-console__identity{align-items:center;gap:10px;padding:0 8px 26px;display:flex}.admin-console__identity strong{font-size:16px;display:block}.admin-console__identity small{color:var(--ac-muted);margin-top:3px;font-size:10px;display:block}.admin-console__emblem{width:36px;height:36px;color:var(--ac-accent);background:#eaf0f4;border-radius:9px;flex:0 0 36px;place-items:center;display:grid}.admin-console__nav-label{color:#88959e;letter-spacing:.08em;margin:0;padding:0 12px;font-size:11px}.admin-console__sidebar nav{gap:6px;display:grid}.admin-console__sidebar nav button{color:#62737e;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;min-width:0;min-height:46px;padding:11px 12px;font-weight:600;display:flex}.admin-console__sidebar nav button>span{color:#92a1ac;margin-left:auto}.admin-console__sidebar nav button[aria-current]{color:#34566f;background:#e8eff5;border-color:#dce6ee}.admin-console__scope{color:var(--ac-muted);overflow-wrap:anywhere;gap:5px;margin-top:auto;padding:24px 12px 0;display:grid}.admin-console__scope small{font-size:11px}.admin-console__scope strong{color:#566b78;font-size:13px;font-weight:600}.admin-console__scope>span{font-size:11px}.admin-console__workspace{width:100%;min-width:0;max-width:1536px;padding:28px clamp(20px,2.5vw,44px) 48px}.admin-console__heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.admin-console__breadcrumb{color:#87949d;margin:0 0 16px;font-size:11px}.admin-console__breadcrumb span{color:#b2bbc2;padding:0 9px}.admin-console__heading h1{letter-spacing:-.02em;margin:0 0 6px;font-family:inherit;font-size:27px;font-weight:750;line-height:1.4}.admin-console__heading p:last-child{color:var(--ac-muted);margin:0;font-size:13px}.admin-console__heading-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.admin-console button,.ac-editor button{cursor:pointer}.admin-console button:disabled,.ac-editor button:disabled{cursor:not-allowed;opacity:.48}.admin-console button:focus-visible,.ac-editor button:focus-visible{outline-offset:3px;outline:3px solid #8bb4cf}.admin-console .ac-button,.ac-editor .ac-button{color:#506673;white-space:nowrap;min-height:40px;box-shadow:none;background:#fff;border:1px solid #d5dfe5;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:8px 15px;font-size:13px;font-weight:650;display:inline-flex}.admin-console .ac-button--primary,.ac-editor .ac-button--primary{color:#fff;background:#42637a;border-color:#42637a}.admin-console .ac-button:hover:not(:disabled),.ac-editor .ac-button:hover:not(:disabled){background:#f0f5f8;border-color:#7c9aaf}.admin-console .ac-button--primary:hover:not(:disabled),.ac-editor .ac-button--primary:hover:not(:disabled){color:#fff;background:#334f63}.ac-text-button{color:#426b88;white-space:nowrap;background:0 0;border:0;border-radius:3px;min-height:38px;padding:5px 0;font-size:12px;font-weight:650}.ac-text-button:hover:not(:disabled){text-underline-offset:4px;text-decoration:underline}.ac-text-button--quiet{color:#6e7f8b}.ac-text-button--danger{color:#aa5d53}.ac-panel{border:1px solid var(--ac-line);background:#fff;border-radius:12px;overflow:hidden}.ac-panel__heading{justify-content:space-between;align-items:center;gap:14px;padding:20px 22px 0;display:flex}.ac-panel__heading h2{overflow-wrap:anywhere;align-items:center;gap:9px;margin:0;font-family:inherit;font-size:16px;font-weight:700;display:flex}.ac-panel__heading p{margin:4px 0 0}.ac-count{color:#617887;background:#f5f8fa;border:1px solid #e5ebef;border-radius:5px;flex-shrink:0;align-items:center;min-width:26px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.ac-muted{color:#71808a;font-size:12px}.ac-search{align-items:center;gap:10px;padding:18px 22px 22px;display:flex}.ac-search>label{width:min(100%,380px);min-width:0}.admin-console input,.admin-console select,.ac-editor input,.ac-editor select{color:#344b5b;width:100%;min-width:0;min-height:40px;box-shadow:none;background-color:#fff;border:1px solid #dce3e8;border-radius:7px;outline:none;padding:8px 11px;font-size:13px;font-weight:400}.admin-console input:focus,.admin-console select:focus,.ac-editor input:focus,.ac-editor select:focus{border-color:#7c9fb7;box-shadow:0 0 0 3px #eaf1f6}.admin-console input::placeholder,.ac-editor input::placeholder{color:#94a0a8}.ac-table-wrap{width:100%}.ac-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.ac-table th{color:#7b8a94;text-align:left;background:#f8fafb;border-block:1px solid #e7ebee;padding:12px 18px;font-size:11px;font-weight:550}.ac-table td{color:#556d7c;vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #edf0f2;padding:22px 18px}.ac-table tbody tr:last-child td{border-bottom:0}.ac-table tbody tr:hover{background:#fafcfd}.ac-table th:first-child,.ac-table td:first-child{padding-left:22px}.ac-table th:last-child,.ac-table td:last-child{padding-right:22px}.ac-table--organizations th:first-child{width:27%}.ac-table--organizations th:nth-child(2){width:24%}.ac-table--organizations th:nth-child(3),.ac-table--organizations th:nth-child(4){width:12%}.ac-table--organizations th:nth-child(5){width:25%}.ac-table--users th:first-child{width:27%}.ac-table--users th:nth-child(2){width:23%}.ac-table--users th:nth-child(3){width:18%}.ac-table--users th:nth-child(4){width:13%}.ac-table--users th:nth-child(5){width:19%}.ac-table-identity{align-items:center;gap:12px;min-width:0;display:flex}.ac-table-identity>div{min-width:0}.ac-table-identity strong{color:#304956;overflow-wrap:anywhere;font-size:13px;font-weight:650;display:block}.ac-table-identity small{color:#81919c;overflow-wrap:anywhere;margin-top:3px;font-size:11px;display:block}.ac-academy-icon,.ac-avatar{color:#658096;background:#eff4f7;border:1px solid #e4eaef;border-radius:9px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.ac-avatar{background:#eaf1f6;border-radius:50%}.ac-avatar--teacher{color:#767095;background:#f0edf6;border-color:#e6e0ef}.ac-avatar--admin{color:#8c765c;background:#f6f0e7;border-color:#ebe3d7}.ac-slug{color:#738794;font-family:ui-monospace,monospace;font-size:11px}.ac-number{color:#3a5364;font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.ac-table td>small{color:#95a2aa}.ac-row-actions{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.ac-panel__footer{color:#89969f;border-top:1px solid #edf0f2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 22px;font-size:11px;display:flex}.ac-filters{flex-wrap:wrap;align-items:end;gap:12px;padding:22px;display:flex}.ac-filters label,.ac-editor-form label{color:#627784;gap:7px;min-width:0;font-size:11px;font-weight:600;display:grid}.ac-filters>label{flex:120px}.ac-filters>label:first-child{flex-basis:180px}.ac-filters>.ac-filters__search{flex:1.4 170px}.ac-filters__actions{align-items:center;gap:12px;display:flex}.ac-table select{background-color:#fcfdfe;max-width:138px;min-height:36px;padding:6px 9px;font-size:12px}.ac-status{color:#8d7468;white-space:nowrap;background:#f4efeb;border-radius:5px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.ac-status:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.ac-status--active{color:#538376;background:#edf5f1}.ac-platform-role{color:#8c775f;font-size:12px}.ac-protected{font-size:11px}.ac-permission-note{color:#8b959c;background:#fcfdfe;border-top:1px solid #edf0f2;margin:0;padding:12px 22px;font-size:11px}.ac-empty{color:#7b8d99;text-align:center;justify-items:center;gap:9px;padding:60px 20px;display:grid}.ac-empty svg{width:30px;height:30px;margin-bottom:5px}.ac-empty strong{font-size:14px;font-weight:500}.ac-empty p{margin:0;font-size:12px}.ac-feedback{color:#527661;background:#f0f7f3;border:1px solid #dbe8e0;border-radius:8px;margin:0 0 16px;padding:12px 16px;font-size:13px}.ac-feedback--error{color:#995b50;background:#fdf4f0;border-color:#edd9d3}.ac-own-organization{flex-wrap:wrap;align-items:center;gap:18px;padding:26px 22px;display:flex}.ac-own-organization h2{margin:0;font-size:18px}.ac-own-organization p{color:#7b8d99;margin:4px 0 0}.ac-own-organization .ac-row-actions{margin-left:auto}.ac-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ac-editor{color:#293b46;background:#fff;border:1px solid #dce4e9;border-radius:14px;width:min(520px,100% - 32px);max-height:calc(100dvh - 40px);padding:26px;overflow:auto;box-shadow:0 18px 70px #1f354328}.ac-editor::backdrop{background:#21344155}.ac-editor>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.ac-editor>header p{margin:0 0 4px}.ac-editor h2{margin:0;font-family:inherit;font-size:21px;font-weight:700}.ac-close{color:#6c818e;background:#f7f9fa;border:1px solid #e0e6ea;border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;padding:0;font-size:24px;line-height:1;display:grid}.ac-editor-form{gap:20px;display:grid}.ac-editor-form>p{margin:0}.ac-editor-form small{color:#8c9aa4;font-size:11px;font-weight:400}.ac-editor-actions{border-top:1px solid #e7ecef;justify-content:flex-end;align-items:center;gap:16px;margin-top:6px;padding-top:20px;display:flex}.ac-editor-actions>.ac-text-button{margin-right:auto}.ac-editor-context{color:#84949f;background:#f3f6f8;border-radius:7px;gap:5px;padding:12px 15px;font-size:11px;display:grid}.ac-editor-context strong{color:#496576;overflow-wrap:anywhere;font-size:14px;font-weight:600}.ac-form-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}.ac-detail{background:#f5f8fa;border-radius:8px;gap:13px;margin:0;padding:18px;display:grid}.ac-detail>div{justify-content:space-between;gap:18px;font-size:12px;display:flex}.ac-detail dt{color:#81929c;flex-shrink:0}.ac-detail dd{color:#506b7c;text-align:right;overflow-wrap:anywhere;margin:0}@media (max-width:1150px){.admin-console{grid-template-columns:180px minmax(0,1fr)}.admin-console__sidebar{padding-inline:12px}.admin-console__identity{gap:8px;padding-inline:0}.admin-console__identity small{font-size:9px}.admin-console__workspace{padding:24px 22px 40px}.ac-table td,.ac-table th{padding-inline:12px}.ac-row-actions{gap:6px 12px}.ac-table--organizations th:first-child{width:27%}.ac-table--organizations th:nth-child(2){width:22%}.ac-table--organizations th:nth-child(5){width:27%}.ac-academy-icon{display:none}.ac-table-identity{gap:8px}}@media (max-width:900px){.admin-console{grid-template-rows:auto 1fr;grid-template-columns:1fr;min-height:calc(100dvh - 72px)}.admin-console__sidebar{border-right:0;border-bottom:1px solid var(--ac-line);background:#fff;padding:10px 22px;display:block}.admin-console__identity,.admin-console__nav-label,.admin-console__scope{display:none}.admin-console__sidebar nav{gap:8px;display:flex}.admin-console__sidebar nav button{min-height:40px;padding:8px 15px}.admin-console__sidebar nav button>span{display:none}.admin-console__workspace{padding-top:24px}.ac-filters>label,.ac-filters>label:first-child,.ac-filters>.ac-filters__search{flex:40%}}@media (max-width:600px){.app-frame:has(.admin-console)>.topbar{min-height:64px;padding:10px 16px}.admin-console{min-height:calc(100dvh - 64px);font-size:13px}.admin-console__sidebar{padding:9px 16px}.admin-console__sidebar nav button{flex:1;justify-content:center}.admin-console__workspace{padding:20px 16px 32px}.admin-console__heading{flex-direction:column;align-items:start;gap:18px;margin-bottom:20px}.admin-console__heading h1{font-size:24px}.admin-console__breadcrumb{margin-bottom:8px}.admin-console__heading p:last-child{font-size:12px}.admin-console__heading-actions{width:100%}.admin-console__heading-actions>.ac-button--primary{flex:1}.admin-console .ac-button,.ac-editor .ac-button{min-height:42px}.ac-panel__heading{align-items:start;padding:18px 16px 0}.ac-panel__heading>.ac-muted{display:none}.ac-search{padding:16px}.ac-search>label{flex:1}.ac-table,.ac-table tbody,.ac-table tr,.ac-table td{width:100%;display:block}.ac-table thead{display:none}.ac-table tr{border-top:1px solid #e7ecef;padding:18px 16px}.ac-table td,.ac-table td:first-child,.ac-table td:last-child{text-align:right;border:0;justify-content:space-between;align-items:center;gap:16px;padding:6px 0;display:flex}.ac-table td:first-child{text-align:left;padding:0 0 12px}.ac-table td:not(:first-child):before{content:attr(data-label);color:#8a9aa4;flex-shrink:0;font-size:11px}.ac-table td:first-child .ac-table-identity{width:100%}.ac-table .ac-academy-icon{display:grid}.ac-table .ac-table-identity{gap:11px}.ac-table .ac-table-identity strong{font-size:14px}.ac-table td>small{margin-left:-10px}.ac-table td:has(>.ac-number){justify-content:flex-end;gap:15px}.ac-table td:has(>.ac-number):before{margin-right:auto}.ac-row-actions{gap:18px}.ac-text-button{min-height:42px}.ac-table td:last-child{border-top:1px dashed #e5ebef;margin-top:7px;padding-top:10px}.ac-table select{max-width:156px;min-height:40px}.ac-panel__footer{padding:16px}.ac-filters{gap:14px 12px;padding:18px 16px}.ac-filters>label:first-child,.ac-filters>.ac-filters__search{flex-basis:100%}.ac-filters__actions{width:100%}.ac-filters__actions>.ac-button{flex:1}.ac-permission-note{padding:12px 16px}.ac-editor{border-radius:12px;width:calc(100% - 24px);padding:22px 18px}.ac-form-columns{grid-template-columns:1fr}.ac-own-organization{padding-inline:16px}.ac-own-organization .ac-row-actions{width:100%;margin-left:0}}:root{color:#18352e;font-synthesis:none;text-rendering:optimizelegibility;--green-950:#102f28;--green-900:#173f35;--green-800:#245548;--green-700:#376f5e;--cream:#f3f0e7;--paper:#fffdf7;--gold:#c99547;--gold-light:#e8c989;--ink:#18352e;--muted:#708079;--line:#173f3524;--danger:#a73d31;--shadow:0 24px 70px #1930281f;background:#f3f0e7;font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--cream);min-width:320px;min-height:100%}body{background:radial-gradient(circle at 8% 8%, #c995471a, transparent 25rem), var(--cream);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #c9954794}h1,h2,p{margin-top:0}.app-frame{min-height:100vh}.topbar{z-index:10;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#102f28f5;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;min-height:78px;padding:12px clamp(22px,5vw,72px);display:flex;position:sticky;top:0}.brand{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:inline-flex}.brand--static{cursor:default}.brand>span:last-child,.account-chip>span:nth-child(2){flex-direction:column;display:flex}.brand strong{letter-spacing:.12em;font-family:Songti SC,STSong,serif;font-size:21px}.brand small,.account-chip small{color:#ffffff94;letter-spacing:.08em;margin-top:2px;font-size:11px}.brand-stone{width:38px;height:38px;box-shadow:inset 0 0 0 8px var(--green-900), 0 0 0 1px #ffffff1f;background:radial-gradient(circle at 35% 28%,#eef1ed 0 23%,#a8b0aa 55%,#4f5c56 100%);border:1px solid #ffffff40;border-radius:50%;position:relative}.account-chip{align-items:center;gap:10px;display:flex}.account-avatar{background:#ffffff17;border:1px solid #ffffff24;border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;display:grid}.account-chip strong{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.text-button{color:#ffffffc2;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:9px;margin-left:10px;padding:8px 12px}.auth-page{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100vh;display:grid}.auth-visual{color:#fff;background:linear-gradient(145deg, #0b2821f7, #1f5143eb), var(--green-900);align-items:flex-end;padding:clamp(42px,7vw,110px);display:flex;position:relative;overflow:hidden}.auth-visual:before,.auth-visual:after{content:"";border-radius:50%;position:absolute}.auth-visual:before{border:1px solid #e8c98929;width:52vw;height:52vw;top:-22vw;right:-15vw;box-shadow:0 0 0 9vw #ffffff05,0 0 0 18vw #ffffff04}.auth-visual:after{opacity:.78;background:radial-gradient(circle at 35% 28%,#4f5d59,#090d0c 68%);width:33rem;height:33rem;bottom:-14rem;left:-13rem;box-shadow:22px 35px 80px #0000005c}.auth-visual>div:last-child{z-index:1;max-width:650px;position:relative}.auth-visual h1{letter-spacing:.02em;max-width:540px;margin-bottom:24px;font-family:Songti SC,STSong,serif;font-size:clamp(44px,6vw,84px);font-weight:500;line-height:1.13}.auth-visual p:last-child{color:#ffffff9e;max-width:520px;font-size:17px;line-height:1.9}.auth-board-mark{opacity:.42;background-image:linear-gradient(#e8c98966 1px,#0000 1px),linear-gradient(90deg,#e8c98966 1px,#0000 1px);background-size:30px 30px;width:180px;height:180px;position:absolute;top:8%;left:9%}.auth-board-mark i{background:#e8c989;border-radius:50%;width:17px;height:17px;position:absolute}.auth-board-mark i:first-child{top:22px;left:22px}.auth-board-mark i:nth-child(2){background:#101715;top:82px;left:82px}.auth-board-mark i:nth-child(3){bottom:21px;right:21px}.auth-panel,.center-page{background:var(--paper);place-items:center;padding:40px;display:grid}.auth-card,.selection-card{width:min(100%,430px)}.auth-card .brand{color:var(--green-900);margin-bottom:72px}.auth-heading h2,.selection-card h1{margin-bottom:10px;font-family:Songti SC,STSong,serif;font-size:34px;font-weight:600}.auth-heading p,.selection-card>p,.lobby-dialog-card p,.action-card p{color:var(--muted);line-height:1.7}.auth-card label,.lobby-dialog-card label{color:#3c544d;gap:9px;margin:24px 0;font-size:13px;font-weight:650;display:grid}input,select{border:1px solid var(--line);width:100%;min-height:51px;color:var(--ink);background:#ffffffc7;border-radius:10px;padding:0 15px;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--green-700);box-shadow:0 0 0 4px #376f5e1a}.primary-button,.secondary-button,.action-grid button,.inline-actions button{cursor:pointer;border-radius:9px;min-height:45px;padding:11px 16px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s}.primary-button{border:1px solid var(--green-900);color:#fff;background:var(--green-900);box-shadow:0 10px 24px #102f282e}.secondary-button,.action-grid button,.inline-actions button{border:1px solid var(--line);background:#fff}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.action-grid button:hover:not(:disabled),.inline-actions button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 20px #173f351f}button:disabled{cursor:not-allowed;opacity:.43}.primary-button--wide,.secondary-button--wide{width:100%}.auth-card>.primary-button{min-height:54px;margin-top:12px}.auth-footnote{color:#89948f;text-align:center;margin-top:18px;font-size:12px;line-height:1.65}.eyebrow{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:800}.message{border-radius:9px;padding:12px 15px;font-size:13px;line-height:1.5}.message--error{color:#7c2f27;background:#fae9e4}.message--warning{color:#745315;background:#fff4d9}.center-page{background:var(--cream);min-height:100vh}.selection-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:20px;padding:42px}.membership-list{gap:10px;margin:28px 0;display:grid}.membership-list button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:11px;justify-content:space-between;align-items:center;min-height:72px;padding:14px 18px;display:flex}.membership-list button span:first-child{gap:4px;display:grid}.membership-list small{color:var(--muted)}.membership-empty{background:#fae9e4b8;border:1px solid #a23e3433;border-radius:11px;gap:7px;margin:28px 0 18px;padding:18px;display:grid}.membership-empty strong{color:#7c2f27}.membership-empty p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.lobby-page,.game-page{width:min(100% - 40px,1380px);margin:0 auto;padding:clamp(38px,6vw,82px) 0 70px}.lobby-intro{max-width:820px;margin-bottom:42px}.lobby-intro h1,.game-heading h1{margin-bottom:13px;font-family:Songti SC,STSong,serif;font-size:clamp(35px,4.8vw,61px);font-weight:500;line-height:1.2}.lobby-message{margin-top:-22px;margin-bottom:26px}.lobby-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lobby-action-button{border:1px solid var(--line);min-height:150px;color:var(--green-900);text-align:left;cursor:pointer;background:#fffdf7e0;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-content:end;gap:7px 14px;padding:26px 28px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 48px #273a330f}.lobby-action-button:hover{border-color:#376f5e57;transform:translateY(-2px);box-shadow:0 24px 58px #1d3e331f}.lobby-action-button--accent{border-color:var(--green-900);color:#fff;background:radial-gradient(circle at 110% -10%, #e8c98938, transparent 42%), var(--green-900)}.lobby-action-button small{z-index:1;color:var(--muted);letter-spacing:.13em;grid-column:1/-1;font-size:10px;font-weight:700;position:relative}.lobby-action-button--accent small{color:#ffffff94}.lobby-action-button strong{z-index:1;font-family:Songti SC,STSong,serif;font-size:clamp(22px,2.4vw,29px);font-weight:600;position:relative}.lobby-action-number{color:#173f3512;font-family:Georgia,serif;font-size:76px;position:absolute;top:8px;right:18px}.lobby-action-button--accent .lobby-action-number{color:#ffffff12}.lobby-action-arrow{z-index:1;align-self:center;font-size:24px;position:relative}.lobby-dialog-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c1f1a80;place-items:center;padding:clamp(18px,5vw,56px);display:grid;position:fixed;inset:0;overflow-y:auto}.lobby-dialog-card{background:var(--paper);border:1px solid #ffffff94;border-radius:20px;width:min(610px,100%);max-height:calc(100dvh - 36px);padding:clamp(24px,4vw,40px);display:grid;overflow-y:auto;box-shadow:0 34px 100px #081c1659}.lobby-dialog-card--accent{color:#fff;background:radial-gradient(circle at 110% -10%, #e8c98938, transparent 42%), var(--green-900);border-color:#ffffff29}.lobby-dialog-card--accent p,.lobby-dialog-card--accent label{color:#ffffffad}.lobby-dialog-card--accent input,.lobby-dialog-card--accent select{color:#fff;background:#ffffff14;border-color:#ffffff29}.lobby-dialog-card--accent .primary-button{border-color:var(--gold-light);color:var(--green-950);background:var(--gold-light)}.lobby-dialog-card--accent .message--error{color:#7c2f27}.lobby-dialog-heading{justify-content:space-between;align-items:start;gap:20px;margin-bottom:8px;display:flex}.assigned-games-heading{align-items:center;gap:10px}.assigned-games-title-row{flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.assigned-games-heading .assigned-games-title-row h2{margin:0}.assigned-games-title-row .secondary-button{flex-shrink:0;min-width:0;min-height:40px;padding:8px 12px}.assigned-games-heading .dialog-close{flex-shrink:0}.assigned-games-view-label{color:var(--muted);margin:6px 0 16px;font-size:13px}.lobby-dialog-heading h2,.action-card h2,.result-card h2,.report-card h2{margin-bottom:12px;font-family:Songti SC,STSong,serif;font-size:27px;font-weight:600}.dialog-close{border:1px solid var(--line);width:40px;height:40px;color:inherit;cursor:pointer;background:#ffffff14;border-radius:50%;padding:0;font-size:25px;line-height:1}.segmented-control{background:#ffffff12;border-radius:10px;grid-template-columns:repeat(3,1fr);padding:4px;display:grid}.segmented-control button{color:#ffffffa6;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:40px}.segmented-control .is-selected{color:var(--green-950);background:var(--gold-light)}.room-code-input{letter-spacing:.16em;text-transform:uppercase;margin:22px 0;font-size:21px;font-weight:800}.text-action{color:var(--green-700);text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 0;font-weight:700}.lobby-dialog-card>input{margin:18px 0}.form-grid{gap:14px;display:grid}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.lobby-dialog-card .form-grid label,.admin-card .form-grid label{min-width:0;margin:0}.lobby-dialog-card .form-grid{margin-bottom:24px}.lobby-dialog-card--wide{width:min(1040px,100%)}.lobby-dialog-card--student-info{width:min(1180px,100%)}.lobby-dialog-card--question-bank{grid-template-rows:auto minmax(0,1fr);width:min(1360px,100%);height:min(820px,100dvh - 36px);min-height:min(820px,100dvh - 36px);padding:18px 22px 22px;overflow:hidden}.lobby-dialog-card--question-bank>.lobby-dialog-heading{align-items:center;min-height:48px;margin:0}.lobby-dialog-card--question-bank>.lobby-dialog-heading h2{margin:0;font-size:30px}.lobby-action-button--library{background:linear-gradient(135deg,#fffbf0fa,#f2e0b8b8);border-color:#c28b2d57}.dialog-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.create-game-menu{gap:6px;display:grid}.dialog-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-choice-grid--three button{border:1px solid var(--line);min-height:132px;color:var(--green-900);text-align:left;cursor:pointer;background:#ffffffb3;border-radius:14px;align-content:end;gap:9px;padding:22px;display:grid}.dialog-choice-grid--three button:hover{background:#376f5e12;border-color:#376f5e7a}.dialog-choice-grid--three button:first-child{border-color:var(--green-900);color:#fff;background:var(--green-900)}.dialog-choice-grid--three button strong{font-family:Songti SC,STSong,serif;font-size:24px}.dialog-choice-grid--three button small{color:inherit;opacity:.68;font-size:12px;line-height:1.55}.dialog-choice-grid--three button:disabled{cursor:wait;opacity:.55}.class-game-create-form,.guided-game-create-form,.teaching-management,.teacher-game-list,.teacher-game-detail,.assigned-game-list{gap:18px;display:grid}.guided-game-notice{background:#ffffff12;border:1px solid #ffffff29;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.guided-game-notice strong{color:var(--gold-light);white-space:nowrap}.guided-game-notice span{color:#ffffffb3;text-align:right;font-size:13px}.lobby-dialog-card--accent input:disabled{color:#ffffffd1;opacity:1;-webkit-text-fill-color:#ffffffd1}.teaching-management__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.teaching-management__actions button{min-height:54px;font-size:15px;font-weight:750}.student-information{gap:18px;display:grid}.student-information__toolbar{border:1px solid var(--line);background:#376f5e0e;border-radius:14px;grid-template-columns:minmax(150px,.8fr) minmax(210px,1.25fr) auto minmax(12px,1fr) auto auto;align-items:end;gap:12px;padding:18px;display:grid}.student-information__toolbar label{color:var(--muted);gap:7px;margin:0;font-size:12px;font-weight:700;display:grid}.student-information__toolbar select,.student-information__toolbar input{min-height:46px}.student-information__rect-button{min-height:46px;color:var(--green-900);white-space:nowrap;cursor:pointer;background:#ffffffdb;border:1px solid #14463942;border-radius:5px;padding:0 18px;font-weight:760}.student-information__rect-button--primary{border-color:var(--green-900);color:#fff;background:var(--green-900)}.student-information__rect-button:disabled{cursor:not-allowed;opacity:.55}.student-information__directory{border:1px solid var(--line);background:#ffffffad;border-radius:16px;overflow:hidden}.student-information__summary{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px 14px;display:flex}.student-information__summary h3,.student-information__class-list h4{color:var(--green-900);margin:0;font-family:Songti SC,STSong,serif}.student-information__summary h3{font-size:23px}.student-information__summary p{color:var(--muted);margin:4px 0 0;font-size:12px}.student-information__table-wrap{border-top:1px solid var(--line);min-height:428px;overflow-x:auto}.student-information__table{border-collapse:collapse;table-layout:fixed;width:100%}.student-information__table th,.student-information__table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:10px 18px}.student-information__table th{color:var(--muted);background:#efede594;font-size:12px;font-weight:760}.student-information__table th:first-child{width:19%}.student-information__table th:nth-child(2){width:16%}.student-information__table th:nth-child(3){width:25%}.student-information__table th:nth-child(4){width:40%}.student-information__table tbody tr{transition:background .14s}.student-information__table tbody tr:hover{background:#c891390e}.student-information__table td:first-child strong,.student-information__table td:first-child small{display:block}.student-information__table td:first-child small{color:#aa493f;margin-top:3px;font-size:11px}.student-information__row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.student-information__row-actions button{min-height:34px;color:var(--green-900);white-space:nowrap;cursor:pointer;background:#ffffffd1;border:1px solid #14463938;border-radius:11px;padding:6px 13px;font-size:12px;font-weight:720}.student-information__row-actions button:hover:not(:disabled){background:#376f5e14;border-color:#1446398f}.student-information__row-actions button:disabled{cursor:not-allowed;opacity:.45}.student-information__empty{min-height:300px;color:var(--muted);text-align:center;place-content:center;gap:7px;display:grid}.student-information__empty strong{color:var(--green-900);font-family:Songti SC,STSong,serif;font-size:22px}.student-information__pagination{justify-content:flex-end;align-items:center;gap:10px;padding:14px 18px;display:flex}.student-information__pagination button{border:1px solid var(--line);min-height:36px;color:var(--green-900);cursor:pointer;background:#fff;border-radius:8px;padding:0 14px;font-weight:680}.student-information__pagination button:disabled{cursor:not-allowed;opacity:.4}.student-information__pagination span{min-width:92px;color:var(--muted);text-align:center;font-size:12px}.management-subdialog-card--class{width:min(680px,100%)}.student-information__class-list,.student-information__class-options{gap:9px;display:grid}.management-subdialog-card--class-adjustment{width:min(640px,100%)}.student-information__class-list{border-top:1px solid var(--line);max-height:260px;padding-top:8px;overflow-y:auto}.student-information__class-list>div{background:#376f5e0d;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:8px 10px;display:flex}.student-information__class-list span,.student-information__class-options span{gap:3px;display:grid}.student-information__class-list small,.student-information__class-options small,.student-information__dialog-note{color:var(--muted)}.student-information__class-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(360px,48dvh);padding:2px;overflow-y:auto}.management-subdialog-card .student-information__class-options label{border:1px solid var(--line);cursor:pointer;background:#ffffffa3;border-radius:9px;align-items:center;gap:10px;min-width:0;min-height:48px;padding:7px 10px;transition:border-color .14s,background .14s;display:flex}.management-subdialog-card .student-information__class-options label:has(input:checked){background:#376f5e17;border-color:#1446397a}.student-information__class-options span{flex:1;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;display:flex}.student-information__class-options strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-information__class-options small{white-space:nowrap;flex:none;font-size:11px;font-weight:560}.student-information__class-options input{width:18px;height:18px;accent-color:var(--green-800);flex:none;margin:0}.student-information__dialog-note{margin:0;line-height:1.65}.student-information__dialog-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.management-subdialog-backdrop{z-index:55;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c1f1a94;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.management-subdialog-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;gap:16px;width:min(560px,100%);max-height:calc(100dvh - 36px);padding:clamp(24px,4vw,36px);display:grid;overflow-y:auto;box-shadow:0 30px 90px #081c1661}.management-subdialog-card .lobby-dialog-heading{margin-bottom:0}.management-subdialog-card label{color:#3c544d;gap:8px;margin:0;font-size:12px;font-weight:650;display:grid}.teaching-card,.managed-class,.teacher-game-row{border:1px solid var(--line);background:#ffffff9e;border-radius:14px}.teaching-card{gap:12px;padding:18px;display:grid}.teaching-card h3{margin:0;font-family:Songti SC,STSong,serif;font-size:21px}.teaching-card label{margin:0}.teaching-card--list{gap:10px}.teaching-list-content{gap:10px;display:grid}.teaching-section-actions,.teacher-game-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.teacher-game-filters{border:1px solid var(--line);background:#376f5e0e;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:15px;display:grid}.teacher-game-filters label{color:var(--muted);gap:7px;margin:0;font-size:12px;font-weight:650;display:grid}.teaching-section-heading,.managed-class>header,.student-account-row,.teacher-game-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.teaching-section-heading>span,.managed-class>header>span,.student-account-row>span,.teacher-game-row>span{gap:4px;min-width:0;display:grid}.teaching-section-heading small,.managed-class small,.student-account-row small,.teacher-game-row small{color:var(--muted)}.managed-class{gap:12px;padding:15px;display:grid}.class-import-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.class-member-chips{flex-wrap:wrap;gap:8px;display:flex}.class-member-chips>span{color:var(--green-800);background:#376f5e17;border-radius:999px;align-items:center;gap:5px;padding:5px 6px 5px 10px;display:inline-flex}.class-member-chips button{width:24px;height:24px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0}.student-account-row{border-bottom:1px solid var(--line);min-height:52px;padding:8px 2px}.student-account-row:last-child{border-bottom:0}.danger-link{color:#a23e34;cursor:pointer;background:0 0;border:0;padding:8px 10px;font-weight:700}.teacher-game-row{min-height:72px;padding:14px 16px}.teacher-game-actions{flex:none}.teacher-game-actions button{white-space:nowrap;min-height:40px}.teacher-board-preview{width:min(70vh,700px);max-width:100%;margin:0 auto}.message--success{color:var(--green-800);background:#376f5e1f}.admin-page{width:min(100% - 40px,1380px);margin:0 auto;padding:clamp(34px,5vw,68px) 0 70px}.admin-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px;display:flex}.admin-heading>div{max-width:760px}.admin-heading h1{margin-bottom:10px;font-family:Songti SC,STSong,serif;font-size:clamp(34px,4.8vw,56px);font-weight:500}.admin-heading p:last-child{color:var(--muted);margin-bottom:0}.admin-heading>label{min-width:min(100%,280px);color:var(--muted);gap:8px;font-size:12px;display:grid}.admin-nav{border:1px solid var(--line);background:#f4f3ef;border-radius:12px;padding:4px;display:inline-flex}.admin-nav button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 20px;font-weight:700}.admin-nav button.is-active{color:#183d34;background:#fff;box-shadow:0 1px 5px #23362f1a}.admin-toolbar{border:1px solid var(--line);background:#fffdf7e6;border-radius:14px;justify-content:space-between;align-items:end;gap:16px;padding:16px 18px;display:flex}.admin-search{align-items:end;gap:10px;width:min(100%,620px);display:flex}.admin-toolbar label,.admin-create-account label{color:#3c544d;gap:6px;min-width:0;font-size:12px;font-weight:700;display:grid}.admin-search label{flex:1}.admin-management-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:start;gap:16px;margin-top:16px;display:grid}.admin-organization-list{margin-top:0;padding:0;overflow:hidden}.admin-table-heading,.admin-organization-row{grid-template-columns:minmax(170px,1fr) 100px 90px;align-items:center;gap:12px;display:grid}.admin-table-heading,.admin-user-table-heading{color:var(--muted);background:#f4f4f1;padding:12px 18px;font-size:12px;font-weight:700}.admin-organization-row{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;border-radius:0;width:100%;padding:15px 18px}.admin-organization-row:hover,.admin-organization-row.is-selected{background:#f0f7f4}.admin-organization-row>span:first-child{gap:3px;min-width:0;display:grid}.admin-organization-row small{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.admin-detail-stack{gap:16px;display:grid}.admin-detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;display:grid}.admin-detail-list>div{background:#f4f4f1;border-radius:10px;padding:12px}.admin-detail-list dt{color:var(--muted);font-size:11px}.admin-detail-list dd{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;overflow:hidden}.admin-card-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-user-filters{grid-template-columns:minmax(160px,1fr) minmax(180px,1.3fr) minmax(130px,.7fr) minmax(130px,.7fr) auto;display:grid}.admin-user-table-heading{grid-template-columns:minmax(210px,1fr) minmax(150px,.8fr) minmax(120px,170px) 90px;gap:12px;display:grid}.admin-empty{color:var(--muted);text-align:center;margin:0;padding:28px 18px}.admin-load-more{justify-self:center;margin:16px 0 4px}.admin-create-account{grid-template-columns:minmax(180px,.65fr) minmax(0,2fr) auto;align-items:end;gap:20px;margin-top:16px;display:grid}.admin-create-account h2,.admin-create-account p{margin-bottom:6px}.form-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.admin-card,.member-card{border:1px solid var(--line);background:#fffdf7e0;border-radius:16px;padding:28px;box-shadow:0 18px 44px #23362f0f}.admin-card h2,.member-card h2{margin-bottom:18px;font-family:Songti SC,STSong,serif;font-size:25px}.admin-card>label{color:#3c544d;gap:8px;margin:18px 0;font-size:12px;font-weight:650;display:grid}.member-card{margin-top:16px}.member-card__heading{justify-content:space-between;align-items:center;display:flex}.member-card__warning{color:#8a6259;margin:-10px 0 14px;font-size:12px}.member-list{border-top:1px solid var(--line);display:grid}.member-row{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(160px,1fr) minmax(150px,.8fr) minmax(120px,170px) 90px;align-items:center;gap:12px;min-width:0;padding:13px 0;display:grid}.member-organization{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-role-label{color:#5b4639;font-weight:750}.member-status.is-platform{color:#5b4639;background:#f2e8d8}.member-avatar{color:#fff;background:var(--green-800)}.member-identity{gap:3px;min-width:0;display:grid}.member-identity strong,.member-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-identity small{color:var(--muted);font-size:11px}.member-status{border:1px solid var(--line);min-height:38px;color:var(--muted);cursor:pointer;background:#fff;border-radius:9px}.member-status.is-active{color:var(--green-700);background:#376f5e14}.form-help,.empty-copy{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.authority-note{border:1px solid var(--line);color:var(--muted);background:#ffffff5c;border-radius:12px;align-items:center;gap:20px;margin-top:24px;padding:18px 24px;font-size:13px;display:flex}.authority-note strong{color:var(--green-800);flex:none}.game-page{width:min(100% - 28px,1500px);padding-top:38px}.game-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.game-heading h1{margin:0;font-size:clamp(31px,4vw,49px);display:inline}.game-heading p{color:var(--muted);word-break:break-all;margin:7px 0 0;font-size:11px}.back-button{color:var(--green-700);cursor:pointer;background:0 0;border:0;margin-bottom:13px;padding:0;font-size:13px}.game-title-line{align-items:center;gap:14px;display:flex}.status-pill{color:var(--green-800);white-space:nowrap;background:#376f5e1a;border-radius:99px;flex:none;padding:6px 10px;font-size:11px;font-weight:750;display:inline-flex}.status-pill--playing{color:#fff;background:var(--green-700)}.status-pill--finished{color:#704b10;background:#f4e0b7}.room-code-chip{border:1px solid var(--line);cursor:pointer;text-align:left;background:#ffffffa6;border-radius:11px;grid-template-columns:auto auto;min-width:174px;padding:13px 18px;display:grid}.room-code-chip span,.room-code-chip small{color:var(--muted);font-size:10px}.room-code-chip strong{color:var(--green-900);letter-spacing:.12em;grid-row:span 2;margin-left:15px;font-size:19px}.game-message{text-align:center;cursor:default;pointer-events:none;border:0;justify-content:center;width:100%;margin-bottom:16px;display:flex}.game-layout{grid-template-columns:minmax(500px,880px) minmax(300px,1fr);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.board-column{min-width:0}.board-shell{background:linear-gradient(90deg,#623f1009,#0000 3%,#ffffff1a 70%,#623f100a),#d4a657;border:1px solid #593d1642;border-radius:10px;width:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px #4530122b,inset 0 0 55px #76480e24}.go-board{aspect-ratio:1;width:100%;display:block}.board-lines line{stroke:#2f1e0bd6;stroke-width:2.3px}.board-coordinate{fill:#2f1e0be6;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;font-weight:800}.star-point{fill:#2f1e0b}.board-point-marker{stroke:#fffffff5;stroke-width:2.5px;filter:drop-shadow(0 1px 2px #0a1c1761);pointer-events:none}.board-choice-marker{pointer-events:none;filter:drop-shadow(0 2px 3px #0a1c174d)}.board-choice-marker circle{stroke:#fffffffa;stroke-width:3px}.board-choice-marker text{fill:#fff;paint-order:stroke;stroke:#0b30278c;stroke-width:2px;stroke-linejoin:round;font-weight:900}.dead-mark{fill:none;stroke:#d73e32;stroke-linecap:round;stroke-width:8px}.territory-mark--black{fill:#101615;stroke:#ffffff6b;stroke-width:2px}.territory-mark--white{fill:#fffef7;stroke:#26312f;stroke-width:2px}.scoring-dispute-mark{fill:none;stroke:#d85838;stroke-width:7px}.scoring-area-total{color:var(--ink);font-family:var(--font-display);margin:0;font-size:clamp(1.45rem,2vw,2rem);font-weight:800}.scoring-submission-status{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.scoring-submission-status span{border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:10px;padding:10px 12px}.scoring-submission-status span.is-submitted{color:var(--accent);background:#4c91711c;border-color:#30775c57;font-weight:700}.scoring-selection-count{color:var(--muted);margin:12px 0}.scoring-compensation{color:var(--muted);margin:0}.scoring-legend{color:var(--muted);flex-wrap:wrap;gap:.7rem 1.1rem;margin:0;display:flex}.scoring-legend span{align-items:center;gap:.42rem;display:inline-flex}.territory-swatch{border-radius:50%;width:.72rem;height:.72rem;display:inline-block}.territory-swatch--black{background:#101615}.territory-swatch--white{background:#fffef7;border:1px solid #26312f}.last-move-mark{fill:none;stroke:#d85838;stroke-width:7px}.board-hit{fill:#0000;pointer-events:none}.board-hit--active{pointer-events:all;cursor:pointer}.board-hit--active:hover{fill:#ffffff29}.board-hit:focus:not(:focus-visible){outline:none}.stone-move-label{paint-order:stroke;pointer-events:none;stroke-width:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:850}.stone-move-label--black{fill:#fffef7;stroke:#0000005c}.stone-move-label--white{fill:#16342c;stroke:#ffffffad}.ai-candidate{pointer-events:none}.ai-candidate .ai-candidate-disc{fill:var(--ai-candidate-fill);stroke:var(--ai-candidate-stroke);stroke-width:1.8px;paint-order:stroke}.ai-candidate text{fill:var(--ai-candidate-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:900}.ai-candidate .ai-candidate-rate{font-size:var(--ai-candidate-rate-size);font-weight:650}.ai-candidate .ai-candidate-rank{font-size:var(--ai-candidate-rank-size);font-weight:850}.ai-candidate .ai-candidate-compact-rank{font-size:calc(var(--ai-candidate-rank-size) * 1.2);font-weight:850;display:none}@media (max-width:600px){.ai-candidate--full-board .ai-candidate-rate,.ai-candidate--full-board .ai-candidate-rank{display:none}.ai-candidate--full-board .ai-candidate-compact-rank{display:block}}.player-bar{border:1px solid var(--line);background:#fffdf7ad;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:73px;padding:10px 15px;display:grid}.player-bar:first-child{margin-bottom:12px}.player-bar:last-child{margin-top:12px}.player-bar--active{border-color:#376f5e7a;box-shadow:0 0 0 3px #376f5e14}.player-stone{border-radius:50%;width:38px;height:38px;box-shadow:2px 4px 8px #0003}.player-stone--black{background:radial-gradient(circle at 34% 28%,#535b58,#080a09 70%)}.player-stone--white{background:radial-gradient(circle at 34% 28%,#fff,#dedbd1 72%);border:1px solid #d2cec1}.player-name{align-items:center;min-width:0;display:grid}.player-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ready-mark{color:var(--muted);background:#70807917;border-radius:99px;padding:5px 8px;font-size:10px}.ready-mark.is-ready{color:var(--green-700);background:#376f5e1c}.clock{color:#4c5a55;font-variant-numeric:tabular-nums;text-align:right;min-width:108px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:23px;font-weight:650}.clock--active{color:var(--green-800)}.game-sidebar{gap:14px;display:grid}.connection-card,.action-card,.result-card,.report-card,.move-summary{border:1px solid var(--line);background:#fffdf7d1;border-radius:13px;box-shadow:0 14px 36px #23362f0e}.connection-card{color:var(--muted);align-items:center;gap:8px;padding:13px 16px;font-size:11px;display:flex}.connection-card small{margin-left:auto}.connection-dot{background:#c28c42;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #c28c421a}.connection-dot.is-online{background:#52a175;box-shadow:0 0 0 4px #52a1751a}.action-card,.result-card,.report-card{padding:24px}.action-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.action-grid .danger-action{color:var(--danger);border-color:#a73d312e}.request-box{background:#c995471a;border-radius:9px;margin-top:16px;padding:15px;font-size:12px}.request-box p{margin:8px 0 0}.inline-actions{gap:8px;margin-top:12px;display:flex}.inline-actions button{flex:1}.inline-actions .primary-button{border-color:var(--green-900);color:#fff;background:var(--green-900)}.action-card>.primary-button,.action-card>.secondary-button,.action-card>.text-action{margin-top:10px}.result-card{color:#fff;background:radial-gradient(circle at 100% 0, #e8c98938, transparent 48%), var(--green-900)}.result-card>strong{color:var(--gold-light);margin:3px 0 2px;font-family:Georgia,serif;font-size:45px;display:block}.result-card h2{margin:0 0 7px}.result-card p:not(.eyebrow){color:#fff9}.report-sides{grid-template-columns:1fr 1fr;gap:8px;display:grid}.report-sides>div{background:#376f5e12;border-radius:8px;gap:4px;padding:12px;display:grid}.report-sides span,.report-sides small,.report-segments span{color:var(--muted);font-size:10px}.report-segments{max-height:190px;margin-top:13px;display:grid;overflow:auto}.report-segments>div{border-bottom:1px solid var(--line);justify-content:space-between;padding:9px 2px;font-size:12px;display:flex}.move-summary{color:var(--muted);grid-template-columns:1fr auto;gap:8px 16px;padding:16px;font-size:11px;display:grid}.move-summary strong{color:var(--green-800);text-align:right}@media (max-width:1050px){.auth-page{grid-template-columns:.8fr 1fr}.auth-visual{padding:55px}.auth-visual h1{font-size:50px}.lobby-action-button{min-height:138px;padding:22px}.game-layout{grid-template-columns:minmax(420px,1fr) 330px;gap:18px}}@media (max-width:820px){.auth-page{background:var(--paper);display:block}.auth-visual{align-items:flex-end;min-height:310px}.auth-visual h1{margin-bottom:10px;font-size:42px}.auth-visual p:last-child{margin-bottom:0;font-size:14px}.auth-panel{padding:44px 24px 60px}.auth-card .brand{margin-bottom:40px}.game-layout{grid-template-columns:1fr}.game-sidebar{grid-template-columns:1fr 1fr}.connection-card,.action-card{grid-column:1/-1}}@media (max-width:620px){.topbar{min-height:66px;padding:9px 14px}.brand strong{font-size:17px}.brand small,.account-chip>span:nth-child(2){display:none}.account-avatar{width:34px;height:34px}.text-button{margin-left:0}.lobby-page{width:min(100% - 28px,1380px);padding-top:42px}.lobby-actions{grid-template-columns:1fr}.lobby-action-button{min-height:118px}.lobby-dialog-backdrop{padding:10px}.lobby-dialog-card{max-height:calc(100dvh - 20px);padding:23px 19px}.lobby-dialog-card .form-grid--two,.teaching-management__actions,.teacher-game-filters,.dialog-choice-grid{grid-template-columns:1fr}.guided-game-notice{flex-direction:column;align-items:flex-start;gap:6px}.guided-game-notice span{text-align:left}.student-information__toolbar{grid-template-columns:1fr 1fr}.student-information__toolbar label,.student-information__toolbar-spacer,.student-information__rect-button--primary{grid-column:1/-1}.student-information__table-wrap{min-height:0;padding:10px;overflow:visible}.student-information__table,.student-information__table tbody,.student-information__table tr,.student-information__table td{width:100%;display:block}.student-information__table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.student-information__table tr{border:1px solid var(--line);background:#ffffffb8;border-radius:12px;margin-bottom:10px;padding:10px 12px}.student-information__table td{border:0;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:10px;padding:7px 0;display:grid}.student-information__table td:before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:720}.student-information__row-actions{justify-content:flex-start}.student-information__pagination{justify-content:center}.student-information__dialog-actions{flex-direction:column-reverse;align-items:stretch}.student-information__dialog-actions button{width:100%}.student-information__class-options,.class-import-row{grid-template-columns:1fr}.teacher-game-row,.student-account-row,.teaching-section-heading{grid-template-columns:1fr;align-items:stretch;display:grid}.teacher-game-actions,.teaching-section-actions{justify-content:flex-start}.teacher-game-actions button{flex:220px}.authority-note{flex-direction:column;align-items:flex-start;gap:7px}.game-heading{flex-direction:column;align-items:flex-start}.game-title-line{flex-direction:column;align-items:flex-start;gap:8px}.room-code-chip{width:100%}.player-bar{grid-template-columns:auto 1fr auto;gap:8px;min-height:62px;padding:8px}.player-stone{width:30px;height:30px}.ready-mark{display:none}.clock{min-width:81px;font-size:18px}.game-sidebar{grid-template-columns:1fr}.connection-card,.action-card{grid-column:auto}.auth-visual{min-height:280px;padding:36px 24px}.auth-visual h1{font-size:36px}.selection-card{padding:27px}.admin-page{width:min(100% - 24px,1380px)}.admin-heading{flex-direction:column;align-items:stretch;gap:16px}.admin-nav{width:100%}.admin-nav button{flex:1}.admin-management-layout,.admin-create-account{grid-template-columns:1fr}.admin-user-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-table-heading{display:none}.admin-grid,.form-grid--two{grid-template-columns:1fr}.member-row{grid-template-columns:auto minmax(0,1fr) 90px}.member-organization,.member-row select{grid-column:2/-1}}@media (max-width:1050px){.admin-heading{flex-direction:column;align-items:stretch;gap:16px}.admin-nav{width:100%}.admin-nav button{white-space:nowrap;flex:1}.admin-user-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-filters>button{grid-column:1/-1}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card:last-child{grid-column:1/-1}}@media (max-width:700px){.admin-grid{grid-template-columns:1fr}.admin-card:last-child{grid-column:auto}.admin-toolbar,.admin-search,.admin-card-actions{flex-direction:column;align-items:stretch}.admin-user-filters,.form-grid--four{grid-template-columns:1fr}.admin-table-heading{display:none}.admin-organization-row{grid-template-columns:minmax(0,1fr) auto}.admin-organization-row>span:last-child{grid-column:1/-1}}.app-frame:has(.game-page){height:100dvh;overflow:hidden}.app-frame:has(.game-page) .topbar{min-height:64px;padding-top:7px;padding-bottom:7px}.game-page{flex-direction:column;height:calc(100dvh - 64px);padding-top:14px;padding-bottom:14px;display:flex;overflow:hidden}.game-heading{flex:none;margin-bottom:12px}.game-heading h1{font-size:clamp(26px,3vw,38px)}.game-heading .back-button{margin-bottom:4px}.game-layout{flex:auto;min-height:0}.board-column{grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;display:grid}.board-shell{aspect-ratio:1;justify-self:center;width:auto;max-width:100%;height:100%}.go-board{width:100%;height:100%}.game-sidebar{overscroll-behavior:contain;min-height:0;overflow-y:auto}@media (max-width:820px){.game-page{width:min(100% - 18px,1500px);padding-top:8px;padding-bottom:8px}.game-heading{flex-direction:row;align-items:center;margin-bottom:8px}.game-heading p{display:none}.game-title-line{flex-direction:row;align-items:center}.room-code-chip{width:auto;min-width:142px;padding:8px 11px}.game-layout{grid-template-rows:minmax(0,2.2fr) minmax(118px,1fr);grid-template-columns:1fr}.game-sidebar{padding-top:8px;display:block}.game-sidebar>*{margin-bottom:8px}}@media (max-width:480px){.game-heading h1{white-space:nowrap;font-size:21px}.game-title-line{gap:6px}.status-pill{padding:5px 8px;font-size:11px}}@media (max-height:520px) and (orientation:landscape){.app-frame:has(.game-page) .topbar{min-height:50px}.game-page{height:calc(100dvh - 50px);padding-top:5px;padding-bottom:5px}.game-heading{min-height:42px;margin-bottom:4px}.game-heading h1{font-size:22px}.game-heading .back-button,.status-pill,.room-code-chip span,.room-code-chip small{display:none}.room-code-chip{text-align:center;width:auto;min-width:110px;padding:7px 9px;display:block}.room-code-chip strong{margin:0;font-size:15px}.game-layout{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr)}.player-bar{min-height:43px;padding:4px 8px}.player-bar:first-child{margin-bottom:5px}.player-bar:last-child{margin-top:5px}.player-stone{width:27px;height:27px}.clock{min-width:75px;font-size:16px}.game-sidebar{padding-top:0;padding-left:8px}}.game-page{width:min(100% - 20px,1800px)}.game-layout{grid-template-columns:minmax(0,1fr) clamp(290px,22vw,350px);align-items:stretch;gap:clamp(12px,1.5vw,24px)}.board-column{grid-template-rows:minmax(0,1fr);place-items:center;display:grid;position:relative}.game-prompt-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10201b4d;border-radius:14px;place-items:center;padding:clamp(16px,4vw,34px);display:grid;position:absolute;inset:0}.game-prompt-card{color:#fff;text-align:center;background:#1b362ef7;border:1px solid #ffffff70;border-radius:18px;gap:12px;width:min(420px,100%);padding:clamp(22px,3.5vw,32px);display:grid;box-shadow:0 26px 76px #0a181475}.game-prompt-card h2,.game-prompt-card p{margin:0}.game-prompt-card .eyebrow{color:var(--gold-light)}.game-prompt-card>p:not(.eyebrow){color:#ffffffc7;line-height:1.7}.game-prompt-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:4px;display:grid}.game-prompt-actions button{color:#fff;background:#ffffff1a;border-color:#ffffff38;min-height:44px}.game-prompt-actions .primary-button{color:var(--green-900);background:var(--gold-light)}.game-prompt-actions .danger-action{color:#fff;background:#a74337}.disconnect-backdrop{z-index:18;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10201b38;border-radius:14px;place-items:center;padding:clamp(16px,4vw,34px);display:grid;position:absolute;inset:0}.disconnect-card{color:#fff;text-align:center;background:#1b362ef7;border:1px solid #ffffff6b;border-radius:18px;gap:9px;width:min(410px,100%);padding:clamp(22px,3vw,30px);display:grid;box-shadow:0 26px 76px #0a181475}.disconnect-card h2,.disconnect-card p{margin:0}.disconnect-card .eyebrow{color:var(--gold-light)}.disconnect-card>strong{color:var(--gold-light);font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(64px,11vw,104px);line-height:1}.disconnect-card>p:not(.eyebrow){color:#fffc;line-height:1.65}.scoring-result-dialog{z-index:12;color:#fff;background:#1b362efa;border:1px solid #d3ab5b8a;border-radius:16px;padding:22px;position:sticky;top:0;box-shadow:0 22px 60px #0a181452}.scoring-result-dialog h2{color:var(--gold-light);margin:4px 0 8px;font-family:Georgia,serif;font-size:38px}.scoring-result-dialog>p:not(.eyebrow){color:#ffffffc7;margin:0;line-height:1.65}.game-message--overlay{z-index:30;width:min(430px,100% - 34px);margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 58px #2e171440}.nigiri-overlay{z-index:8;color:#fff;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1b362ef5;border:1px solid #ffffff73;border-radius:18px;gap:12px;width:min(390px,100% - 34px);padding:clamp(20px,3vw,30px);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 70px #0a18146b}.nigiri-overlay h2,.nigiri-overlay p,.nigiri-overlay small{margin:0}.nigiri-overlay .eyebrow,.nigiri-overlay small{color:#ffffffb3}.nigiri-number-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.nigiri-number-grid button,.nigiri-parity-grid button{min-height:44px;color:var(--green-900);background:#fffdf7f5;border-color:#fff3;font-size:16px;font-weight:760}.nigiri-parity-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nigiri-countdown{background:#ffffff29;border-radius:99px;height:7px;overflow:hidden}.nigiri-countdown>div{width:var(--nigiri-progress);border-radius:inherit;background:var(--gold-light);height:100%;transition:width .2s linear}.nigiri-verdict{color:var(--gold-light);font-family:Georgia,serif;font-size:clamp(34px,6vw,52px)}.player-panel{gap:8px;display:grid}.player-panel .player-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:11px;min-height:86px;margin:0;padding:11px 13px}.player-panel .player-stone{width:46px;height:46px}.player-panel .player-name{min-height:46px}.player-panel .player-name strong{font-size:clamp(24px,2vw,30px);line-height:46px}.player-panel .ready-mark{grid-column:2;width:max-content}.player-panel .clock{grid-area:1/3/span 2;min-width:112px;font-size:clamp(26px,2vw,32px);font-weight:750}.game-heading-actions{align-items:stretch;gap:9px;display:flex}.fullscreen-button{border:1px solid var(--line);min-width:112px;color:var(--green-800);cursor:pointer;background:#fffdf7c2;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;display:inline-flex}.fullscreen-button span{font-size:17px}.immersive-game-title{border:1px solid var(--line);min-width:174px;color:var(--green-900);white-space:nowrap;background:#fffdf7c2;border-radius:10px;justify-content:center;align-items:center;padding:10px 16px;font-size:16px;font-weight:760;display:inline-flex}:is(.game-page:fullscreen,.game-page--immersive:not(:fullscreen)){z-index:40;background:radial-gradient(circle at 8% 8%, #c995471a, transparent 25rem), var(--cream);width:100vw;height:100dvh;margin:0;padding:2px 6px}.game-page--immersive:not(:fullscreen){position:fixed;inset:0}.game-page--immersive .game-heading{justify-content:flex-end;margin-bottom:4px}.game-page:fullscreen .game-heading{justify-content:flex-end;margin-bottom:4px}.game-page--immersive .fullscreen-button,.game-page--immersive .immersive-game-title{padding:7px 10px}.game-page:fullscreen .fullscreen-button{padding:7px 10px}.game-page:fullscreen .immersive-game-title{padding:7px 10px}.game-page--immersive .fullscreen-button{min-width:104px}.game-page:fullscreen .fullscreen-button{min-width:104px}.game-page--immersive .immersive-game-title{min-width:160px;font-size:15px}.game-page:fullscreen .immersive-game-title{min-width:160px;font-size:15px}.game-page--immersive .game-heading h1{font-size:clamp(22px,2.4vw,31px)}.game-page:fullscreen .game-heading h1{font-size:clamp(22px,2.4vw,31px)}.game-page--immersive .game-heading .back-button,.game-page--immersive .game-heading p{display:none}.game-page:fullscreen .game-heading .back-button{display:none}.game-page:fullscreen .game-heading p{display:none}.game-page--immersive .game-heading-main,.game-page--immersive .room-code-chip{display:none}.game-page:fullscreen .game-heading-main{display:none}.game-page:fullscreen .room-code-chip{display:none}@media (min-width:821px){.game-page--immersive .game-heading{z-index:3;margin:0;position:absolute;top:4px;right:6px}.game-page:fullscreen .game-heading{z-index:3;margin:0;position:absolute;top:4px;right:6px}.game-page--immersive .game-sidebar{padding-top:44px}.game-page:fullscreen .game-sidebar{padding-top:44px}}.result-actions{gap:8px;margin-top:14px;display:grid}.result-actions .secondary-button{color:#fff;background:#ffffff14;border-color:#ffffff38}.history-panel{border:1px solid var(--line);background:#fffdf7d6;border-radius:17px;margin-top:24px;padding:clamp(24px,3vw,34px);box-shadow:0 20px 48px #273a330f}.history-panel.is-collapsed{padding-top:21px;padding-bottom:21px}.history-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.history-panel.is-collapsed .history-heading{align-items:center;margin-bottom:0}.history-heading h2{margin-bottom:7px;font-family:Songti SC,STSong,serif;font-size:27px;font-weight:600}.history-heading p:last-child,.history-empty{color:var(--muted);margin-bottom:0;font-size:12px}.history-heading-actions{flex:none;align-items:center;gap:8px;display:flex}.history-toggle{border:1px solid var(--green-700);min-width:86px;min-height:45px;color:var(--green-800);cursor:pointer;background:#376f5e0f;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-weight:700;display:inline-flex}.history-list{border-top:1px solid var(--line);display:grid}.history-dialog-content{gap:18px;min-height:180px;display:grid}.history-dialog-count{color:var(--green-800);letter-spacing:0;vertical-align:middle;background:#376f5e1a;border-radius:999px;margin-left:12px;padding:4px 9px;font-family:system-ui,sans-serif;font-size:12px;font-style:normal;font-weight:700;display:inline-flex}.history-dialog-filters{grid-template-columns:minmax(190px,280px) auto 1fr;align-items:center;gap:18px;display:grid}.history-dialog-filters label{color:var(--muted);gap:6px;font-size:12px;display:grid}.history-dialog-filters input{border:1px solid var(--line);min-height:42px;color:var(--green-900);background:#fff;border-radius:9px;padding:8px 11px}.history-dialog-filters>span{color:var(--muted);justify-self:end;font-size:12px}.history-row{border-bottom:1px solid var(--line);grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:15px;min-width:0;padding:13px 0;display:grid}.history-result{color:var(--green-800);font-family:Georgia,serif;font-size:20px;font-weight:700}.history-players{gap:4px;min-width:0;display:grid}.history-players strong,.history-players small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-players small{color:var(--muted);font-size:11px}.history-actions{gap:7px;display:flex}.history-actions button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-height:36px;padding:7px 11px}.history-actions button:disabled{opacity:.55;cursor:default}.timing-report-page{z-index:60;color:var(--ink);background:radial-gradient(circle at 95% 0, #c9954724, transparent 30rem), var(--cream);padding:clamp(22px,4vw,56px);position:fixed;inset:0;overflow-y:auto}.timing-report-header,.report-overview,.range-card,.move-detail-card{width:min(100%,1380px);margin-left:auto;margin-right:auto}.timing-report-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.timing-report-header h1{margin-bottom:8px;font-family:Songti SC,STSong,serif;font-size:clamp(34px,5vw,58px);font-weight:500}.timing-report-header p:last-child{color:var(--muted);margin-bottom:0}.report-close{border:1px solid var(--line);cursor:pointer;background:#fffdf7d9;border-radius:9px;flex:none;padding:10px 15px}.report-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.report-overview article{border:1px solid var(--line);background:#fffdf7d9;border-radius:12px;gap:7px;min-width:0;padding:18px;display:grid}.report-overview span,.report-overview small{color:var(--muted);font-size:11px}.report-overview strong{color:var(--green-800);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(18px,2vw,27px);overflow:hidden}.range-card,.move-detail-card{border:1px solid var(--line);background:#fffdf7e0;border-radius:15px;margin-bottom:16px;padding:clamp(20px,3vw,32px);box-shadow:0 18px 46px #23362f0e}.range-heading,.move-detail-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.range-heading h2,.move-detail-heading h2{margin-bottom:0;font-family:Songti SC,STSong,serif;font-size:25px;font-weight:600}.range-inputs{align-items:end;gap:9px;display:flex}.range-inputs label{color:var(--muted);gap:5px;font-size:11px;display:grid}.range-inputs input{width:100px;min-height:40px}.range-inputs>span{color:var(--muted);padding-bottom:11px}.range-summary{color:var(--muted);background:#376f5e12;border-radius:10px;flex-wrap:wrap;gap:10px 24px;margin:20px 0 15px;padding:14px 16px;font-size:12px;display:flex}.range-summary strong{color:var(--green-800);margin-left:auto}.timing-chart{overscroll-behavior:contain;gap:10px;max-height:410px;padding:6px 8px;display:grid;overflow-y:auto}.timing-chart-legend{z-index:4;color:var(--muted);background:#fffdf7f5;border-bottom:1px solid #2c453b21;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:8px 58px 10px;font-size:13px;display:grid;position:sticky;top:-6px}.timing-chart-legend>span{letter-spacing:.08em;text-align:center;font-size:11px}.timing-side-key{letter-spacing:.08em;border-radius:99px;justify-self:end;padding:5px 10px}.timing-side-key--black{color:#fff;background:#17231f}.timing-side-key--white{color:#5f5037;background:#fffdf7;border:1px solid #ae9b73;justify-self:start}.timing-comparison-rows{gap:7px;display:grid}.timing-comparison-row{grid-template-columns:58px minmax(72px,1fr) 2px minmax(72px,1fr) 58px;align-items:stretch;gap:0;min-height:43px;font-size:13px;display:grid}.timing-move-label{z-index:2;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;display:flex;position:relative}.timing-move-label--black{color:#17231f;justify-content:flex-start;padding-right:8px}.timing-move-label--white{color:#756342;justify-content:flex-end;padding-left:8px}.timing-half{align-items:center;min-width:0;display:flex;position:relative;overflow:hidden}.timing-half--black{background:linear-gradient(90deg,#17231f06,#17231f14);justify-content:flex-end}.timing-half--white{background:linear-gradient(90deg,#b5975e1c,#b5975e06);justify-content:flex-start}.timing-half span{z-index:2;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;background:#fffdf7e0;border-radius:4px;padding:2px 5px;font-size:12px;line-height:1.15;position:absolute;top:4px}.timing-half--black span{left:5px}.timing-half--white span{text-align:right;right:5px}.move-detail-heading__actions{align-items:center;gap:14px;display:flex}.move-detail-heading__actions>span{color:var(--muted);font-size:12px}.move-detail-filters{border:1px solid var(--line);background:#f2ede175;border-radius:11px;align-items:end;gap:12px;margin-bottom:16px;padding:14px;display:flex}.move-detail-filters label{min-width:180px;color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.move-detail-filters label:nth-child(2){min-width:240px}.move-detail-filters select{background-color:#fff;min-height:42px;padding-right:36px}.move-detail-filters>span{color:var(--green-700);white-space:nowrap;margin:0 0 13px auto;font-size:12px;font-weight:700}.collapse-toggle{border:1px solid var(--line);min-width:72px;min-height:38px;color:var(--green-800);cursor:pointer;background:#fff;border-radius:8px;padding:7px 13px;font-weight:700}.move-detail-card.is-collapsed{padding-bottom:20px}.timing-bar{z-index:1;width:var(--timing-bar-width);min-width:4px;height:14px;position:absolute;bottom:5px}.timing-bar--black{background:linear-gradient(90deg,#53625c,#111a17);border-radius:99px 0 0 99px;right:0}.timing-bar--white{background:linear-gradient(90deg,#eee2ca,#fffdf7);border:1px solid #a99468;border-radius:0 99px 99px 0;left:0}.timing-center-line{z-index:3;background:#376f5e;width:2px;height:100%;display:block;position:relative;box-shadow:0 0 0 1px #376f5e14}.move-detail-heading{margin-bottom:16px}.move-detail-heading>span{color:var(--muted);font-size:11px}.move-table-wrap{overflow-x:auto}.move-time-table{border-collapse:collapse;font-variant-numeric:tabular-nums;white-space:nowrap;width:100%;font-size:12px}.move-time-table th,.move-time-table td{border-bottom:1px solid var(--line);text-align:left;padding:11px 12px}.move-time-table th{color:var(--muted);font-size:10px;font-weight:600}.move-time-table tr.is-retracted{opacity:.5;text-decoration:line-through}.move-time-table .move-detail-empty{color:var(--muted);text-align:center;padding:24px 12px}.table-stone{vertical-align:-1px;border-radius:50%;width:12px;height:12px;margin-right:6px;display:inline-block}.table-stone--black{background:#111915}.table-stone--white{background:#fff;border:1px solid #b8b3a7}@media (max-width:820px){.game-layout{grid-template-rows:minmax(0,2.35fr) minmax(124px,1fr);grid-template-columns:1fr}.game-heading-actions{margin-left:auto}.fullscreen-button{min-width:94px;padding-left:9px;padding-right:9px;font-size:12px}.history-row{grid-template-columns:70px minmax(0,1fr)}.history-actions{grid-column:2}.report-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.range-heading,.move-detail-heading{flex-direction:column;align-items:stretch}.move-detail-heading__actions{justify-content:space-between}.move-detail-filters{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.move-detail-filters label,.move-detail-filters label:nth-child(2){min-width:0}.move-detail-filters>span{grid-column:1/-1;margin:0}.range-summary strong{width:100%;margin-left:0}}@media (max-width:620px){.game-heading-actions{gap:5px}.fullscreen-button{min-width:42px;font-size:0}.fullscreen-button span{font-size:17px}.room-code-chip{min-width:124px}.immersive-game-title{min-width:124px;padding-left:10px;padding-right:10px;font-size:14px}.history-heading,.timing-report-header{flex-direction:column;align-items:stretch}.history-dialog-filters{grid-template-columns:1fr}.history-dialog-filters>span{justify-self:start}.history-heading-actions{width:100%}.history-heading-actions button{flex:1}.history-row{grid-template-columns:1fr}.history-actions{grid-column:1}.report-overview{grid-template-columns:1fr}.range-inputs{align-items:stretch}.range-inputs label{flex:1}.range-inputs input{width:100%}.range-inputs>span{align-self:end}.move-detail-filters{grid-template-columns:1fr}.move-detail-filters>span{grid-column:1}.timing-report-page{padding:18px 12px 32px}.timing-chart{padding-left:0;padding-right:0}.timing-chart-legend{padding-left:52px;padding-right:52px}.timing-chart-legend>span{font-size:0}.timing-chart-legend>span:after{content:"中线";font-size:10px}.timing-comparison-row{grid-template-columns:52px minmax(50px,1fr) 2px minmax(50px,1fr) 52px;min-height:41px;font-size:12px}.timing-half span{padding-left:3px;padding-right:3px;font-size:11px;left:3px;right:3px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.lobby-action-button--fox{background:linear-gradient(145deg, #fffdf7fa, #f3e9d3f5), var(--paper);border-color:#c9954761}.lobby-action-button--homework{background:linear-gradient(145deg,#fffaf0,#f4e7c9);border-color:#c1893057}.lobby-dialog-card--homework{width:min(1460px,100vw - 40px);max-height:calc(100vh - 32px);overflow:auto}.entry-choice-menu .dialog-choice-grid,.homework-menu .dialog-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-compose{gap:22px;display:grid}.homework-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.homework-field,.homework-mode-field{background:#f8f7f0b8;border:1px solid #16473b24;border-radius:18px;gap:10px;padding:18px;display:grid}.homework-field>span,.homework-mode-field legend{color:#173f35;font-size:15px;font-weight:800}.homework-field input,.homework-field select,.homework-student-submission input{color:#173f35;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #16473b2e;border-radius:12px;padding:0 14px}.homework-field--source{align-content:start}.homework-source-button{color:#174c3e;background:#fff;border:1px dashed #16473b5c;border-radius:14px;min-height:80px;font-weight:800}.homework-source-button.is-complete{background:#eaf5ef;border-style:solid}.homework-choice-row,.homework-student-list{flex-wrap:wrap;gap:8px;display:flex}.homework-choice-row button,.homework-student-list button{color:#37584f;background:#fff;border:1px solid #16473b29;border-radius:11px;min-height:40px;padding:0 16px}.homework-choice-row button.is-selected,.homework-student-list button.is-selected,.homework-mode-field button.is-selected{color:#fff;background:#174c3e;border-color:#174c3e}.homework-mode-field{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-mode-field legend{grid-column:1/-1;padding:0 6px}.homework-mode-field>button{text-align:left;color:#173f35;background:#fff;border:1px solid #16473b29;border-radius:14px;gap:5px;min-height:92px;padding:16px;display:grid}.homework-mode-field button small,.homework-field small{color:#70827c;line-height:1.55}.homework-mode-field button.is-selected small{color:#ffffffc2}.homework-form-actions{border-top:1px solid #16473b1f;justify-content:flex-end;gap:12px;padding-top:16px;display:flex}.homework-form-actions button{min-width:132px;min-height:48px}.nested-dialog-backdrop{z-index:80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c241e9e;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.problem-picker{background:#fffdf7;border-radius:28px;grid-template-rows:auto minmax(0,1fr) auto;width:min(1320px,100vw - 44px);max-height:min(860px,100vh - 44px);display:grid;overflow:hidden;box-shadow:0 30px 100px #081e184d}.problem-picker>header,.problem-picker>footer{border-bottom:1px solid #16473b1f;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.problem-picker>footer{border-top:1px solid #16473b1f;border-bottom:0;justify-content:flex-end}.problem-picker>footer button{min-height:44px;padding:0 22px}.problem-picker h3{color:#123d32;margin:3px 0 0;font-size:28px}.problem-picker-layout{grid-template-columns:280px minmax(0,1fr);min-height:0;display:grid}.problem-picker-layout>nav{background:#f4f2e9;border-right:1px solid #16473b1f;padding:18px;overflow:auto}.problem-picker-layout nav>div{gap:7px;margin-bottom:16px;display:grid}.problem-picker-layout nav strong{color:#173f35;padding:7px 9px}.problem-picker-layout nav button{color:#426159;text-align:left;background:0 0;border:0;border-radius:9px;justify-content:space-between;min-height:38px;padding:8px 10px;display:flex}.problem-picker-layout nav button.is-selected{color:#fff;background:#174c3e}.problem-picker-results{min-width:0;padding:20px;overflow:auto}.problem-picker-meta,.problem-picker-pagination{justify-content:space-between;align-items:center;gap:12px;display:flex}.problem-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.problem-picker-grid>button{color:#173f35;text-align:left;background:#fff;border:1px solid #16473b26;border-radius:15px;gap:8px;min-height:130px;padding:16px;display:grid}.problem-picker-grid>button.is-selected{background:#eff7f2;border-color:#174c3e;box-shadow:inset 0 0 0 2px #174c3e}.problem-picker-grid em{color:#b57b24;align-self:end;font-style:normal;font-weight:800}.problem-picker-pagination{justify-content:center}.problem-picker-pagination button{min-height:38px;padding:0 14px}.homework-review{border:1px solid #16473b1f;border-radius:20px;grid-template-columns:270px minmax(0,1fr);min-height:560px;display:grid;overflow:hidden}.homework-review>aside{background:#eeebe0b8;border-right:1px solid #16473b1f;flex-direction:column;gap:10px;padding:12px;display:flex}.homework-review aside label{color:#173f35;background:#285f5014;border:1px solid #16473b1f;border-radius:11px;gap:6px;padding:10px;font-weight:800;display:grid}.homework-review aside select{color:#173f35;background:#fffdf8;border:1px solid #16473b29;border-radius:9px;min-height:44px;padding:0 10px;font-weight:750}.homework-review-list{align-content:start;gap:6px;padding:2px;display:grid;overflow:auto}.homework-review-list button{color:#173f35;text-align:left;background:#fffdf8c7;border:1px solid #285f5024;border-radius:10px;gap:4px;min-height:58px;padding:10px 12px;display:grid}.homework-review-list button:hover,.homework-review-list button:focus-visible{background:#fffdf8;border-color:#285f5057}.homework-review-list button.is-selected{color:#fff;background:#174c3e;border-color:#174c3e}.homework-review-list button small{color:#6d827b}.homework-review-list button.is-selected small{color:#ffffffc2}.homework-review-content{align-content:start;gap:14px;max-height:620px;padding:20px;display:grid;overflow:auto}.homework-student-submission{background:#fff;border:1px solid #16473b21;border-radius:16px}.homework-student-submission>header{border-bottom:1px solid #16473b1a;justify-content:space-between;padding:15px 17px;display:flex}.homework-student-submission header div{gap:3px;display:grid}.homework-submission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.homework-submission-grid>div{background:#f7f5ed;border-radius:12px;gap:9px;padding:13px;display:grid}.homework-submission-card__heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.homework-submission-card__heading time{color:#8b5a1d;font-variant-numeric:tabular-nums;background:#daaa581f;border:1px solid #b57b2433;border-radius:999px;flex:none;padding:5px 8px;font-size:12px;font-weight:850}.homework-submission-grid>div>div{gap:8px;display:flex}.homework-submission-view-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.homework-submission-grid button{flex:1;min-height:38px}.homework-submission-grade-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.homework-replay-dialog{background:#fffdf7;border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;width:min(720px,100vw - 36px);max-height:calc(100dvh - 36px);display:grid;overflow:hidden;box-shadow:0 28px 90px #081e1857}.homework-replay-dialog>header,.homework-replay-dialog>footer{border-bottom:1px solid #16473b1f;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex}.homework-replay-dialog>header h3{color:#123d32;margin:2px 0 0}.homework-replay-mode-switch{background:#f0eee5;border-radius:12px;gap:6px;margin-left:auto;padding:4px;display:flex}.homework-replay-mode-switch button{color:#557169;background:0 0;border:0;border-radius:9px;min-height:36px;padding:0 12px;font-weight:800}.homework-replay-mode-switch button[aria-pressed=true]{color:#fff;background:#174c3e}.homework-replay-dialog>footer{border-top:1px solid #16473b1f;border-bottom:0;justify-content:center}.homework-replay-dialog>footer button{min-width:110px;min-height:42px}.homework-replay-dialog>footer.homework-trace-footer{justify-content:stretch;gap:10px;max-height:170px;display:grid;overflow:auto}.homework-trace-controls{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.homework-trace-controls>span{color:#173f35;text-align:center;font-weight:900}.homework-trace-pass-choices,.homework-trace-legend{flex-wrap:wrap;justify-content:center;gap:8px 16px;display:flex}.homework-trace-pass-choices button{color:#174c3e;background:#f6f3e9;border-color:#16473b38;border-radius:9px;min-height:34px!important}.homework-trace-legend span{color:#355f54;align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.homework-trace-legend i{border:2px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1px #143d3233}.homework-replay-board{place-items:center;min-height:0;padding:18px;display:grid;overflow:hidden}.homework-replay-load-state{max-width:420px;color:var(--green-900);text-align:center;justify-items:center;gap:10px;display:grid}.homework-replay-load-state span{color:var(--muted)}.homework-replay-load-state button{border:1px solid var(--green-900);color:#fff;background:var(--green-900);border-radius:9px;min-height:40px;padding:0 18px;font-weight:800}.homework-replay-board .board-shell{aspect-ratio:1;place-self:center;width:auto;max-width:min(100%,600px);height:100%;max-height:600px;margin:0 auto}.homework-replay-board .go-board{aspect-ratio:1;width:100%;height:100%}.my-homework-list{gap:10px;max-height:62vh;display:grid;overflow:auto}.my-homework-list>button{color:#173f35;text-align:left;background:#fff;border:1px solid #16473b24;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;min-height:82px;padding:17px 20px;display:flex}.my-homework-list button div{gap:6px;display:grid}.my-homework-list button>span{color:#b57b24;font-weight:800}.homework-answer-page{background:#f3efe4;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:clamp(16px,2vw,32px);min-height:calc(100vh - 96px);padding:clamp(70px,8vh,100px) clamp(18px,3vw,48px) 28px;display:grid;position:relative}.homework-answer-page--immersive{width:100vw;min-height:100dvh;max-height:100dvh;padding-top:clamp(66px,7vh,82px);overflow:auto}.homework-answer-page:fullscreen{width:100vw;min-height:100dvh;max-height:100dvh;padding-top:clamp(66px,7vh,82px);overflow:auto}.homework-answer-page--immersive:not(:fullscreen){z-index:120;position:fixed;inset:0}.homework-answer-back{border-radius:11px;min-height:42px;padding:0 16px;position:absolute;top:18px;left:28px}.homework-answer-board{place-items:center;min-width:0;display:grid}.homework-answer-board .board-shell{aspect-ratio:1;width:min(100%,100vh - 140px)}.homework-answer-board.is-zoomed .board-shell{box-shadow:0 22px 54px #174c3e33}.homework-answer-sidebar{background:#fffdf8;border:1px solid #16473b21;border-radius:24px;flex-direction:column;gap:14px;min-height:0;padding:22px;display:flex;box-shadow:0 20px 50px #11362d1a}.homework-answer-sidebar header h1{color:#123d32;margin:4px 0;font-family:Georgia,Songti SC,serif;font-size:clamp(28px,3vw,44px)}.homework-problem-info,.homework-countdown{background:#f4f2e9;border-radius:15px;padding:16px}.homework-problem-info dl{gap:8px;margin:12px 0 0;display:grid}.homework-problem-info dl div{justify-content:space-between;display:flex}.homework-problem-info dt{color:#70827c}.homework-problem-info dd{margin:0;font-weight:800}.homework-countdown{color:#fff;background:#163f35;place-items:center;padding:24px;display:grid}.homework-countdown strong{font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:clamp(48px,6vw,76px)}.homework-countdown.is-urgent{background:#8d3a2d}.homework-answer-progress{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;display:grid}.homework-answer-view-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.homework-answer-view-actions button{color:#174c3e;background:#fff;border:1px solid #16473b33;border-radius:12px;min-height:46px;font-weight:800}.homework-answer-view-actions button:not(:disabled):hover{background:#fff9eb;border-color:#b57b24}.homework-board-focus-note{color:#8a6259;text-align:center;margin-top:-7px;line-height:1.45}.homework-answer-progress button{min-height:44px}.homework-timeout-note{color:#8d3a2d;text-align:center;margin:0;font-weight:800}.homework-automatic-result{border:1px solid;border-radius:13px;gap:5px;margin:0;padding:13px 15px;line-height:1.45;display:grid}.homework-automatic-result strong{font-size:17px}.homework-automatic-result span{font-size:13px}.homework-automatic-result.is-correct{color:#185f48;background:#edf8f2;border-color:#267c5b47}.homework-automatic-result.is-incorrect{color:#8d3a2d;background:#fff2ef;border-color:#aa413147}.homework-submit-button{color:#fff;background:#174c3e;border:0;border-radius:14px;min-height:58px;margin-top:auto;font-size:18px;font-weight:800}.homework-complete-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a231da3;place-items:center;display:grid;position:fixed;inset:0}.homework-complete-backdrop>div{color:#123d32;text-align:center;background:#fffdf7;border-radius:28px;gap:10px;min-width:min(520px,100vw - 40px);padding:48px;display:grid;box-shadow:0 30px 90px #00000047}.homework-complete-backdrop strong{font-size:42px}.homework-complete-backdrop span{font-size:22px}@media (max-width:980px){.homework-form-grid,.homework-answer-page,.problem-picker-layout,.homework-review{grid-template-columns:1fr}.problem-picker-layout>nav{border-bottom:1px solid #16473b1f;border-right:0;max-height:210px}.problem-picker-grid,.homework-submission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-review>aside{max-height:230px}.homework-answer-board .board-shell{width:min(100%,78vh)}.homework-answer-page--immersive{max-height:none}.homework-answer-page:fullscreen{max-height:none}}@media (max-width:620px){.entry-choice-menu .dialog-choice-grid,.homework-menu .dialog-choice-grid,.homework-mode-field,.problem-picker-grid,.homework-submission-grid{grid-template-columns:1fr}.homework-answer-page{padding-inline:10px}.homework-answer-sidebar{padding:16px}.homework-submission-view-actions,.homework-submission-grade-actions{grid-template-columns:1fr}.homework-replay-dialog>header{flex-wrap:wrap}.homework-replay-mode-switch{order:3;width:100%}.homework-replay-mode-switch button{flex:1}.homework-trace-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-trace-controls>span{grid-area:1/1/auto/-1}.homework-trace-controls>button:first-child{grid-column:1}.homework-trace-controls>button:last-child{grid-column:2}}.lobby-action-button--fox .lobby-action-number,.lobby-action-button--fox small{color:#a66f23}.fox-kifu-page{width:min(100% - 28px,1840px);height:calc(100vh - 78px);flex-direction:column;height:calc(100dvh - 78px);min-height:0;margin:0 auto;padding:14px 0 18px;display:flex;overflow:hidden}.fox-kifu-page--immersive{z-index:60;width:100%;height:100vh;height:100dvh;min-height:0;padding:max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));background:var(--cream);margin:0;position:fixed;inset:0}.fox-kifu-page:fullscreen{z-index:60;width:100%;height:100vh;height:100dvh;min-height:0;padding:max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));background:var(--cream);margin:0;position:fixed;inset:0}.fox-kifu-heading{justify-content:space-between;align-items:center;gap:18px;min-height:62px;margin-bottom:10px;display:flex}.fox-kifu-heading>div{align-items:baseline;gap:13px;display:flex}.fox-kifu-heading .back-button{margin:0 8px 0 0}.fox-kifu-heading .eyebrow{margin:0}.fox-kifu-heading h1{letter-spacing:.06em;margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(28px,2.3vw,40px);font-weight:600}.fox-kifu-fullscreen{min-width:112px}.fox-kifu-workspace{flex:1;grid-template:"rail board data"minmax(0,1fr)/clamp(52px,6vw,104px) minmax(0,1fr) clamp(260px,29vw,420px);gap:12px;min-width:0;min-height:0;display:grid}.fox-kifu-move-rail{flex-direction:column;grid-area:rail;gap:10px;min-width:0;min-height:0;display:flex}.fox-kifu-player-badge,.fox-kifu-navigation{border:1px solid var(--line);background:#fffdf7e6;border-radius:12px;box-shadow:0 12px 32px #19302812}.fox-kifu-player-badge{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:12px 7px;display:flex}.fox-kifu-player-badge .stone-preview{border-radius:50%;width:36px;height:36px;margin-bottom:7px;box-shadow:0 6px 13px #14191738}.stone-preview--black{background:radial-gradient(circle at 35% 28%,#5c6462,#202625 48%,#080a0a 100%);border:1px solid #080a0a}.stone-preview--white{background:radial-gradient(circle at 35% 28%,#fff,#ebe9df 70%,#c8c4b8 100%);border:1px solid #c8c4b8}.fox-kifu-player-badge strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:13px;overflow:hidden}.fox-kifu-player-badge small{min-height:16px;color:var(--muted);margin-top:3px;font-size:10px}.fox-kifu-navigation{flex-direction:column;flex:1;gap:7px;min-height:0;padding:7px;display:flex}.fox-kifu-navigation button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-height:38px;font-size:12px}.fox-kifu-navigation button:disabled{color:#a7b0ac;cursor:default}.fox-kifu-navigation>span{place-items:center;min-height:64px;margin:auto 0;display:grid}.fox-kifu-navigation>span strong{color:var(--green-900);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:25px}.fox-kifu-navigation>span small{color:var(--muted);font-size:10px}.fox-kifu-board-panel{grid-area:board;grid-template-rows:minmax(0,1fr) 42px;gap:8px;min-width:0;min-height:0;display:grid}.fox-kifu-board-stage{place-items:center;min-width:0;min-height:0;display:grid;position:relative}.fox-kifu-board-stage .board-shell{width:var(--fox-board-size,100%);height:var(--fox-board-size,auto);aspect-ratio:1;max-width:100%;max-height:100%}.ai-candidate-panel{z-index:8;width:min(420px,100% - 28px);color:var(--green-900);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf7f7;border:1px solid #164a3d47;border-radius:12px;display:grid;position:absolute;top:14px;right:14px;overflow:hidden;box-shadow:0 18px 52px #102f283d}.ai-candidate-panel.is-sharing-stage{width:min(420px,60% - 21px)}.ai-candidate-panel>header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#f6f1e5f5;border-bottom:1px solid #164a3d29;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 13px;display:flex}.ai-candidate-panel>header:active{cursor:grabbing}.ai-candidate-panel>header span{gap:2px;display:grid}.ai-candidate-panel>header strong{font-family:Georgia,Noto Serif SC,Songti SC,serif;font-size:19px}.ai-candidate-panel>header small,.ai-candidate-panel>header em{color:var(--muted);font-size:10px;font-style:normal}.ai-candidate-panel>header em{color:var(--gold);font-weight:750}.ai-candidate-table{display:grid}.ai-candidate-table-head,.ai-candidate-table-body>button{text-align:center;grid-template-columns:62px 1fr 1fr 1fr;align-items:center;display:grid}.ai-candidate-table-head{min-height:34px;color:var(--muted);padding:0 8px;font-size:11px;font-weight:800}.ai-candidate-table-body{max-height:min(440px,58vh);display:grid;overflow-y:auto}.ai-candidate-table-body>button{min-height:42px;color:var(--green-900);cursor:pointer;background:#ffffffc2;border:0;border-top:1px solid #164a3d14;border-radius:0;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.ai-candidate-table-body>button:nth-child(odd){background:#164a3d0e}.ai-candidate-table-body>button:hover,.ai-candidate-table-body>button.is-selected{background:#cd9e402e}.ai-candidate-table-body>button.is-selected{box-shadow:inset 4px 0 0 var(--gold)}.ai-candidate-table-body>button:disabled{cursor:wait;opacity:.62}.ai-candidate-table-body>button span,.ai-candidate-table-body>button strong{min-width:0;font-size:inherit}.ai-candidate-table-body>button i{border:1px solid var(--ai-candidate-stroke);width:25px;height:25px;color:var(--ai-candidate-text);background:var(--ai-candidate-fill);border-radius:50%;place-items:center;font-style:normal;font-weight:900;display:inline-grid}.ai-candidate-table-body>p{color:var(--muted);text-align:center;margin:0;padding:24px 14px}.ai-candidate-panel>footer{color:var(--green-700);text-align:center;background:#f6f1e5c7;border-top:1px solid #164a3d1f;padding:8px 12px;font-size:11px}.fox-kifu-board-empty{color:#fff;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#102f28e0;border:1px solid #ffffff6b;border-radius:14px;flex-direction:column;max-width:92%;padding:22px 28px;display:flex;position:absolute;box-shadow:0 18px 45px #102f2833}.fox-kifu-board-empty strong{font-size:18px}.fox-kifu-board-empty span{color:#ffffffad;margin-top:6px;font-size:12px}.fox-kifu-timeline{border:1px solid var(--line);color:var(--muted);background:#fffdf7e6;border-radius:11px;grid-template-columns:minmax(108px,auto) minmax(120px,1fr) minmax(108px,auto);align-items:center;gap:12px;padding:7px 13px;font-size:12px;display:grid}.fox-kifu-timeline span:last-child{color:var(--green-900);text-align:right;font-weight:700}.fox-kifu-timeline input{width:100%;accent-color:var(--gold)}.fox-kifu-data-panel{overscroll-behavior:contain;flex-direction:column;grid-area:data;gap:10px;min-width:0;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.fox-kifu-panel-card{border:1px solid var(--line);background:#fffdf7f0;border-radius:12px;flex-shrink:0;min-width:0;padding:14px;box-shadow:0 12px 34px #1930280f}.fox-kifu-section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.fox-kifu-section-heading>span{flex-direction:column;display:flex}.fox-kifu-section-heading small{color:var(--gold);letter-spacing:.13em;font-size:9px;font-weight:800}.fox-kifu-section-heading strong{margin-top:2px;font-family:Songti SC,STSong,serif;font-size:20px}.fox-kifu-section-heading em{color:var(--green-700);background:#376f5e14;border-radius:999px;padding:5px 8px;font-size:11px;font-style:normal}.fox-kifu-search-card form,.fox-kifu-search-card label{flex-direction:column;min-width:0;display:flex}.fox-kifu-search-card form{gap:9px}.fox-kifu-search-card label{color:var(--muted);gap:5px;font-size:11px;font-weight:700}.fox-kifu-search-card input{width:100%;min-width:0;min-height:38px;color:var(--ink);background:#fff;border:1px solid #173f352e;border-radius:8px;padding:7px 10px}.fox-kifu-search-card .primary-button{width:100%;min-height:40px;margin-top:1px}.fox-kifu-date-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fox-kifu-list-head,.fox-kifu-record-list>button{grid-template-columns:70px repeat(2,minmax(0,1fr)) minmax(50px,.9fr);align-items:center;gap:7px;display:grid}.fox-kifu-list-head{color:var(--muted);padding:0 8px 7px;font-size:10px;font-weight:700}.fox-kifu-record-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.fox-kifu-record-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;width:100%;min-height:44px;padding:7px 8px;font-size:10px;overflow:hidden}.fox-kifu-record-list>button:last-of-type{border-bottom:0}.fox-kifu-record-list>button:hover,.fox-kifu-record-list>button.is-selected{background:#e8c98933}.fox-kifu-record-list>button.is-selected{box-shadow:inset 3px 0 var(--gold)}.fox-kifu-record-list>button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fox-kifu-record-list>button span:last-child{color:var(--green-700);font-weight:700}.fox-kifu-record-list .history-empty{padding:17px 10px;font-size:11px}.fox-kifu-pagination{justify-content:flex-end;align-items:center;gap:8px;margin-top:9px;font-size:10px;display:flex}.fox-kifu-pagination button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:5px 8px}.fox-kifu-pagination button:disabled{opacity:.45;cursor:default}.fox-kifu-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:12px;display:grid}.fox-kifu-stat-grid>span{background:#173f350e;border-radius:9px;flex-direction:column;justify-content:center;min-height:60px;padding:8px;display:flex}.fox-kifu-stat-grid small,.fox-kifu-color-rates small{color:var(--muted);font-size:9px}.fox-kifu-stat-grid strong{color:var(--green-900);margin-top:4px;font-size:18px}.fox-kifu-result-row{grid-template-columns:30px 1fr 24px;align-items:center;gap:8px;margin:7px 0;font-size:10px;display:grid}.fox-kifu-result-row>div{background:#173f3514;border-radius:999px;height:7px;overflow:hidden}.fox-kifu-result-row i{border-radius:inherit;background:var(--green-700);height:100%;display:block}.fox-kifu-result-row i.is-loss{background:#b98f72}.fox-kifu-result-row i.is-other{background:#a9b2ae}.game-review-full-total{color:var(--muted);font-size:10px}.game-review-current-time{padding:13px 16px}.game-review-current-time .fox-kifu-section-heading{margin-bottom:5px}.game-review-time-value{color:var(--green-900);margin:2px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(25px,3vw,40px);line-height:1;display:block}.game-review-time-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.game-review-time-totals article{background:#173f350e;border-radius:9px;gap:4px;min-width:0;padding:10px;display:grid}.game-review-time-totals span,.game-review-time-totals small{color:var(--muted);font-size:9px}.game-review-time-totals strong{color:var(--green-900);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;overflow:hidden}.game-review-side-bars{gap:6px;margin:11px 0 8px;display:grid}.game-review-side-bars>span,.game-review-recent-list span{background:#173f3514;border-radius:999px;height:7px;overflow:hidden}.game-review-side-bars i,.game-review-recent-list i{width:var(--review-time-width);border-radius:inherit;background:#17201e;height:100%;display:block}.game-review-side-bars>span:last-child i,.game-review-recent-list i.is-white{background:#d4d2ca;box-shadow:inset 0 0 0 1px #8b918d}.game-review-full-total{display:block}.game-review-recent-list{gap:9px;display:grid}.game-review-recent-list>div{grid-template-columns:112px minmax(44px,1fr) 90px;align-items:center;gap:8px;display:grid}.game-review-recent-list strong,.game-review-recent-list em{font-size:13px;font-style:normal}.game-review-recent-list span{height:8px}.game-review-recent-list em{color:var(--muted);text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.game-review-report-button{border:1px solid var(--line);min-height:31px;color:var(--green-900);cursor:pointer;background:#fff;border-radius:8px;padding:5px 9px;font-size:10px;font-weight:750}.game-review-report-button:disabled{opacity:.5;cursor:default}.review-annotation-layer{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.review-annotation-layer.is-editing{cursor:crosshair;pointer-events:auto;touch-action:none}.review-point-annotation{paint-order:stroke fill;stroke:#fffffff0;stroke-width:7px;pointer-events:none;font-family:ui-sans-serif,system-ui,sans-serif;font-size:52px;font-weight:900}.review-annotation-panel{z-index:8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf7f7;border:1px solid #173f3540;border-radius:12px;width:min(280px,100% - 32px);padding:11px;position:absolute;top:16px;right:16px;box-shadow:0 18px 48px #0c261f3d}.review-annotation-panel.is-sharing-stage{width:min(280px,40% - 21px);left:16px;right:auto}.review-annotation-panel>header{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:2px 2px 9px;display:grid}.review-annotation-panel>header:active{cursor:grabbing}.review-annotation-panel>header span{color:var(--muted);font-size:9px}.review-annotation-panel button{border:1px solid var(--line);min-height:30px;color:var(--green-900);cursor:pointer;background:#fff;border-radius:7px;padding:4px 8px;font-weight:700}.review-annotation-tools{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.review-annotation-tools button{font-size:17px}.review-annotation-tools button.is-active,.review-color-button.is-active{color:#fff;background:var(--green-800)}.review-annotation-options{color:var(--muted);grid-template-columns:1fr auto auto;align-items:center;gap:6px;margin-top:9px;font-size:10px;display:grid}.review-color-button.is-red{color:#a62c26}.review-color-button.is-blue{color:#1558b1}.review-color-button.is-red.is-active{background:#c43b32}.review-color-button.is-blue.is-active{background:#1768d7}.review-annotation-width{color:var(--muted);grid-template-columns:auto 1fr 22px;align-items:center;gap:7px;margin-top:9px;font-size:10px;display:grid}.review-annotation-width input{width:100%;accent-color:var(--green-700)}.review-annotation-panel>footer{justify-content:flex-end;gap:6px;margin-top:9px;display:flex}.fox-kifu-color-rates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.fox-kifu-color-rates>span{border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr auto;gap:4px 8px;padding:10px;display:grid}.fox-kifu-color-rates>span>i{background:#173f3514;border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.fox-kifu-color-rates b{border-radius:inherit;background:#17201e;height:100%;display:block}.fox-kifu-color-rates>span:last-child b{background:#d8d5ca;box-shadow:inset 0 0 0 1px #8b918d}.fox-kifu-back{border:1px solid var(--line);text-align:center;background:#fffdf7e6;border-radius:9px;width:100%;min-height:36px;margin:0;padding:7px 5px;font-size:11px}.fox-kifu-vertical-progress{border:1px solid var(--line);background:#fffdf7eb;border-radius:12px;flex:1;grid-template-rows:auto minmax(0,1fr) auto;place-items:center;gap:8px;min-height:0;padding:12px 7px;display:grid;box-shadow:0 12px 32px #19302812}.fox-kifu-vertical-progress strong{color:var(--green-900);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:23px}.fox-kifu-vertical-progress small{color:var(--muted);font-size:10px}.fox-kifu-vertical-slider{cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;width:34px;max-width:100%;height:100%;min-height:0;position:relative}.fox-kifu-vertical-slider:focus-visible{outline:2px solid var(--green-700);outline-offset:2px}.fox-kifu-vertical-slider[aria-disabled=true]{opacity:.4;cursor:default}.fox-kifu-vertical-slider.is-busy[aria-disabled=true]{opacity:1;cursor:progress}.game-history-review-page .fox-kifu-vertical-progress strong,.game-history-review-page .fox-kifu-vertical-progress small{font-variant-numeric:tabular-nums;text-align:center;min-width:5ch}.fox-kifu-slider-track{pointer-events:none;background:#424743;border-radius:999px;width:7px;position:absolute;inset:8px auto 8px 50%;transform:translate(-50%)}.fox-kifu-slider-fill{border-radius:inherit;background:var(--gold);width:100%;position:absolute;bottom:0}.fox-kifu-slider-thumb{background:var(--gold);border-radius:50%;width:16px;height:16px;position:absolute;left:50%;transform:translate(-50%,50%)}.fox-kifu-board-panel{grid-template-rows:minmax(0,1fr) auto;gap:7px}.fox-kifu-board-toolbar{border:1px solid var(--line);background:#fffdf7f0;border-radius:11px;grid-template-columns:minmax(88px,auto) auto minmax(0,1fr);align-items:center;gap:7px;min-height:52px;padding:6px 8px;display:grid;box-shadow:0 10px 26px #1930280e}.fox-kifu-move-status{flex-direction:column;min-width:84px;display:flex}.fox-kifu-move-status strong{color:var(--green-900);font-size:12px}.fox-kifu-move-status small{max-width:100px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.fox-kifu-playback-buttons,.fox-kifu-tool-buttons{gap:5px;min-width:0;display:flex}.fox-kifu-tool-buttons{justify-content:flex-end}.fox-kifu-playback-buttons button,.fox-kifu-tool-buttons button{border:1px solid var(--line);min-height:34px;color:var(--green-900);white-space:nowrap;cursor:pointer;background:#fff;border-radius:8px;padding:6px 9px;font-size:10px;font-weight:700}.fox-kifu-tool-buttons button.is-active{border-color:var(--green-700);color:#fff;background:var(--green-800)}.fox-kifu-tool-buttons button.is-loading{box-shadow:0 0 0 3px #d49d3733}.game-history-review-page .fox-kifu-playback-buttons{grid-template-columns:repeat(4,minmax(64px,1fr));width:min(100%,340px);display:grid}.game-history-review-page .fox-kifu-playback-buttons button{width:100%;min-width:0}.game-history-review-page .game-review-research-button{min-width:72px}.game-history-review-page .fox-kifu-playback-buttons button.is-research-busy:disabled,.game-history-review-page .fox-kifu-tool-buttons button.is-research-busy:disabled{opacity:1;cursor:progress}.fox-kifu-ai-active-state{color:var(--green-700);white-space:nowrap;align-self:center;font-size:9px;font-weight:750}.fox-kifu-ai-error{color:#923b2f;text-align:center;cursor:pointer;background:#fff0ec;border:0;border-radius:6px;grid-column:1/-1;padding:4px 8px;font-size:10px}.fox-kifu-ai-dialog{background:#fffdf7;border:1px solid #ffffff9e;border-radius:18px;gap:18px;width:min(90%,520px);max-height:94%;padding:clamp(18px,3vw,28px);display:grid;overflow-y:auto;box-shadow:0 28px 90px #0c211b66}.fox-kifu-ai-dialog>header,.fox-kifu-ai-dialog>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.fox-kifu-ai-dialog header small{color:var(--gold);letter-spacing:.12em;font-size:9px;font-weight:800}.fox-kifu-ai-dialog h2{margin:3px 0 0;font-family:Songti SC,STSong,serif;font-size:clamp(24px,4vw,34px)}.fox-kifu-ai-dialog header button,.fox-kifu-ai-dialog footer button{border:1px solid var(--line);min-height:38px;color:var(--green-800);cursor:pointer;background:#fff;border-radius:9px;padding:8px 14px;font-weight:750}.fox-kifu-ai-dialog footer{justify-content:flex-end}.fox-kifu-ai-dialog footer .primary-button{border-color:var(--green-800);color:#fff;background:var(--green-800)}.fox-kifu-ai-dialog button:disabled{opacity:.55;cursor:default}.fox-kifu-ai-connection-status{background:#376f5e0f;border:1px solid #376f5e33;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:15px;display:grid}.fox-kifu-ai-connection-status i{background:#c98a3f;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 6px #c98a3f1f}.fox-kifu-ai-connection-status i.is-ready{background:#49a77c;box-shadow:0 0 0 6px #49a77c1f}.fox-kifu-ai-connection-status span{gap:3px;display:grid}.fox-kifu-ai-profile{background:#c98a3f0f;border:1px solid #c98a3f38;border-radius:12px;gap:10px;margin:0;padding:14px;display:grid}.fox-kifu-ai-profile div{grid-template-columns:88px minmax(0,1fr);gap:10px;display:grid}.fox-kifu-ai-profile dt{color:var(--muted);font-size:11px}.fox-kifu-ai-profile dd{color:var(--green-900);margin:0;font-size:11px;font-weight:750}.fox-kifu-ai-connection-status small,.fox-kifu-ai-security-note p{color:var(--muted);font-size:11px;line-height:1.65}.fox-kifu-ai-security-note{background:#f3f0e7c7;border-radius:12px;padding:15px}.fox-kifu-ai-security-note p{margin:7px 0}.fox-kifu-ai-security-note code{color:#fffdf7;background:var(--green-900);-webkit-user-select:all;user-select:all;border:1px solid #173f3524;border-radius:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:block}.fox-kifu-playback-buttons button:disabled,.fox-kifu-tool-buttons button:disabled{opacity:.42;cursor:default}.fox-kifu-data-title{z-index:5;background:var(--cream);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex;position:sticky;top:0}.fox-kifu-data-title h1{letter-spacing:.08em;margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(27px,2.1vw,38px);font-weight:600}.fox-kifu-data-title .secondary-button{min-width:96px;min-height:38px;padding:7px 10px;font-size:11px}.fox-kifu-list-heading>span strong{align-items:baseline;gap:7px;display:flex}.fox-kifu-list-heading>span strong em{color:var(--green-700);font-family:var(--font-sans);background:0 0;padding:0;font-size:10px}.fox-kifu-list-heading>button{min-width:54px;min-height:30px;color:var(--green-800);cursor:pointer;background:#376f5e0f;border:1px solid #376f5e3d;border-radius:8px;font-size:11px;font-weight:750}.fox-kifu-list-heading>button:disabled{opacity:.4;cursor:default}.fox-kifu-duration-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:11px;display:grid}.fox-kifu-duration-grid>span{background:#e8c9891f;border:1px solid #b48a4633;border-radius:8px;flex-direction:column;justify-content:center;min-height:48px;padding:7px;display:flex}.fox-kifu-duration-grid small{color:var(--muted);font-size:8px}.fox-kifu-duration-grid strong{color:var(--green-900);margin-top:3px;font-size:15px}.fox-kifu-duration-note{color:var(--muted);margin:8px 0 0;font-size:9px}.fox-kifu-capture-toast{z-index:24;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#163d33e6;border:1px solid #ffffff57;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:750;position:absolute;top:auto;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #163d3333}.fox-kifu-details-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f272161;border-radius:12px;place-items:center;padding:clamp(12px,3vw,28px);display:grid;position:absolute;inset:0}.fox-kifu-details-dialog{background:#fffdf7;border:1px solid #ffffff8c;border-radius:16px;grid-template-rows:auto minmax(0,1fr) auto;width:min(94%,980px);max-height:94%;padding:clamp(14px,2vw,22px);display:grid;overflow:hidden;box-shadow:0 28px 90px #0c211b61}.fox-kifu-details-dialog>header,.fox-kifu-details-dialog>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.fox-kifu-details-dialog h2{margin:1px 0 9px;font-family:Songti SC,STSong,serif;font-size:25px}.fox-kifu-details-dialog header small,.fox-kifu-details-dialog footer{color:var(--muted);font-size:10px}.fox-kifu-details-dialog header button,.fox-kifu-details-dialog footer button{border:1px solid var(--line);min-height:30px;color:var(--green-800);cursor:pointer;background:#fff;border-radius:7px;padding:5px 10px;font-size:10px;font-weight:700}.fox-kifu-detail-head,.fox-kifu-detail-list>button{grid-template-columns:84px 68px 78px 88px minmax(78px,1fr) minmax(78px,1fr) 76px;align-items:center;gap:6px;min-width:620px;display:grid}.fox-kifu-detail-head{z-index:1;border-bottom:1px solid var(--line);color:var(--muted);background:#fffdf7;padding:8px 10px;font-size:9px;font-weight:750;position:sticky;top:0}.fox-kifu-detail-table{border:1px solid var(--line);border-radius:9px;min-width:0;min-height:0;overflow:auto}.fox-kifu-detail-list{min-height:80px}.fox-kifu-detail-list>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;padding:6px 10px;font-size:9px;overflow:hidden}.fox-kifu-detail-list>button:last-of-type{border-bottom:0}.fox-kifu-detail-list>button:hover,.fox-kifu-detail-list>button.is-selected{background:#e8c98933}.fox-kifu-detail-list>button.is-selected{box-shadow:inset 3px 0 var(--gold)}.fox-kifu-detail-list>button.is-flying-knife{color:#9f2f2a;background:#fff1ef;box-shadow:inset 3px 0 #cf4238}.fox-kifu-detail-list>button.is-flying-knife:hover,.fox-kifu-detail-list>button.is-flying-knife.is-selected{background:#ffe4e0}.fox-kifu-detail-list>button.is-flying-knife span:nth-child(4),.fox-kifu-detail-list>button.is-flying-knife span:last-child{color:#a62520;font-weight:800}.fox-kifu-detail-list>button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fox-kifu-detail-list>button span:last-child{color:var(--green-700);font-weight:750}.fox-kifu-detail-list>p{color:var(--muted);text-align:center;margin:0;padding:26px 14px}.fox-kifu-details-dialog>footer{margin-top:10px}.fox-kifu-details-dialog>footer>div{align-items:center;gap:8px;display:flex}.teacher-game-picker-dialog{width:min(94%,840px)}.teacher-game-picker-content{border:1px solid var(--line);background:#f6f3ea80;border-radius:11px;min-height:150px;position:relative;overflow:auto}.teacher-game-picker-heading,.teacher-game-picker-list .teacher-game-picker-select{grid-template-columns:112px minmax(110px,1fr) minmax(110px,1fr) 120px 92px;align-items:center;gap:10px;min-width:620px;display:grid}.teacher-game-picker-heading{z-index:2;min-height:38px;color:var(--muted);background:#fffdf7;padding:7px 12px;font-size:11px;font-weight:750;position:sticky;top:0}.teacher-game-picker-list{display:grid}.teacher-game-picker-list .teacher-game-picker-select{min-height:52px;color:var(--green-900);text-align:left;cursor:pointer;background:#ffffffd1;border:0;border-top:1px solid #173f351a;flex:1;padding:7px 12px}.teacher-game-picker-list .teacher-game-picker-select:hover,.teacher-game-picker-list .teacher-game-picker-select.is-selected{background:#c9954724}.teacher-game-picker-list .teacher-game-picker-select.is-selected{box-shadow:inset 4px 0 var(--gold)}.teacher-game-picker-list .teacher-game-picker-select span,.teacher-game-picker-list .teacher-game-picker-select strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-game-picker-list .teacher-game-picker-select strong{color:var(--green-700);text-align:center}.teacher-game-picker-list .teacher-game-picker-select:disabled{cursor:progress}.teacher-game-picker-row{align-items:center;display:flex}.teacher-game-picker-dialog>header>button{white-space:nowrap;flex-shrink:0;min-width:44px}.teacher-game-picker-heading.has-delete{margin-right:78px}.teacher-game-picker-row .teacher-game-picker-delete{color:#b42318;background:#fff0ed;border:1px solid #e7ada6;border-radius:8px;flex:0 0 64px;min-height:38px;margin:0 7px;font-weight:700}.teacher-game-picker-row .teacher-game-picker-delete:hover:not(:disabled){background:#ffdad3}.teacher-game-picker-content>.message,.teacher-game-picker-content>.history-empty{margin:14px}.teacher-game-picker-loading{color:#fff;background:#173f35e6;border-radius:999px;width:max-content;margin:10px auto;padding:7px 12px;font-size:11px;position:sticky;bottom:8px}@media (max-width:1260px){.fox-kifu-board-toolbar{grid-template-columns:auto 1fr}.fox-kifu-tool-buttons{grid-column:1/-1}}@media (max-width:900px) and (orientation:portrait),(max-width:600px){.fox-kifu-workspace{grid-template:"rail board"minmax(0,3fr)"data data"minmax(0,2fr)/clamp(42px,9vw,72px) minmax(0,1fr)}.fox-kifu-data-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;display:grid}.fox-kifu-data-title{grid-column:1/-1}}@media (max-width:640px){.fox-kifu-page:not(.fox-kifu-page--immersive):not(:fullscreen){width:calc(100% - 12px);padding:6px 0}.fox-kifu-player-badge{display:none}.fox-kifu-back{min-height:40px;padding:5px 2px;font-size:9px}.fox-kifu-board-toolbar{grid-template-columns:1fr;gap:4px;padding:5px}.fox-kifu-move-status{flex-direction:row;justify-content:space-between;align-items:center}.fox-kifu-playback-buttons,.fox-kifu-tool-buttons{justify-content:stretch}.fox-kifu-playback-buttons button,.fox-kifu-tool-buttons button{flex:1;min-width:0;min-height:38px;padding-left:4px;padding-right:4px;font-size:10px}.fox-kifu-data-panel{display:flex}.fox-kifu-duration-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fox-kifu-details-dialog{width:100%;max-height:100%;padding:11px}.teacher-game-picker-heading{display:none}.teacher-game-picker-list .teacher-game-picker-select{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;min-width:0;font-size:12px}.teacher-game-picker-list .teacher-game-picker-select span:before,.teacher-game-picker-list .teacher-game-picker-select strong:before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:400;display:block}.teacher-game-picker-list .teacher-game-picker-select strong{text-align:left}.fox-kifu-detail-head{display:none}.fox-kifu-detail-list>button{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px;min-width:0;font-size:12px}.fox-kifu-detail-list>button span:before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:400;display:block}.fox-kifu-board-empty{padding:12px}.fox-kifu-board-empty strong{font-size:14px}.fox-kifu-board-empty span{font-size:10px}.fox-kifu-search-card input{font-size:16px}.fox-kifu-record-list>button{font-size:11px}.assigned-games-title-row{gap:6px}.assigned-games-title-row h2{font-size:21px}.assigned-games-title-row .secondary-button{padding:7px;font-size:12px}}@media (max-height:600px) and (orientation:landscape){.fox-kifu-workspace{gap:6px}.fox-kifu-move-rail{gap:5px}.fox-kifu-player-badge{padding:5px 3px}.fox-kifu-player-badge .stone-preview{width:20px;height:20px;margin-bottom:3px}.fox-kifu-player-badge strong{font-size:10px}.fox-kifu-player-badge small{display:none}.fox-kifu-vertical-progress{gap:3px;padding:5px}.fox-kifu-data-title h1{font-size:24px}}@media (pointer:coarse){.fox-kifu-playback-buttons button,.fox-kifu-tool-buttons button{min-height:44px}}.question-bank-manager{grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;display:grid;position:relative;overflow:visible}.question-bank-messages:empty{display:none}.question-bank-messages .message{margin:0}.question-bank-tabs{z-index:2;position:absolute;top:-54px;left:50%;transform:translate(-50%)}.question-bank-messages{grid-row:1}.question-knowledge-view,.question-library-view{grid-row:2}.question-bank-tabs{border:1px solid var(--line);background:#ded8c659;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(440px,100%);margin:0;padding:5px;display:grid}.question-bank-tabs button{min-height:46px;color:var(--green-700);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;font-size:16px;font-weight:800}.question-bank-tabs button.is-active{color:var(--green-950);background:#fffdf7;border-color:#bd872b5c;box-shadow:0 7px 20px #1f3b3017}.question-knowledge-view{grid-template-rows:auto 1fr auto;gap:16px;min-height:0;display:grid}.question-section-tabs{border:1px solid var(--line);background:#fff9;border-radius:12px;grid-template-columns:repeat(8,minmax(72px,1fr));gap:5px;padding:6px;display:grid}.question-section-tabs button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-weight:800}.question-section-tabs button.is-active{color:#fffdf7;background:var(--green-800)}.question-category-list{scrollbar-gutter:stable;grid-auto-rows:max-content;align-content:start;gap:10px;min-height:0;max-height:min(520px,52dvh);padding-right:4px;display:grid;overflow-y:auto}.question-category-row{border:1px solid var(--line);background:#ffffffa8;border-radius:14px;overflow:hidden}.question-category-main,.question-point-row{justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:13px 16px;display:flex}.question-category-toggle{min-width:0;color:var(--green-900);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:7px 0;font-size:17px;display:flex}.question-category-toggle small,.question-point-row small,.question-card small,.question-inline-empty{color:var(--muted);font-size:12px;font-weight:600}.question-row-actions{flex-shrink:0;gap:8px;display:flex}.question-row-actions button,.question-card>button{border:1px solid var(--line);min-height:34px;color:var(--green-800);cursor:pointer;background:#fffdf8;border-radius:10px;padding:7px 13px;font-weight:750}.question-row-actions button:last-child{background:#f6e8c794;border-color:#be892e47}.question-point-list{background:#efede480;gap:6px;padding:4px 14px 14px 46px;display:grid}.question-point-row{background:#ffffffbd;border:1px solid #1845391c;border-radius:10px;padding:10px 12px}.question-point-row>span{align-items:baseline;gap:10px;min-width:0;display:flex}.question-bank-footer{justify-content:flex-end;display:flex}.question-library-view{border:1px solid var(--line);background:#ffffff8f;border-radius:16px;grid-template-columns:250px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.question-library-tree{border-right:1px solid var(--line);background:#eeebe0a3;align-content:start;gap:6px;min-height:0;max-height:none;padding:10px 12px;display:grid;overflow-y:auto}.question-tree-section{--section-accent:#285f50;--section-surface:#285f501c;--category-surface:#285f5012;gap:4px;display:grid}.question-tree-section[data-section=CAPTURING_RACE]{--section-accent:#8b5a2f;--section-surface:#8b5a2f1f;--category-surface:#c68b4e21}.question-tree-section[data-section=TESUJI]{--section-accent:#426c87;--section-surface:#426c871f;--category-surface:#5d8fae1f}.question-tree-section[data-section=CAPTURE]{--section-accent:#95525c;--section-surface:#95525c1f;--category-surface:#be6b771c}.question-tree-section[data-section=OPENING]{--section-accent:#6e6b37;--section-surface:#6e6b371f;--category-surface:#9f994f1f}.question-tree-section[data-section=MIDDLE_GAME]{--section-accent:#655785;--section-surface:#6557851f;--category-surface:#8471a91c}.question-tree-section[data-section=ENDGAME]{--section-accent:#8a6044;--section-surface:#8a60441f;--category-surface:#b7825e1f}.question-tree-section[data-section=JOSEKI]{--section-accent:#38737c;--section-surface:#38737c1f;--category-surface:#4d96a01c}.question-tree-section-heading>strong{color:var(--section-accent);letter-spacing:.04em;font-family:Songti SC,STSong,serif;font-size:18px;font-weight:850;line-height:1.35}.question-tree-section-body{gap:4px;padding:0 2px 1px 8px;display:grid}.question-tree-category{gap:4px;display:grid}.question-tree-section-heading,.question-tree-category-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.question-tree-section-heading{border:1px solid color-mix(in srgb, var(--section-accent) 24%, transparent);background:var(--section-surface);border-radius:11px;min-height:38px;padding:6px 7px 6px 11px}.question-tree-category-heading{border-left:3px solid var(--section-accent);background:var(--category-surface);border-radius:8px;min-height:32px;padding:2px 5px 2px 8px}.question-tree-category-heading>span{min-width:0;color:var(--section-accent);padding:4px 2px;font-size:15px;font-weight:800}.question-tree-collapse{width:26px;min-width:26px;min-height:26px;color:var(--section-accent);cursor:pointer;background:#fffdf894;border:0;border-radius:7px;flex:none;padding:0;font-size:19px;font-weight:800;line-height:1;transition:transform .16s,background-color .16s;transform:rotate(0)}.question-tree-collapse[aria-expanded=true]{transform:rotate(90deg)}.question-tree-collapse:hover,.question-tree-collapse:focus-visible{background:#fffdf8f0}.question-tree-empty{color:var(--muted);padding:2px 8px 5px;font-size:12px}.question-tree-point{width:100%;min-height:36px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px 7px 20px;font-size:13px;display:flex}.question-tree-point.is-active{color:#fffef8;background:var(--green-800)}.question-library-content{grid-template-rows:minmax(0,1fr) auto;gap:8px;min-width:0;min-height:0;padding:8px 12px 10px;display:grid;overflow:hidden}.question-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:10px;min-height:0;padding:2px 6px 8px 2px;display:grid;overflow-y:auto}.question-card{border:1px solid var(--line);background:#fffdf8;border-radius:12px;gap:4px;min-width:0;padding:8px;display:grid;box-shadow:0 8px 22px #16362d12}.question-card-preview{aspect-ratio:1;color:#1a463a61;background-color:#d9aa58;background-image:linear-gradient(#59371314 1px,#0000 1px),linear-gradient(90deg,#59371314 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:20% 20%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:8px;justify-self:center;place-items:center;width:min(100%,clamp(116px,19dvh,158px));display:grid;overflow:hidden}.question-card-preview>span{text-align:center;padding:8px;font-size:12px;font-weight:700}.question-card-preview .board-shell{width:100%;height:100%;box-shadow:none;border-radius:8px;padding:0}.question-card-preview .go-board{width:100%;height:100%}.question-card>strong{color:var(--green-950);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.question-card>button{width:100%;min-height:30px;margin-top:2px;padding:5px 10px}.question-library-footer{background:#ffffffb3;border-top:1px solid #1845391f;justify-content:space-between;align-items:center;gap:14px;min-height:44px;padding-top:8px;display:flex}.question-library-footer nav,.question-library-footer>div{align-items:center;gap:9px;display:flex}.question-library-footer nav button{border:1px solid var(--line);min-height:36px;color:var(--green-800);cursor:pointer;background:#fffdf8;border-radius:9px;padding:7px 12px}.question-library-footer button:disabled,.question-row-actions button:disabled,.question-card>button:disabled{cursor:not-allowed;opacity:.5}.question-bank-empty{min-height:180px;color:var(--muted);text-align:center;place-content:center;gap:8px;display:grid}.question-bank-empty strong{color:var(--green-800);font-size:18px}.question-bank-empty--grid{grid-column:1/-1}.question-editor-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c1f1a75;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.question-editor-card{background:var(--paper);border:1px solid #fff9;border-radius:16px;gap:22px;width:min(520px,100%);padding:28px;display:grid;box-shadow:0 30px 90px #081c1657}.question-editor-card header{justify-content:space-between;align-items:start;gap:20px;display:flex}.question-editor-card header h3{color:var(--green-950);margin:4px 0 0;font-family:Songti SC,STSong,serif;font-size:25px}.question-editor-card header>button{border:1px solid var(--line);width:38px;height:38px;color:var(--green-900);cursor:pointer;background:0 0;border-radius:50%;padding:0;font-size:24px}.question-editor-card label{color:var(--green-800);gap:9px;font-weight:750;display:grid}.question-editor-card input{margin:0}.question-upload-field input[type=file]{background:#ffffffb3;border:1px dashed #18453952;padding:13px}.question-upload-field small{color:var(--muted);font-weight:500;line-height:1.6}.question-editor-actions{justify-content:flex-end;gap:10px;display:flex}@media (max-width:1050px){.question-section-tabs{grid-template-columns:repeat(8,minmax(90px,1fr));overflow-x:auto}.question-library-view{grid-template-columns:210px minmax(0,1fr)}.question-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.lobby-dialog-card--question-bank{height:auto;min-height:0;padding:18px;overflow-y:auto}.question-bank-manager{grid-template-rows:auto auto minmax(0,1fr);min-height:520px;overflow:visible}.question-bank-tabs{grid-row:1;position:static;transform:none}.question-bank-messages{grid-row:2}.question-knowledge-view,.question-library-view{grid-row:3}.question-category-main,.question-point-row{align-items:stretch;display:grid}.question-row-actions>button{flex:1}.question-point-list{padding-left:14px}.question-library-view{grid-template-columns:1fr;height:auto;overflow:visible}.question-library-tree{border-right:0;border-bottom:1px solid var(--line);max-height:220px}.question-library-content{padding:14px;overflow:visible}.question-grid{grid-template-columns:1fr;max-height:58dvh}.question-card-preview{width:min(100%,220px)}.question-library-footer{display:grid}.question-library-footer>div,.question-library-footer .primary-button,.question-library-footer .secondary-button{width:100%}}.problem-picker--question-library{grid-template-rows:auto auto minmax(0,1fr);width:min(1400px,100vw - 40px);height:min(900px,100dvh - 40px);max-height:none}.problem-picker-messages{padding:0 24px}.problem-picker-messages:empty{display:none}.problem-picker-messages .message{margin:10px 0 0}.problem-picker-library-view{border:0;border-top:1px solid var(--line);border-radius:0;height:100%;min-height:0}.problem-picker-card{transition:border-color .16s,background-color .16s,box-shadow .16s}.problem-picker-card.is-selected{background:#f2f7f9;border-color:#547282;box-shadow:inset 0 0 0 2px #547282b8}.problem-picker-card>button.is-selected{color:#314854;background:#dfedf3;border-color:#8da7b7}.problem-picker-footer>div{flex-wrap:wrap;justify-content:flex-end}.problem-picker-selected-count{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:750}@media (max-width:1050px){.problem-picker--question-library .question-library-view{grid-template-columns:210px minmax(0,1fr)}.problem-picker--question-library .question-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.nested-dialog-backdrop{padding:10px}.problem-picker--question-library{border-radius:18px;grid-template-rows:auto auto auto;width:100%;height:calc(100dvh - 20px);overflow-y:auto}.problem-picker--question-library>header{z-index:3;background:#fffdf7;padding:14px 16px;position:sticky;top:0}.problem-picker--question-library h3{font-size:22px}.problem-picker-messages{padding:0 14px}.problem-picker--question-library .problem-picker-library-view{grid-template-columns:1fr;height:auto;overflow:visible}.problem-picker--question-library .question-library-tree{max-height:210px}.problem-picker--question-library .question-grid{grid-template-columns:1fr;max-height:none}.problem-picker--question-library .question-library-footer>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.problem-picker-selected-count{grid-column:1/-1}}.homework-review-overview{gap:18px;display:grid}.homework-review-overview__summary{border:1px solid var(--line);background:#efede5a8;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:18px 20px;display:grid}.homework-review-overview__summary>div{border-right:1px solid var(--line);align-items:baseline;gap:6px;padding-right:18px;display:flex}.homework-review-overview__summary strong{color:var(--green-900);font-family:Georgia,Songti SC,serif;font-size:34px;line-height:1}.homework-review-overview__summary span,.homework-review-overview__summary p{color:var(--muted);margin:0;font-size:13px}.homework-review-overview__list{overscroll-behavior:contain;gap:9px;max-height:min(58dvh,620px);padding:2px 6px 2px 2px;display:grid;overflow-y:auto}.homework-review-overview__list>button{min-height:88px;color:var(--green-900);text-align:left;cursor:pointer;background:#fff;border:1px solid #16473b24;border-radius:15px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:15px 18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.homework-review-overview__list>button:hover,.homework-review-overview__list>button:focus-visible{border-color:#174c3e66;transform:translateY(-1px);box-shadow:0 12px 26px #11362d14}.homework-review-overview__list>button.is-reviewed{background:linear-gradient(100deg,#fff 0%,#f4faf6 100%)}.homework-review-overview__identity{gap:4px;min-width:0;display:grid}.homework-review-overview__identity small{color:var(--gold);letter-spacing:.08em;font-size:11px;font-weight:850}.homework-review-overview__identity strong{text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,Songti SC,serif;font-size:21px;overflow:hidden}.homework-review-overview__identity em{color:var(--muted);font-size:12px;font-style:normal}.homework-review-overview__status{color:#a33d36;white-space:nowrap;background:#c54b4312;border:1px solid #c54b4333;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:850}.homework-review-overview__status.is-reviewed{color:#1f745e;background:#1f745e14;border-color:#1f745e38}.homework-review-overview__arrow{color:var(--gold);font-size:22px}.homework-review-overview__footer{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding-top:14px;display:flex}.homework-review-overview__footer button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;min-width:118px;min-height:44px;font-weight:800}.homework-review-overview__footer button:last-child{border-color:var(--green-900);color:#fff;background:var(--green-900)}.review-board-zoom-menu{z-index:38;background:#fffdf7fa;border:1px solid #16473b33;border-radius:16px;gap:12px;width:min(300px,100% - 36px);padding:16px;display:grid;position:absolute;bottom:18px;right:18px;box-shadow:0 20px 54px #11362d33}.review-board-zoom-menu header{justify-content:space-between;align-items:center;display:flex}.review-board-zoom-menu header button{border:1px solid var(--line);width:32px;height:32px;color:var(--green-900);background:#fff;border-radius:50%;padding:0;font-size:20px}.review-board-zoom-menu>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.review-board-zoom-menu>div button{min-height:42px;color:var(--green-900);cursor:pointer;background:#fff;border:1px solid #16473b2e;border-radius:10px;font-weight:800}.review-board-zoom-menu>div button.is-active{color:#fff;background:var(--green-900)}.homework-analytics{gap:16px;min-height:min(65dvh,680px);display:grid}.homework-analytics__homework-list{align-content:start;gap:10px;max-height:min(64dvh,650px);padding:2px 6px 2px 2px;display:grid;overflow-y:auto}.homework-analytics__homework-list>button{min-height:78px;color:var(--green-900);text-align:left;cursor:pointer;background:#fff;border:1px solid #16473b26;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:14px 18px;display:grid}.homework-analytics__homework-list>button>span{gap:4px;display:grid}.homework-analytics__homework-list small{color:var(--gold);font-size:11px;font-weight:850}.homework-analytics__homework-list strong{font-family:Georgia,Songti SC,serif;font-size:20px}.homework-analytics__homework-list em{color:var(--muted);font-style:normal}.homework-analytics__detail,.homework-analytics__student-results{align-content:start;gap:14px;display:grid}.homework-analytics__detail>header{align-items:center;gap:14px;display:flex}.homework-analytics__detail>header>button,.homework-analytics__footer button{border:1px solid var(--line);min-height:42px;color:var(--green-900);background:#fff;border-radius:10px;padding:0 16px;font-weight:800}.homework-analytics__detail>header>span{gap:2px;display:grid}.homework-analytics__detail>header strong{font-family:Georgia,Songti SC,serif;font-size:22px}.homework-analytics__detail>header small{color:var(--muted)}.homework-analytics__student-results>label{max-width:420px;color:var(--green-900);gap:7px;font-weight:800;display:grid}.homework-analytics__student-results select{border:1px solid var(--line);min-height:46px;color:var(--green-900);font:inherit;background:#fff;border-radius:10px;padding:0 13px}.homework-analytics__table{border:1px solid var(--line);background:#fff;border-radius:14px;max-height:min(54dvh,560px);display:grid;overflow-y:auto}.homework-analytics__table>div{border-bottom:1px solid #16473b1a;grid-template-columns:minmax(180px,2fr) repeat(4,minmax(84px,.8fr));align-items:center;gap:12px;min-height:56px;padding:9px 16px;display:grid}.homework-analytics__table>div:last-child{border-bottom:0}.homework-analytics__table .homework-analytics__table-head{z-index:1;min-height:44px;color:var(--muted);background:#f2f0e8;font-size:12px;font-weight:850;position:sticky;top:0}.homework-analytics__table b{color:#1f745e}.homework-analytics__footer{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:auto;padding-top:12px;display:flex}.homework-analytics__footer button:last-child{color:#fff;background:var(--green-900)}@media (max-width:760px){.homework-analytics__table{overflow-x:auto}.homework-analytics__table>div{min-width:680px}}.homework-grading-page{background:#f3f0e7;min-height:calc(100dvh - 78px);padding:clamp(12px,1.5vw,24px);position:relative}.homework-grading-page--immersive{width:100vw;min-height:100dvh;max-height:100dvh;overflow:auto}.homework-grading-page:fullscreen{width:100vw;min-height:100dvh;max-height:100dvh;overflow:auto}.homework-grading-page--immersive:not(:fullscreen){z-index:120;position:fixed;inset:0}.homework-grading-workspace{grid-template-columns:minmax(500px,1fr) minmax(350px,430px);align-items:stretch;gap:clamp(14px,1.5vw,24px);max-width:1900px;min-height:calc(100dvh - 126px);margin:0 auto;display:grid}.homework-grading-board-panel{background:#fffdf7a8;border:1px solid #173f351a;border-radius:22px;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-width:0;min-height:0;padding:clamp(10px,1.1vw,18px);display:grid;box-shadow:0 16px 42px #19302812}.homework-grading-board-stage{place-items:center;min-height:0;display:grid;position:relative}.homework-grading-board-stage .board-shell{aspect-ratio:1;width:min(100%,100dvh - 210px);max-width:none;height:auto}.homework-grading-board-stage .go-board{aspect-ratio:1;width:100%;height:auto}.homework-grading-board-caption,.homework-grading-research-controls{border:1px solid var(--line);background:#ffffffc7;border-radius:11px;align-items:center;gap:10px;min-height:48px;padding:8px 12px;display:flex}.homework-grading-board-caption strong,.homework-grading-research-controls strong{color:var(--green-900);font-size:15px}.homework-grading-board-caption span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.homework-grading-research-controls strong{margin-right:auto}.homework-grading-research-controls button{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:34px;padding:0 11px;font-size:12px;font-weight:800}.homework-grading-sidebar{overscroll-behavior:contain;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:11px;min-width:0;min-height:0;max-height:calc(100dvh - 126px);padding-right:4px;display:grid;overflow-y:auto}.homework-grading-inline-replay{grid-row:1/-1;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-width:0;min-height:0;display:grid}.homework-grading-replay-controls{border:1px solid var(--line);background:#ffffffd1;border-radius:11px;align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex}.homework-grading-replay-controls strong{color:var(--green-900);margin-right:auto;font-size:13px}.homework-grading-replay-controls button{border:1px solid var(--line);min-height:34px;color:var(--green-900);cursor:pointer;background:#fff;border-radius:8px;padding:0 12px;font-size:12px;font-weight:800}.homework-grading-replay-controls button:disabled{cursor:default;opacity:.45}.homework-grading-replay-pass{gap:6px;display:flex}.homework-grading-inline-replay .homework-replay-load-state{width:min(100%,430px);min-height:150px}.homework-grading-page--immersive .homework-grading-workspace{min-height:calc(100dvh - 48px)}.homework-grading-page:fullscreen .homework-grading-workspace{min-height:calc(100dvh - 48px)}.homework-grading-page--immersive .homework-grading-sidebar{max-height:calc(100dvh - 48px)}.homework-grading-page:fullscreen .homework-grading-sidebar{max-height:calc(100dvh - 48px)}.homework-grading-page--immersive .homework-grading-board-panel{padding-block:10px}.homework-grading-page:fullscreen .homework-grading-board-panel{padding-block:10px}.homework-grading-page--immersive .homework-grading-board-stage .board-shell{width:min(100%,100dvh - 126px)}.homework-grading-page:fullscreen .homework-grading-board-stage .board-shell{width:min(100%,100dvh - 126px)}.homework-grading-card{background:#fffdf8;border:1px solid #173f3521;border-radius:17px;padding:15px;box-shadow:0 12px 28px #19302811}.homework-grading-card>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.homework-grading-card>header small{color:var(--gold);letter-spacing:.1em;font-size:10px;font-weight:850}.homework-grading-card>header h2,.homework-grading-card>header h3{color:var(--green-900);margin:2px 0 0;font-family:Georgia,Songti SC,serif}.homework-grading-card>header h2{font-size:28px}.homework-grading-card>header h3{font-size:20px}.homework-grading-card>header>span{color:#557169;background:#eef1eb;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.homework-grading-summary-body{grid-template-columns:minmax(0,1.35fr) minmax(112px,.65fr);align-items:center;gap:12px;margin-top:10px;display:grid}.homework-grading-summary-chart{grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;display:grid}.homework-grading-summary-chart svg{width:92px;height:92px;display:block}.homework-pie-rate{fill:var(--green-900);font-size:7px;font-weight:900}.homework-pie-label{fill:var(--muted);font-size:3.2px;font-weight:750}.homework-grading-summary-legend{gap:6px;display:grid}.homework-grading-summary-legend span{color:#49675f;align-items:center;gap:6px;font-size:11px;font-weight:750;display:flex}.homework-grading-summary-legend i{border-radius:50%;width:8px;height:8px}.homework-grading-average-time{border-left:1px solid var(--line);gap:5px;padding:14px 12px;display:grid}.homework-grading-average-time small,.homework-grading-average-time span{color:var(--muted);font-size:10px}.homework-grading-average-time strong{color:var(--green-900);font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px}.homework-grading-student-list{align-content:start;gap:4px;min-height:168px;margin-top:10px;display:grid}.homework-grading-student-list article{cursor:pointer;background:#f5f3eb;border:1px solid #0000;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:5px;min-height:39px;padding:3px 7px;display:grid}.homework-grading-student-list article.is-selected{background:#edf4ef;border-color:#174c3e4d}.homework-grading-student-identity{text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;min-width:0;padding:3px 5px;display:grid}.homework-grading-student-identity strong{color:var(--green-900);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.homework-grading-student-list article.is-correct .homework-grading-student-identity strong{color:#c43d35}.homework-grading-student-list article.is-correct .homework-grading-student-identity small,.homework-grading-student-list article.is-correct>span{color:#b23b34}.homework-grading-student-identity small{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.homework-grading-student-list article>button:not(.homework-grading-student-identity){border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;min-height:31px;padding:0 8px;font-size:11px;font-weight:800}.homework-grading-student-list article>button.is-active{border-color:var(--green-900);color:#fff;background:var(--green-900)}.homework-grading-student-list article>button.is-error{background:#a73d31;border-color:#a73d31}.homework-grading-student-list article>button:disabled{cursor:default;opacity:.52}.homework-grading-student-list article>span{color:#5d726b;text-align:right;white-space:nowrap;min-width:58px;font-size:10px;font-weight:800}.homework-grading-card--students>footer{justify-content:center;align-items:center;gap:9px;margin-top:9px;display:flex}.homework-grading-card--students{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid}.homework-grading-card--students>footer button{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:31px;padding:0 9px;font-size:10px;font-weight:750}.homework-grading-card--students>footer span{color:var(--muted);font-size:10px}.homework-grading-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.homework-grading-tools button,.homework-grading-question-nav button{min-height:42px;color:var(--green-900);cursor:pointer;background:#fffdf8;border:1px solid #173f352b;border-radius:9px;padding:7px 8px;font-size:11px;font-weight:850}.homework-grading-tools button:hover:not(:disabled),.homework-grading-question-nav button:hover:not(:disabled){background:#f2f6f3;border-color:#174c3e61}.homework-grading-tools button.is-active{border-color:var(--green-900);color:#fff;background:var(--green-900)}.homework-grading-tools button:disabled,.homework-grading-question-nav button:disabled{cursor:default;opacity:.45}.homework-grading-question-nav{border:1px solid var(--line);background:#fffdf8db;border-radius:12px;grid-template-columns:minmax(72px,1fr) auto minmax(72px,1fr) auto;align-items:center;gap:8px;min-height:52px;padding:6px;display:grid}.homework-grading-question-nav__back{min-width:104px}.homework-grading-question-nav strong{min-width:60px;color:var(--green-900);text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.homework-grading-error{color:#97372e;text-align:left;background:#fceeea;border:1px solid #a73d312e;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:11px;display:flex}.homework-grading-error span{min-width:0}.homework-grading-error button{color:#97372e;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #97372e47;border-radius:7px;min-height:32px;padding:0 10px;font-size:11px;font-weight:800}@media (max-height:760px) and (min-width:901px){.homework-grading-sidebar{gap:7px}.homework-grading-card{border-radius:14px;padding:10px 12px}.homework-grading-card>header h2{font-size:23px}.homework-grading-card>header h3{font-size:18px}.homework-grading-summary-body{gap:8px;margin-top:4px}.homework-grading-summary-chart{grid-template-columns:70px minmax(0,1fr);gap:7px}.homework-grading-summary-chart svg{width:70px;height:70px}.homework-grading-summary-legend{gap:2px}.homework-grading-summary-legend span{font-size:10px}.homework-grading-average-time{padding:8px}.homework-grading-average-time strong{font-size:18px}.homework-grading-student-list{gap:3px;min-height:0;margin-top:5px}.homework-grading-student-list article{gap:4px;min-height:32px;padding:2px 5px}.homework-grading-student-identity{align-items:center;gap:5px;padding:2px 3px;display:flex}.homework-grading-student-identity strong{font-size:12px}.homework-grading-student-identity small{white-space:nowrap;font-size:9px}.homework-grading-student-list article>button:not(.homework-grading-student-identity){min-height:26px;padding:0 6px;font-size:10px}.homework-grading-student-list article>span{min-width:50px;font-size:9px}.homework-grading-card--students>footer{margin-top:5px}.homework-grading-card--students>footer button{min-height:26px}.homework-grading-tools{gap:4px}.homework-grading-tools button,.homework-grading-question-nav button{min-height:34px;padding:4px;font-size:10px}.homework-grading-question-nav{min-height:40px}}@media (min-height:900px) and (min-width:901px){.homework-grading-card{padding:clamp(17px,1.7vh,22px)}.homework-grading-card>header h2{font-size:clamp(30px,3vh,36px)}.homework-grading-card>header h3{font-size:clamp(22px,2.2vh,27px)}.homework-grading-summary-body{margin-top:clamp(12px,1.5vh,18px)}.homework-grading-summary-chart{grid-template-columns:108px minmax(0,1fr)}.homework-grading-summary-chart svg{width:108px;height:108px}.homework-grading-average-time strong{font-size:26px}.homework-grading-student-list article{min-height:50px}.homework-grading-student-identity strong{font-size:15px}.homework-grading-tools button,.homework-grading-question-nav button{min-height:48px;font-size:12px}.homework-grading-question-nav{min-height:62px}}@media (max-width:1180px){.homework-grading-workspace{grid-template-columns:minmax(430px,1fr) minmax(330px,390px)}.homework-grading-summary-body{grid-template-columns:1fr}.homework-grading-average-time{border-top:1px solid var(--line);border-left:0}}@media (max-width:900px){.homework-grading-page,.homework-grading-page--immersive{max-height:none;overflow:auto}.homework-grading-page:fullscreen{max-height:none;overflow:auto}.homework-grading-workspace{grid-template-columns:1fr;min-height:0}.homework-grading-board-stage .board-shell{width:min(100%,100dvh - 150px)}.homework-grading-sidebar{max-height:none;overflow:visible}.homework-grading-summary-body{grid-template-columns:minmax(0,1.25fr) minmax(120px,.75fr)}.homework-grading-average-time{border-top:0;border-left:1px solid var(--line)}}@media (max-width:620px){.homework-review-overview__summary{grid-template-columns:1fr}.homework-review-overview__summary>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px;padding-right:0}.homework-review-overview__list>button{grid-template-columns:minmax(0,1fr) auto}.homework-review-overview__status{grid-area:1/2}.homework-review-overview__arrow{display:none}.homework-grading-page{padding:9px}.homework-grading-summary-body{grid-template-columns:1fr}.homework-grading-average-time{border-top:1px solid var(--line);border-left:0}.homework-grading-student-list article{grid-template-columns:minmax(0,1fr) auto auto}.homework-grading-student-list article>span{text-align:left;grid-column:1/-1}.homework-grading-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-grading-question-nav{grid-template-columns:1fr auto 1fr}.homework-grading-question-nav__back{grid-column:1/-1}}.role-dialog{--dialog-ink:#303a40;--dialog-muted:#626d73;--dialog-line:#d8dfe3;--dialog-paper:#fffdfb;--dialog-blue:#dfedf3;--dialog-apricot:#fcedd7;--dialog-brown:#705744;--green-950:#303a40;--green-900:#303a40;--green-800:#435c6b;--green-700:#526774;--ink:var(--dialog-ink);--muted:var(--dialog-muted);--line:var(--dialog-line);--paper:var(--dialog-paper);color:var(--dialog-ink)}.lobby-dialog-backdrop.role-dialog{-webkit-backdrop-filter:none;backdrop-filter:none;background:#232c3266;padding:20px}.role-dialog .lobby-dialog-card{border:1px solid var(--dialog-line);min-width:0;max-height:calc(100dvh - 40px);color:var(--dialog-ink);background:var(--dialog-paper);overscroll-behavior:contain;scrollbar-gutter:stable;border-radius:18px;align-content:start;padding:22px;box-shadow:0 18px 60px #232c322e}.role-dialog--student .lobby-dialog-card{background:#fffdf8;border-radius:22px}.role-dialog .lobby-dialog-card--homework{width:min(1120px,100%)}.role-dialog .lobby-dialog-heading{align-items:center;gap:12px;margin-bottom:18px}.role-dialog .lobby-dialog-heading>div{min-width:0}.role-dialog .lobby-dialog-heading h2{overflow-wrap:anywhere;margin:0;font-family:inherit;font-size:24px;font-weight:750;line-height:1.4}.role-dialog .dialog-close{width:44px;height:44px;color:var(--dialog-ink);background:#f1f4f5;flex:0 0 44px}.role-dialog :where(button,input,select,textarea):focus-visible{outline-offset:3px;outline:3px solid #526774}.role-dialog :where(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--dialog-line);min-width:0;max-width:100%;color:var(--dialog-ink);background:#fff}.role-dialog .lobby-dialog-card--accent :is(p,label),.role-dialog .homework-field>span,.role-dialog .homework-field>legend,.role-dialog .homework-mode-field legend{color:var(--dialog-ink)}.role-dialog .lobby-dialog-card--accent :is(input,select){border-color:var(--dialog-line);color:var(--dialog-ink);background:#fff}.role-dialog :is(.primary-button,.student-information__rect-button--primary,.homework-review-overview__footer button:last-child,.homework-analytics__footer button:last-child){color:var(--dialog-brown);background:var(--dialog-apricot);box-shadow:none;border:1px solid #dcc9ae}.role-dialog :is(.primary-button,.student-information__rect-button--primary,.homework-review-overview__footer button:last-child,.homework-analytics__footer button:last-child):hover:not(:disabled){color:#594432;background:#f3e1c7;border-color:#c8ac89}.role-dialog :is(.secondary-button,.history-actions button,.student-information__row-actions button){border-color:var(--dialog-line);min-height:40px;color:var(--dialog-ink);box-shadow:none;background:#fff}.role-dialog button:disabled{cursor:not-allowed}.role-dialog .segmented-control{background:#edf1f3;gap:4px}.role-dialog .segmented-control button{color:var(--dialog-muted)}.role-dialog .segmented-control .is-selected{color:var(--dialog-ink);background:var(--dialog-blue);box-shadow:inset 0 0 0 1px #9bb6c6}.role-dialog .dialog-choice-grid{gap:12px;margin-top:8px}.role-dialog .dialog-choice-grid>button{border:1px solid var(--dialog-line);min-height:100px;color:var(--dialog-ink);text-align:left;background:#f5f8fa;border-radius:12px;align-content:center;gap:8px;padding:18px;display:grid}.role-dialog .dialog-choice-grid>button:first-child{color:var(--dialog-ink);background:var(--dialog-blue);border-color:#bfd3df}.role-dialog .dialog-choice-grid>button:hover:not(:disabled){border-color:#8da7b7}.role-dialog .dialog-choice-grid strong{font-family:inherit;font-size:18px}.role-dialog .dialog-choice-grid small{color:var(--dialog-muted);opacity:1;line-height:1.5}.role-dialog .homework-review-overview__summary{border:0;border-bottom:1px solid var(--dialog-line);background:0 0;border-radius:0;padding:0 0 12px}.role-dialog .homework-review-overview__summary strong{font-family:inherit;font-size:22px}.role-dialog :is(.homework-review-overview__identity strong,.homework-analytics__homework-list strong){white-space:normal;overflow-wrap:anywhere;font-family:inherit;font-size:17px}.role-dialog :is(.homework-review-overview__identity small,.homework-analytics__homework-list small){color:var(--dialog-muted);letter-spacing:0;font-size:13px}.role-dialog :is(.homework-review-overview__list>button,.homework-analytics__homework-list>button){border-color:var(--dialog-line);min-width:0;min-height:82px;box-shadow:none;background:#fff;border-radius:10px;transform:none}.role-dialog :is(.homework-review-overview__list>button,.homework-analytics__homework-list>button):hover{background:#f3f8fa;border-color:#a9bdc8}.role-dialog .homework-review-overview__status{color:#705744;background:#fcedd7;border-color:#dcc9ae;border-radius:8px}.role-dialog .homework-review-overview__status.is-reviewed{color:#355f50;background:#e8f1ea;border-color:#bbd3c5}.role-dialog .homework-review-overview__arrow{color:#526774}.role-dialog .homework-analytics{min-height:0}.role-dialog .homework-analytics__table-head{background:#edf2f5}.role-dialog .my-homework-list>button{border-color:var(--dialog-line);min-width:0;color:var(--dialog-ink);background:#fff;border-radius:14px;padding:18px}.role-dialog .my-homework-list>button>div{overflow-wrap:anywhere;min-width:0}.role-dialog .my-homework-list>button>span{color:var(--dialog-brown);background:var(--dialog-apricot);white-space:nowrap;border:1px solid #dcc9ae;border-radius:9px;flex-shrink:0;padding:10px 14px}.role-dialog .my-homework-list>button[data-status=IN_PROGRESS]{background:#eff7fa;border-color:#b5ccd9}.role-dialog .my-homework-list>button[data-status=SUBMITTED]>span{color:#665774;background:#f4eef8;border-color:#d9d0e3}.role-dialog .my-homework-list>button[data-status=REVIEWED]>span{color:#355f50;background:#e8f1ea;border-color:#bbd3c5}.role-dialog .student-information__toolbar{background:#f0f5f8;border-radius:10px;padding:14px}.role-dialog .student-information__summary{padding:12px 16px}.role-dialog .student-information__summary h3{font-family:inherit;font-size:18px}.role-dialog .student-information__table-wrap{min-height:0}.role-dialog .student-information__table :is(th,td){overflow-wrap:anywhere;padding:10px 12px}.role-dialog .student-information__table th{background:#f1f4f6}.role-dialog .student-information__row-actions{justify-content:flex-start;gap:6px}.role-dialog .student-information__row-actions button:last-child{background:var(--dialog-blue);border-color:#bfd3df}.role-dialog .homework-compose{gap:16px}.role-dialog :is(.homework-field,.homework-mode-field){border-color:var(--dialog-line);background:#f7f9fa;border-radius:10px;min-width:0;margin:0;padding:14px}.role-dialog .homework-field>legend{padding:0 6px;font-size:15px;font-weight:800}.role-dialog .homework-source-button{color:#435c6b;border-color:#a9bdc8;min-height:60px}.role-dialog :is(.homework-choice-row button,.homework-student-list button,.homework-mode-field>button){border-color:var(--dialog-line);color:var(--dialog-ink);background:#fff}.role-dialog :is(.homework-choice-row button,.homework-student-list button,.homework-mode-field>button).is-selected{color:var(--dialog-ink);background:var(--dialog-blue);border-color:#8da7b7;box-shadow:inset 0 0 0 1px #8da7b7}.role-dialog :is(.homework-mode-field button small,.homework-field small){color:var(--dialog-muted)}.role-dialog .lobby-dialog-card--question-bank{width:min(1400px,100%);height:calc(100dvh - 40px);min-height:0}.role-dialog .lobby-dialog-card--question-bank>.lobby-dialog-heading{margin-bottom:10px}.role-dialog .question-bank-tabs{background:#edf2f5}.role-dialog .question-bank-tabs button.is-active{box-shadow:none;background:#fff;border-color:#a9bdc8}.role-dialog .question-tree-point.is-active{color:var(--dialog-ink);background:var(--dialog-blue);box-shadow:inset 3px 0 #526774}.role-dialog .question-card{box-shadow:none;background:#fff}.role-dialog .question-card-preview{width:min(100%,clamp(140px,24dvh,230px))}.role-dialog .question-card>button{color:#a73d31;background:#fff8f6;border-color:#e5c9c4;min-height:36px}.role-dialog .problem-picker-card>button{color:var(--dialog-ink);border-color:var(--dialog-line);background:#f7fafb}.role-dialog .problem-picker-card>button.is-selected{color:#314854;background:var(--dialog-blue);border-color:#8da7b7}.role-dialog .question-row-actions button:nth-child(2){color:#a73d31;background:#fff8f6;border-color:#e5c9c4}.role-dialog .question-section-tabs{grid-template-columns:repeat(8,minmax(0,1fr))}@media (max-width:1050px){.role-dialog .student-information__toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto}.role-dialog .student-information__toolbar-spacer{display:none}.role-dialog .question-bank-tabs{grid-row:1;position:static;transform:none}.role-dialog .question-bank-manager{grid-template-rows:auto auto minmax(0,1fr)}.role-dialog .question-bank-messages{grid-row:2}.role-dialog :is(.question-knowledge-view,.question-library-view){grid-row:3}}@media (max-width:720px){.lobby-dialog-backdrop.role-dialog{padding:10px}.role-dialog .lobby-dialog-card{border-radius:16px;max-height:calc(100dvh - 20px);padding:16px}.role-dialog .lobby-dialog-heading h2{font-size:21px}.role-dialog .lobby-dialog-heading{margin-bottom:14px}.role-dialog .dialog-choice-grid{grid-template-columns:1fr}.role-dialog .student-information__toolbar{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.role-dialog .student-information__toolbar :is(label,.student-information__rect-button--primary){grid-column:1/-1}.role-dialog .student-information__row-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.role-dialog .student-information__row-actions button{padding:8px}.role-dialog :is(.secondary-button,.primary-button,.student-information__row-actions button,.question-tree-point,.question-card>button,.question-library-footer button,.homework-choice-row button,.homework-student-list button){min-height:44px}.role-dialog .homework-review-overview__summary{grid-template-columns:1fr;gap:8px}.role-dialog .homework-review-overview__summary>div{border:0}.role-dialog .homework-review-overview__list>button{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px}.role-dialog .homework-review-overview__arrow{display:none}.role-dialog .my-homework-list>button{gap:14px;display:grid}.role-dialog .my-homework-list>button>span{justify-self:start}.role-dialog .homework-mode-field{grid-template-columns:1fr}.role-dialog :is(.homework-form-actions,.homework-analytics__detail>header){flex-wrap:wrap}.role-dialog .homework-form-actions button{flex:1;min-width:0}.role-dialog .lobby-dialog-card--question-bank{height:auto;overflow-y:auto}.role-dialog .question-bank-manager{min-height:0}.role-dialog .question-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.role-dialog .question-row-actions>button{min-height:44px}.role-dialog .question-row-actions>button:last-child:nth-child(3){grid-column:1/-1}.role-dialog .question-section-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.role-dialog .question-library-content{padding:10px}.role-dialog .question-card-preview{width:min(100%,260px)}.role-dialog .question-library-footer :is(nav,div){flex-wrap:wrap}.role-dialog .question-library-footer nav{justify-content:space-between}}.board-workspace{--ink:#303a40;--muted:#626d73;--green-950:#293b46;--green-900:#354d5c;--green-800:#526774;--green-700:#526774;--line:#dce2e5;--cream:#f8f7f5;--paper:#fffdfa;--workspace-blue:#dfedf3;--workspace-apricot:#fcedd7;--workspace-aqua:#e8f1ef;--workspace-lilac:#f4eef8;color:var(--ink);background:var(--cream);font-size:14px}.app-frame:has(.board-workspace){background:#f8f7f5}.app-frame:has(.board-workspace)>.topbar{color:#303a40;min-height:64px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffdfb;border-bottom:1px solid #dce2e5;padding-block:8px}.app-frame:has(.board-workspace)>.topbar :is(.brand,.text-button){color:#303a40}.app-frame:has(.board-workspace)>.topbar :is(.brand small,.account-chip small){color:#626d73}.app-frame:has(.board-workspace)>.topbar .account-avatar{color:#354d5c;background:#dfedf3;border-color:#cadce5}.board-workspace button:not(.board-hit-target){cursor:pointer;font-family:inherit}.board-workspace :is(button,input,select):focus-visible{outline-offset:3px;outline:3px solid #7b9dae}.board-workspace button:disabled{cursor:default}.board-workspace :is(.primary-button,.homework-submit-button){color:#705744;background:var(--workspace-apricot);box-shadow:none;border:1px solid #dcc9ae}.board-workspace :is(.primary-button,.homework-submit-button):not(:disabled):hover{color:#594432;background:#f3e1c7;transform:none}.board-workspace :is(.secondary-button,.back-button,.fullscreen-button,.homework-answer-back){border:1px solid var(--line);min-height:40px;color:var(--green-900);background:var(--paper);box-shadow:none;border-radius:10px;font-size:13px}.board-workspace :is(h1,h2,h3){color:var(--ink);letter-spacing:0;overflow-wrap:anywhere}.board-workspace.fox-kifu-page{width:calc(100% - 24px);max-width:1920px;height:calc(100dvh - 64px);padding:12px 0}.board-workspace .fox-kifu-workspace{grid-template-columns:88px minmax(0,1fr) clamp(310px,28vw,400px);gap:12px}.board-workspace .fox-kifu-board-panel{grid-template-rows:minmax(0,1fr) auto;gap:10px}.board-workspace .fox-kifu-board-toolbar{border:1px solid var(--line);background:var(--paper);box-shadow:none;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;padding:10px;display:grid}.board-workspace .fox-kifu-move-status{min-width:88px}.board-workspace .fox-kifu-move-status strong{font-variant-numeric:tabular-nums;font-size:15px}.board-workspace .fox-kifu-move-status small{font-size:12px}.board-workspace .fox-kifu-playback-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.board-workspace .fox-kifu-tool-buttons{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;gap:6px;padding-top:8px;display:flex}.board-workspace :is(.fox-kifu-playback-buttons,.fox-kifu-tool-buttons) button{border:1px solid var(--line);min-width:0;min-height:40px;color:var(--green-900);white-space:nowrap;background:#f5f8fa;border-radius:8px;padding:7px 10px;font-size:13px}.board-workspace .fox-kifu-tool-buttons button{background:var(--paper);flex:1 0 auto}.board-workspace :is(.fox-kifu-tool-buttons,.homework-grading-tools) button.is-active{color:#354d5c;background:var(--workspace-blue);border-color:#aac4d1;box-shadow:inset 0 -2px #7b9dae}.board-workspace .fox-kifu-ai-active-state{color:#426963;background:var(--workspace-aqua);border-radius:6px;align-self:center;padding:4px 7px;font-size:12px}.board-workspace :is(.fox-kifu-player-badge,.fox-kifu-vertical-progress){border:1px solid var(--line);background:var(--paper);box-shadow:none;border-radius:12px}.board-workspace .fox-kifu-player-badge strong{font-size:14px}.board-workspace .fox-kifu-player-badge small{font-size:12px}.board-workspace .fox-kifu-slider-fill,.board-workspace .fox-kifu-slider-thumb{background:#789baa}.board-workspace .fox-kifu-data-title{gap:12px;min-height:42px}.board-workspace .fox-kifu-data-title h1{font-size:26px}.board-workspace :is(.fox-kifu-panel-card,.homework-grading-card){border:1px solid var(--line);background:var(--paper);box-shadow:none;border-radius:12px;padding:16px}.board-workspace .fox-kifu-section-heading strong{font-family:inherit;font-size:18px;font-weight:750}.board-workspace .fox-kifu-section-heading small{display:none}.board-workspace .fox-kifu-section-heading em{color:#526774;background:#edf3f6;font-size:12px}.board-workspace .fox-kifu-search-card label{color:var(--muted);font-size:13px}.board-workspace .fox-kifu-search-card input{min-height:42px;font-size:14px}.board-workspace :is(.fox-kifu-list-head,.fox-kifu-record-list>button){grid-template-columns:78px repeat(2,minmax(0,1fr)) 62px;font-size:12px}.board-workspace .fox-kifu-record-list>button{min-height:50px}.board-workspace .fox-kifu-record-list>button.is-selected{background:var(--workspace-blue);box-shadow:inset 3px 0 #789baa}.board-workspace .game-review-current-time{background:var(--workspace-blue)}.board-workspace .game-review-time-value{font-size:34px}.board-workspace .game-review-time-totals article{background:#f1f4f5}.board-workspace :is(.game-review-full-total,.game-review-time-totals small){font-size:12px}.board-workspace .game-review-recent-card{background:var(--workspace-lilac)}.board-workspace .game-review-report-button{white-space:nowrap;min-height:38px;font-size:12px}.board-workspace:is(.game-history-review-page--sidebar-tools,.fox-kifu-page--sidebar-tools) .fox-kifu-board-panel{grid-template-rows:minmax(0,1fr);gap:0}.board-workspace .game-review-sidebar-controls{flex-shrink:0;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:auto}.board-workspace .game-review-sidebar-controls .fox-kifu-move-status{justify-content:space-between;align-items:baseline;width:100%;min-width:0;display:flex}.board-workspace .game-review-sidebar-controls .fox-kifu-playback-buttons{width:100%}.board-workspace .game-review-sidebar-controls .fox-kifu-tool-buttons{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.board-workspace .game-review-sidebar-controls :is(.fox-kifu-playback-buttons,.fox-kifu-tool-buttons) button{min-height:38px;padding-inline:5px;font-size:12px}.board-workspace .game-review-sidebar-controls .fox-kifu-tool-buttons button,.board-workspace .game-review-sidebar-controls .fox-kifu-ai-error{width:100%}.board-workspace.fox-kifu-page--sidebar-tools .fox-kifu-data-panel{position:relative;overflow:visible}.board-workspace.fox-kifu-page--sidebar-tools .fox-kifu-statistics-card{background:var(--workspace-lilac);overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.board-workspace .fox-kifu-sidebar-controls{margin-top:0;box-shadow:0 -8px 24px #303a4014}.board-workspace .fox-kifu-stat-range{color:var(--muted);margin:-2px 0 12px;font-size:11px}.board-workspace .fox-kifu-stat-section-heading{border-top:1px solid #dfe1e5;justify-content:space-between;align-items:center;gap:10px;margin:13px 0 8px;padding-top:11px;display:flex}.board-workspace .fox-kifu-stat-section-heading strong{font-size:13px}.board-workspace .fox-kifu-stat-section-heading span{color:var(--muted);font-size:10px}.board-workspace .fox-kifu-statistics-card .fox-kifu-result-row{grid-template-columns:34px minmax(0,1fr) auto}.board-workspace .fox-kifu-statistics-card .fox-kifu-result-row>strong{min-width:74px;color:var(--green-800);text-align:right;font-size:10px}.board-workspace .fox-kifu-statistics-card .fox-kifu-duration-grid>span{padding-right:32px;position:relative}.board-workspace .fox-kifu-statistics-card .fox-kifu-duration-grid em{color:var(--muted);font-size:9px;font-style:normal;position:absolute;bottom:7px;right:7px}.board-workspace .fox-kifu-statistics-card .fox-kifu-color-rates>span{min-height:82px}.board-workspace .fox-kifu-statistics-card .fox-kifu-color-rates em{color:var(--muted);margin-top:2px;font-size:9px;font-style:normal}.workspace-tool-dock{flex-shrink:0;gap:10px;min-width:0;display:grid}.workspace-tool-dock:empty{display:none}.board-workspace .workspace-tool-dock .fox-kifu-search-panel{z-index:30;width:min(400px,100vw - 32px);max-height:calc(100dvh - 76px);color:var(--ink);background:var(--paper);border:1px solid #cbdbe3;border-radius:12px;gap:12px;padding:12px;display:grid;position:absolute;top:52px;right:2px;overflow:auto;box-shadow:0 10px 28px #303a4029}.board-workspace .workspace-tool-dock .fox-kifu-search-panel[style]{width:min(420px,100vw - 32px)}.board-workspace .fox-kifu-search-panel>header{border-bottom:1px solid var(--line);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:42px;padding-bottom:9px;display:grid}.board-workspace .fox-kifu-search-panel>header:active{cursor:grabbing}.board-workspace .fox-kifu-search-panel>header strong{grid-area:1/1;font-size:17px}.board-workspace .fox-kifu-search-panel>header span{color:var(--muted);grid-area:2/1;font-size:10px}.board-workspace .fox-kifu-search-panel>header button{border:1px solid var(--line);min-height:34px;color:var(--green-900);background:var(--paper);border-radius:8px;grid-row:1/span 2;justify-self:end;width:auto;padding:5px 9px;font-size:11px}.board-workspace .fox-kifu-search-panel>header button:first-of-type{grid-column:2}.board-workspace .fox-kifu-search-panel>header button:last-of-type{grid-column:3}.board-workspace .fox-kifu-search-panel>form,.board-workspace .fox-kifu-search-panel>form>label,.board-workspace .fox-kifu-search-panel .fox-kifu-date-row>label{gap:6px;display:grid}.board-workspace .fox-kifu-search-panel>form{gap:9px}.board-workspace .fox-kifu-search-panel label{color:var(--green-800);font-size:11px;font-weight:700}.board-workspace .fox-kifu-search-panel :is(input,.primary-button){width:100%;min-width:0;min-height:40px}.board-workspace .fox-kifu-search-results{border-top:1px solid var(--line);padding-top:11px}.board-workspace .workspace-tool-dock :is(.ai-candidate-panel,.review-annotation-panel){width:100%;max-width:calc(100vw - 32px);max-height:calc(100dvh - 16px);color:var(--ink);background:var(--paper);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid #cbdbe3;position:relative;inset:auto;overflow:auto}.board-workspace .workspace-tool-dock :is(.ai-candidate-panel,.review-annotation-panel)[style]{width:min(360px,100vw - 32px);box-shadow:0 10px 28px #303a4029}.board-workspace .ai-candidate-panel>header{background:var(--workspace-blue);min-height:52px;padding:9px 12px}.board-workspace .ai-candidate-panel>header strong{font-family:inherit;font-size:16px}.board-workspace .ai-candidate-panel>header :is(small,em){color:#526774;font-size:11px}.board-workspace .ai-candidate-table-body{max-height:250px;overflow-y:auto}.board-workspace .ai-candidate-table-body>button{min-height:40px;font-size:13px}.board-workspace .ai-candidate-table-head{font-size:12px}.board-workspace .review-annotation-panel{padding:12px}.board-workspace .review-annotation-panel>header{grid-template-columns:1fr auto auto;font-size:16px}.board-workspace .review-annotation-panel>header span{display:none}.board-workspace :is(.review-annotation-panel button,.ai-candidate-panel>header button){border:1px solid var(--line);background:var(--paper);min-height:36px;color:var(--green-900);border-radius:8px;padding:5px 9px}.board-workspace .review-annotation-tools button.is-active{color:#695576;background:var(--workspace-lilac);border-color:#bdadc9}.board-workspace .review-color-button.is-red{color:#a62c26}.board-workspace .review-color-button.is-blue{color:#1558b1}.board-workspace .review-color-button.is-active{outline-offset:-3px;outline:2px solid}.board-workspace .review-color-button.is-red.is-active{color:#963b32;background:#f9e6e1}.board-workspace .review-color-button.is-blue.is-active{color:#275886;background:#e3edf8}.board-workspace :is(.review-annotation-options,.review-annotation-width){font-size:12px}.board-workspace.homework-grading-page,.board-workspace.homework-answer-page{min-height:calc(100dvh - 64px);padding:12px}.board-workspace .homework-grading-workspace{grid-template-columns:minmax(0,1fr) clamp(350px,32vw,450px);gap:16px;min-height:calc(100dvh - 88px)}.board-workspace .homework-grading-board-panel{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.board-workspace .homework-grading-board-stage .board-shell{aspect-ratio:1;width:min(100%,100dvh - 154px);height:auto}.board-workspace .homework-grading-sidebar{grid-template-rows:none;grid-auto-rows:max-content;align-content:start;gap:12px;max-height:calc(100dvh - 88px)}.board-workspace .homework-grading-card--summary{background:#edf4f7}.board-workspace .homework-grading-card>header small{color:var(--muted);letter-spacing:0;font-size:12px}.board-workspace .homework-grading-card>header :is(h2,h3){font-family:inherit}.board-workspace .homework-grading-summary-body{grid-template-columns:minmax(0,1fr) 116px;gap:8px}.board-workspace .homework-grading-average-time{border-top:0;border-left:1px solid var(--line);padding:10px}.board-workspace :is(.homework-grading-average-time small,.homework-grading-summary-legend span){color:var(--muted);font-size:12px}.board-workspace .homework-grading-student-list{gap:6px;min-height:0}.board-workspace .homework-grading-student-list article{background:#f6f7f8;min-height:62px;padding:6px}.board-workspace .homework-grading-student-list article.is-selected{background:#eaf2f6;border-color:#adc6d2}.board-workspace .homework-grading-student-identity strong{font-size:14px}.board-workspace .homework-grading-student-identity small,.board-workspace .homework-grading-student-list article>span{font-size:12px}.board-workspace .homework-grading-student-list article>button:not(.homework-grading-student-identity){min-height:36px;font-size:12px}.board-workspace .homework-grading-student-list article>button.is-active{color:#426963;opacity:1;background:#e2efea;border-color:#9dbdb1}.board-workspace .homework-grading-student-list article>button.is-error{color:#9d403b;background:#fae9e5;border-color:#d7b1a9}.board-workspace .homework-grading-tools button{border:1px solid var(--line);min-height:44px;color:var(--green-900);background:var(--paper);border-radius:10px;font-size:13px}.board-workspace .homework-grading-tools button:nth-child(-n+2){background:var(--workspace-lilac)}.board-workspace :is(.homework-grading-research-controls,.homework-grading-replay-controls){min-height:48px;box-shadow:none;flex-wrap:wrap}.board-workspace :is(.homework-grading-research-controls,.homework-grading-replay-controls) button{min-height:38px}.board-workspace.homework-answer-page{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;padding-top:12px}.board-workspace .homework-answer-back{align-self:flex-start;padding:8px 14px;position:static}.board-workspace .homework-answer-board .board-shell{aspect-ratio:1;width:min(100%,100dvh - 88px);height:auto}.board-workspace .homework-answer-sidebar{border-color:var(--line);box-shadow:none;background:var(--paper);border-radius:16px;gap:14px;padding:16px}.board-workspace .homework-answer-sidebar header h1{color:var(--ink);font-family:inherit;font-size:24px;line-height:1.35}.board-workspace .homework-answer-sidebar .eyebrow{color:var(--muted);margin:0 0 6px}.board-workspace .homework-problem-info{background:var(--workspace-lilac);overflow-wrap:anywhere;padding:12px}.board-workspace .homework-problem-info dt{color:var(--muted)}.board-workspace .homework-countdown{background:var(--workspace-blue);color:#354d5c;padding:12px}.board-workspace .homework-countdown strong{font-size:52px}.board-workspace .homework-countdown.is-urgent{color:#9b3e32;background:#fae5dc}.board-workspace :is(.homework-answer-view-actions button,.homework-answer-progress button){border:1px solid var(--line);min-height:44px;color:var(--green-900);background:#f6f8f9;border-radius:10px}.board-workspace.game-page{width:calc(100% - 24px);max-width:1920px;height:calc(100dvh - 64px);padding:12px 0}.board-workspace .game-heading{min-height:58px;margin-bottom:10px}.board-workspace .game-heading h1{font-size:24px}.board-workspace .game-heading-main{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 14px;display:grid}.board-workspace .game-heading-main>.back-button{grid-row:span 2;margin:0;padding:8px 12px}.board-workspace .game-heading-main h1,.board-workspace .game-heading-main p{margin:0}.board-workspace :is(.game-prompt-card,.disconnect-card,.nigiri-overlay,.scoring-result-dialog) h2{color:inherit}.board-workspace .game-heading p{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.board-workspace .game-layout{grid-template-columns:minmax(0,1fr) 340px;gap:16px}.board-workspace .board-column>.board-shell{aspect-ratio:1;width:min(100%,100dvh - 160px);height:auto}.board-workspace :is(.player-panel,.connection-card,.action-card,.move-summary,.result-card){border:1px solid var(--line);box-shadow:none;background:var(--paper);border-radius:12px}.board-workspace .result-card{color:var(--ink);background:var(--workspace-apricot)}.board-workspace .result-card>strong{color:#705744}.board-workspace .result-card p{color:var(--muted)}.board-workspace .player-bar{color:var(--ink);background:#f2f5f7}.board-workspace .player-bar--active{background:var(--workspace-blue);box-shadow:inset 3px 0 #789baa}.board-workspace .player-panel .player-bar{gap:6px 9px;min-height:84px;padding:10px}.board-workspace .player-panel .player-name strong{white-space:normal;overflow-wrap:anywhere;font-size:16px}.board-workspace .player-panel .clock{color:#526774;min-width:94px;font-size:26px}.board-workspace .clock{font-variant-numeric:tabular-nums}.board-workspace.fox-kifu-page--immersive,.board-workspace.game-page--immersive{width:100%;height:100dvh;padding:10px}.board-workspace.fox-kifu-page:fullscreen{width:100%;height:100dvh;padding:10px}.board-workspace.game-page:fullscreen{width:100%;height:100dvh;padding:10px}.board-workspace.homework-answer-page--immersive,.board-workspace.homework-grading-page--immersive{min-height:100dvh}.board-workspace.homework-answer-page--immersive .homework-answer-board .board-shell,.board-workspace.game-page--immersive .board-column>.board-shell{width:min(100%,100dvh - 24px)}.board-workspace.game-page:fullscreen .board-column>.board-shell{width:min(100%,100dvh - 24px)}.board-workspace.homework-grading-page--immersive .homework-grading-board-stage .board-shell{width:min(100%,100dvh - 90px)}.board-workspace.homework-grading-page--immersive .homework-grading-sidebar{max-height:calc(100dvh - 24px)}@media (max-width:1050px){.board-workspace .fox-kifu-workspace{grid-template-columns:70px minmax(0,1fr) 300px;gap:8px}}@media (max-width:900px){.board-workspace .game-review-ai-backdrop{z-index:100;position:fixed}.board-workspace.fox-kifu-page,.board-workspace.game-page{height:auto;min-height:calc(100dvh - 64px);overflow:visible}.board-workspace.fox-kifu-page--immersive,.board-workspace.game-page--immersive{height:100dvh;overflow-y:auto}.board-workspace.fox-kifu-page:fullscreen{height:100dvh;overflow-y:auto}.board-workspace.game-page:fullscreen{height:100dvh;overflow-y:auto}.board-workspace .fox-kifu-workspace{flex:none;grid-template:"rail""board""data"/1fr;gap:10px;display:grid}.board-workspace .fox-kifu-move-rail{grid-template-columns:auto 1fr 1fr;align-items:stretch;gap:8px;display:grid}.board-workspace .fox-kifu-player-badge{text-align:left;grid-template-columns:28px minmax(0,1fr);gap:0 8px;padding:6px 8px;display:grid}.board-workspace .fox-kifu-player-badge .stone-preview{grid-row:span 2;width:26px;height:26px;margin:0}.board-workspace .fox-kifu-player-badge small{margin:0}.board-workspace .fox-kifu-vertical-progress{display:none}.board-workspace .workspace-mobile-progress{color:var(--muted);grid-column:1/-1;align-items:center;gap:12px;font-size:13px;display:flex}.board-workspace .workspace-mobile-progress input{accent-color:#789baa;width:100%;min-width:0;min-height:32px}.board-workspace .workspace-mobile-progress span{white-space:nowrap;font-variant-numeric:tabular-nums}.board-workspace .fox-kifu-board-stage{aspect-ratio:1;width:100%;height:auto}.board-workspace .fox-kifu-board-stage .board-shell{width:100%;height:auto;max-height:none}.board-workspace .fox-kifu-data-panel{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;display:grid;overflow:visible}.board-workspace.fox-kifu-page--sidebar-tools .fox-kifu-data-panel{overflow:visible}.board-workspace.fox-kifu-page--sidebar-tools .fox-kifu-statistics-card{flex:none;grid-column:1/-1;overflow:visible}.board-workspace .fox-kifu-data-panel>:is(header,.workspace-tool-dock,.game-review-sidebar-controls){grid-column:1/-1}.board-workspace .game-review-sidebar-controls{margin-top:0}.board-workspace .workspace-tool-dock{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.board-workspace .workspace-tool-dock .fox-kifu-search-panel,.board-workspace .workspace-tool-dock .fox-kifu-search-panel[style]{width:100%;max-height:none;position:relative!important;inset:auto!important}.board-workspace.homework-answer-page,.board-workspace .homework-grading-workspace{grid-template-columns:1fr}.board-workspace :is(.homework-grading-sidebar,.game-sidebar){max-height:none;overflow:visible}.board-workspace :is(.homework-grading-board-stage,.homework-answer-board) .board-shell,.board-workspace .board-column>.board-shell{aspect-ratio:1;width:100%;height:auto}.board-workspace .homework-answer-sidebar{display:contents}.board-workspace .homework-answer-sidebar>:is(header,.homework-answer-progress,.homework-submit-button,.homework-answer-back,.message,.homework-timeout-note){grid-column:1/-1}.board-workspace .homework-countdown{grid-area:1/2;margin:0}.board-workspace .homework-answer-view-actions{grid-area:3/1/auto/-1}.board-workspace.homework-answer-page{grid-template-columns:minmax(0,1fr) minmax(130px,.7fr);gap:12px}.board-workspace .homework-answer-sidebar>header{grid-area:1/1;align-self:center}.board-workspace .homework-answer-sidebar>header h1{font-size:20px}.board-workspace .homework-answer-board{grid-area:2/1/auto/-1}.board-workspace .homework-answer-board .board-shell{width:min(100%,100dvh - 340px)}.board-workspace .homework-answer-progress{grid-row:4}.board-workspace .homework-submit-button{grid-row:5}.board-workspace .homework-problem-info{grid-column:1/-1}.board-workspace .game-layout{grid-template-rows:auto auto;grid-template-columns:1fr}.board-workspace .game-sidebar{display:contents}.board-workspace .game-sidebar .player-panel{grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.board-workspace .game-sidebar .player-bar{grid-template-columns:26px minmax(0,1fr);margin:0;padding:8px}.board-workspace .player-panel .player-stone{width:26px;height:26px}.board-workspace .player-panel .clock{text-align:center;grid-area:3/1/auto/-1}.board-workspace .game-heading-main{gap:3px 8px}.board-workspace .game-heading-actions{justify-content:flex-end;width:100%}.board-workspace .game-heading{flex-wrap:wrap;align-items:flex-start}.board-workspace .game-heading p{display:block}}.workspace-mobile-progress{display:none}@media (max-width:600px){.board-workspace.fox-kifu-page,.board-workspace.game-page{width:calc(100% - 16px)}.board-workspace .fox-kifu-move-rail{grid-template-columns:auto 1fr 1fr;gap:6px}.board-workspace .fox-kifu-back{padding:6px 8px;font-size:12px}.board-workspace .fox-kifu-player-badge{grid-template-columns:20px minmax(0,1fr);gap:0 6px;padding:6px}.board-workspace .fox-kifu-player-badge .stone-preview{width:20px;height:20px}.board-workspace .fox-kifu-player-badge strong{font-size:12px}.board-workspace .fox-kifu-player-badge small{font-size:11px}.board-workspace .fox-kifu-board-toolbar{grid-template-columns:1fr;padding:8px}.board-workspace .fox-kifu-playback-buttons button,.board-workspace .fox-kifu-tool-buttons button{min-height:44px;font-size:13px}.board-workspace .fox-kifu-tool-buttons{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.board-workspace .fox-kifu-data-panel{grid-template-columns:1fr}.board-workspace :is(.fox-kifu-panel-card,.homework-grading-card){padding:14px}.board-workspace .homework-grading-student-list article{grid-template-columns:minmax(0,1fr) auto auto}.board-workspace .homework-grading-student-list article>span{text-align:left;grid-column:1/-1}.board-workspace .homework-grading-summary-body{grid-template-columns:minmax(0,1fr) 100px}.board-workspace .homework-grading-summary-chart{grid-template-columns:76px minmax(0,1fr);gap:6px}.board-workspace .homework-grading-summary-chart svg{width:76px;height:76px}.board-workspace .homework-answer-sidebar{padding:14px}.board-workspace .homework-countdown strong{font-size:40px}.board-workspace .homework-complete-backdrop>div{width:calc(100% - 32px);min-width:0;padding:28px 16px}.board-workspace .homework-complete-backdrop strong{font-size:30px}}@media (prefers-reduced-motion:reduce){.board-workspace *,.board-workspace :before,.board-workspace :after{scroll-behavior:auto;transition-duration:0s}}.board-workspace.student-play-workspace{--student-side-width:clamp(176px, 18vw, 252px);--student-stage-height:calc(100dvh - 88px);--student-gap:16px}.board-workspace.student-play-workspace.homework-answer-page,.board-workspace.student-play-workspace.game-page{background:var(--cream);width:100%;max-width:none;height:calc(100dvh - 64px);min-height:0;margin:0;padding:12px;overflow:hidden}.board-workspace.student-play-workspace.homework-answer-page,.student-play-workspace.game-page .game-layout{grid-template-columns:var(--student-side-width) minmax(0, 1fr) var(--student-side-width);align-items:stretch;gap:var(--student-gap);grid-template-rows:minmax(0,1fr);display:grid}.student-play-workspace :is(.homework-answer-board,.board-column){place-items:center;min-width:0;height:100%;min-height:0;display:grid}.board-workspace.student-play-workspace :is(.homework-answer-board,.board-column)>.board-shell{width:min(100%, var(--student-stage-height));aspect-ratio:1;height:auto;max-height:none}.student-play-workspace :is(.student-study-context,.student-game-context,.game-sidebar,.homework-answer-sidebar){overscroll-behavior:contain;scrollbar-width:thin;min-width:0;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;gap:14px;padding:0;display:flex;overflow-y:auto}.student-play-workspace :is(.student-study-context,.student-game-context,.game-sidebar,.homework-answer-sidebar)>*{flex-shrink:0}.student-play-workspace :is(.student-study-heading,.homework-problem-info,.student-answer-tools,.game-heading){border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:18px}.student-play-workspace .student-study-heading{background:#edf4f5;border-color:#d3e2e5}.student-play-workspace .student-study-heading h1{margin:8px 0 20px;font-family:inherit;font-size:22px;line-height:1.5}.student-play-workspace .eyebrow,.student-section-label{color:var(--muted);letter-spacing:.08em;margin:0 0 8px;font-size:12px;display:block}.student-question-count{color:var(--muted);font-size:13px;display:block}.student-question-count strong{color:var(--green-900);font-size:24px}.student-study-heading progress{accent-color:#789baa;border:0;border-radius:4px;width:100%;height:5px;margin-top:12px;display:block;overflow:hidden}.student-study-heading progress::-webkit-progress-bar{background:#dae5e8}.student-study-heading progress::-webkit-progress-value{background:#789baa}.student-play-workspace .homework-problem-info{background:var(--paper);line-height:1.6}.student-play-workspace .homework-problem-info>strong{font-size:16px}.student-play-workspace .homework-problem-info dl{border-top:1px solid var(--line);gap:12px;padding-top:14px;font-size:13px}.student-play-workspace .homework-answer-back{flex-shrink:0;align-self:flex-start}.student-play-workspace .homework-countdown{border:1px solid #cddfe6;border-radius:14px;gap:10px;padding:24px 12px}.student-play-workspace .homework-countdown strong{font-size:clamp(36px,4vw,56px);line-height:1.15}.student-play-workspace .student-answer-tools{gap:12px;margin-top:auto;padding:14px;display:grid}.student-play-workspace .student-answer-tools h2{margin:0 0 2px;font-family:inherit;font-size:15px}.student-play-workspace :is(.homework-answer-view-actions,.homework-answer-progress){gap:6px}.student-play-workspace :is(.homework-answer-view-actions,.homework-answer-progress) button{white-space:nowrap;padding:8px 4px;font-size:12px}.student-play-workspace .homework-answer-progress{border-block:1px solid var(--line);font-variant-numeric:tabular-nums;padding-block:12px;font-size:12px}.student-play-workspace .homework-submit-button{min-height:48px;padding:10px 6px;font-size:13px;line-height:1.5}.student-play-workspace.game-page .game-heading{flex-direction:column;align-items:stretch;gap:20px;min-height:0;margin:0;display:flex;position:static}.student-play-workspace.game-page .game-sidebar{padding:0}.student-play-workspace.game-page .game-heading-main{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.student-play-workspace.game-page .game-heading .back-button{margin:0;display:inline-flex}.student-play-workspace.game-page .game-title-line{flex-wrap:wrap;gap:8px}.student-play-workspace.game-page .game-heading h1{white-space:normal;font-family:inherit;font-size:22px;line-height:1.4}.student-play-workspace.game-page .game-heading p{margin:0;font-size:10px;line-height:1.6;display:block}.student-play-workspace.game-page .game-heading-actions{flex-direction:column;gap:8px;width:100%;display:flex}.student-play-workspace.game-page :is(.fullscreen-button,.room-code-chip,.immersive-game-title){width:100%;min-width:0;min-height:42px;padding:8px;font-size:13px}.student-play-workspace.game-page .room-code-chip{background:#f2f6f7;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;display:flex}.student-play-workspace .room-code-chip strong{margin:0;font-size:18px}.student-play-workspace .room-code-chip small{text-align:right;width:100%}.student-play-workspace .connection-card{flex-wrap:wrap;gap:8px;margin-top:auto;padding:12px;font-size:11px}.student-play-workspace .move-summary{color:var(--muted);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:16px;font-size:12px;display:grid}.student-play-workspace .move-summary strong{color:var(--green-900);font-variant-numeric:tabular-nums;font-size:22px}.student-play-workspace .player-panel{background:0 0;border:0;gap:12px}.student-play-workspace .player-panel .player-bar{border:1px solid var(--line);background:var(--paper);border-radius:14px;grid-template-columns:36px minmax(0,1fr);gap:6px 10px;min-height:0;padding:14px;display:grid}.student-play-workspace .player-panel .player-bar--active{background:var(--workspace-blue);border-color:#b4cdd7;box-shadow:inset 3px 0 #789baa}.student-play-workspace .player-panel .player-stone{width:36px;height:36px}.student-play-workspace .player-panel .player-name{min-height:0}.student-play-workspace .player-panel .player-name strong{font-size:14px;line-height:1.5}.student-play-workspace .player-panel .ready-mark{padding:3px 6px;font-size:10px}.student-play-workspace .player-panel .clock{min-width:0;color:var(--green-900);text-align:right;border-top:1px solid #dce2e5;grid-area:3/1/auto/-1;padding-top:8px;font-size:36px;line-height:1.2}.student-play-workspace .action-card{margin-top:auto;padding:16px}.student-play-workspace .action-card h2{margin:10px 0;font-family:inherit;font-size:20px;line-height:1.4}.student-play-workspace .action-card p,.student-play-workspace .action-card small{overflow-wrap:anywhere;font-size:12px;line-height:1.7}.student-play-workspace .action-grid{gap:6px}.student-play-workspace .action-grid button{min-height:44px;padding:8px 4px;font-size:12px}.board-workspace.student-play-workspace:is(.homework-answer-page--immersive,.game-page--immersive,:fullscreen){--student-stage-height:calc(100dvh - 24px);height:100dvh;min-height:100dvh;padding:12px}@media (max-width:900px){.app-frame:has(.student-play-workspace.game-page){height:auto;overflow:visible}.board-workspace.student-play-workspace.homework-answer-page,.board-workspace.student-play-workspace.game-page{height:auto;min-height:calc(100dvh - 64px);padding:10px;overflow:visible}.board-workspace.student-play-workspace.homework-answer-page{grid-template-rows:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:10px}.student-play-workspace :is(.student-study-context,.homework-answer-sidebar){display:contents}.student-play-workspace .homework-answer-back{grid-area:1/1;justify-self:start}.student-play-workspace .homework-countdown{grid-area:1/2;gap:2px;padding:8px 10px}.student-play-workspace .homework-countdown strong{font-size:28px}.student-play-workspace .homework-countdown small{font-size:10px}.student-play-workspace .student-study-heading{grid-area:2/1/auto/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:12px;display:grid}.student-play-workspace .student-study-heading .eyebrow{grid-column:1;margin:0;font-size:10px}.student-play-workspace .student-study-heading h1{grid-column:1;margin:0;font-size:16px}.student-play-workspace .student-question-count{grid-area:1/2/span 2;font-size:12px}.student-play-workspace .student-study-heading progress{grid-column:1/-1;height:3px;margin:2px 0 0}.student-play-workspace .homework-answer-board{grid-area:3/1/auto/-1;height:auto}.board-workspace.student-play-workspace :is(.homework-answer-board,.board-column)>.board-shell{width:100%;height:auto}.student-play-workspace .homework-problem-info{grid-area:5/1/auto/-1}.student-play-workspace .student-answer-tools{grid-area:4/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;margin:0;padding:12px}.student-play-workspace .student-answer-tools>*{grid-area:auto/1/auto/-1}.student-play-workspace .student-answer-tools .homework-answer-view-actions{grid-column:1}.student-play-workspace .student-answer-tools .homework-answer-progress{border:0;grid-column:2;padding:0}.student-play-workspace.game-page .game-layout{flex-direction:column;gap:12px;display:flex}.student-play-workspace.game-page :is(.student-game-context,.game-sidebar){display:contents}.student-play-workspace.game-page .game-heading{order:0;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;display:grid}.student-play-workspace.game-page .game-heading-main{gap:8px}.student-play-workspace.game-page .game-heading h1{font-size:18px}.student-play-workspace.game-page .game-heading-actions{max-width:150px}.student-play-workspace.game-page .game-heading p{max-width:220px}.student-play-workspace.game-page .player-panel{order:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-play-workspace .player-panel .player-bar{grid-template-columns:28px minmax(0,1fr);padding:10px}.student-play-workspace .player-panel .player-stone{width:28px;height:28px}.student-play-workspace .player-panel .player-name strong{font-size:12px}.student-play-workspace .player-panel .clock{font-size:30px}.student-play-workspace .student-game-context>.message{order:2;margin:0}.student-play-workspace.game-page .board-column{order:3;height:auto}.student-play-workspace.game-page .action-card{order:4;margin:0}.student-play-workspace.game-page .scoring-result-dialog{order:5}.student-play-workspace.game-page .result-card{order:6}.student-play-workspace.game-page .move-summary{order:7}.student-play-workspace.game-page .connection-card{order:8;margin:0}.board-workspace.student-play-workspace:is(.homework-answer-page--immersive,.game-page--immersive,:fullscreen){height:100dvh;min-height:100dvh;overflow-y:auto}}@media (max-width:420px){.student-play-workspace .student-answer-tools{grid-template-columns:1fr}.student-play-workspace .student-answer-tools :is(.homework-answer-view-actions,.homework-answer-progress){grid-column:1}}.homework-first-player{align-items:center;gap:10px;display:flex}.homework-first-player i{background:radial-gradient(circle at 35% 25%,#66716d,#18211f 65%);border:1px solid #263731;border-radius:50%;flex:0 0 22px;width:22px;height:22px}.homework-first-player i.is-white{background:radial-gradient(circle at 35% 25%,#fff,#e6e5da 75%);border-color:#c6c8bc}.board-workspace.homework-grading-page{--grading-height:calc(100dvh - 88px);height:calc(100dvh - 64px);min-height:0;overflow:hidden}.board-workspace.homework-grading-page:is(:fullscreen,.homework-grading-page--immersive){--grading-height:calc(100dvh - 24px);height:100dvh;min-height:0;padding:12px}.board-workspace.homework-grading-page .homework-grading-workspace{height:var(--grading-height);grid-template-columns:minmax(0,1fr) clamp(360px,31vw,440px);gap:16px;max-width:none;min-height:0}.board-workspace.homework-grading-page .homework-grading-board-panel{grid-template-rows:minmax(0,1fr);gap:0;height:100%;min-height:0;padding:0}.board-workspace.homework-grading-page .homework-grading-inline-replay--docked{grid-template-rows:minmax(0,1fr);gap:0;height:100%}.board-workspace.homework-grading-page .homework-grading-board-stage{min-width:0;height:100%;overflow:hidden}.board-workspace.homework-grading-page .homework-grading-board-stage .board-shell{width:min(100%, var(--grading-height));aspect-ratio:1;height:auto;max-height:100%}.homework-grading-inline-replay__stage .homework-replay-load-state{z-index:2;text-align:center;background:#fffdfaf5;border:1px solid #dce2e5;border-radius:12px;width:min(85%,340px);min-height:0;padding:20px;position:absolute;box-shadow:0 12px 36px #243b4626}.board-workspace.homework-grading-page .homework-grading-sidebar{height:var(--grading-height);scrollbar-gutter:stable;grid-template-rows:auto minmax(190px,1fr) auto;align-content:stretch;gap:10px;max-height:none;padding:0;overflow-y:auto}.board-workspace.homework-grading-page .workspace-tool-dock{z-index:30;width:min(350px,100vw - 32px);position:absolute;top:12px;right:12px}.board-workspace.homework-grading-page .workspace-tool-dock .review-annotation-panel{box-shadow:0 12px 36px #243b4626}.board-workspace.homework-grading-page .homework-grading-card{padding:14px}.board-workspace.homework-grading-page .homework-grading-card>header{align-items:center}.board-workspace.homework-grading-page .homework-grading-card>header h2{margin:2px 0 0;font-size:23px}.board-workspace.homework-grading-page .homework-grading-card>header h3{margin:2px 0 0;font-size:16px}.board-workspace.homework-grading-page .homework-grading-summary-body{grid-template-columns:minmax(0,1fr) 105px;gap:10px;margin-top:10px}.board-workspace.homework-grading-page .homework-grading-summary-chart{grid-template-columns:76px minmax(0,1fr);gap:8px}.board-workspace.homework-grading-page .homework-grading-summary-chart svg{width:76px;height:76px}.board-workspace.homework-grading-page .homework-grading-summary-legend{gap:4px}.board-workspace.homework-grading-page .homework-grading-average-time{border-top:0;border-left:1px solid var(--line);padding:4px 0 4px 10px}.board-workspace.homework-grading-page .homework-grading-average-time strong{overflow-wrap:anywhere;font-size:20px}.board-workspace.homework-grading-page .homework-grading-average-time span{font-size:11px}.board-workspace.homework-grading-page .homework-grading-card--students{overflow:hidden}.board-workspace.homework-grading-page .homework-grading-student-list{align-content:start;gap:6px;min-height:0;margin-top:10px;overflow-y:auto}.board-workspace.homework-grading-page .homework-grading-student-list article{min-height:58px;padding:6px}.board-workspace.homework-grading-page .homework-grading-student-identity{gap:3px;padding:2px;display:grid}.board-workspace.homework-grading-page .homework-grading-student-identity strong{font-size:14px}.board-workspace.homework-grading-page .homework-grading-student-identity small{white-space:normal;font-size:11px}.homework-grading-console{border:1px solid var(--line);background:var(--paper);border-radius:12px;min-width:0;padding:12px}.homework-grading-console>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:13px;display:flex}.homework-grading-console>header span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.homework-grading-view-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.homework-grading-view-actions button{color:#fff;background:#345b64;border:1px solid #345b64;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:46px;padding:8px;font-size:14px;font-weight:750;display:flex}.homework-grading-view-actions .homework-grading-fullscreen{color:#345b64;background:#e3eff4;border-color:#a6c2ce}.homework-grading-view-actions button:hover:not(:disabled){filter:brightness(.95)}.homework-grading-view-actions button[aria-pressed=true]{box-shadow:inset 0 0 0 2px}.homework-grading-view-actions svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.board-workspace.homework-grading-page .homework-grading-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.board-workspace.homework-grading-page .homework-grading-tools button{border-radius:8px;min-height:36px;padding:6px;font-size:12px}.homework-grading-playback-dock{border-top:1px solid var(--line);min-height:80px;margin-top:10px}.board-workspace.homework-grading-page :is(.homework-grading-replay-controls,.homework-grading-research-controls,.homework-grading-board-caption){background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:6px;min-height:80px;padding:8px 0;display:grid}.board-workspace.homework-grading-page :is(.homework-grading-replay-controls,.homework-grading-research-controls,.homework-grading-board-caption) strong{color:var(--muted);grid-column:1/-1;margin:0;font-size:12px;line-height:1.5}.board-workspace.homework-grading-page .homework-grading-board-caption span{grid-column:1/-1}.board-workspace.homework-grading-page .homework-grading-replay-pass{flex-wrap:wrap;grid-column:1/-1}.board-workspace.homework-grading-page :is(.homework-grading-replay-controls,.homework-grading-research-controls) button{min-height:32px;padding:5px 10px}.board-workspace.homework-grading-page .homework-grading-question-nav{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) auto;gap:6px;min-height:0;padding:10px 0 0}.board-workspace.homework-grading-page .homework-grading-question-nav button{min-height:34px;padding:5px;font-size:12px}.board-workspace.homework-grading-page .homework-grading-question-nav__back{min-width:0;color:var(--muted);background:0 0;border-color:#0000;grid-column:auto}.board-workspace.homework-grading-page .homework-grading-question-nav strong{min-width:0}@media (max-width:900px){.board-workspace.homework-grading-page,.board-workspace.homework-grading-page:is(:fullscreen,.homework-grading-page--immersive){height:auto;min-height:100dvh;max-height:none;padding:10px;overflow:auto}.board-workspace.homework-grading-page .homework-grading-workspace{grid-template-columns:1fr;height:auto}.board-workspace.homework-grading-page .homework-grading-board-panel{aspect-ratio:1;height:auto}.board-workspace.homework-grading-page .homework-grading-board-stage .board-shell{width:100%;max-height:none}.board-workspace.homework-grading-page .homework-grading-sidebar{scrollbar-gutter:auto;grid-template-rows:auto auto auto;height:auto;overflow:visible}.board-workspace.homework-grading-page .homework-grading-student-list{max-height:none;overflow:visible}}@media (max-width:380px){.board-workspace.homework-grading-page .homework-grading-question-nav{grid-template-columns:1fr auto 1fr}.board-workspace.homework-grading-page .homework-grading-question-nav__back{grid-column:1/-1}.board-workspace.homework-grading-page .homework-grading-summary-body{grid-template-columns:1fr}.board-workspace.homework-grading-page .homework-grading-average-time{border-left:0;border-top:1px solid var(--line);padding:8px 0 0}}.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-list{background:#fffdfb;border-radius:18px;flex-direction:column;width:min(1160px,100%);min-height:0;padding:24px;display:flex;overflow:hidden}.lobby-dialog-card--homework-list>.lobby-dialog-heading{flex:none}.homework-list{color:#303d44;flex-direction:column;gap:16px;min-width:0;min-height:0;font-size:14px;line-height:1.5;display:flex}.homework-list :is(p,h3){margin:0}.homework-list>:not(.homework-list__body){flex-shrink:0}.homework-list__intro{justify-content:space-between;align-items:center;gap:16px;display:flex}.homework-list__intro p{color:#61717b}.homework-list__intro>span{color:#61717b;flex-shrink:0}.homework-list__intro strong{color:#304954;font-variant-numeric:tabular-nums;font-size:20px}.homework-list button{color:#445d6b;min-height:40px;font:inherit;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #d9e2e7;border-radius:8px;padding:8px 13px;font-size:13px;font-weight:650}.homework-list button:hover:not(:disabled){background:#f0f6f8;border-color:#91acba}.homework-list button:disabled{cursor:not-allowed;opacity:.45}.homework-list :is(button,input,select):focus-visible{outline-offset:2px;outline:3px solid #759bae}.homework-list__tabs{flex-wrap:wrap;gap:8px;display:flex}.homework-list__tabs button{background:#f2f5f6;border-color:#0000;align-items:center;gap:9px;display:inline-flex}.homework-list__tabs button span{color:#617581;font-variant-numeric:tabular-nums;background:#fff;border-radius:4px;min-width:20px;padding:0 5px}.homework-list__tabs button[aria-pressed=true]{color:#fff;background:#344f5d;border-color:#344f5d}.homework-list__tabs button[aria-pressed=true] span{color:#fff;background:#526b77}.homework-list__filters{background:#f7f9fa;border:1px solid #e2e8eb;border-radius:10px;gap:12px;padding:14px;display:flex}.homework-list__filters label{color:#60727d;flex:0 170px;gap:6px;min-width:0;margin:0;font-size:12px;font-weight:600;display:grid}.homework-list__filters .homework-list__search{flex:240px}.homework-list .homework-list__filters :is(input,select){color:#334b58;width:100%;height:40px;min-height:40px;font:inherit;background:#fff;border:1px solid #d4dfe5;border-radius:7px;margin:0;padding:8px 11px;font-size:14px}.homework-list__body{overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid #dfe6ea;border-radius:10px;min-height:100px;overflow-y:auto}.homework-list__columns,.homework-list__row{grid-template-columns:minmax(170px,1fr) 150px minmax(160px,.65fr) 145px;align-items:center;gap:20px;display:grid}.homework-list__columns{z-index:1;color:#6d7c85;background:#f3f6f7;border-bottom:1px solid #e1e7eb;padding:10px 18px;font-size:12px;font-weight:600;position:sticky;top:0}.homework-list__columns>:last-child{text-align:right}.homework-list__row{background:#fff;min-width:0;padding:17px 18px}.homework-list__row+.homework-list__row{border-top:1px solid #e8edef}.homework-list__identity{gap:5px;min-width:0;display:grid}.homework-list__identity>small{color:#697f8a;font-size:12px}.homework-list__identity h3{overflow-wrap:anywhere;font-family:inherit;font-size:16px;font-weight:700;line-height:1.4}.homework-list__identity p{color:#71808a;font-size:12px}.homework-list__date time{color:#425965;font-variant-numeric:tabular-nums;gap:3px;display:grid}.homework-list__date time small{color:#778792;font-size:12px}.homework-list__due{color:#8a6d4b;flex-wrap:wrap;gap:6px;font-size:11px;display:flex}.homework-list__due time{gap:5px;display:flex}.homework-list__due time small{font:inherit}.homework-list__missing{color:#778792;font-size:12px}.homework-list__progress{gap:6px;min-width:0;display:grid}.homework-list__progress>small{color:#6b7d87;font-size:12px}.homework-list__progress progress{appearance:none;color:#829eaf;background:#edf1f3;border:0;border-radius:3px;width:100%;max-width:160px;height:4px;display:block;overflow:hidden}.homework-list__progress progress::-webkit-progress-bar{background:#edf1f3}.homework-list__progress progress::-webkit-progress-value{background:#829eaf;border-radius:3px}.homework-list__progress progress::-moz-progress-bar{background:#829eaf}.homework-list__badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.homework-list__badges>small{color:#7b858c;font-size:11px}.homework-list__badge{border-radius:5px;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;padding:3px 8px;font-size:12px;font-weight:650;display:inline-flex}.homework-list__badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.homework-list__badge--amber{color:#886335;background:#fcf1de}.homework-list__badge--blue{color:#456f8a;background:#eaf2f8}.homework-list__badge--green{color:#3d7461;background:#e9f3ed}.homework-list__badge--muted,.homework-list__badge--neutral{color:#65717b;background:#edf0f2}.homework-list button.homework-list__open{color:#7d5d3f;background:#fdf0dd;border-color:#e8d4b5;justify-content:space-between;justify-self:end;align-items:center;gap:12px;min-width:120px;min-height:42px;display:inline-flex}.homework-list button.homework-list__open.is-complete{color:#487565;background:#f5f9f6;border-color:#ccdcd3}.homework-list__footer{border-top:1px solid #e0e7eb;flex:none;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.homework-list__count{color:#71818c;font-size:12px}.homework-list__pagination,.homework-list__footer-actions{align-items:center;gap:8px;display:flex}.homework-list__pagination>span{text-align:center;color:#5a717e;min-width:40px;font-size:12px}.homework-list__footer-actions button:last-child{background:#f0f5f7}.homework-list__mobile-label{display:none}.homework-list>.message{flex:none;margin:0}@media (max-width:860px){.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-list{padding:18px}.homework-list__columns{display:none}.homework-list__row{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:16px}.homework-list__identity{grid-column:1/-1}.homework-list__date{grid-area:2/1}.homework-list__date time{flex-wrap:wrap;gap:6px;display:flex}.homework-list__mobile-label{color:#7c8b94;margin-bottom:3px;font-size:11px;display:block}.homework-list__progress{grid-area:3/1}.homework-list button.homework-list__open{grid-area:3/2;align-self:end}.homework-list__filters{flex-wrap:wrap}.homework-list__filters .homework-list__search{flex-basis:100%}.homework-list__filters label{flex:120px}.homework-list__intro{align-items:flex-start}.homework-list__intro p{font-size:12px}.homework-list__tabs{gap:6px}.homework-list__tabs button{gap:5px;min-height:36px;padding:6px 9px;font-size:12px}.homework-list__footer{flex-wrap:wrap}.homework-list__count{order:2}.homework-list__pagination{flex:1 0 100%;justify-content:center}.homework-list__footer-actions{order:3;margin-left:auto}}@media (max-width:480px){.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-list{border-radius:14px;max-height:calc(100dvh - 16px);padding:14px}.homework-list{gap:12px}.homework-list__intro{flex-direction:column;gap:5px}.homework-list__filters{gap:8px;padding:10px}.homework-list__filters label{flex-basis:0}.homework-list__row{gap:10px;padding:13px}.homework-list button.homework-list__open{gap:8px;min-width:0;padding:9px;font-size:12px}}@media (max-height:600px){.role-dialog .lobby-dialog-card.lobby-dialog-card--homework-list{overflow-y:auto}.homework-list{flex-shrink:0;overflow:visible}.homework-list__body{max-height:360px}}
