@font-face{font-family:SUIT;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/SUIT-Regular.woff2)format("woff2")}@font-face{font-family:SUIT;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/SUIT-Medium.woff2)format("woff2")}@font-face{font-family:SUIT;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/SUIT-SemiBold.woff2)format("woff2")}@font-face{font-family:SUIT;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/SUIT-Bold.woff2)format("woff2")}:root{--bg:#fffffc;--surface:#fff;--surface-2:#f6f3ec;--surface-input:#fff;--text:#000;--text-secondary:#4f4a40;--text-muted:#66635c;--text-on-fill:#fff;--border:#e8e2d4;--border-soft:#f1ece1;--border-strong:#b5ad9c;--primary:#cf9c44;--primary-ink:#9e6809;--primary-strong:#694608;--primary-soft:#fffaf1;--primary-tint:#fff1d9;--primary-border:#e6c88f;--danger:#b3261e;--danger-soft:#fdeceb;--success:#2e6b3f;--success-soft:#e9f3e7;--warning:#805400;--warning-soft:#fff1d6;--info:#2c5a85;--info-soft:#e8f0f7;--focus:#9e6809;--room:#15110b;--room-2:#1f1a12;--room-3:#2d261b;--room-deep:#0d0a06;--room-line:#443a2a;--room-ink:#fffaf0;--room-ink-2:#c2b7a3;--room-on-primary:#15110b;--room-mine:#4d3a18;--room-link:#ecc98a;--room-danger:#ff9c9f;--room-danger-soft:#43191b;--room-success:#a7d6a0;--room-success-soft:#223220;--room-warning:#f4cd80;--room-warning-soft:#3d2e10;--room-info:#a9d0f2;--room-info-soft:#1a3044;--room-speaking:#ff3b3f;--room-speaking-glow:#ff3b3f8c;--room-alert:#ff6b6f;--room-off-bg:#280a0cd9;--laser:#ff2d55;--laser-glow:#ff2d5599;--blk-running:#ffd166;--blk-running-glow:#ffd166e6;--blk-marked:#ff4d6d;--scrim:#15110b73;--scrim-strong:#0d0a06d9;--radius:14px;--radius-control:10px;--shadow:none;--shadow-pop:0 12px 40px -12px #69460847;--font:"SUIT", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;font-family:var(--font);color:var(--text);background:var(--bg)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg)}h1,h2,h3,.display{letter-spacing:-.025em;word-break:keep-all;font-weight:600;line-height:1.3}body{letter-spacing:-.005em;line-height:1.5}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit}a{color:inherit}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-control);justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-weight:600;transition:transform 60ms,background .15s,border-color .15s;display:inline-flex}.btn:hover{border-color:var(--border-strong)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn.primary:disabled{background:var(--surface-2);border-color:var(--border);color:var(--text-muted);cursor:not-allowed}.btn.primary{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.btn.primary:hover{background:var(--primary-tint);border-color:var(--primary-ink);color:var(--primary-strong)}.btn.danger{color:var(--danger)}.btn.sm{border-radius:8px;padding:5px 10px;font-size:13px}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2);border-color:#0000}.room .btn.ghost:hover{background:var(--room-3)}.field{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:13px;display:flex}.field input,.field select,.field textarea,.input{border:1px solid var(--border);background:var(--surface-input);border-radius:var(--radius-control);color:var(--text);padding:9px 12px;font-size:15px}.field input:focus,.input:focus,textarea:focus,select:focus{outline:2px solid color-mix(in srgb, var(--primary) 45%, transparent);border-color:var(--primary)}.err{color:var(--danger);font-size:14px}.muted{color:var(--text-muted)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.spacer{flex:1}.card{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.pill{background:var(--surface-2);color:var(--text-secondary);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.pill.green{background:var(--success-soft);color:var(--success)}.pill.red{background:var(--danger-soft);color:var(--danger)}.pill.amber{background:var(--warning-soft);color:var(--warning)}table.grid{border-collapse:collapse;width:100%;font-size:14px}table.grid th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);padding:8px;font-size:12px;font-weight:600}table.grid td{border-bottom:1px solid var(--surface-2);vertical-align:middle;padding:8px}.topbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:14px;padding:14px 28px;display:flex}.brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:8px;font-size:18px;font-weight:600;display:flex}.brand-logo{flex:none;height:24px;display:block}.brand-logo svg{width:auto;height:100%;display:block}.login-wrap{background:var(--bg);place-items:center;min-height:100%;padding:clamp(40px,7vw,88px) 24px;display:grid}.login-wrap.with-art{grid-template-columns:minmax(0,400px) minmax(0,560px);place-content:center;align-items:center;gap:clamp(48px,8vw,128px)}.login-art{width:100%;height:auto;display:block}.login-card{width:min(400px,100%)}.login-wrap>.card{background:0 0;border:0;padding:0}.login-card>.brand{margin-bottom:28px}.login-card>p+form{margin-top:20px}.login-card>.brand .brand-logo{height:40px}.login-card>.btn.ghost{width:100%;color:var(--text-secondary);margin-top:12px;font-weight:500}.login-card .btn.primary{padding-block:12px}@media (width<=860px){.login-wrap.with-art{grid-template-columns:minmax(0,400px);gap:24px;padding-top:28px}.login-art{order:-1;max-width:220px;margin:0 auto}}.login-tabs{background:var(--surface-2);border-radius:12px;gap:6px;margin:14px 0 18px;padding:4px;display:flex}.login-tabs button{color:var(--text-secondary);background:0 0;border:0;border-radius:9px;flex:1;padding:9px;font-weight:600}.login-tabs button.on{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.pin{justify-content:center;gap:10px;display:flex}.pin input{text-align:center;border:1.5px solid var(--border);background:var(--surface-input);border-radius:14px;width:58px;height:66px;font-size:28px;font-weight:700}.pin input:focus{border-color:var(--primary);outline:2px solid color-mix(in srgb, var(--primary) 45%, transparent)}.demo-login{border-top:1px dashed var(--border);flex-direction:column;gap:8px;margin-top:18px;padding-top:16px;display:flex}.demo-login span{color:var(--text-secondary);font-size:13px}.home{flex-direction:column;gap:22px;max-width:880px;margin:0 auto;padding:clamp(32px,5vw,64px) 20px 80px;display:flex}.next-card{background:var(--primary-soft);border-color:var(--primary-border);flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(24px,4vw,40px);display:flex}.next-card .when{letter-spacing:-.025em;font-size:clamp(24px,4vw,32px);font-weight:600}.enter-btn{border-radius:16px;padding:18px 34px;font-size:22px}.enter-btn.big{padding:24px 52px;font-size:28px}.notice{border-bottom:1px dashed var(--border);align-items:baseline;gap:10px;padding:10px 0;font-size:14px;display:flex}.admin{grid-template-columns:220px 1fr;min-height:calc(100% - 59px);display:grid}.admin nav{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:2px;padding:16px 10px;display:flex}.admin nav button{text-align:left;color:var(--text-secondary);background:0 0;border:0;border-radius:9px;justify-content:space-between;padding:9px 12px;font-weight:600;display:flex}.admin nav button.on{background:var(--primary-soft);color:var(--primary-strong)}.admin main{flex-direction:column;gap:18px;padding:24px;display:flex;overflow:auto}.admin h2{margin:0;font-size:22px}.form-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-items:end;gap:10px;display:grid}.room{background:var(--room);height:100%;color:var(--room-ink);grid-template-rows:52px 1fr;display:grid}.room-top{border-bottom:1px solid var(--room-line);background:var(--room-2);align-items:center;gap:12px;padding:0 14px;display:flex}.room-top .title{font-size:16px;font-weight:700}.room .btn{background:var(--room-3);border-color:var(--room-line);color:var(--room-ink)}.room .btn:hover{border-color:var(--room-ink-2)}.room .btn.primary,.prejoin .btn.primary{background:var(--primary);border-color:var(--primary);color:var(--room-on-primary)}.room .btn.primary:hover,.prejoin .btn.primary:hover{background:var(--room-link);border-color:var(--room-link);color:var(--room-on-primary)}.room .btn.danger{color:var(--room-danger)}.room .btn.on{background:var(--room-ink);color:var(--room)}.room .btn:disabled,.room .btn.primary:disabled,.prejoin .btn:disabled,.prejoin .btn.primary:disabled{background:var(--room-2);border-color:var(--room-line);color:var(--room-ink-2)}.room .bx .btn{background:var(--surface);border-color:var(--border);color:var(--text)}.room .bx .btn:hover{border-color:var(--border-strong)}.room .bx .btn.primary{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.room .bx .btn.primary:hover{background:var(--primary-tint);border-color:var(--primary-ink);color:var(--primary-strong)}.room .bx .btn.danger{color:var(--danger)}.room .bx .btn:disabled,.room .bx .btn.primary:disabled{background:var(--surface-2);border-color:var(--border);color:var(--text-muted)}.room .bx .muted{color:var(--text-muted)}.room,.prejoin,.deck-overview{--focus:var(--primary)}.room .muted,.prejoin .muted{color:var(--room-ink-2)}.room .pill{background:var(--room-3);color:var(--room-ink-2)}.room .pill.green{background:var(--room-success-soft);color:var(--room-success)}.room .pill.red{background:var(--room-danger-soft);color:var(--room-danger)}.room .pill.amber{background:var(--room-warning-soft);color:var(--room-warning)}.room-body{grid-template-columns:1fr 300px;min-height:0;display:grid}.room-main{flex-direction:column;gap:10px;min-width:0;min-height:0;padding:12px;display:flex}.room-side{border-left:1px solid var(--room-line);background:var(--room-2);flex-direction:column;min-height:0;display:flex}.mode-switch{background:var(--room-3);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.mode-switch button{color:var(--room-ink-2);background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.mode-switch button.on{background:var(--room-ink);color:var(--room)}.stage-area{background:var(--room-deep);border-radius:12px;flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.videos{grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.tile{aspect-ratio:4/3;background:var(--room-deep);border-radius:10px;place-items:center;display:grid;position:relative;overflow:hidden}.tile video{object-fit:cover;width:100%;height:100%}.tile .name{background:#0000008c;border-radius:6px;padding:2px 7px;font-size:11px;position:absolute;bottom:6px;left:6px}.tile .off{color:var(--room-danger);background:var(--room-off-bg);text-align:center;place-items:center;padding:6px;font-size:12px;font-weight:700;display:grid;position:absolute;inset:0}.tile.alert{outline:2px solid var(--room-alert)}.mode-switch button,.tile .name,.share-guide .pick,.bx-banner{align-items:center;gap:6px;display:inline-flex}.tile.speaking{outline:3px solid var(--room-speaking);outline-offset:-3px;box-shadow:0 0 14px var(--room-speaking-glow);transition:outline-color .15s,box-shadow .15s}.side-tabs{border-bottom:1px solid var(--room-line);display:flex}.side-tabs button{color:var(--room-ink-2);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:10px;font-size:13px;font-weight:600}.side-tabs button.on{color:var(--room-ink);border-bottom-color:var(--primary)}.chat{flex-direction:column;flex:1;gap:8px;min-height:0;padding:10px 12px;font-size:14px;display:flex;overflow:auto}.chat .msg{background:var(--room-3);word-break:break-word;border-radius:10px;max-width:92%;padding:7px 10px;line-height:1.45}.chat .msg.mine{background:var(--room-mine);align-self:flex-end}.chat .who{color:var(--room-ink-2);margin-bottom:2px;font-size:11px}.chat a{color:var(--room-link)}.chat-input{border-top:1px solid var(--room-line);gap:6px;padding:10px;display:flex}.chat-input input,.room textarea{background:var(--room-3);border:1px solid var(--room-line);color:var(--room-ink);border-radius:9px;flex:1;padding:8px 10px}.banner{border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:14px;font-weight:600;display:flex}.banner.warn{background:var(--warning-soft);color:var(--warning)}.banner.alert{background:var(--danger-soft);color:var(--danger)}.banner.info{background:var(--info-soft);color:var(--info)}.room .banner.warn,.prejoin .banner.warn{background:var(--room-warning-soft);color:var(--room-warning)}.room .banner.alert,.prejoin .banner.alert{background:var(--room-danger-soft);color:var(--room-danger)}.room .banner.info,.prejoin .banner.info{background:var(--room-info-soft);color:var(--room-info)}.tools{background:var(--room-2);border:1px solid var(--room-line);border-radius:12px;align-items:center;gap:4px;padding:4px;display:flex}.tools button{color:var(--room-ink-2);background:0 0;border:0;border-radius:8px;place-items:center;width:34px;height:34px;font-size:16px;display:grid}.tools button.on{background:var(--room-ink);color:var(--room)}.tools .swatch{border:2px solid #0000;border-radius:50%;width:18px;height:18px}.tools .swatch.on{border-color:var(--room-ink)}.prejoin{background:var(--room);height:100%;color:var(--room-ink);place-items:center;padding:20px;display:grid}.prejoin-card{background:var(--room-2);border:1px solid var(--room-line);border-radius:18px;grid-template-columns:1.3fr 1fr;gap:22px;width:min(760px,100%);padding:22px;display:grid}.prejoin video{aspect-ratio:4/3;object-fit:cover;background:var(--room-deep);border-radius:12px;width:100%;transform:scaleX(-1)}.meter{background:var(--room-3);border-radius:99px;height:8px;overflow:hidden}.meter>div{background:var(--primary);height:100%;transition:width 80ms}.check{align-items:center;gap:8px;font-size:14px;display:flex}.share-guide{background:var(--room-3);border-radius:12px;padding:12px;font-size:14px;line-height:1.5}.share-guide .pic{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;display:grid}.share-guide .pic div{text-align:center;background:var(--room-deep);border:2px solid #0000;border-radius:8px;padding:10px 6px;font-size:12px}.share-guide .pic div.pick{border-color:var(--primary);color:var(--room-link);font-weight:700}.share-guide .pic div.no{opacity:.5;text-decoration:line-through}.deck-import{z-index:50;background:var(--scrim);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.deck-import-box{box-shadow:var(--shadow-pop);flex-direction:column;gap:14px;width:min(920px,100%);max-height:calc(100vh - 32px);display:flex;overflow:hidden}.deck-import-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;min-height:0;padding:2px;display:grid;overflow:auto}.deck-import-grid figure{flex-direction:column;gap:4px;margin:0;display:flex}.deck-import-grid canvas{aspect-ratio:16/9;object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:8px;width:100%}.deck-import-grid figcaption{color:var(--text-muted);text-align:center;font-size:12px}.deck-import-track{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden}.deck-import-track>div{background:var(--primary);height:100%;transition:width .3s}.deck-import-track.busy>div{width:35%;animation:1.2s ease-in-out infinite alternate deck-import-slide}@keyframes deck-import-slide{0%{transform:translate(-10%)}to{transform:translate(195%)}}@media (prefers-reduced-motion:reduce){.deck-import-track.busy>div{opacity:.5;width:100%;animation:none}}.slide-nav{background:var(--room-2);border:1px solid var(--room-line);border-radius:12px;align-items:center;gap:6px;padding:4px;display:inline-flex}.slide-nav .nav-btn{border:1px solid var(--room-line);background:var(--room-3);width:44px;height:36px;color:var(--room-ink);border-radius:9px;place-items:center;font-size:20px;transition:background .15s,transform .1s,box-shadow .15s;display:grid}.slide-nav .nav-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--room-on-primary)}.slide-nav .nav-btn:disabled{opacity:.35;cursor:not-allowed}.slide-nav .nav-btn:not(:disabled):hover{filter:brightness(1.12)}.slide-nav .nav-btn.flash{box-shadow:0 0 0 3px var(--room-warning);transform:scale(1.08)}.slide-nav .nav-page{text-align:center;font-variant-numeric:tabular-nums;min-width:64px;color:var(--room-ink);font-weight:700}.laser-dot{background:var(--laser);width:14px;height:14px;box-shadow:0 0 12px 4px var(--laser-glow);pointer-events:none;border-radius:50%;margin:-7px 0 0 -7px;transition:left 60ms linear,top 60ms linear;position:absolute}.slide-textbox{z-index:2;border:1.5px dashed var(--info);resize:none;background:#ffffffe6;border-radius:4px;outline:none;min-width:4em;margin:-2px 0 0 -4px;padding:0 2px;line-height:1.3;position:absolute;overflow:hidden}.deck-overview{z-index:90;background:var(--scrim-strong);place-items:center;display:grid;position:fixed;inset:0}.deck-overview-card{background:var(--room-2);width:min(1100px,94vw);max-height:88vh;color:var(--room-ink);border:1px solid var(--room-line);border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.deck-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:4px;display:grid;overflow:auto}.deck-grid button{color:var(--room-ink-2);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:4px;display:flex}.deck-grid button:hover{border-color:var(--room-line)}.deck-grid button.on{border-color:var(--primary);color:var(--room-ink);font-weight:700}.deck-grid canvas{aspect-ratio:16/9;object-fit:contain;background:#fff;border-radius:6px;width:100%}table.grid td.row{white-space:nowrap;display:table-cell}table.grid td.row>*{vertical-align:middle;margin:2px 6px 2px 0}.card:has(>table.grid){overflow-x:auto}table.grid tr.sel td{background:var(--surface-2)}.form-grid .actions{grid-column:1/-1;gap:8px;display:flex}.shell-nav .dot{background:var(--danger);border-radius:50%;width:9px;height:9px;display:inline-block}.person-link{color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.person-link:hover{color:var(--primary-ink)}.modal{z-index:80;background:var(--scrim);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-box{box-shadow:var(--shadow-pop);flex-direction:column;gap:12px;width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;overflow:auto}.modal-box.wide{width:min(1000px,100%)}.modal-head{align-items:center;gap:8px;display:flex}.modal-head h3{flex:1;margin:0}.kv{grid-template-columns:120px 1fr;gap:6px 12px;font-size:14px;display:grid}.kv>:nth-child(odd){color:var(--text-muted)}.course-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.course-card{text-align:left;cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);font:inherit;color:inherit;flex-direction:column;gap:8px;padding:16px;display:flex}.course-card:hover{border-color:var(--primary)}.course-card h4{margin:0;font-size:16px}.course-card .meta{color:var(--text-muted);flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.json-edit{width:100%;min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.chat-layout{grid-template-columns:260px 1fr;gap:14px;min-height:520px;display:grid}.thread-list{flex-direction:column;gap:2px;max-height:70vh;padding:8px;display:flex;overflow:auto}.thread-list button{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:9px;flex-direction:column;gap:2px;padding:9px 10px;display:flex}.thread-list button.on{background:var(--surface-2)}.thread-list .last{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.thread-view{flex-direction:column;min-height:520px;max-height:75vh;padding:0;display:flex;overflow:hidden}.thread-msgs{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow:auto}.tmsg{background:var(--surface-2);word-break:break-word;white-space:pre-wrap;border-radius:12px;max-width:75%;padding:8px 11px;line-height:1.45}.tmsg.mine{background:var(--primary-tint);align-self:flex-end}.tmsg.system{color:var(--text-muted);text-align:center;background:0 0;align-self:center;font-size:13px}.tmsg .who{color:var(--text-muted);margin-bottom:2px;font-size:11px}.tmsg img{border-radius:8px;max-width:260px;max-height:260px;display:block}.thread-input{border-top:1px solid var(--border);align-items:center;gap:6px;padding:10px;display:flex}.thread-input input[type=text]{flex:1}.proposal-card{border:1px solid var(--border);background:var(--surface);white-space:normal;border-radius:12px;flex-direction:column;gap:6px;min-width:260px;padding:12px;display:flex}.proposal-card.deleted{color:var(--text-muted);font-style:italic}.pin-gate{text-align:center;place-items:center;gap:12px;padding:40px 16px;display:grid}.pin-gate .pin input{width:52px}@media (width<=760px){.admin{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.admin nav{border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:flex-start;overflow-x:auto}.admin nav button{white-space:nowrap;flex:none}.chat-layout{grid-template-columns:1fr}}.transcript{color:var(--room-ink);background:#ffffff0a;border-radius:10px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.transcript progress{width:100%}.transcript .lines{flex-direction:column;max-height:180px;display:flex;overflow-y:auto}.transcript .lines button{all:unset;cursor:pointer;border-radius:6px;padding:3px 6px;line-height:1.45}.transcript .lines button:hover{background:#ffffff0f}.transcript .lines button.on{background:color-mix(in srgb, var(--primary) 28%, transparent)}.transcript .lines button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.transcript .lines .at{color:var(--room-ink-2);font-variant-numeric:tabular-nums;margin-right:8px;font-size:12px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}label:has(.visually-hidden:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.bx{--focus:var(--primary-ink);background:var(--surface-2);height:100%;min-height:0;color:var(--text);font-family:var(--font);border-radius:12px;grid-template:"bar bar bar""right cats ws"minmax(0,1fr)/340px 340px 1fr;display:grid;overflow:hidden}.bx-frame-bar{background:var(--surface);border-bottom:1px solid var(--border);grid-area:bar;align-items:center;gap:8px;padding:5px 10px;font-size:12px;display:flex}.bx-frame-title{color:var(--text-muted);font-weight:700}.bx-ws-col{flex-direction:column;grid-area:ws;min-width:0;min-height:0;display:flex}.bx-cats{background:var(--surface);border-right:1px solid var(--border);flex-direction:row;grid-area:cats;min-height:0;display:flex}.bx-cat-tabs{border-right:1px solid var(--border-soft);background:var(--surface-2);flex-direction:column;gap:0;width:66px;padding:0;display:flex;overflow-y:auto}.bx-cat-tabs button{color:var(--text-muted);background:0 0;border:0;border-left:3px solid #0000;border-radius:0;flex-direction:column;flex:none;align-items:center;gap:4px;padding:9px 0 7px;font-size:11px;font-weight:700;display:flex}.bx-cat-tabs button i{border-radius:6px;width:18px;height:18px;display:block}.bx-cat-tabs button.on{background:var(--surface);color:var(--cat);border-left-color:var(--cat)}.bx-palette{background:var(--surface);flex-direction:column;flex:1;align-items:flex-start;gap:12px;padding:14px 10px 40px 14px;display:flex;overflow:auto}.bx-palette .bx-pal-title{color:var(--text-muted);margin:6px 2px 0;font-size:12px;font-weight:700}.bx-palette.trash{background:repeating-linear-gradient(45deg, var(--danger-soft), var(--danger-soft) 10px, var(--surface) 10px, var(--surface) 20px)}.bx-palette input,.bx-palette select{pointer-events:none}.bx-ws{background-color:var(--bg);background-image:linear-gradient(var(--border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--border-soft) 1px, transparent 1px);touch-action:none;background-size:24px 24px;min-width:0;min-height:0;position:relative;overflow:auto}.bx-ws-inner{width:2400px;height:1600px;position:relative}.bx-script{flex-direction:column;align-items:flex-start;display:flex;position:absolute}.bx-script.dragging{z-index:50;filter:drop-shadow(0 12px 18px #00000047)}.bx-script.dragging .blk{cursor:grabbing}.bx-script>.blk.hat~.blk{margin-left:12px}.bx-empty{color:var(--text-muted);pointer-events:none;font-size:15px;line-height:1.6;position:absolute;top:40px;left:40px}.blk{--c:#888;--s:#666;color:#fff;-webkit-user-select:none;user-select:none;cursor:grab;background:0 0;border:0;flex-direction:column;align-items:stretch;min-width:0;font-size:12px;font-weight:700;display:inline-flex;position:relative}.blk>:not(.eb-bg){z-index:1;position:relative}.eb-bg{pointer-events:none;z-index:0;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.blk-row{white-space:nowrap;align-items:center;gap:5px;min-height:28px;padding:4px 16px 4px 14px;display:flex}.blk.hat{min-height:34px}.blk.hat>.blk-row{min-height:28px;padding:6px 18px 0 36px}.blk.hat>.blk-row:before{content:"▶";opacity:.95;font-size:11px;position:absolute;top:10px;left:11px}.blk.reporter{border-radius:999px}.blk.reporter>.blk-row{min-height:22px;padding:1px 9px}.blk.boolean>.blk-row{min-height:22px;padding:1px 12px}.blk.opaque{--c:#9aa1ae;--s:#7d8492;background:#8aa3b2;border-radius:4px}.blk.running{z-index:3;filter:drop-shadow(0 0 6px var(--blk-running-glow))}.blk.running>.eb-bg path{stroke:var(--blk-running);stroke-width:3px}.blk.marked{z-index:4;animation:1s ease-in-out infinite entry-marked}@keyframes entry-marked{0%,to{filter:drop-shadow(0 0 0 var(--blk-marked))}50%{filter:drop-shadow(0 0 7px var(--blk-marked))}}.blk-mouth{background:0 0;flex-direction:column;align-items:flex-start;min-height:20px;margin-left:14px;padding:0;display:flex;position:relative}.blk-mouth-label{align-items:center;min-height:28px;padding:5px 14px;font-size:13px;display:flex}.blk-foot{border-radius:0 0 7px 7px;height:15px}.slot{align-items:center;display:inline-flex}.slot input,.slot select{text-align:center;border:0;border-radius:10px;outline:none;font-size:12px;font-weight:600}.slot input{color:#333;background:#fff;min-width:26px;padding:2px 7px}.slot input:focus{box-shadow:0 0 0 2px #ffffffd9,0 0 0 4px #00000040}.slot select{appearance:none;color:#fff;text-align:left;background:#00000038 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='2' fill='none'/%3E%3C/svg%3E") right 7px center no-repeat;min-width:34px;padding:2px 18px 2px 8px}.slot-bool{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%);background:#00000038;width:34px;height:20px}.slot.hot>*,.slot-bool.hot{outline:3px solid var(--blk-running);outline-offset:1px}.drop-line{background:var(--blk-running);z-index:60;pointer-events:none;border-radius:4px;width:90px;height:5px;position:absolute;box-shadow:0 0 0 2px #fff}.bx-right{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;grid-area:right;min-height:0;display:flex}.bx-stage-bar{align-items:center;gap:6px;padding:8px;display:flex}.bx-run,.bx-stop,.bx-slow,.bx-pal-title{align-items:center;gap:6px;display:inline-flex}.bx-run{background:var(--success);color:var(--text-on-fill);border:0;border-radius:8px;padding:8px 14px;font-weight:700}.bx-stop{background:var(--danger);color:var(--text-on-fill);border:0;border-radius:8px;padding:8px 12px;font-weight:700}.bx-slow{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:7px 10px;font-size:13px;font-weight:600}.bx-slow.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.bx-stage{border:1px solid var(--border);background:#fff;border-radius:10px;margin:0 8px;position:relative;overflow:hidden}.bx-stage canvas{width:100%;height:auto;display:block}.bx-info{flex-direction:column;gap:8px;padding:10px;font-size:13px;display:flex;overflow:auto}.bx-sprites{flex-wrap:wrap;gap:6px;display:flex}.bx-sprite{border:2px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-weight:600;display:flex}.bx-sprite.on{border-color:var(--primary)}.bx-vars{flex-wrap:wrap;gap:6px;display:flex}.bx-var{background:var(--primary-strong);color:var(--text-on-fill);border-radius:8px;padding:3px 8px;font-size:12px;font-weight:700}.bx-hint{background:var(--surface-2);color:var(--text-secondary);border-radius:10px;padding:8px 10px;line-height:1.5}.bx-banner{background:var(--warning-soft);color:var(--warning);padding:6px 10px;font-size:12px;font-weight:600}.bx.compact{grid-template-columns:clamp(300px,30vw,460px) 280px 1fr}.bx-stage-box{display:contents}.bx-stage-big-backdrop{z-index:95;background:var(--scrim-strong);place-items:center;display:grid;position:fixed;inset:0}.bx-stage-big{background:var(--surface);width:min(94vw,156.444vh - 106.667px);box-shadow:var(--shadow-pop);border-radius:14px;flex-direction:column;padding-bottom:8px;display:flex}.bx-stage-big .bx-info{max-height:20vh}.blk-color{cursor:pointer;vertical-align:middle;background:0 0;border:0;width:26px;height:18px;padding:0}.bx-ask{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:10px;gap:6px;padding:6px;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.bx-ask input{border:1px solid var(--border);border-radius:8px;flex:1;min-width:0;padding:6px 8px;font-size:14px}.bx-list{background:var(--surface);border:1px solid var(--border);border-radius:8px;max-width:100%;padding:3px 8px;font-size:12px}.bx-list b{margin-right:4px;font-weight:700}.bx-notice{color:var(--danger,#c0392b);margin:4px 8px 0;font-size:12px}@font-face{font-family:DgArrows;src:local(Arial),local(Segoe UI Symbol),local(Apple Symbols),local("Noto Sans Symbols 2"),local(DejaVu Sans);unicode-range:U+2190-2193}.dg-app,.dg-report,.modal,.dg-room,.dg-room-end,.dg-prejoin{font-family:"DgArrows", var(--font)}@font-face{font-family:Jua;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Jua-Regular.woff2)format("woff2")}:root{--font-kid:"DgArrows", "Jua", var(--font)}.dg-boot{background:var(--bg);min-height:100%}.dg-app{background:var(--bg);flex-direction:column;min-height:100%;display:flex}.dg-top{z-index:20;gap:12px;padding:10px 20px;position:sticky;top:0}.dg-brand-sub{color:var(--text-secondary);border-left:1px solid var(--border);padding-left:10px;font-size:15px;font-weight:600}.dg-brand-btn{all:unset;cursor:pointer;border-radius:8px}.dg-brand-btn:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.dg-top-title{font-size:17px;font-weight:700}.dg-hello{color:var(--text-secondary);font-size:18px;font-weight:600}.dg-me{align-items:center;gap:6px;font-weight:600;display:inline-flex}.dg-page{flex-direction:column;gap:16px;width:100%;max-width:1400px;margin:0 auto;padding:20px;display:flex}.dg-h2{margin:0;font-size:20px}.dg-h3{margin:8px 0 0;font-size:17px}.dg-table-card{padding:4px 12px;overflow-x:auto}.dg-table-scroll{overflow-x:auto}.dg-confirm{width:min(480px,100%)}.dg-confirm-body p{color:var(--text-secondary);margin:0;line-height:1.6}.btn.off{color:var(--room-danger)}.dg-join .login-card>.brand .brand-logo{height:44px}.dg-join-title,.dg-login-title{margin:0 0 4px;font-size:28px}.dg-login-title{margin-bottom:16px;font-size:22px}.dg-join-lead{color:var(--text-secondary);margin:0;font-size:19px}.dg-pin{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0 8px;display:grid}.dg-pin input{aspect-ratio:1;width:100%;min-width:0;height:auto;color:var(--text);padding:0;font-size:clamp(28px,9vw,40px)}.dg-join .enter-btn{width:100%}.dg-join-err{text-align:center;font-size:16px}.dg-ended{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.dg-ended h1{margin:12px 0 0;font-size:28px}.dg-ended p{color:var(--text-secondary);margin:0 0 10px;font-size:18px}.dg-room .room-top{min-width:0}.dg-room .room-top .brand{color:var(--room-ink);flex:none;font-size:16px}.dg-room .room-top .brand-logo{height:22px}.dg-room .dg-brand-sub{color:var(--room-ink-2);border-left-color:var(--room-line);font-size:14px}.dg-room .room-top .title{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.dg-room .room-top .pill{flex:none}.dg-elapsed{font-variant-numeric:tabular-nums}.dg-room .room-body{grid-template-columns:minmax(0,1fr) 300px}.dg-tutor.dg-room .room-body{grid-template-columns:minmax(0,1fr) 360px}.dg-room .room-main{overflow:hidden}.dg-stage{background:var(--room-deep);border-radius:12px;flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px;display:flex;overflow:auto}.dg-stage>*{flex:none}.room .dg-light{color:var(--text);background:var(--surface);border-color:var(--border)}.room .dg-light .btn{background:var(--surface);border-color:var(--border);color:var(--text)}.room .dg-light .btn:hover{border-color:var(--border-strong)}.room .dg-light .btn.primary{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.room .dg-light .btn.primary:hover{background:var(--primary-tint);border-color:var(--primary-ink);color:var(--primary-strong)}.room .dg-light .btn.danger{color:var(--danger)}.room .dg-light .btn.ghost{background:0 0;border-color:#0000}.room .dg-light .btn.ghost:hover{background:var(--surface-2)}.room .dg-light .btn:disabled,.room .dg-light .btn.primary:disabled{background:var(--surface-2);border-color:var(--border);color:var(--text-muted)}.room .dg-light .muted{color:var(--text-muted)}.room .dg-light .pill{background:var(--surface-2);color:var(--text-secondary)}.room .dg-light .pill.green{background:var(--success-soft);color:var(--success)}.room .dg-light .pill.red{background:var(--danger-soft);color:var(--danger)}.room .dg-light .pill.amber{background:var(--warning-soft);color:var(--warning)}.room .dg-light textarea{background:var(--surface-input);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-control);padding:9px 12px}.room .dg-light .banner.info{background:var(--info-soft);color:var(--info)}.room .dg-light .banner.alert{background:var(--danger-soft);color:var(--danger)}.room .dg-light .banner.warn{background:var(--warning-soft);color:var(--warning)}.dg-room-end .dg-ended{text-align:center;align-items:center;gap:14px;max-width:560px}.dg-room-end .brand{color:var(--room-ink)}.dg-room-end .brand-logo{height:34px}.dg-room-end .dg-ended h1{margin:8px 0 0;font-size:clamp(28px,4vw,36px)}.dg-room-end .dg-ended p{color:var(--room-ink-2);margin:0 0 8px;font-size:20px}.dg-student{font-size:18px}.dg-student .room-top .dg-hello{color:var(--room-ink);font-size:17px;font-weight:600}.dg-student .dg-stage{padding:clamp(12px,1.6vw,20px)}.dg-wait{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:clamp(40px,8vw,96px) 24px}.dg-wait h1,.dg-wait h2{color:var(--text);margin:0;font-size:clamp(26px,3.6vw,36px)}.dg-wait p{color:var(--text-secondary);margin:12px 0 0;font-size:19px}.dg-wait.done{background:var(--primary-soft);border-color:var(--primary-border)}.dg-wait.small{padding:40px 20px}.dg-wait.small h2{font-size:22px}.dg-wait.small p{font-size:15px}.dg-problem-card{padding:clamp(18px,3vw,32px)}.dg-appear{animation:.35s ease-out dg-appear}@keyframes dg-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.dg-submit-row{border-top:1px dashed var(--border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;margin-top:26px;padding-top:18px;display:flex}.dg-submit-row p{margin:0;font-size:16px}.dg-submit{min-width:200px}.dg-toast{z-index:60;background:var(--text);color:var(--bg);box-shadow:var(--shadow-pop);border-radius:999px;padding:12px 24px;font-size:18px;font-weight:700;animation:.25s ease-out dg-appear;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.dg-problem{flex-direction:column;gap:16px;display:flex}.dg-problem-title{margin:0;font-size:20px}.dg-say{letter-spacing:-.02em;word-break:keep-all;margin:0;font-size:clamp(21px,2.4vw,25px);font-weight:600;line-height:1.55}.dg-tip{background:var(--info-soft);color:var(--info);word-break:keep-all;border-radius:12px;margin:0;padding:10px 14px;font-size:17px;font-weight:500}.dg-ill{flex-direction:column;gap:12px;display:flex}.dg-ill-group{flex-direction:column;gap:14px;display:flex}.dg-ill-note{color:var(--text-secondary);margin:0;font-size:16px}.dg-legend{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;gap:14px;margin:6px 0 0;font-size:15px;display:flex}.dg-legend span{align-items:center;gap:4px;display:inline-flex}.dg-legend .dg-icon{width:20px;height:20px}.dg-legend-cone:before{content:"";border:8px solid #0000;border-top:0;border-bottom:14px solid #ff7a1a;width:0;height:0;display:inline-block}.dg-legend-goal:before{content:"";border:2px solid #2f7a39;border-bottom:0;width:16px;height:12px;display:inline-block}.dg-arrows{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dg-arrows li{background:var(--surface);border:2px solid var(--border);width:54px;height:54px;color:var(--primary-strong);border-radius:12px;place-items:center;font-size:30px;font-weight:700;display:grid}.dg-line{padding:4px 2px 2px;display:flex;overflow-x:auto}.dg-line-tick{flex-direction:column;flex:1 0 40px;align-items:center;display:flex}.dg-line-mark{place-items:center;height:42px;display:grid}.dg-line-mark .dg-icon{width:32px;height:32px}.dg-line-dot{width:100%;height:16px;position:relative}.dg-line-dot:before{content:"";border-top:3px solid var(--text-secondary);position:absolute;top:7px;left:0;right:0}.dg-line-dot:after{content:"";border-left:2px solid var(--text-secondary);height:13px;position:absolute;top:2px;left:50%}.dg-line-tick:first-child .dg-line-dot:before{left:50%}.dg-line-tick:last-child .dg-line-dot:before{right:50%}.dg-line-num{font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.dg-line-tick.me .dg-line-num{color:var(--primary-ink)}.dg-line-me{background:var(--primary);width:34px;height:34px;color:var(--text-on-fill);border-radius:50%;place-items:center;font-size:15px;display:inline-grid}.dg-players{flex-wrap:wrap;gap:10px;display:flex}.dg-player{background:var(--surface);border:2px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-weight:700;display:inline-flex}.dg-player i{background:var(--primary-tint);width:32px;height:32px;color:var(--primary-strong);border-radius:50%;place-items:center;font-style:normal;display:grid}.dg-pick-examples{flex-wrap:wrap;gap:8px;display:flex}.dg-pick-example{border:2px dashed var(--border-strong);background:var(--surface);border-radius:12px;padding:8px 14px;font-size:16px;font-weight:600}.dg-pick-example.more{color:var(--text-muted);border-style:dotted}.dg-scale{flex-direction:column;align-items:center;gap:10px;display:flex}.dg-scale-balls{flex-wrap:wrap;justify-content:center;gap:4px;max-width:520px;display:flex}.dg-scale-balls .dg-icon{width:30px;height:30px}.dg-scale-icon{width:160px;height:auto}.dg-table-wrap{overflow-x:auto}.dg-table{border-collapse:separate;border-spacing:0;background:var(--surface);border:2px solid var(--border);border-radius:12px;font-size:18px;overflow:hidden}.dg-table th,.dg-table td{text-align:center;border-right:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 16px}.dg-table tr:last-child>*{border-bottom:0}.dg-table tr>:last-child{border-right:0}.dg-table th{background:var(--surface-2);text-align:left;font-weight:700}.dg-table td.head{background:var(--primary-soft);font-weight:700}.dg-table td.ask{background:var(--primary-tint);color:var(--primary-strong);font-size:22px;font-weight:700}.dg-cards{flex-wrap:wrap;gap:10px;display:flex}.dg-card-num{background:var(--surface);border:2px solid var(--border-strong);width:58px;height:80px;box-shadow:0 3px 0 var(--border);border-radius:10px;place-items:center;font-size:26px;font-weight:700;display:grid}.dg-methods{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.dg-methods>div{background:var(--surface-2);border-radius:12px;padding:12px 16px}.dg-methods b{font-size:18px}.dg-methods p{color:var(--text-secondary);word-break:keep-all;margin:4px 0 0;font-size:16px;line-height:1.55}.dg-watches{flex-wrap:wrap;gap:10px;display:flex}.dg-watch{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;align-items:center;gap:8px;padding:6px 8px 6px 12px;font-size:16px;display:inline-flex}.dg-watch-val{color:#fff;text-align:center;background:#dd47d8;border-radius:6px;min-width:34px;padding:1px 12px;font-weight:700}.dg-watch.list{flex-direction:column;align-items:stretch;gap:4px;min-width:150px;padding:6px 10px}.dg-watch.list b{text-align:center}.dg-watch-empty{background:var(--surface-2);text-align:center;color:var(--text-muted);border-radius:6px;padding:10px;font-size:14px}.dg-watch.list small{color:var(--text-muted);font-size:12px}.dg-pitch{width:100%;aspect-ratio:var(--cols) / var(--rows);background:#3f9b4a;border:4px solid #2f7a39;border-radius:14px;margin:0 auto;position:relative;overflow:hidden}.dg-pitch-grid{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-template-rows:repeat(var(--rows), minmax(0, 1fr));width:100%;height:100%;display:grid}.dg-cell{min-width:0;min-height:0;color:inherit;background:0 0;border:2px solid #ffffff73;border-top:0;border-left:0;place-items:center;padding:0;display:grid;position:relative}.dg-cell.alt{background:#ffffff14}.dg-cell .dg-icon{width:72%;height:72%}button.dg-cell{cursor:pointer}button.dg-cell:hover:not(:disabled){background:#ffffff38}button.dg-cell:disabled{cursor:default}button.dg-cell:focus-visible{outline:3px solid var(--blk-running);outline-offset:-4px}.dg-cell.picked{background:#ffd16666}.dg-pick-mark{border:5px solid var(--blk-running);border-radius:50%;position:absolute;inset:14%;box-shadow:0 0 0 2px #0003,inset 0 0 0 2px #0000001f}.dg-ball{pointer-events:none;z-index:2;place-items:center;padding:0;transition:left .4s,bottom .4s;display:grid;position:absolute}.dg-ball .dg-icon{filter:drop-shadow(0 3px 2px #00000059);width:68%;height:68%}.dg-ball.bump{animation:.45s ease-in-out 2 dg-bump}@keyframes dg-bump{0%,to{transform:translate(0)}25%{transform:translate(-8%)}75%{transform:translate(8%)}}@media (prefers-reduced-motion:reduce){.dg-ball{transition:none}.dg-ball.bump,.dg-appear{animation:none}}.dg-grid-pick{flex-direction:column;gap:4px;display:flex}.dg-part{border:0;min-width:0;margin:10px 0 0;padding:0}.dg-q{word-break:keep-all;align-items:center;gap:10px;margin-bottom:12px;padding:0;font-size:clamp(19px,2vw,21px);font-weight:600;display:flex}.dg-q-num{background:var(--text);width:30px;height:30px;color:var(--bg);border-radius:50%;flex:none;place-items:center;font-size:16px;display:grid}.dg-multi-help{color:var(--primary-ink);margin:-4px 0 10px;font-size:16px;font-weight:600}.dg-options{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;display:grid}.dg-options.wide{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.dg-option{border:2px solid var(--border);background:var(--surface);min-height:68px;color:var(--text);text-align:left;word-break:keep-all;border-radius:16px;align-items:center;gap:12px;padding:12px 18px;font-size:22px;font-weight:700;transition:background .12s,border-color .12s,transform 60ms;display:flex}.dg-option:hover:not(:disabled){border-color:var(--border-strong)}.dg-option:active:not(:disabled){transform:translateY(1px)}.dg-option:disabled{cursor:default;color:var(--text)}.dg-option-mark{border:2px solid var(--border-strong);background:var(--surface);border-radius:50%;flex:none;width:26px;height:26px;position:relative}.dg-option.multi .dg-option-mark{border-radius:7px}.dg-option.on{border-color:var(--primary);background:var(--primary-tint);color:var(--primary-strong)}.dg-option.on .dg-option-mark{border-color:var(--primary-ink);background:var(--primary-ink);box-shadow:inset 0 0 0 4px var(--surface)}.dg-option.multi.on .dg-option-mark{box-shadow:none}.dg-option.multi.on .dg-option-mark:after{content:"✓";color:var(--text-on-fill);place-items:center;font-size:17px;line-height:1;display:grid;position:absolute;inset:0}.dg-blocks .blk{cursor:default;font-size:15px}.dg-stage-paper .dg-blocks .blk{font-size:17px}.dg-blocks .blk-row{gap:6px}.dg-blocks .blk-mouth-label{font-size:inherit}.dg-blocks .blk.hat.plain>.blk-row:before{content:none}.dg-blocks .blk.hat.plain>.blk-row{padding-left:18px}.dg-blocks .blk.reporter>.blk-row,.dg-blocks .blk.boolean>.blk-row{min-height:24px}.dg-blocks .blk.boolean>.blk-row{padding:1px 14px}.dg-in{color:#333;text-align:center;background:#fff;border-radius:10px;min-width:26px;padding:1px 9px;font-weight:700;line-height:1.45;display:inline-block}.dg-name{color:#fff;background:#00000038 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='white' stroke-width='2' fill='none'/%3E%3C/svg%3E") right 7px center no-repeat;border-radius:10px;padding:1px 22px 1px 9px;line-height:1.45;display:inline-block}.dg-script{flex-direction:column;align-items:flex-start;padding:2px 0 10px;display:flex}.dg-script>.blk.hat~.blk{margin-left:12px}.dg-scripts{border:1px solid var(--border);background-color:var(--bg);background-image:linear-gradient(var(--border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--border-soft) 1px, transparent 1px);background-size:24px 24px;border-radius:14px;flex-wrap:wrap;gap:14px 22px;padding:14px 16px;display:flex}.dg-script-card{flex-direction:column;gap:8px;min-width:0;max-width:100%;display:flex}.dg-script-scroll{padding:4px 4px 0;overflow-x:auto}.dg-script-title{align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.dg-script-label{background:var(--text);min-width:30px;height:30px;color:var(--bg);border-radius:8px;place-items:center;padding:0 8px;display:inline-grid}.dg-script-who{background:var(--surface);border:2px solid var(--primary);color:var(--primary-strong);border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 6px;display:inline-flex}.dg-script-who:before{content:"";background:var(--primary-tint);border:2px solid var(--primary);border-radius:50%;width:18px;height:18px}.dg-path{flex-direction:column;gap:14px;display:flex}.dg-run{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px}.dg-run-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.dg-run-btn{background:var(--success);color:var(--text-on-fill);border:0;border-radius:10px;align-items:center;gap:8px;padding:12px 22px;font-size:18px;font-weight:700;display:inline-flex}.dg-run-btn:disabled{opacity:.45;cursor:not-allowed}.dg-reset-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;align-items:center;gap:6px;padding:11px 16px;font-size:17px;font-weight:600;display:inline-flex}.dg-reset-btn:disabled{color:var(--text-muted);cursor:not-allowed}.dg-run-state{color:var(--text-secondary);font-size:16px;font-weight:600}.dg-maker{border:1px solid var(--border);border-radius:14px;grid-template-columns:minmax(0,320px) minmax(0,1fr);display:grid;overflow:hidden}.dg-maker.debug{grid-template-columns:minmax(0,1fr)}.dg-palette{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:12px;padding:14px;display:flex}.dg-workspace{background-color:var(--bg);background-image:linear-gradient(var(--border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--border-soft) 1px, transparent 1px);background-size:24px 24px;flex-direction:column;align-items:flex-start;gap:8px;min-height:280px;padding:14px;display:flex;position:relative}.dg-pane-title{color:var(--text-secondary);align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.dg-pane-title i{border-radius:5px;width:16px;height:16px;display:block}.dg-pane-help{color:var(--text-muted);margin:-6px 0 2px;font-size:15px}.dg-workspace .dg-pane-help{margin:-4px 0 6px}.dg-path .blk.stack>.blk-row{gap:10px;min-height:42px;padding:6px 12px 6px 16px;font-size:16px}.dg-blocks button.blk{color:#fff;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:inherit;font-weight:700;transition:filter .12s,transform 60ms}.dg-blocks button.blk:hover:not(:disabled){filter:brightness(1.08)}.dg-blocks button.blk:active:not(:disabled){transform:translateY(1px)}.dg-blocks button.blk:disabled{cursor:default;color:#fff}.dg-blocks button.blk.running{filter:drop-shadow(0 0 6px var(--blk-running-glow))}.dg-palette.full .blk{opacity:.45}.dg-move-icon{background:#ffffff47;border-radius:50%;place-items:center;width:26px;height:26px;font-size:17px;line-height:1;display:grid}.dg-clear{margin-top:auto}.dg-call{flex-direction:column;display:flex}.dg-tile .off.quiet{color:var(--room-ink-2);background:#0d0a0699;font-weight:600}.dg-call-actions{gap:6px;padding:0 10px 10px}.dg-call-actions .btn.sm{flex:1}.dg-join-media{width:100%;padding:11px;font-size:15px}.dg-call-error{color:var(--room-warning);margin:0;font-size:13px}.dg-unmute{background:var(--primary);color:var(--room-on-primary);z-index:2;border:0;border-radius:999px;padding:8px 14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dg-student-side .videos{grid-template-columns:minmax(0,1fr)}.dg-student-side .tile.other{order:-1}.dg-student-side .tile .name{font-size:13px}.dg-student-side .dg-call-actions .btn.sm{padding:8px 10px;font-size:14px}.dg-tutor-page{gap:14px}.dg-open-card{flex-direction:column;align-items:flex-start;gap:10px;padding:28px;display:flex}.dg-open-card h2,.dg-open-card p{margin:0}.dg-live{min-width:0;padding:18px 20px}.dg-live-head{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:10px;display:flex}.dg-live-title{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:12px;display:flex}.dg-live-note{margin-left:auto;font-size:13px}.dg-dots-wrap{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;margin-right:auto;display:inline-flex}.dg-dots{flex-wrap:wrap;align-items:center;gap:5px;margin:0;padding:0;list-style:none;display:flex}.dg-dots li{border:2px solid var(--border-strong);background:0 0;border-radius:50%;flex:none;width:12px;height:12px}.dg-dots li.gap{margin-left:9px;position:relative}.dg-dots li.gap:before{content:"";background:var(--border-strong);width:1px;height:14px;position:absolute;top:-3px;left:-9px}.dg-dots li.think{border-radius:3px}.dg-dots li.pass{background:var(--success);border-color:var(--success)}.dg-dots li.fail{background:var(--danger);border-color:var(--danger)}.dg-dots li.stop{background:var(--warning);border-color:var(--warning)}.dg-dots li.cur{border-color:var(--primary-ink);box-shadow:0 0 0 2px var(--primary-tint)}.dg-dots-count{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.dg-item-timer{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.dg-item-timer small{opacity:.8;font-size:12px}.room .dg-light .pill.dg-item-timer.inRange{background:var(--success-soft);color:var(--success)}.room .dg-light .pill.dg-item-timer.over{background:var(--warning-soft);color:var(--warning)}.dg-item-timer-row{font-variant-numeric:tabular-nums}.dg-item-timer-row em{font-style:normal;font-weight:700}.room-side .dg-item-timer-row.inRange em{color:var(--room-success)}.room-side .dg-item-timer-row.over em,.room-side .dg-item-timer-row.over .dg-item-timer-now{color:var(--room-warning)}.dg-pen-row{flex-wrap:wrap;gap:6px;display:flex}.dg-pen-toggle.on{background:var(--room-ink);color:var(--room);border-color:var(--room-ink)}.dg-pen-say{color:var(--room-ink-2);margin:0;font-size:12px;line-height:1.5}.dg-wait.small .btn{margin-top:18px}.dg-side-block{border-top:1px solid var(--room-line);flex-direction:column;gap:8px;padding:10px;display:flex}.dg-pin-card{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.dg-pin-label{color:var(--room-ink-2);flex-basis:100%;font-size:12px;font-weight:700}.dg-pin-digits{letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--room-link);margin-right:auto;font-size:30px;font-weight:700;line-height:1.1}.dg-online{color:var(--room-warning);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.dg-online i{background:var(--room-warning);border-radius:50%;width:10px;height:10px}.dg-online.on{color:var(--room-success)}.dg-online.on i{background:var(--room-success)}.dg-side-block.dg-action-row{flex-flow:wrap;gap:6px}.dg-side-scroll{flex:1;min-height:0;overflow:auto}.dg-side-scroll>div[hidden]{display:none}.dg-side-empty{margin:0;padding:14px 12px;font-size:13px}.room-side .dg-guide{color:var(--room-ink);background:0 0;border:0;border-radius:0;padding:12px}.room-side .dg-guide h4,.room-side .dg-guide-kv dt,.room-side .dg-judge-q{color:var(--room-ink-2)}.room-side .dg-answer{background:var(--room-success-soft);color:var(--room-success)}.room-side .dg-judge li{background:var(--room-3)}.room-side .dg-judge li.wrong{background:var(--room-danger-soft)}.room-side .dg-judge li.right{background:var(--room-success-soft)}.room-side .dg-judge-mis{color:var(--room-danger)}.dg-attempts.compact table.grid td{border-bottom-color:var(--room-line);padding:10px 12px}.dg-att-head{flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:14px;display:flex}.dg-att-meta{color:var(--room-ink-2);margin-top:3px;font-size:12px}.dg-att-note{flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;font-size:13px;display:flex}.dg-attempts.compact .dg-note{margin-top:6px}.dg-after{max-width:1080px}.dg-after-head h1{margin:0;font-size:26px}.dg-after-head p{margin:4px 0 0}.dg-result-room{background:var(--info-soft);color:var(--info);border-radius:10px;margin:0;padding:10px 14px;font-size:14px;font-weight:600}@media (width<=900px){.dg-room{grid-template-rows:auto 1fr;height:auto;min-height:100%}.dg-room .room-top{flex-wrap:wrap;min-height:52px;padding:8px 12px}.dg-room .room-body,.dg-tutor.dg-room .room-body{grid-template-columns:minmax(0,1fr)}.dg-room .room-main,.dg-stage{overflow:visible}.dg-room .room-side{border-left:0;border-top:1px solid var(--room-line)}.dg-student-side{order:-1}.dg-student-side .videos{grid-template-columns:repeat(2,minmax(0,1fr))}.dg-brand-sub{display:none}.room.dg-kid,.room.dg-troom{height:100%}}.dg-guide{padding:16px 18px;font-size:14px;line-height:1.55}.dg-guide-title{margin:0 0 10px;font-size:17px}.dg-guide h4{color:var(--text-muted);letter-spacing:0;margin:16px 0 6px;font-size:13px;font-weight:700}.dg-guide p{word-break:keep-all;margin:0}.dg-guide-kv{grid-template-columns:76px 1fr;gap:4px 10px;margin:0;display:grid}.dg-guide-kv dt{color:var(--text-muted)}.dg-guide-kv dd{margin:0;font-weight:600}.dg-answer{background:var(--success-soft);color:var(--success);border-radius:10px;padding:8px 10px;font-weight:600}.dg-judge{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dg-judge li{background:var(--surface-2);border-radius:10px;flex-direction:column;gap:3px;padding:8px 10px;display:flex}.dg-judge li.wrong{background:var(--danger-soft)}.dg-judge li.right{background:var(--success-soft)}.dg-judge-q{color:var(--text-secondary);font-size:13px}.dg-judge-a{flex-wrap:wrap;align-items:center;gap:8px;font-weight:700;display:flex}.dg-judge-mis{color:var(--danger);font-weight:600}.dg-judge-moves{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dg-move-line{letter-spacing:.05em;font-size:20px;font-weight:700}.dg-hints{margin:0 0 8px;padding-left:20px}.dg-hints li{margin-bottom:4px}.dg-strat{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dg-note{flex-direction:column;gap:6px;display:flex}.dg-note textarea{resize:vertical;width:100%;font-size:14px}.dg-note-ro{white-space:pre-wrap}.dg-attempts h3{margin:0 0 8px;font-size:17px}.dg-sub-text{max-width:260px;font-weight:600}.dg-note-cell{min-width:220px}.dg-note-preview{white-space:pre-wrap;margin-right:6px}.dg-result{flex-direction:column;gap:12px;display:flex}.dg-result h3{margin:6px 0 0;font-size:17px}.dg-result-levels{flex-wrap:wrap;gap:12px;display:flex}.dg-result-levels>div{background:var(--surface-2);border-radius:12px;flex-direction:column;flex:220px;gap:4px;padding:14px 18px;display:flex}.dg-result-levels>div.next{background:var(--primary-soft);border:1px solid var(--primary-border)}.dg-result-levels strong{font-size:28px}.dg-comment{resize:vertical;width:100%;line-height:1.6}.dg-home{max-width:1180px}.dg-tabs{align-self:flex-start;min-width:300px;margin:0}.dg-session-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.dg-session-card{text-align:left;font:inherit;cursor:pointer;flex-direction:column;align-items:flex-start;gap:8px;display:flex}.dg-session-card:hover{border-color:var(--primary)}.dg-session-name{font-size:20px;font-weight:700}.dg-session-go{color:var(--primary-ink);margin-top:4px;font-weight:700}.dg-report-wrap{background:var(--surface-2);min-height:100%;padding:0 16px 40px}.dg-report-tools{z-index:5;background:var(--surface-2);align-items:center;gap:10px;max-width:210mm;margin:0 auto;padding:14px 0;display:flex;position:sticky;top:0}.dg-report-error{max-width:210mm;margin:20px auto}.dg-report{color:#000;width:210mm;max-width:100%;min-height:297mm;box-shadow:var(--shadow-pop);background:#fff;border-radius:4px;flex-direction:column;gap:18px;margin:0 auto;padding:16mm 15mm;font-size:13.5px;display:flex}.dg-report h2{margin:0 0 8px;font-size:16px}.dg-report-head{border-bottom:2px solid var(--primary);justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.dg-report-head .brand-logo{height:28px}.dg-report-head h1{text-align:right;margin:0;font-size:22px}.dg-report-head p{text-align:right;margin:2px 0 0;font-size:12px}.dg-report-meta{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;display:grid}.dg-report-meta div{background:var(--surface-2);border-radius:8px;padding:8px 12px}.dg-report-meta dt{color:var(--text-muted);font-size:11px}.dg-report-meta dd{margin:2px 0 0;font-size:15px;font-weight:700}.dg-report-result{grid-template-columns:1fr 2fr;gap:10px;display:grid}.dg-report-result>div{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.dg-report-result>div.next{background:var(--primary-soft);border-color:var(--primary-border)}.dg-report-result span{color:var(--text-muted);font-size:12px}.dg-report-result strong{font-size:24px}.dg-report-result p{margin:2px 0 0;font-weight:600}.dg-report-levels{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.dg-report-levels li{background:var(--surface-2);border-radius:8px;grid-template-columns:56px 1fr auto;align-items:center;gap:10px;padding:6px 10px;display:grid}.dg-report-levels li.not-reached{border:1px dashed var(--border);color:var(--text-muted);background:0 0}.dg-report-items td{vertical-align:top}.dg-report-items th,.dg-report-items td{padding:6px}.dg-report-note{color:var(--text-secondary);white-space:pre-wrap;margin-top:3px;font-size:12px}.dg-report-comment p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.7}.dg-report-comment>p:first-of-type{background:var(--primary-soft);border-left:4px solid var(--primary);border-radius:0 8px 8px 0;padding:12px 14px}.dg-report-sign{text-align:right;font-size:12px;margin-top:8px!important}@page{size:A4;margin:12mm}@media print{html,body,#root{background:#fff;height:auto}.no-print{display:none!important}.dg-report-wrap{background:#fff;padding:0}.dg-report{width:auto;min-height:0;box-shadow:none;border-radius:0;padding:0}.dg-report,.dg-report *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.dg-report section,.dg-report tr,.dg-report-levels li{break-inside:avoid}}@media (width<=640px){.dg-report-meta,.dg-report-result{grid-template-columns:1fr}.dg-report{min-height:0;padding:20px 16px}.dg-top{padding:10px 14px}.dg-brand-sub{display:none}.dg-page{padding:14px}}.dg-prejoin{height:auto;min-height:100%}.dg-prejoin .note{color:var(--room-ink-2);margin:0;font-size:14px}@media (width<=680px){.dg-prejoin .prejoin-card{grid-template-columns:minmax(0,1fr)}}.dg-pin-say{color:var(--room-ink);flex-basis:100%;margin:2px 0 0;font-size:13px}.dg-pin-strip.waiting .dg-pin-digits{font-size:40px}.dg-pin-card .dg-pin-new{min-height:0;padding:2px 8px;font-size:12px}.dg-ink{pointer-events:none;touch-action:auto;z-index:3;position:absolute;top:0;left:0}.dg-ink.drawing{pointer-events:auto;touch-action:none;cursor:crosshair}.dg-ink.drawing.laser{cursor:none}.dg-ink.drawing.eraser{cursor:cell}.dg-laser{z-index:4}.dg-laser.student{background:#4c8dff;box-shadow:0 0 12px 4px #4c8dff8c}.dg-ink-bar{flex-wrap:wrap;flex:none;align-items:center;gap:6px 12px;padding:0 2px;display:flex}.dg-ink-bar .tools{box-shadow:0 4px 14px #00000059}.dg-ink-say{color:var(--room-ink-2);font-size:13px}.dg-ink-bar.kid .tools button{width:46px;height:46px;font-size:22px}.dg-ink-bar.kid .tools .swatch{width:24px;height:24px}.dg-ink-bar.kid .dg-ink-say{font-family:var(--font-kid);color:var(--room-ink);font-size:17px}.dg-stage-paper .dg-say,.dg-stage-paper .dg-q,.dg-stage-paper .dg-option,.dg-stage-paper .dg-run-msg,.dg-stage-paper .dg-run-btn,.dg-stage-paper .dg-reset-btn,.dg-stage-paper .dg-multi-help,.dg-stage-paper .dg-vnote,.dg-stage-paper .dg-tip,.dg-stage-paper .dg-part-step,.dg-stage-paper .dg-legend,.dg-stage-paper .dg-ps-note,.dg-stage-paper .dg-ps-foot .btn,.dg-student .dg-submit,.dg-student .dg-next,.dg-student .dg-submit-row p,.dg-student .dg-wait h1,.dg-student .dg-wait p,.dg-toast{font-family:var(--font-kid);letter-spacing:0;font-weight:400}.dg-student .dg-submit,.dg-student .dg-next{font-size:21px}.dg-part-steps{align-items:center;gap:8px;margin:4px 0 -4px;padding:0;list-style:none;display:flex}.dg-part-steps li{align-items:center;display:flex}.dg-part-steps li+li:before{content:"";background:var(--border-strong);width:14px;height:2px;margin-right:8px;display:inline-block}.dg-part-step{border:2px solid var(--border-strong);background:var(--surface);width:38px;height:38px;color:var(--text-secondary);border-radius:50%;place-items:center;padding:0;font-size:19px;display:grid}.dg-part-step.done{border-color:var(--primary);color:var(--primary-strong);background:var(--primary-tint)}.dg-part-step.on{background:var(--text);border-color:var(--text);color:var(--bg)}.dg-part-step:disabled{cursor:default}.dg-mon{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.dg-mon-stage{border:1px solid var(--border-strong);background:var(--surface);min-width:260px;max-width:100%;min-height:120px;box-shadow:inset 0 0 0 4px var(--surface-2);border-radius:12px;padding:14px 14px 30px;position:relative}.dg-mon-tag{color:var(--text-muted);font-size:12px;position:absolute;bottom:7px;right:10px}.dg-vnote{color:var(--text-secondary);word-break:keep-all;margin:0;font-size:17px}.dg-vnote b{color:var(--text);font-weight:400}.dg-run-msg{background:var(--surface-2);min-height:64px;color:var(--text-secondary);word-break:keep-all;border-radius:14px;align-items:center;margin:0 0 12px;padding:8px 14px;font-size:19px;line-height:1.35;display:flex;position:relative}.dg-run-msg:empty{background:0 0}.dg-run-msg.cone,.dg-run-msg.out,.dg-run-msg.stuck{background:var(--warning-soft);color:var(--warning)}.dg-run-msg.short{background:var(--info-soft);color:var(--info)}.dg-run-msg.end,.dg-run-msg.playing{background:var(--primary-tint);color:var(--primary-strong)}.dg-talk{border:2px solid var(--primary-border);border-radius:var(--radius);background:var(--primary-soft);text-align:center;padding:18px 22px}.dg-talk h1{font-family:var(--font-kid);color:var(--primary-ink);margin:0;font-size:clamp(26px,3.4vw,34px);font-weight:400}.dg-talk p{font-family:var(--font-kid);color:var(--text-secondary);margin:6px 0 0;font-size:20px}.dg-problem-card.talking .dg-option:disabled,.dg-problem-card.talking .dg-move:disabled{opacity:1;cursor:default}.dg-talk-row{justify-content:center}.dg-talk-row p{font-family:var(--font-kid)}.dg-rate{z-index:2;border:2px solid var(--room-success);background:var(--room-success-soft);border-radius:12px;flex-direction:column;gap:8px;margin:-2px -2px 14px;padding:12px;display:flex;position:sticky;top:0;box-shadow:0 6px 16px #00000059}.dg-rate-kicker{color:var(--room-ink);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.dg-rate-q{color:var(--room-ink);word-break:keep-all;margin:0;font-size:15px;font-weight:600}.dg-rate-btns{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dg-rate-btns.col{grid-template-columns:1fr}.room-side .btn.dg-rate-btn{text-align:left;white-space:normal;justify-content:flex-start;gap:8px;min-height:52px;padding:10px 12px;font-size:17px;font-weight:700;line-height:1.35}.dg-rate-btns:not(.col) .btn.dg-rate-btn{justify-content:center}.dg-rate-btn .pill{white-space:nowrap;flex:none}.room-side .btn.dg-rate-btn.ok{border-color:var(--room-success)}.room-side .btn.dg-rate-btn.no,.room-side .btn.dg-rate-btn.mid{border-color:var(--room-warning)}.dg-rate-note{color:var(--room-ink-2);margin:0;font-size:12px}.dg-rate-banner{flex:none}.dg-retry-note{background:var(--room-warning-soft);color:var(--room-warning);border-radius:10px;margin:0 0 10px;padding:8px 10px;font-size:13px;font-weight:600}.dg-att-why{color:var(--text-muted);font-size:12px}.room-side .dg-att-why{color:var(--room-ink-2)}.dg-first-story{opacity:.85}.dg-grade-cell{white-space:normal}.dg-grade-cell .pill+.pill,.dg-grade-cell .pill+.dg-att-why{margin-left:4px}.dg-skipped{margin:8px 12px;font-size:13px}.dg-dots li.skip{border-style:dashed}.dg-ai-pill{vertical-align:middle;margin-left:8px;font-size:13px}.dg-lock{font-weight:600}.dg-stage-frame{flex:auto;width:100%;min-width:0;min-height:0;position:relative}.dg-stage-paper{transform-origin:0 0;border-radius:18px;font-size:18px;position:absolute;overflow:hidden;box-shadow:0 10px 30px #00000059}.room .dg-stage-paper.dg-light{background:var(--surface);color:var(--text)}.dg-ps{gap:24px;padding:22px 24px;display:grid;position:absolute;inset:0}.dg-ps.mc{grid-template-columns:660px minmax(0,1fr)}.dg-ps.blocks{grid-template-columns:600px minmax(0,1fr)}.dg-ps-left,.dg-ps-right{flex-direction:column;gap:14px;min-width:0;min-height:0;display:flex}.dg-ps-head{flex-direction:column;flex:none;gap:10px;display:flex}.dg-ps-right{background:var(--surface-2);border-radius:16px;padding:16px 18px 12px}.dg-fit{flex:auto;min-height:0;position:relative;overflow:hidden}.dg-fit-in{transform-origin:0 0;width:100%;height:100%}.dg-ps-text{flex-direction:column;gap:16px;display:flex}.dg-ps-answer .dg-fit-in{flex-direction:column;gap:10px;display:flex}.dg-stage-paper .dg-say{font-size:26px;line-height:1.45}.dg-stage-paper .dg-q{font-size:24px}.dg-stage-paper .dg-tip{font-size:19px}.dg-stage-paper .dg-part{margin:0}.dg-stage-paper .dg-script-scroll{overflow:visible}.dg-stage-paper .dg-part-steps{flex:none;margin:0}.dg-stage-paper .dg-part-step{width:46px;height:46px;font-size:22px}.dg-stage-paper .dg-options{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.dg-stage-paper .dg-options.wide{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.dg-stage-paper .dg-option{min-height:72px;font-size:24px}.dg-ps-foot{box-sizing:border-box;border-top:1px dashed var(--border);flex:none;align-items:center;gap:12px;height:82px;padding-top:8px;display:flex}.dg-ps-note{-webkit-line-clamp:2;min-width:0;max-height:52px;color:var(--text-secondary);word-break:keep-all;-webkit-box-orient:vertical;flex:1 1 0;margin:0;font-size:19px;line-height:1.35;display:-webkit-box;overflow:hidden}.dg-ps-note .err{color:var(--danger)}.dg-ps-note .dg-sent{color:var(--primary-ink)}.room .dg-stage-paper .dg-ps-foot .btn.enter-btn{box-sizing:border-box;white-space:nowrap;border-radius:16px;flex:none;justify-content:center;width:200px;min-width:200px;height:66px;min-height:66px;padding:0 8px;font-size:24px}.dg-ps-foot .dg-run-btn{box-sizing:border-box;white-space:nowrap;border-radius:16px;flex:none;justify-content:center;gap:10px;width:150px;height:66px;min-height:66px;padding:0 8px;font-size:24px}.dg-ps-foot .dg-run-btn.on{background:var(--warning)}.dg-path.stage.only-run{display:block}.dg-path.stage .dg-run{padding:12px}.dg-path.stage .dg-run-msg{min-height:58px;margin-bottom:10px;font-size:20px}.dg-path.stage .dg-pitch{max-width:520px}.dg-path.stage.only-maker{flex-direction:column;gap:12px;height:100%;display:flex}.dg-path.stage .dg-maker{display:contents}.dg-path.stage .dg-palette{border:1px solid var(--border);border-right:1px solid var(--border);border-radius:14px;flex:none;gap:8px}.dg-path.stage .dg-workspace{border:1px solid var(--border);border-radius:14px;flex:auto;min-height:0}.dg-palette-list{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.dg-path.stage .dg-palette-list{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.dg-path.stage .blk.stack>.blk-row{gap:8px;min-height:38px;padding:5px 10px 5px 14px;font-size:15px}.room.dg-kid{grid-template:"top call""main main"minmax(0,1fr)/minmax(0,1fr) auto}.dg-kid>.dg-kid-top{grid-area:top;min-height:56px;padding:8px 16px}.dg-kid>.dg-kid-call{background:var(--room-2);border-bottom:1px solid var(--room-line);grid-area:call;min-width:0}.dg-kid>.dg-kid-main{flex-direction:column;grid-area:main;gap:10px;min-width:0;min-height:0;padding:10px 14px 12px;display:flex;overflow:hidden}.dg-kid .tile.other{order:-1}.dg-kid .tile .name{font-size:13px}.dg-kid-top .dg-ink-bar{padding:0}.dg-kid-top .dg-ink-bar .tools{box-shadow:none}.dg-kid.work .dg-call{flex-direction:row;align-items:center}.dg-kid.work .videos{grid-template-columns:repeat(2,112px);gap:6px;padding:6px}.dg-kid.work .dg-call-actions{flex-flow:column;gap:4px;padding:6px 8px 6px 0}.dg-kid.work .dg-call-actions .btn.sm{padding:6px 9px}.dg-kid.work .dg-call-lbl,.dg-troom.work .dg-call-lbl{display:none}.dg-kid.work .dg-join-media{width:auto;padding:8px 10px;font-size:13px}.room.dg-kid.face{grid-template:"top""call"minmax(0,1fr)"main"/minmax(0,1fr)}.dg-kid.face>.dg-kid-call{background:0 0;border:0;min-height:0;padding:12px 14px;display:flex}.dg-kid.face>.dg-kid-main{padding:0 14px;overflow:visible}.dg-kid.face>.dg-kid-main:empty{display:none}.dg-kid-greet{text-align:center;color:var(--room-ink);font-family:var(--font-kid)}.dg-kid-greet h1{margin:0;font-size:clamp(30px,4.4vw,46px);font-weight:400}.dg-kid-greet p{color:var(--room-ink-2);margin:6px 0 0;font-size:clamp(19px,2.2vw,24px)}@media (width<=640px){.room.dg-kid.work{grid-template:"top""call""main"minmax(0,1fr)/minmax(0,1fr)}.dg-kid.work>.dg-kid-call{justify-content:center;display:flex}.dg-kid.work .videos{grid-template-columns:repeat(2,96px)}}.dg-kid-greet.done h1,.dg-kid-greet.bye h1{color:var(--room-link)}.dg-kid-cap{text-align:center;font-family:var(--font-kid);color:var(--room-ink);flex:none;margin:0;font-size:21px}.dg-kid-banner,.dg-kid .dg-wait{flex:none}.room.dg-troom{grid-template:"top top"52px"main call""main side"minmax(0,1fr)/minmax(0,1fr) 360px}.dg-troom>.room-top{grid-area:top}.dg-troom>.dg-tcall{background:var(--room-2);border-left:1px solid var(--room-line);grid-area:call;min-width:0}.dg-troom>.dg-tmain{grid-area:main;overflow:hidden}.dg-troom>.dg-tside{grid-area:side;min-height:0}.dg-troom.work .videos{padding:8px 10px 4px}.dg-troom.work .dg-call-actions{padding:0 10px 8px}.dg-tside-scroll{flex:1;min-height:0;overflow:auto}.room.dg-troom.face{grid-template-areas:"top top""call side""call side"}.dg-troom.face>.dg-tmain{display:none}.dg-troom.face>.dg-tcall{background:var(--room);border-left:0;min-height:0;padding:12px 14px;display:flex}.dg-face-frame.on{flex:auto;width:100%;min-width:0;min-height:0;position:relative}.dg-face-frame.on>.dg-face-paper{transform-origin:0 0;box-sizing:border-box;flex-direction:column;padding:14px 16px 0;display:flex;position:absolute}.dg-face-frame.on .dg-call{flex-direction:column;flex:none;align-items:stretch;width:100%}.dg-face-frame.on .videos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;padding:0;display:grid}.dg-face-frame.on .tile{border-radius:22px}.dg-face-frame.on .tile .name{border-radius:9px;padding:5px 14px;font-size:22px;bottom:14px;left:14px}.dg-face-frame.on .tile .off{font-size:20px}.dg-face-frame.on .dg-call-actions{flex-direction:row;justify-content:center;gap:10px;padding:16px 0 0;display:flex}.dg-face-frame.on .dg-call-actions .btn.sm{flex:none;padding:10px 18px;font-size:18px}.dg-face-frame.on .dg-call-lbl{display:inline}.dg-face-frame.on .dg-join-media{width:auto;padding:12px 20px;font-size:18px}.dg-face-cap{flex-direction:column;flex:auto;justify-content:center;min-height:0;display:flex}.dg-face-cap .dg-kid-greet h1{font-size:46px}.dg-face-cap .dg-kid-greet p{font-size:24px}.dg-stage-head{color:var(--room-ink);flex-wrap:wrap;flex:none;align-items:center;gap:6px 8px;min-height:30px;display:flex}.dg-stage-head .dg-dots-count{color:var(--room-ink-2)}.dg-stage-title{font-size:15px}.dg-stage-head .pill{background:var(--room-3);color:var(--room-ink)}.dg-stage-head .pill.green{background:var(--room-success-soft);color:var(--room-success)}.dg-stage-head .pill.red{background:var(--room-danger-soft);color:var(--room-danger)}.dg-stage-head .pill.amber{background:var(--room-warning-soft);color:var(--room-warning)}.dg-stage-cap{color:var(--room-ink-2);text-align:center;margin:0;font-size:13px}.dg-wc-stage{justify-content:center}.dg-after-head .dg-edit-report{margin-top:10px;display:inline-flex}.dg-side-h{color:var(--room-ink-2);align-items:center;gap:6px;margin:0 0 6px;font-size:12px;font-weight:700;display:flex}.dg-flow-now{color:var(--room-link);font-size:14px}.dg-check{flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;font-weight:600;list-style:none;display:flex}.dg-check ul{color:var(--room-ink-2);margin:4px 0 0 26px;padding:0;font-size:13px;font-weight:500;list-style:none}.dg-check li.done{color:var(--room-success)}.dg-check-mark{border:2px solid var(--room-line);vertical-align:-4px;border-radius:5px;place-items:center;width:18px;height:18px;margin-right:6px;font-size:12px;display:inline-grid}.dg-check-mark.small{width:15px;height:15px;font-size:10px}.dg-check-mark.on{background:var(--room-success);border-color:var(--room-success);color:var(--room)}.dg-flow-btns{flex-direction:column;gap:6px;margin-top:6px;display:flex}.dg-flow-btns>.btn{justify-content:center;width:100%}.dg-flow-pair{flex-wrap:nowrap;gap:6px}.dg-flow-pair .btn{flex:1;justify-content:center}.dg-flow-btns .btn.on{background:var(--room-ink);color:var(--room)}.dg-flow-say{color:var(--room-ink-2);margin:0;font-size:12px;line-height:1.5}.dg-feed-list{flex-direction:column;gap:3px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.dg-feed-list li{gap:8px;line-height:1.4;display:flex}.dg-feed-list time{font-variant-numeric:tabular-nums;color:var(--room-ink-2);flex:none}.dg-feed-list li.ok span{color:var(--room-success);font-weight:700}.dg-feed-list li.bad span{color:var(--room-danger);font-weight:700}.dg-feed-list li.tutor span{color:var(--room-info)}.dg-feed-empty{color:var(--room-ink-2);margin:0;font-size:12px}.dg-review-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.dg-review-list button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;color:var(--room-ink);border-radius:8px;align-items:center;gap:8px;padding:5px 8px;font-size:13px;display:flex}.dg-review-list button:hover:not(:disabled){background:var(--room-3)}.dg-review-list button.on{background:var(--room-mine);outline:1px solid var(--room-link);cursor:default}.dg-review-list button:focus-visible{outline:2px solid var(--focus)}.dg-rv-no{background:var(--room-3);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.dg-rv-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.dg-rv-mark{color:var(--room-ink-2);flex:none;font-size:12px;font-weight:700}.dg-rv-mark.ok{color:var(--room-success)}.dg-rv-mark.bad{color:var(--room-danger)}.dg-rv-mark.mid{color:var(--room-warning)}.dg-rv-tries{color:var(--room-ink-2);flex:none;font-size:11px}.dg-rate{box-shadow:none;margin:16px 0 0;position:static}.room-side .btn.dg-rate-btn.on{background:var(--room-ink);color:var(--room)}.dg-side-tabs-wrap{border-top:1px solid var(--room-line)}.dg-side-tabs-wrap>div[hidden]{display:none}.dg-wc{min-height:0;color:var(--room-ink);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:12px;display:flex}.dg-wc-head{align-items:center;gap:10px;display:flex}.dg-wc-round{background:var(--primary);color:var(--room-on-primary);border-radius:999px;padding:4px 16px;font-size:18px;font-weight:800}.dg-wc-match{color:var(--room-ink-2);font-variant-numeric:tabular-nums;font-weight:700}.dg-wc-kicker{font-family:var(--font-kid);text-align:center;margin:0;font-size:clamp(22px,3vw,30px)}.dg-wc-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);place-items:center;gap:18px;width:min(100%,920px);display:grid}.dg-wc-card{all:unset;box-sizing:border-box;background:var(--surface);width:min(100%,40vh,300px);color:var(--text);border:3px solid var(--border);box-shadow:0 8px 0 var(--border-strong);border-radius:24px;flex-direction:column;align-items:stretch;transition:transform .1s,border-color .1s;display:flex;overflow:hidden}.dg-wc-pic{aspect-ratio:1;background:var(--surface-2);justify-content:center;align-items:center;display:flex;overflow:hidden}.dg-wc-pic img{object-fit:cover;object-position:50% 40%;width:100%;height:100%;display:block}.dg-wc-body{flex-direction:column;align-items:center;gap:5px;padding:8px 10px 12px;display:flex}.dg-wc-field{background:var(--primary);color:var(--room-on-primary);border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700}.dg-wc-keys{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;gap:4px 6px;font-size:14px;display:flex}.dg-wc-keys span:before{content:"#";opacity:.6}button.dg-wc-card{cursor:pointer}button.dg-wc-card:hover:not(:disabled){border-color:var(--primary);transform:translateY(-3px)}button.dg-wc-card:active:not(:disabled){box-shadow:0 4px 0 var(--border-strong);transform:translateY(3px)}button.dg-wc-card:focus-visible{outline:4px solid var(--focus);outline-offset:3px}button.dg-wc-card:disabled{cursor:default;opacity:.85}.dg-wc-emoji{font-size:min(14vh,120px);line-height:1}.dg-wc-label{font-family:var(--font-kid);font-size:min(4.6vh,36px);line-height:1.1}.dg-wc-vs{color:var(--room-link);letter-spacing:.04em;font-size:34px;font-weight:900}.dg-wc.done{gap:18px}.dg-wc-pair.one{grid-template-columns:minmax(0,1fr)}.dg-wc-crown{font-size:56px;line-height:1;position:absolute;top:-44px;left:50%;transform:translate(-50%)}.dg-wc-card.chosen{border-color:var(--primary);box-shadow:0 8px 0 var(--primary-ink), 0 0 0 6px #ecc98a73;transform:translateY(-4px)}.dg-wc-card.dim,button.dg-wc-card.dim:disabled{opacity:.55}.dg-wc-card.chosen.fresh{animation:.45s ease-out dg-wc-pop}@keyframes dg-wc-pop{0%{transform:scale(.94)}60%{transform:translateY(-4px)scale(1.04)}to{transform:translateY(-4px)}}.dg-wc-badge{background:var(--primary);color:var(--room-on-primary);border-radius:999px;align-items:center;gap:6px;padding:4px 14px;font-size:15px;font-weight:800;display:inline-flex}.dg-wc-badge.fresh{animation:.45s ease-out dg-wc-pop}.dg-wc-wait{color:var(--room-ink-2);font-size:15px}.dg-wc-next-row{flex-direction:column;align-items:center;gap:6px;min-height:84px;display:flex}.room .btn.dg-wc-next{justify-content:center;min-width:220px;height:56px;font-size:22px;font-weight:800}.dg-wc-next-say{color:var(--room-ink-2);margin:0;font-size:13px}.dg-wc-next-say.final{text-align:center;max-width:420px;color:var(--room-ink);font-size:14px}.dg-wc-sub{font-family:var(--font-kid);color:var(--room-ink-2);text-align:center;margin:-6px 0 0;font-size:19px}@media (prefers-reduced-motion:reduce){.dg-wc-card.chosen.fresh,.dg-wc-badge.fresh{animation:none}}.dg-troom .dg-wc-card{width:min(100%,34vh,250px)}.dg-troom .dg-wc-emoji{font-size:min(10vh,90px)}.dg-troom .dg-wc-label{font-size:min(4vh,30px)}.dg-troom .dg-wc-kicker{font-size:clamp(20px,2.4vw,26px)}.dg-wc-party{z-index:60;background:#0c0e14b8;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dg-wc-party-box{color:var(--room-ink);text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.dg-wc-party-kicker{font-family:var(--font-kid);color:var(--primary);margin:0;font-size:clamp(28px,4vw,42px)}.dg-wc-party-card{background:var(--surface);width:min(64vw,46vh,320px);color:var(--text);border:4px solid var(--primary);border-radius:28px;flex-direction:column;align-items:stretch;margin-top:36px;animation:.5s ease-out dg-wc-pop;display:flex;position:relative;box-shadow:0 0 0 10px #ecc98a47}.dg-wc-party-pic{aspect-ratio:1;background:var(--surface-2);border-radius:24px 24px 0 0;justify-content:center;align-items:center;display:flex;overflow:hidden}.dg-wc-party-pic img{object-fit:cover;object-position:50% 40%;width:100%;height:100%;display:block}.dg-wc-party-label{font-family:var(--font-kid);padding:10px 12px 14px;font-size:clamp(28px,4vh,40px);font-weight:400}.dg-wc-party-say{font-family:var(--font-kid);color:var(--room-ink-2);margin:0;font-size:clamp(18px,2.2vw,24px)}.room .btn.dg-wc-skip{justify-content:center;min-width:180px}@media (prefers-reduced-motion:reduce){.dg-wc-party-card{animation:none}}.dg-kid-greet .dg-wc-mark{background:var(--room-3);color:var(--room-ink);border-radius:999px;align-items:center;gap:6px;margin:14px 0 0;padding:6px 18px;font-size:20px;display:inline-flex}.dg-face-cap .dg-kid-greet .dg-wc-mark{font-size:22px}.dg-wc-mark b{color:var(--primary);font-weight:400}.dg-wc-mark-who{color:var(--room-ink-2)}.lg-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:22px 0 6px;padding:6px}.lg-sep{background:var(--border-soft);height:1px;margin:4px 10px}.lg-check{border-radius:var(--radius-control);align-items:center;gap:8px;padding:0 6px 0 0;transition:background .15s;display:flex}.lg-check:hover{background:var(--surface-2)}.lg-check label{cursor:pointer;flex:1;align-items:flex-start;gap:12px;min-width:0;padding:12px 10px;font-size:16px;line-height:1.45;display:flex}.lg-check input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.lg-box{border:1.5px solid var(--border-strong);background:var(--surface-input);border-radius:7px;flex:none;place-items:center;width:22px;height:22px;margin-top:0;transition:background .15s,border-color .15s;display:grid}.lg-box:after{content:"";border-bottom:2.5px solid #0000;border-left:2.5px solid #0000;width:10px;height:6px;transform:translateY(-1px)rotate(-45deg)}.lg-check.on .lg-box{background:var(--primary-tint);border-color:var(--primary-ink)}.lg-check.on .lg-box:after{border-color:var(--primary-ink)}.lg-check input:focus-visible+.lg-box{outline:2px solid var(--focus);outline-offset:2px}.lg-label{flex-direction:column;gap:2px;min-width:0;display:flex}.lg-label>.lg-tag{display:inline}.lg-tag{color:var(--text-muted);font-weight:600}.lg-tag.need{color:var(--primary-ink)}.lg-sub{color:var(--text-muted);font-size:13px;font-weight:400}.lg-view,.lg-link{font:inherit;color:var(--text-secondary);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);cursor:pointer;background:0 0;border:0;flex:none;padding:6px 4px;font-size:14px}.lg-view:hover,.lg-link:hover{color:var(--primary-strong);-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.lg-link{font-size:inherit;padding:0}.lg-note{color:var(--text-muted);margin:10px 2px 16px;font-size:14px;line-height:1.55}.lg-consent .enter-btn{margin-top:4px}.lg-modal{gap:14px;width:min(680px,100%);max-height:min(86vh,820px);overflow:hidden}.lg-modal .modal-head h3{font-size:19px}.lg-x{color:var(--text-muted);padding:6px 10px}.lg-modal-body{border:1px solid var(--border-soft);border-radius:var(--radius-control);background:var(--primary-soft);overscroll-behavior:contain;flex:1;min-height:0;margin:0 -4px;padding:14px 18px;overflow:auto}.lg-modal>.btn.primary{align-self:stretch;padding-block:12px}.lg-doc{color:var(--text-secondary);word-break:keep-all;overflow-wrap:anywhere;font-size:14.5px;line-height:1.7}.lg-doc>:first-child{margin-top:0}.lg-doc h2{color:var(--text);margin:0 0 6px;font-size:22px}.lg-doc h3{color:var(--text);margin:22px 0 6px;font-size:16px}.lg-doc h4{color:var(--text);margin:16px 0 4px;font-size:15px}.lg-doc p{margin:0 0 10px}.lg-doc ul,.lg-doc ol{margin:0 0 10px;padding-left:22px}.lg-doc li{margin:2px 0}.lg-doc strong{color:var(--text);font-weight:600}.lg-doc a{color:var(--primary-ink);text-underline-offset:2px}.lg-doc hr{border:0;border-top:1px solid var(--border);margin:18px 0}.lg-doc blockquote{border-left:3px solid var(--primary);background:var(--surface);border-radius:0 var(--radius-control) var(--radius-control) 0;margin:0 0 12px;padding:10px 14px}.lg-doc blockquote p:last-child{margin-bottom:0}.lg-quote-line{background:var(--primary-tint);color:var(--primary-strong);border-radius:6px;padding:1px 6px;font-weight:500;display:inline}.lg-table{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);margin:0 0 12px;overflow-x:auto}.lg-table table{border-collapse:collapse;width:100%;font-size:13.5px;line-height:1.55}.lg-table th,.lg-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border-soft);min-width:88px;padding:8px 10px}.lg-table th{background:var(--surface-2);color:var(--text);white-space:nowrap;font-weight:600}.lg-table tr:last-child td{border-bottom:0}.lg-page{background:var(--bg);flex-direction:column;align-items:center;gap:20px;min-height:100%;padding:28px 16px 20px;display:flex}.lg-page-head{width:min(820px,100%)}.lg-page-head a{color:inherit;text-decoration:none;display:inline-block}.lg-page-head .brand-logo{height:34px}.lg-page-body{width:min(820px,100%);padding:clamp(18px,4vw,36px)}.lg-footer{color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:6px 10px;padding:14px 16px;font-size:13px;display:flex}.lg-footer a{color:inherit;text-underline-offset:3px}.lg-footer strong{color:var(--text-secondary);font-weight:600}.login-wrap:has(>.lg-footer){position:relative}.login-wrap>.lg-footer{position:absolute;bottom:0;left:0;right:0}.rp-wrap{background:var(--surface-2);min-height:100%;font-family:"DgArrows", var(--font);padding:0 16px 48px}.rp-tools{z-index:5;background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:8px;max-width:210mm;margin:0 auto;padding:14px 0;display:flex;position:sticky;top:0}.rp-tools .spacer,.rp-panel-h .spacer,.rp-card-top .spacer,.rp-sign .spacer{flex:1}.rp-msg{max-width:210mm;margin:12px auto}.rp-muted{color:var(--text-muted);font-size:12px}.rp-picker{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 14px;max-width:210mm;margin:0 auto 12px;padding:12px 14px;display:grid}.rp-picker label{cursor:pointer;align-items:flex-start;gap:8px;padding:4px 0;display:flex}.rp-picker input{accent-color:var(--primary-ink);margin-top:3px}.rp-picker b{font-size:13.5px;display:block}.rp-picker small{color:var(--text-muted);font-size:11.5px}.rp-picker p{grid-column:1/-1;margin:4px 0 0}.rp-admin{flex-direction:column;gap:8px;max-width:210mm;margin:0 auto 12px;display:flex}.rp-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:10px 14px;display:flex}.rp-panel p{margin:0}.rp-panel-h{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rp-link-row{gap:6px;display:flex}.rp-link-row input{min-width:0;font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--primary-soft);flex:1;padding:6px 10px;font-size:13px}.rp-locked{text-align:center;max-width:520px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:14px;margin:12vh auto 0;padding:40px 28px;display:flex}.rp-locked svg{color:var(--primary-ink)}.rp-locked p{color:var(--text);word-break:keep-all;margin:0;font-size:16px;font-weight:600;line-height:1.7}.rp-doc{color:#000;width:210mm;max-width:100%;box-shadow:var(--shadow-pop);font-size:13px;line-height:1.5;font-family:"DgArrows", var(--font);background:#fff;border-radius:4px;flex-direction:column;gap:14px;margin:0 auto;padding:14mm 14mm 10mm;display:flex}.rp-head{border-bottom:2px solid var(--primary);justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.rp-head .brand-logo{height:28px}.rp-head h1{letter-spacing:-.02em;text-align:right;margin:0;font-size:24px}.rp-head p{text-align:right;color:var(--text-muted);margin:2px 0 0;font-size:12.5px}.rp-sec{break-inside:avoid}.rp-sec-items,.rp-sec-concepts,.rp-sec-thinking,.rp-sec-misconceptions,.rp-sec-notes,.rp-sec-firstLessons{break-inside:auto}.rp-sec>h2{letter-spacing:-.01em;color:var(--primary-strong);align-items:center;gap:8px;margin:0 0 8px;font-size:14.5px;display:flex}.rp-sec>h2:before{content:"";background:var(--primary);border-radius:2px;width:4px;height:14px}.rp-foot-line{border-top:1px solid var(--border-soft);color:var(--text-muted);text-align:right;margin-top:4px;padding-top:8px;font-size:10.5px}.rp-arr{font-family:Arial,Segoe UI Symbol,Apple Symbols,"Noto Sans Symbols 2",sans-serif}.rp-code{background:var(--surface-2);min-width:30px;color:var(--text-secondary);text-align:center;border-radius:6px;margin-right:6px;padding:0 6px;font-size:11px;font-weight:700;display:inline-block}.rp-eyebrow{color:var(--primary-ink);letter-spacing:.02em;font-size:11.5px;font-weight:700}.rp-chip{background:var(--surface-2);color:var(--text-secondary);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:1px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.rp-chip b{opacity:.75;font-weight:700}.rp-chip.ok{background:var(--success-soft);color:var(--success)}.rp-chip.mid{background:var(--warning-soft);color:var(--warning)}.rp-chip.no{background:var(--danger-soft);color:var(--danger)}.rp-chip.off{color:var(--text-muted);border-color:var(--border);background:#fff}.rp-chip.info{background:var(--info-soft);color:var(--info)}.rp-chips{flex-wrap:wrap;gap:5px;display:flex}.rp-info{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:0;display:grid}.rp-info div{background:var(--surface-2);border-radius:8px;padding:7px 12px}.rp-info dt{color:var(--text-muted);font-size:11px}.rp-info dd{margin:1px 0 0;font-size:14px;font-weight:700}.rp-duo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.rp-stat{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.rp-stat>span{color:var(--text-muted);font-size:12px;font-weight:600}.rp-stat strong{letter-spacing:-.02em;font-size:24px}.rp-stat small{color:var(--text-secondary);font-size:12px}.rp-meter{gap:3px;margin-top:6px;display:flex}.rp-meter i{background:var(--border-soft);border-radius:4px;flex:1;height:7px}.rp-meter i.f{background:var(--primary)}.rp-course{background:var(--primary-soft);border:1px solid var(--primary-border);border-radius:12px;align-items:center;gap:16px;padding:14px 16px;display:flex}.rp-course-mark{background:var(--primary);color:#fff;border-radius:50%;flex:none;place-items:center;width:58px;height:58px;font-size:24px;font-weight:700;display:grid}.rp-course strong{letter-spacing:-.02em;font-size:22px;display:block}.rp-course p{color:var(--text-secondary);margin:2px 0 0;font-weight:600}.rp-list{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.rp-list li::marker{color:var(--primary)}.rp-levels-track{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.rp-lv{text-align:center;background:var(--surface-2);border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:18px 6px 8px;display:flex;position:relative}.rp-lv b{font-size:12.5px}.rp-lv small{color:var(--text-secondary);font-size:11px;font-weight:600}.rp-lv.passed{background:var(--success-soft)}.rp-lv.stopped{background:var(--warning-soft)}.rp-lv.not-reached{border:1px dashed var(--border-strong);background:#fff}.rp-lv.not-reached b,.rp-lv.not-reached small{color:var(--text-muted)}.rp-lv.start{border:2px solid var(--primary);box-shadow:0 0 0 3px var(--primary-tint)}.rp-lv-flag{background:var(--primary);color:#fff;white-space:nowrap;border-radius:999px;padding:0 8px;font-size:10.5px;font-weight:700;position:absolute;top:-9px;left:50%;transform:translate(-50%)}.rp-lv-blocks,.rp-lv-think{justify-content:center;gap:3px;min-height:10px;display:flex}.rp-lv-blocks i{border:1.5px solid var(--border-strong);background:#fff;border-radius:3px;width:11px;height:11px}.rp-lv-blocks i.f{background:var(--primary);border-color:var(--primary)}.rp-lv-think i,.rp-legend .dot{border:1.5px solid var(--border-strong);background:#fff;border-radius:50%;width:10px;height:10px}.rp-lv-think i.ok,.rp-legend .dot.ok{background:var(--success);border-color:var(--success)}.rp-lv-think i.mid,.rp-legend .dot.mid{background:#e3a93a;border-color:#e3a93a}.rp-lv-think i.no,.rp-legend .dot.no{background:var(--danger);border-color:var(--danger)}.rp-legend{color:var(--text-muted);flex-wrap:wrap;gap:4px 14px;margin:8px 0 0;font-size:11px;display:flex}.rp-legend span{align-items:center;gap:4px;display:inline-flex}.rp-legend i{display:inline-block}.rp-legend .sq{border:1.5px solid var(--border-strong);background:#fff;border-radius:3px;width:10px;height:10px}.rp-legend .sq.f{background:var(--primary);border-color:var(--primary)}.rp-concepts{flex-direction:column;gap:7px;display:flex}.rp-concept-row{grid-template-columns:104px minmax(0,1fr);align-items:start;gap:10px;display:grid}.rp-concept-h{padding-top:2px;font-size:12px;font-weight:700}.rp-concept-h em{color:var(--text-muted);margin-left:2px;font-style:normal;font-weight:600}.rp-concept-h.ok{color:var(--success)}.rp-concept-h.mid{color:var(--warning)}.rp-concept-h.no{color:var(--danger)}.rp-concept-h.off{color:var(--text-muted)}.rp-table{border-collapse:collapse;width:100%;font-size:12.5px}.rp-table th{white-space:nowrap;text-align:left;color:var(--text-muted);border-bottom:1.5px solid var(--border);padding:4px 6px;font-size:11px;font-weight:600}.rp-table td{border-bottom:1px solid var(--border-soft);vertical-align:top;padding:6px}.rp-table tr{break-inside:avoid}.rp-table .nowrap{white-space:nowrap}.rp-table .w-time{width:150px}.rp-sub{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:2px;font-size:11.5px;display:flex}.rp-ans{color:var(--text-secondary);margin-top:2px;font-size:11.5px}.rp-time{flex-direction:column;gap:2px;display:flex}.rp-time-bar{background:var(--surface-2);border-radius:4px;height:8px;position:relative;overflow:hidden}.rp-time-exp{background:var(--primary-tint);border-left:1px solid var(--primary-border);border-right:1px solid var(--primary-border);position:absolute;top:0;bottom:0}.rp-time-act{background:var(--primary-strong);border-radius:2px;height:4px;position:absolute;top:2px;left:0}.rp-time-act.over{background:var(--danger)}.rp-time-t{font-size:11.5px;font-weight:600}.rp-time-t small{color:var(--text-muted);font-weight:400}.rp-foot{color:var(--text-muted);margin:6px 0 0;font-size:11.5px}.rp-cards{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:8px;display:grid}.rp-card{border:1px solid var(--border);border-top:4px solid var(--border-strong);break-inside:avoid;border-radius:10px;flex-direction:column;gap:3px;padding:8px 10px;display:flex}.rp-card.ok{border-top-color:var(--success)}.rp-card.mid{border-top-color:#e3a93a}.rp-card.no{border-top-color:var(--danger)}.rp-card.off{opacity:.75}.rp-card-top{align-items:center;gap:4px;display:flex}.rp-card b{font-size:13px}.rp-card p{margin:0;font-size:11.5px}.rp-strat em{color:var(--text-muted);font-style:normal}.rp-link{color:var(--text-secondary)}.rp-notes{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rp-notes li{background:var(--surface-2);border-radius:8px;padding:7px 12px}.rp-notes p{white-space:pre-wrap;margin:3px 0 0}.rp-quote{background:var(--primary-soft);border-left:4px solid var(--primary);white-space:pre-wrap;border-radius:0 10px 10px 0;margin:0;padding:12px 16px;font-size:14px;line-height:1.75}.rp-sign{background:var(--primary-strong);color:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 0;padding:10px 14px;font-size:13.5px;font-weight:700;display:flex}.rp-sign .ok{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;display:inline-grid}.rp-parent-bar{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:210mm;margin:0 auto;padding:18px 0 14px;display:flex}.rp-parent-bar p{color:var(--text-secondary);word-break:keep-all;margin:0}.rp-save{border-radius:14px;min-width:240px;padding:14px 40px;font-size:18px}.rp-parent-err{color:var(--danger);font-weight:600}.rp-parent-closed{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:480px;font-family:var(--font);flex-direction:column;align-items:center;gap:10px;margin:14vh auto 0;padding:36px 24px;display:flex}.rp-parent-closed .brand-logo{height:26px}.rp-parent-closed h1{word-break:keep-all;margin:8px 0 0;font-size:21px}.rp-parent-closed p{color:var(--text-secondary);word-break:keep-all;margin:0;line-height:1.7}.rp-uh>h2{margin:4px 0 0;font-size:16px}.rp-text{white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere;margin:0;font-size:13.5px;line-height:1.75}.rp-text b{font-weight:700}.rp-replay{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.rp-replay-h{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rp-replay-h .spacer{flex:1}.rp-replay-h b{font-size:14px}.rp-replay-cap{border-left:4px solid var(--primary);background:var(--primary-soft);word-break:keep-all;border-radius:0 8px 8px 0;margin:0;padding:7px 12px;font-weight:600}.rp-replay-say{color:var(--text-secondary);word-break:keep-all;margin:0;font-size:13px}.rp-replay-path{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}.rp-replay-board{flex-direction:column;gap:6px;min-width:0;display:flex}.rp-pitch-wrap{width:100%;margin:0 auto;position:relative}.rp-pitch-wrap .dg-pitch{border-width:3px}.rp-trail{z-index:1;pointer-events:none;width:calc(100% - 6px);height:calc(100% - 6px);position:absolute;inset:3px;overflow:visible}.rp-replay-msg{color:var(--text-secondary);text-align:center;word-break:keep-all;margin:0;font-size:12px}.rp-replay-ctl{justify-content:center;display:flex}.rp-replay-script{flex-direction:column;gap:6px;min-width:0;display:flex}.rp-replay-script .blk{font-size:12.5px}.rp-replay-script .dg-script{gap:0}.rp-replay-first,.rp-replay-correct{margin:0}.rp-replay-correct{color:var(--success);font-size:12px;font-weight:600}.rp-replay-mc{flex-direction:column;gap:8px;display:flex}.rp-replay-ill{font-size:12px}.rp-replay-ill .dg-ill,.rp-replay-ill>*{max-width:100%}.rp-replay-vars{flex-wrap:wrap;gap:4px;margin:0;display:flex}.rp-replay-scripts .blk{font-size:12px}.rp-replay-scripts .dg-scripts{flex-wrap:wrap;gap:10px;display:flex}.rp-replay-part{flex-direction:column;gap:4px;display:flex}.rp-replay-q{word-break:keep-all;align-items:baseline;gap:6px;margin:0;font-weight:700;display:flex}.rp-replay-qn{color:#fff;background:#000;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:11px;display:inline-grid}.rp-replay-opts{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:5px;margin:0;padding:0;list-style:none;display:grid}.rp-replay-opts li{border:1.5px solid var(--border);word-break:keep-all;border-radius:9px;align-items:center;gap:6px;padding:5px 9px;font-size:12.5px;display:flex}.rp-replay-opts li em{color:var(--primary-strong);white-space:nowrap;margin-left:auto;font-size:10.5px;font-style:normal;font-weight:700}.rp-replay-opts li em.ans{color:var(--success);margin-left:4px}.rp-replay-opts li.on{border-color:var(--primary);background:var(--primary-tint);font-weight:700}.rp-replay-opts li.right{border-color:var(--success)}.rp-replay-opts li.on.wrong{border-color:var(--danger);background:var(--danger-soft)}.rp-replay-opts .mark{border:1.5px solid var(--border-strong);border-radius:50%;flex:none;width:12px;height:12px}.rp-replay-opts .mark.multi{border-radius:3px}.rp-replay-opts li.on .mark{background:var(--primary-ink);border-color:var(--primary-ink)}.rp-replay-grid{flex-direction:column;gap:4px;display:flex}.rp-editbar{z-index:4;background:var(--surface);border:2px solid var(--primary);border-radius:var(--radius);max-width:210mm;box-shadow:var(--shadow-pop);flex-direction:column;gap:6px;margin:0 auto 12px;padding:10px 14px;display:flex;position:sticky;top:58px}.rp-editbar p{margin:0}.rp-editbar-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rp-editbar-row .spacer{flex:1}.rp-conflict{background:var(--warning-soft);border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.rp-restore{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding-top:6px;display:flex}.rp-editing .rp-sec,.rp-editing .rp-blk-ghost{outline:1px dashed var(--border);outline-offset:4px;border-radius:4px;position:relative}.rp-editing .rp-ublk{outline-color:var(--primary-border)}.rp-blk-tools{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.rp-blk-tools .spacer{flex:1}.rp-blk-tag{color:var(--text-muted);background:var(--surface-2);border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700}.rp-blk-tag.user{color:var(--primary-strong);background:var(--primary-soft)}.rp-blk-ghost{background:var(--surface-2);color:var(--text-muted);flex-direction:column;gap:2px;padding:8px 10px;font-size:12px;display:flex}.rp-blk-ghost .rp-blk-tools{margin-bottom:0}.rp-gap{justify-content:center;margin:-6px 0;display:flex}.rp-gap-btn{border:1.5px dashed var(--primary-border);color:var(--primary-strong);font:inherit;cursor:pointer;opacity:.75;background:0 0;border-radius:999px;padding:3px 14px;font-size:12px;font-weight:700}.rp-gap-btn:hover:not(:disabled),.rp-gap-btn:focus-visible{opacity:1;background:var(--primary-soft)}.rp-gap-btn:disabled{opacity:.35;cursor:default}.rp-gap.open{background:var(--primary-soft);border-radius:10px;flex-wrap:wrap;gap:6px;margin:0;padding:8px}.rp-blk-form{border:2px solid var(--primary);background:var(--surface);border-radius:10px;padding:12px}.rp-form{flex-direction:column;gap:8px;display:flex}.rp-form-h{font-size:13.5px}.rp-input{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-control);color:#000;resize:vertical;background:#fff;padding:8px 10px;font-size:14px}.rp-form-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.rp-form-err{color:var(--danger);margin:0;font-size:12.5px;font-weight:600}.rp-check{cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.rp-pick-list{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;max-height:260px;padding:4px;display:flex;overflow:auto}.rp-pick-list label{cursor:pointer;border-radius:6px;align-items:flex-start;gap:8px;padding:6px 8px;display:flex}.rp-pick-list label.on{background:var(--primary-soft)}.rp-pick-list b{font-size:12.5px;display:block}.rp-pick-list small{color:var(--text-muted);word-break:break-all;font-size:11.5px}@media screen and (width<=720px){.rp-replay-path{grid-template-columns:1fr}.rp-editbar{z-index:6;max-height:45vh;margin:0;padding:8px 10px;position:fixed;inset:auto 8px 8px;overflow:auto}.rp-wrap-editing{padding-bottom:180px}.rp-edit-help{display:none}.rp-doc{padding:20px 16px}.rp-duo{grid-template-columns:1fr}.rp-levels-track{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:14px}.rp-concept-row{grid-template-columns:1fr;gap:4px}.rp-table .w-time{width:96px}.rp-table th:nth-child(2),.rp-table td:nth-child(2){display:none}}@media print{html,body,#root{background:#fff;height:auto}.no-print{display:none!important}.rp-wrap{background:#fff;padding:0}.rp-doc{width:auto;min-width:0;max-width:none;box-shadow:none;border-radius:0;gap:12px;padding:0}.rp-doc>*{min-width:0}.rp-doc,.rp-doc *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rp-table tr,.rp-card,.rp-lv,.rp-notes li,.rp-concept-row{break-inside:avoid}.rp-sec>h2{break-after:avoid}}.rp-int{flex-direction:column;gap:8px;display:flex}.rp-int-row{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px;display:grid}.rp-int-h{color:var(--text-muted);font-size:12px;font-weight:700}.rp-ichip{border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.rp-ichip small{color:var(--text-muted);font-size:11px;font-weight:400}.rp-ichip.win{background:var(--primary-tint);color:var(--primary-strong);border-color:#0000;padding:6px 14px;font-size:14px;font-weight:700}.rp-ichip.win small{color:var(--primary-strong);opacity:.8;font-weight:600}.rp-ichip .w{letter-spacing:1px;color:var(--primary-strong);opacity:.75;font-size:9px}.rp-int-note{margin:0}.rp-int-top{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.rp-int-top .rp-ichip.win{padding:7px 16px;font-size:16px}.rp-int-field{background:var(--surface-2);color:var(--text-secondary);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.rp-int-keys{color:var(--text-muted);font-size:13px}.rp-sec-override .rp-text{font-size:13.5px}.rp-wrap-editing .rp-tools,.rp-wrap-editing .rp-admin,.rp-wrap-editing .rp-picker,.rp-wrap-editing .rp-msg,.rp-wrap-editing .rp-comment-panel{max-width:min(100%,1353.7px)}.rp-comment-panel{max-width:210mm;margin:0 auto 12px}.rp-comment-after{margin-top:14px}.rp-comment-after .rp-comment-panel{max-width:none;margin:0}.rp-comment-panel .rp-form-row{align-items:center}.rp-edit-grid{grid-template-columns:minmax(0,1fr) minmax(0,210mm);align-items:start;gap:16px;max-width:1353.7px;margin:0 auto;display:grid}.rp-edit-grid.side-closed{grid-template-columns:180px minmax(0,210mm)}.rp-side{flex-direction:column;gap:8px;min-width:0;max-height:calc(100vh - 66px);padding-bottom:8px;display:flex;position:sticky;top:58px;overflow:auto}.rp-side-toggle{align-self:flex-start}.rp-main{min-width:0}.rp-rpanel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.rp-rpanel p{margin:0}.rp-rpanel-h{flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;min-height:26px;display:flex}.rp-rpanel-h>b,.rp-rpanel-h>.rp-chip,.rp-clock{flex:none}.rp-rpanel-h .spacer,.rp-segs .spacer{flex:1}.rp-rpanel-title{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.rp-clock{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700}.rp-rpanel-ctl{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rp-play{justify-content:center;min-width:96px}.rp-rec-btn{color:#c62828;border-color:#e7a3a3;justify-content:center;min-width:92px}.rp-rec-btn.on{color:#fff;background:#c62828;border-color:#c62828}.rp-speed{align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.rp-speed select{font:inherit;padding:2px 4px;font-size:12.5px}.rp-slider{width:100%;accent-color:var(--primary-ink);margin:0}.rp-track{background:var(--surface-2);border-radius:5px;height:10px;margin-bottom:-4px;position:relative;overflow:hidden}.rp-track i{position:absolute;top:0;bottom:0}.rp-track .seg{opacity:.75;border-right:1px solid #fff}.rp-track .sel{background:#ffc40099}.rp-track .sel.rec{background:#e539358c}.rp-track .sel.problem{background:#ffa00099}.rp-track .mark.cap{background:#e53935;width:4px;margin-left:-2px}.rp-track .mark{background:#b77900;width:3px}.rp-track .now{background:var(--text);width:2px}.st-lobby,.st-farewell,.st-done{background:#c9ced6}.st-interest{background:#2fa59a}.st-solve{background:var(--primary)}.st-review{background:#7a6ff0}.rp-quote-box{background:var(--primary-soft);border-radius:10px;flex-direction:column;gap:8px;padding:8px;display:flex}.rp-quote-acts{flex-wrap:wrap;gap:6px;display:flex}.rp-quote-acts .btn.on{background:var(--primary-tint);border-color:var(--primary)}.rp-pick-hint{color:var(--primary-strong);font-size:12.5px;font-weight:600}.rp-quote-how{font-size:12px}.rp-picked{border:1px dashed var(--primary-border);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;min-height:34px;padding:4px 8px;font-size:12.5px;display:flex}.rp-picked.on{border-style:solid;border-color:var(--primary)}.rp-picked .spacer{flex:1}.rp-picked-k{color:#b77900;font-size:11.5px;font-weight:700}.rp-picked b{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}.rp-segs.picking{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}.rp-segs button:disabled{opacity:.4;cursor:default}.rp-segs button.chosen{background:#fff5dc;box-shadow:inset 3px 0 #b77900}.rp-seg-pick{color:var(--primary-strong);border:1px solid var(--primary-border);border-radius:999px;padding:0 6px;font-size:11px;font-style:normal;font-weight:700}.rp-gap-msg{text-align:center;flex-basis:100%;margin:0}.rp-rec{border:1px solid var(--border);background:#fff;border-radius:10px;flex-direction:column;justify-content:center;gap:6px;min-height:52px;padding:8px 10px;display:flex}.rp-rec.idle p{font-size:12.5px}.rp-rec.on{background:#fff5f5;border-color:#e7a3a3;flex-flow:wrap;align-items:center;gap:8px}.rp-rec-dot{background:#e53935;border-radius:50%;width:12px;height:12px;animation:1s steps(2,start) infinite rp-rec-blink;box-shadow:0 0 0 3px #e5393533}@keyframes rp-rec-blink{to{visibility:hidden}}.rp-rec-label{color:#c62828}.rp-rec-time{font-variant-numeric:tabular-nums;font-weight:600}.rp-rec.on small{margin-left:auto}.rp-rec.done{border-color:var(--primary-border)}.rp-rec-sum{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:0;font-size:19px;font-weight:600}.rp-rec-sum b{color:var(--primary-strong);font-size:22px;font-weight:800}.rp-rec-sum span{color:var(--text-secondary);font-size:16px}.rp-rec-nudge{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px;font-size:12.5px;font-weight:600;display:flex}.rp-rec-nudge .btn.sm{min-height:0;padding:2px 8px;font-size:12px}.rp-rec-nudge .gap{margin-left:10px}.rp-rec-note{color:#b77900;font-weight:600}.rp-segs{flex-direction:column;gap:2px;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.rp-segs button{width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;font-size:12.5px;display:flex}.rp-segs button:hover{background:var(--surface-2)}.rp-segs button.on{background:var(--primary-tint)}.rp-segs small{color:var(--text-muted);font-variant-numeric:tabular-nums}.rp-seg-dot{border-radius:50%;flex:none;width:9px;height:9px}.rp-seg-p{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rp-gap.cursor{flex-wrap:wrap;align-items:center;gap:6px}.rp-gap.cursor .rp-gap-btn{opacity:1;background:var(--primary-soft);border-style:solid}.rp-cursor-tag{color:#b77900;font-size:11.5px;font-weight:700}.rp-sec-modal{flex-direction:column;gap:10px;width:min(560px,100%);max-height:86vh;display:flex;overflow:auto}.rp-sec-modal h3,.rp-sec-modal p{margin:0}.rp-sec-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.rp-sec-list button{text-align:left;width:100%;font:inherit;border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.rp-sec-list button:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft)}.rp-sec-list button:disabled{opacity:.5;cursor:not-allowed}.rp-sec-list span{flex-direction:column;flex:1;min-width:0;display:flex}.rp-sec-list b{font-size:14px}.rp-sec-list small{color:var(--text-muted);font-size:12px}.rp-sec-list em{color:var(--text-muted);white-space:nowrap;font-size:11.5px;font-style:normal}.rp-result-pick{background:var(--primary-soft);border:1px solid var(--primary-border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:8px;padding:8px 10px;display:flex}.rp-result-h{font-size:12.5px}.rp-result-pick label{align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.rp-result-pick select{font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-control);color:#000;background:#fff;padding:3px 6px;font-size:13px}.rp-result-pick small,.rp-result-pick .rp-form-err{flex-basis:100%}.rp-stage{aspect-ratio:760/570;background:var(--surface-2);border-radius:12px;flex:none;width:100%;position:relative;overflow:hidden}.rp-stage-in{transform-origin:0 0;position:absolute;top:0;left:0}.rp-screen{background:var(--surface-2);color:var(--text);font-family:var(--font);box-sizing:border-box;border-radius:12px;flex-direction:column;gap:10px;min-height:570px;padding:14px;display:flex}.rp-screen-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rp-screen-tags b{font-size:15px}.rp-screen-problem{flex-direction:column;gap:10px;display:flex}.rp-screen-pv{background:#fff;border-radius:12px;padding:14px}.rp-screen-pv.no-run .dg-run{display:none}.rp-screen .dg-option:disabled,.rp-screen .dg-move:disabled,.rp-screen .dg-part-step:disabled{opacity:1;cursor:default}.rp-run{background:#fff;border-radius:12px;align-items:center;gap:14px;padding:12px;display:flex}.rp-run .rp-pitch-wrap{flex:none;width:330px;margin:0}.rp-run .rp-run-msg{word-break:keep-all;flex:1;min-width:0}.rp-run-msg{background:var(--surface-2);color:var(--text-secondary);text-align:center;border-radius:10px;margin:0;padding:6px 12px;font-size:15px;font-weight:600}.rp-run-msg.on{background:var(--primary-tint);color:var(--primary-strong)}.rp-screen-talk{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:40px 20px;display:flex}.rp-screen-talk p{color:var(--text-secondary);word-break:keep-all;margin:0;font-size:16px}.rp-screen-note{color:var(--text-secondary);margin:0;font-weight:600}.rp-screen-wc{flex-direction:column;gap:12px;display:flex}.rp-wc-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.rp-wc-card,.rp-wc-win{border:3px solid var(--border);background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:22px 12px;display:flex}.rp-wc-card.on{border-color:var(--primary);background:var(--primary-soft)}.rp-wc-card b,.rp-wc-win b{font-size:20px}.rp-wc-card em,.rp-wc-win em{color:var(--primary-strong);font-style:normal;font-weight:700}.rp-wc-emoji{font-size:54px;line-height:1}.rp-wc-win{border-color:var(--primary)}.rp-wc-log{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.rp-wc-log li{border:1px solid var(--border);background:#fff;border-radius:999px;padding:2px 9px;font-size:12.5px}.rp-wc-log small{color:var(--text-muted)}.rp-clip{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.rp-clip .rp-replay-h{flex-wrap:nowrap;min-width:0}.rp-clip .rp-replay-h>b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rp-clip .rp-replay-h>.rp-chip,.rp-clip .rp-replay-h>.rp-muted,.rp-clip .rp-replay-h>.btn{white-space:nowrap;flex:none}.rp-clip [data-act=clip-play]{justify-content:center;min-width:104px}.rp-clip-foot{flex-direction:column;gap:4px;display:flex}.rp-clip-foot p{font-variant-numeric:tabular-nums;height:20px;margin:0;font-size:12.5px;line-height:20px}.rp-clip-bar{background:var(--surface-2);border-radius:3px;height:5px;overflow:hidden}.rp-clip-bar i{background:var(--primary);height:100%;display:block}.rp-clip .rp-muted{margin:0}.rp-clip .rp-stage{max-width:520px;margin:0 auto}@media screen and (width<=1099px){.rp-edit-grid,.rp-edit-grid.side-closed{grid-template-columns:minmax(0,1fr);max-width:210mm}.rp-side{max-height:none;position:static;overflow:visible}}@media screen and (width<=720px){.rp-int-row{grid-template-columns:1fr;gap:4px}.rp-ichip{white-space:normal}}@media print{.rp-edit-grid{display:block}}
