.dm-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.dm-fly{white-space:nowrap;text-shadow:1px 0 2px #000000e6,-1px 0 2px #000000e6,0 1px 2px #000000e6,0 -1px 2px #000000e6;pointer-events:auto;align-items:center;gap:6px;font-size:.9375rem;animation-name:dm-move;animation-timing-function:linear;animation-fill-mode:forwards;display:inline-flex;position:absolute;left:100%}.dm-fly:hover{animation-play-state:paused}@keyframes dm-move{0%{transform:translate(0)}to{transform:translate(-140vw)}}.dm-badge{background:url(/badge-10th.png) 50%/contain no-repeat;flex:none;width:18px;height:18px;display:inline-block}.dm-school{color:#9cc3ff}.dm-text{color:#fff}.dm-tag{border:1px solid;border-radius:4px;padding:0 4px;font-size:.75rem}:root{--bg:#0f1217;--surface-0:#0f141c;--surface-1:#15181e;--surface-2:#1c2026;--panel:var(--surface-2);--line:#3a3f47;--line-strong:#565d68;--red:#ff3b4e;--blue:#3b82f6;--accent:#ffd54a;--ink:#e8eaed;--text-secondary:#9aa0a6;--text-on-accent:#1a1a1a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:system-ui,Microsoft YaHei,sans-serif}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,input,select{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.view-tile:focus-visible{outline-offset:-3px}html{scroll-snap-type:y proximity}.live-stage,.chat-section{scroll-snap-align:start}.app{flex-direction:column;display:flex}.live-stage{flex-direction:column;gap:10px;height:100dvh;padding:10px;display:flex}.stage-row{--enlarge-scale:1.6;flex:1;gap:8px;min-height:0;display:flex;position:relative;overflow:hidden}.side-column{z-index:1;width:var(--side-col-w);flex-direction:column;flex:none;gap:6px;display:flex;position:relative}.view-tile{z-index:0;aspect-ratio:16/9;border:1px solid var(--line);cursor:pointer;background:#000;border-radius:6px;flex:none;width:100%;padding:0;transition:transform .15s,box-shadow .15s,z-index 0s linear .15s;position:relative;overflow:hidden}.view-tile.red{border-left:3px solid var(--red)}.view-tile.blue{border-right:3px solid var(--blue)}.view-tile:hover:not(.enlarged){box-shadow:0 0 0 1px var(--line-strong)}.view-tile:active:not(.enlarged){transform:scale(.96)}.view-tile.enlarged:active{transform:scale(calc(var(--enlarge-scale) - .06))}.side-column.red .view-tile{transform-origin:0}.side-column.blue .view-tile{transform-origin:100%}.side-column.red .view-tile:first-child{transform-origin:0 0}.side-column.red .view-tile:last-child{transform-origin:0 100%}.side-column.blue .view-tile:first-child{transform-origin:100% 0}.side-column.blue .view-tile:last-child{transform-origin:100% 100%}.view-tile.enlarged{transform:scale(var(--enlarge-scale));z-index:calc(20 + var(--stack,0));transition:transform .15s,box-shadow .15s,z-index linear;box-shadow:0 6px 30px #000000b3}.view-tile-video{object-fit:cover;width:100%;height:100%;display:block}.main-stage{z-index:0;border:1px solid var(--line);background:#000;border-radius:8px;flex:1;min-width:0;position:relative;overflow:hidden}.stage-cover{z-index:30;color:var(--accent);letter-spacing:2px;text-align:center;background:#080a0ef0;justify-content:center;align-items:center;padding:20px;font-size:1.25rem;font-weight:700;display:flex;position:absolute;inset:0}.offline-stage{justify-content:center;align-items:center}.offline-title{color:var(--accent);letter-spacing:2px;text-align:center;padding:20px 20px 8px;font-size:1.375rem;font-weight:700}.offline-hint{text-align:center;color:var(--text-secondary);padding:8px;font-size:.8125rem;text-decoration:none;display:block}.offline-hint:hover{color:var(--accent)}.main-video{object-fit:contain;background:#000;width:100%;height:100%}.video-wrap{position:absolute;inset:0}.video-retry{pointer-events:none;color:#cfd3d8;letter-spacing:.5px;opacity:0;background:#000000a6;justify-content:center;align-items:center;font-size:.75rem;animation:.25s .15s forwards retry-in;display:flex;position:absolute;inset:0}@keyframes retry-in{to{opacity:1}}.match-title{z-index:5;white-space:nowrap;box-sizing:border-box;max-width:calc(100% - 48px);color:var(--accent);-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);background:#080a0e8c;border-radius:4px;padding:1px 8px;font-size:.75rem;position:absolute;top:6px;left:8px;overflow:hidden}.match-title__text{display:inline-block}.match-title__scroll{will-change:transform;width:max-content;animation-name:match-title-marquee;animation-timing-function:linear;animation-iteration-count:infinite;display:inline-flex}.match-title:hover .match-title__scroll{animation-play-state:paused}.match-title__seg{flex:none;padding-right:36px}@keyframes match-title-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.controls{flex-wrap:wrap;flex:none;align-items:center;gap:10px;display:flex}.pill{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:4px 9px;font-size:.8125rem}.pill select{color:var(--accent);background:0 0;border:none;font-weight:700}.pill option{background:var(--surface-2);color:var(--ink)}.dm-toggle{white-space:nowrap;border:none;border-right:1px solid var(--line);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:0;flex:none;padding:2px 10px 2px 4px;font-size:.8125rem}.dm-toggle:hover{color:var(--ink)}.dm-toggle:active{transform:translateY(1px)}.dm-toggle.active{color:var(--accent);font-weight:700}.composer{background:var(--surface-0);border:1px solid var(--accent);border-radius:8px;align-items:center;gap:6px;padding:4px 6px;display:flex}.composer:focus-within{border-color:#fff;box-shadow:0 0 0 2px #ffd54a59}.composer--bar{flex:1;min-width:min(320px,100%)}.composer--bar .id-chip{flex:0 4 auto;min-width:5rem}.composer--bar .composer-row{flex:auto}.composer--panel{flex-direction:column;flex:none;align-items:stretch;gap:8px}.composer--panel .id-chip{align-self:flex-start;max-width:100%}.composer-row{align-items:center;gap:6px;min-width:0;display:flex}.id-chip{border:1px solid var(--line-strong);color:#cfe3ff;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#16202e;border-radius:5px;max-width:280px;padding:3px 8px;font-size:.75rem;overflow:hidden}.id-chip .chip-badge{vertical-align:-4px;margin-right:4px}.id-chip:hover{border-color:var(--accent)}.id-chip:active{transform:translateY(1px)}.chip-badge,.msg-badge{background:url(/badge-10th.png) 50%/contain no-repeat;flex:none;width:18px;height:18px;display:inline-block}.composer-input{min-width:0;color:var(--ink);background:0 0;border:none;flex:8rem;font-size:.875rem}.composer-input:focus-visible{outline:none}.send-btn{white-space:nowrap;background:var(--accent);color:var(--text-on-accent);cursor:pointer;border:none;border-radius:5px;flex:none;padding:5px 14px;font-size:.875rem;font-weight:700}.send-btn:hover{filter:brightness(1.08)}.send-btn:active{transform:translateY(1px)}.send-btn:disabled{opacity:.55;cursor:progress;filter:none;transform:none}.scroll-hint{color:var(--text-secondary);white-space:nowrap;border-radius:6px;margin-left:auto;padding:4px 8px;font-size:.75rem;text-decoration:none}.scroll-hint:hover{color:var(--accent)}.scroll-hint:active{transform:translateY(1px)}.chat-section{gap:10px;height:100dvh;padding:14px 14px 34px;display:flex;position:relative}.icp-footer{justify-content:center;align-items:center;height:34px;font-size:.75rem;display:flex;position:absolute;bottom:0;left:0;right:0}.icp-footer a{color:var(--text-secondary);text-decoration:none}.icp-footer a:hover{color:var(--ink);text-decoration:underline}.reserved-panel{border:1px solid var(--line);background:var(--surface-1);border-radius:8px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.rp-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:6px 8px;display:flex}.rp-tab{border:1px solid var(--line-strong);color:#cfd3d8;cursor:pointer;background:0 0;border-radius:6px;padding:4px 14px;font-size:.8125rem}.rp-tab:hover:not(.active){border-color:var(--accent);color:var(--ink)}.rp-tab:active{transform:translateY(1px)}.rp-tab.active{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);font-weight:700}.rp-open{color:var(--accent);border:1px solid var(--line-strong);white-space:nowrap;border-radius:6px;margin-left:auto;padding:4px 10px;font-size:.75rem;text-decoration:none}.rp-open:hover{border-color:var(--accent)}.rp-open:active{transform:translateY(1px)}.rp-frame{background:var(--surface-1);opacity:0;border:0;flex:1;width:100%;transition:opacity .35s}.rp-frame--loaded{opacity:1;background:#fff}.chatroom{background:var(--surface-1);border:1px solid var(--line);border-radius:8px;flex-direction:column;width:340px;padding:10px;display:flex}.chatroom-title{color:var(--text-secondary);border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:6px;font-size:.8125rem}.chatroom-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.chatroom-list{flex-direction:column;flex:1;gap:5px;min-height:0;display:flex;overflow-y:auto}.new-msg-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--accent);border:1px solid var(--line-strong);cursor:pointer;background:#1c2026d1;border-radius:999px;padding:5px 14px;font-size:.75rem;animation:.2s cubic-bezier(.2,0,0,1) pill-in;position:absolute;bottom:8px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000080}.new-msg-pill:hover{border-color:var(--accent)}.new-msg-pill:active{transform:translate(-50%)translateY(1px)}@keyframes pill-in{0%{opacity:0;transform:translate(-50%)translateY(6px)}}.chatroom .composer{margin-top:8px}.chatroom-disabled{text-align:center;color:var(--text-secondary);border-top:1px solid var(--line);margin-top:8px;padding:8px 0;font-size:.8125rem}@media (width<=718px){.chat-section{flex-direction:column}.chatroom{flex:1;width:auto;min-height:0}}.msg-item{overflow-wrap:anywhere;font-size:.8125rem;line-height:1.5}.msg-name{align-items:center;gap:4px;margin-right:6px;font-weight:600;display:inline-flex}.msg-tag{opacity:.9;border:1px solid;border-radius:4px;padding:0 4px;font-size:.75rem}.msg-school{color:#9cc3ff;font-size:.75rem}.msg-text{color:var(--ink)}.id-editor-dialog{opacity:0;max-height:100%;transition:opacity .2s cubic-bezier(.2,0,0,1), transform .2s cubic-bezier(.2,0,0,1), overlay .2s allow-discrete, display .2s allow-discrete;background:0 0;border:0;padding:0;overflow:visible;transform:scale(.96)translateY(10px)}.id-editor-dialog[open]{opacity:1;transform:none}@starting-style{.id-editor-dialog[open]{opacity:0;transform:scale(.96)translateY(10px)}}.id-editor-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .2s ease, overlay .2s allow-discrete, display .2s allow-discrete;background:#0000008c}.id-editor-dialog[open]::backdrop{opacity:1}@starting-style{.id-editor-dialog[open]::backdrop{opacity:0}}.id-editor{--field-w:11rem;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:10px;width:300px;max-width:calc(100dvw - 2rem);max-height:calc(100dvh - 2rem);padding:18px;display:flex;overflow-y:auto}.id-editor h3{margin:0 0 8px}.id-editor .id-hint{margin:4px 0 0}.id-editor label{justify-content:space-between;align-items:center;gap:8px;font-size:.8125rem;display:flex}.id-editor label:has(input[type=checkbox]){justify-content:flex-start}.id-editor-row{justify-content:space-between;align-items:center;gap:8px;font-size:.8125rem;display:flex}.id-editor-row .badge-toggle{cursor:pointer;flex:none;gap:5px}.id-editor input:not([type=checkbox]),.id-editor-control{width:var(--field-w)}.id-editor-control{justify-content:space-between;align-items:center;gap:8px;display:flex}.id-editor input,.id-editor select{background:var(--surface-0);border:1px solid var(--line);color:var(--ink);border-radius:5px;padding:4px 6px}.id-editor-actions{justify-content:flex-end;gap:8px;display:flex}.id-editor-actions button{color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#2a2f37;border-radius:5px;padding:5px 12px}.id-editor-actions button:active{transform:translateY(1px)}.id-editor .primary{background:var(--accent);color:var(--text-on-accent);border:none;border-radius:5px;padding:5px 12px;font-weight:700}.loading,.fatal{text-align:center;min-height:100dvh;color:var(--accent);letter-spacing:1px;justify-content:center;align-items:center;padding:40px;font-size:1.25rem;font-weight:700;display:flex}.fatal p{margin:0 0 16px}.conn-status{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--accent);text-align:center;background:#3a2a00d1;padding:5px;font-size:.75rem;animation:.25s cubic-bezier(.2,0,0,1) conn-in;position:fixed;top:0;left:0;right:0}@keyframes conn-in{0%{transform:translateY(-100%)}}.composer-error{color:#ff8a8a;margin-left:6px;font-size:.75rem}.id-hint{color:var(--text-secondary);font-size:.75rem}.mute-btn{z-index:6;-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);color:var(--accent);border:1px solid var(--line);cursor:pointer;background:#080a0e80;border-radius:5px;padding:2px 6px;font-size:1rem;line-height:1;position:absolute;top:6px;right:8px}.mute-btn:hover{border-color:var(--accent)}.mute-btn:active{transform:translateY(1px)}@media (prefers-reduced-motion:reduce){.dm-overlay{display:none}.match-title__scroll{animation:none}.match-title__seg+.match-title__seg{display:none}.view-tile{transition:none}.conn-status,.new-msg-pill{animation:none}.id-editor-dialog{transition:opacity .15s ease, overlay .15s allow-discrete, display .15s allow-discrete;transform:none}@starting-style{.id-editor-dialog[open]{transform:none}}}@media (prefers-reduced-transparency:reduce){.match-title,.mute-btn{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000000e0}.conn-status{-webkit-backdrop-filter:none;backdrop-filter:none;background:#3a2a00}.new-msg-pill{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface-2)}.id-editor-dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000000b3}}@media (width<=830px){.composer--bar{min-width:min(240px,100%)}}@media (width<=740px){.composer--bar{flex-basis:100%;order:1}.composer--bar .id-chip{max-width:9rem}}@media (pointer:coarse){.send-btn,.rp-tab,.id-chip,.rp-open,.mute-btn,.dm-toggle{min-height:44px}.rp-open{align-items:center;display:inline-flex}.composer-input{font-size:1rem}}.cheer{z-index:6;background:linear-gradient(#0a0d1200 0%,#0a0d12db 100%);flex-direction:column;flex:none;gap:.3rem;padding:.4rem 0 0;display:flex;position:relative}.main-stage>.cheer{position:absolute;bottom:0;left:0;right:0}.cheer__head{align-items:center;padding:0 .625rem;display:flex}.cheer__team{flex:1 1 0;align-items:center;gap:.4rem;min-width:0;display:flex}.cheer__team--blue{justify-content:flex-end}.cheer__gap{flex:none;width:2.75rem}.cheer__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);letter-spacing:.01em;font-size:clamp(.75rem,1.3vw,.875rem);line-height:1.4;overflow:hidden}.cheer__votes{font-variant-numeric:tabular-nums;flex:none;font-size:clamp(.8125rem,1.5vw,1rem);font-weight:700;line-height:1.25}.cheer__team--red .cheer__votes{color:#ff8a94}.cheer__team--blue .cheer__votes{color:#8fbcff}.cheer__chip{font-variant-numeric:tabular-nums;opacity:0;background:#12161eb3;border:1px solid #ffffff1f;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:.25rem;min-width:2.5rem;min-height:1.45rem;padding:.05rem .4rem .05rem .2rem;font-size:.75rem;font-weight:700;line-height:1.45;transition:opacity .18s,transform .24s cubic-bezier(.2,0,0,1);display:inline-flex;transform:translateY(2px)scale(.96);box-shadow:0 1px 4px #0000003d}.cheer__chip.is-on{opacity:1;transform:translateY(0)scale(1)}.cheer__chip--red{color:#ff8a94}.cheer__chip--blue{color:#8fbcff}.cheer__chip-icon{object-fit:contain;filter:drop-shadow(0 1px 2px #00000073);flex:none;width:1rem;height:1rem;display:block}.cheer-error{color:#ff8a8a;letter-spacing:.01em;padding:0 .625rem;font-size:.75rem;line-height:1.45}.cheer__track{background:#ffffff14;height:.375rem;display:flex;position:relative}.cheer__fill{height:100%;display:block}.cheer__fill--red{background:linear-gradient(90deg, #c81d2fbf, var(--red))}.cheer__fill--blue{background:linear-gradient(90deg, var(--blue), #2a5fc4bf)}.cheer__vs{z-index:2;transform-origin:bottom;margin:0 0 -9px -22px;padding:9px;line-height:0;transition:transform .3s cubic-bezier(.2,0,0,1);display:block;position:absolute;bottom:0;left:50%}.cheer__vs img{filter:drop-shadow(0 1px 3px #000000bf);width:26px;height:26px;display:block}.cheer__vs:hover{transform:scale(1.12)}.cheer__vs.is-pulse{animation:.5s cubic-bezier(.2,0,0,1) cheer-vs-pulse}@keyframes cheer-vs-pulse{0%{transform:scale(1)}40%{transform:scale(1.16)}to{transform:scale(1)}}.cheer-vote{cursor:pointer;letter-spacing:.02em;background:#ffffff0f;border:1px solid;border-radius:999px;flex:none;padding:.1rem .6rem;font-size:clamp(.6875rem,1.2vw,.8125rem);font-weight:700;line-height:1.45;transition:transform .1s ease-out,background-color .15s,border-color .15s}.cheer-vote--red{color:#ff8a94;border-color:#ff3b4e80}.cheer-vote--red:hover{background:#ff3b4e2e;border-color:#ff8a94}.cheer-vote--blue{color:#8fbcff;border-color:#3b82f680}.cheer-vote--blue:hover{background:#3b82f633;border-color:#8fbcff}.cheer-vote:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.cheer__fill{transition:width .2s linear}.cheer__vs{transition:none}.cheer__vs.is-pulse{animation:none}.cheer__chip{transition:opacity .15s;transform:none}}@media (prefers-contrast:more){.cheer{background:#080a0ef7}.cheer__track{outline:1px solid var(--line-strong)}.cheer-vote{background:#000000a6;border-width:2px}}@media (pointer:coarse){.cheer-vote{min-height:44px}}
