*{box-sizing:border-box}body{margin:0}.display{position:relative;aspect-ratio:16/9;overflow:hidden}.overlay-page,.overlay-page body{background:transparent}.pairwaiting{position:fixed;top:0;right:0;bottom:0;left:0;background:#091422;color:#eef6ff;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center;font-family:system-ui,sans-serif}.pairwaiting button{padding:12px 18px;font:inherit;background:#17667c;color:#fff;border:1px solid #72dfef;border-radius:6px}.pairwaiting .pairdigits{font-family:Agarime Numeric,sans-serif;font-weight:700;letter-spacing:.16em;color:#72dfef;padding:18px 0}.pairwaiting h1{font-size:28px}.pairwaiting p{line-height:1.7}.pairwaiting small{color:#a9bfd1}@font-face{font-family:Agarime Bookman;src:url(/fonts/URWBookman-DemiItalic.otf) format("opentype");font-weight:600 900;font-style:italic;font-display:block}@font-face{font-family:Agarime Numeric;src:url(/fonts/NimbusSans-Bold.otf) format("opentype");font-weight:500 900;font-display:swap}.overlay-surface{container-type:inline-size;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}.broadcast-board{position:absolute;top:2.2%;left:4%;width:92%;color:#f2f8ff;background:#0a1b32ed;border-top:.17cqw solid #24c7dc;border-radius:.55cqw;box-shadow:0 .18cqw .4cqw #0004;overflow:hidden}.broadcast-meta{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:.55cqw 1.2cqw;border-bottom:.07cqw solid #4c6376;color:#b7c9d8;font-size:.75cqw;gap:1cqw}.broadcast-meta>span:nth-child(2){text-align:center}.broadcast-meta>span:last-child{text-align:right}.broadcast-scoreline{display:grid;grid-template-columns:1fr 1fr;position:relative;padding:0 8%}.broadcast-team{display:flex;align-items:center;gap:1.3cqw;min-width:0;padding:.9cqw 1.1cqw;background:transparent;transition:background .2s}.broadcast-team.current{background:linear-gradient(90deg,#176c80cc,#0e2d46)}.broadcast-team.side-1{flex-direction:row-reverse}.broadcast-team.side-1.current{background:linear-gradient(-90deg,#176c80cc,#0e2d46)}.broadcast-team strong{font-size:1.45cqw;flex:1;overflow-wrap:anywhere;min-width:0;line-height:1.3}.broadcast-team.side-1 strong{text-align:right}.broadcast-score{font-family:Agarime Numeric,sans-serif;font-size:3.7cqw;line-height:1;min-width:4cqw;text-align:center}.broadcast-misses{display:flex;gap:.2cqw;font-size:1.3cqw;color:#567386}.broadcast-misses .lit{color:#fff}.broadcast-team.side-1 .broadcast-misses{flex-direction:row-reverse}.broadcast-center{position:absolute;left:44%;width:12%;top:0;bottom:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#132942e8;gap:.1cqw}.broadcast-center b{font-size:1.15cqw}.broadcast-center span{font-size:.9cqw}.broadcast-center small{font-size:.7cqw;color:#c7d8e8}.new-miss{animation:miss-flash .6s both}.effect-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.effect-layer.perfect,.effect-layer.nice{font-family:Agarime Bookman,Georgia,serif;font-size:8cqw;font-style:italic;font-weight:700;text-shadow:.08cqw .12cqw .14cqw #071a29;color:#fff;animation:none}.effect-layer.perfect{color:#ffe16b}.effect-layer.perfect>span{animation:perfect 2.8s both}.effect-layer.nice>span{animation:nice 2.8s both}.event-banner{font-size:3.7cqw;font-weight:800;color:#f7fbff;padding:1.4cqw 4cqw;background:#0c2135ee;border:.1cqw solid #3dd3e4;border-left:.6cqw solid #3dd3e4;border-radius:.6cqw;animation:arrive .3s both}.throw-label{position:absolute;top:15.7%;padding:.4cqw 1.6cqw;border:.1cqw solid #30d5e7;border-radius:.3cqw;background:#10273cf5;color:#34dcf0;font-size:1.9cqw;font-weight:800;animation:throw-absorb .7s both}.throw-label.team-0{left:31%}.throw-label.team-1{right:31%}.chance-container{width:49%;animation:chance-exit 5.1s both}.chance-art{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 .12cqw .2cqw #001628)}.chance-art .chance-lens{animation:chance-lens 5.1s both;transform-origin:80px 100px}.chance-art .chance-arrow{animation:chance-arrow 5.1s both}.chance-art .chance-wordmark{animation:chance-words 5.1s both}.score-sheet{width:66%;background:#0c1e35f5;border:.1cqw solid #65859d;border-top:.3cqw solid #21c5d9;border-radius:.5cqw;padding:1.4cqw 2cqw;color:#f1f8ff;animation:arrive .3s both}.sheet-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:.08cqw solid #537086;padding-bottom:.7cqw;gap:2cqw}.sheet-heading h2{font-size:1.85cqw}.sheet-heading>span{font-size:.85cqw;color:#b6c8d8}.sheet-labels{display:grid;grid-template-columns:9% 45.5% 45.5%;background:#19324f;margin-top:1cqw;text-align:center}.sheet-labels>span{align-self:end;font-size:1.05cqw;padding-bottom:.65cqw;color:#21c6d9}.sheet-labels>div{padding:.8cqw 0;border-left:.08cqw solid #33516d}.sheet-labels b{font-size:1.35cqw;display:inline-block;max-width:80%;overflow-wrap:anywhere}.sheet-labels small{font-size:.8cqw;margin-left:.8cqw;background:#2b4d65;padding:.1cqw .4cqw}.sheet-labels>div>div{display:grid;grid-template-columns:1fr 1fr;color:#23c7db;font-size:1.1cqw;margin-top:.6cqw}.sheet-viewport{height:26cqw;overflow:hidden;background:#142b46}.sheet-viewport>div{will-change:transform}.sheet-row{display:grid;grid-template-columns:9% 45.5% 45.5%;height:3.25cqw;align-items:center;text-align:center;font-size:1.55cqw;font-family:Agarime Numeric,sans-serif}.sheet-row:nth-child(2n){background:#1a3550}.sheet-row>div{display:grid;grid-template-columns:1fr 1fr;border-left:.08cqw solid #35516a}.sheet-row>span{font-size:1.2cqw}.hit-row{display:grid;grid-template-columns:9% 45.5% 45.5%;margin-top:1cqw;background:#1b3b55;padding:1cqw 0;align-items:center;text-align:center}.hit-row>span{font-size:1.05cqw;color:#22c9dc}.hit-row b{font-family:Agarime Numeric;font-size:1.9cqw}.hit-row small{font-size:1cqw;margin-left:1.2cqw}.sheet-legend{display:flex;justify-content:space-between;font-size:.8cqw;color:#b3c6d5;margin-top:.7cqw}.match-summary{width:90%;background:#0d2037f5;border:.1cqw solid #6b8ca2;border-top:.5cqw solid #21c5d9;border-radius:1.2cqw;color:#f2f8ff;padding:1.7cqw 2.4cqw;animation:arrive .3s both}.summary-heading{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding-bottom:1.2cqw;border-bottom:.1cqw solid #55758f}.summary-heading h2{font-size:2.4cqw;white-space:nowrap}.summary-heading>span{font-size:1.35cqw;color:#c0cedb}.winner-pill{display:flex;align-items:center;gap:1.2cqw;background:#213c57;border:.1cqw solid #5c8aab;border-radius:.5cqw;padding:.5cqw 1cqw;max-width:43%}.winner-pill b{font-size:1.3cqw;color:#ffb64e;white-space:nowrap}.winner-pill strong{font-size:1.7cqw;overflow-wrap:anywhere;border-left:.1cqw solid #7490a5;padding-left:1.2cqw}.summary-body{display:grid;grid-template-columns:25% 1fr;gap:1.6cqw;margin-top:1.2cqw}.summary-totals{background:#19314e;border-radius:.7cqw;padding:1.3cqw}.summary-totals>div{display:grid;grid-template-columns:40% 27% 33%;align-items:center;gap:.5cqw;min-height:7cqw;border-bottom:.1cqw solid #4b6780}.summary-totals>div:first-child{min-height:3cqw;color:#22c7db;font-size:1cqw}.summary-totals strong{font-size:1.6cqw;overflow-wrap:anywhere}.summary-totals b{font-family:Agarime Numeric;font-size:2.6cqw;text-align:center}.summary-totals p{font-size:1.1cqw;color:#bdcbd9;margin-top:3.5cqw}.summary-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6cqw}.set-card{background:#1a324e;border-radius:.7cqw;overflow:hidden}.set-card h3{background:#244460;color:#21c6dc;text-align:center;font-size:1.25cqw;margin:0;padding:.6cqw .2cqw}.set-card>div{display:grid;grid-template-columns:15% 35% 50%;align-items:center;padding:.7cqw .8cqw}.set-card>div+div{border-top:.05cqw solid #405e78}.set-card>div>span{font-size:1.2cqw;color:#c2d1df}.set-card small{font-size:.85cqw;background:#2c4f67;color:#e2edf8;border-radius:.2cqw;text-align:center}.set-card small:empty{visibility:hidden}.set-card b{font-family:Agarime Numeric;font-size:2.5cqw;text-align:right}.gold{color:#ffb64d}.summary-page{display:block;text-align:right;margin-top:.4cqw;font-size:1cqw}.preview.overlay-surface{border:1px solid #294454}.overlay-page .display{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh}.pairwaiting .pairdigits{font-size:clamp(40px,8vw,100px)}@keyframes throw-absorb{0%{opacity:0;transform:translateY(1cqw) scale(1.12)}20%,55%{opacity:1;transform:none}to{opacity:0;transform:translateY(-2.8cqw) scale(.1)}}@keyframes miss-flash{0%,60%{color:#ffdf69;text-shadow:0 0 .6cqw #ffde55;transform:translate(-.2cqw)}25%,80%{transform:translate(.2cqw)}to{color:#fff;transform:none}}@keyframes chance-lens{0%{opacity:0;transform:scale(.65)}12%,90%{opacity:1;transform:scale(1)}to{opacity:0}}@keyframes chance-arrow{0%,10%{opacity:0;clip-path:inset(100% 0 0 0)}24%,90%{opacity:1;clip-path:inset(0 0 0 0)}to{opacity:0}}@keyframes chance-words{0%,18%{opacity:0}30%,90%{opacity:1}to{opacity:0}}@keyframes chance-exit{0%,90%{transform:none;opacity:1}to{opacity:0;transform:translateY(-1cqw)}}@media(prefers-reduced-motion:reduce){.effect-layer span,.chance-art *,.chance-container,.throw-label,.new-miss{animation:none!important}.throw-label{opacity:0}.sheet-viewport>div{will-change:auto}}@keyframes perfect{0%{transform:translate(110%)}20%,70%{transform:translate(0)}to{transform:translate(-110%)}}@keyframes nice{0%{transform:scale(0)}25%{transform:scale(1.15)}38%,75%{transform:scale(1)}to{transform:scaleY(0)}}@keyframes arrive{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.admin-app{--bg: #091422;--surface: #122236;--border: #38526c;--ink: #eef6ff;--muted: #a9bfd1;--accent: #72dfef;--active: #183b51;color-scheme:dark;background:var(--bg);color:var(--ink);min-height:100vh;font:16px/1.45 Noto Sans JP,system-ui,sans-serif}.admin-app header{background:#0e1b2c;border-bottom:1px solid var(--border)}.admin-app .wrap{max-width:620px;margin:auto;padding-inline:16px}.admin-app .head{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-app .brand b{display:inline-block;border-bottom:3px solid var(--accent);padding-bottom:3px}.admin-app .brand span{color:var(--muted);margin-left:9px;font-size:13px}.admin-app .head small,.admin-app h2,.admin-app small,.admin-app .sub{color:var(--muted)}.admin-app main{padding-block:14px 44px}.admin-app h1{margin:0;font-size:24px}.admin-app h2{margin:0 0 7px;font-size:14px}.admin-app .top,.admin-app .turnrow,.admin-app .throwing,.admin-app .row{display:flex;justify-content:space-between;align-items:center;gap:8px}.admin-app .top{margin-bottom:8px}.admin-app .top>div{min-width:0}.admin-app .sub{font-size:13px}.admin-app section.formpart{border-bottom:1px solid var(--border);padding-block:13px}.admin-app button,.admin-app input,.admin-app select{font:inherit}.admin-app button,.admin-app select,.admin-app input{border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink);min-height:44px}.admin-app button{font-weight:750;padding:6px 10px;cursor:pointer}.admin-app button:focus-visible,.admin-app input:focus-visible,.admin-app select:focus-visible,.admin-app summary:focus-visible,.admin-app a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-app button:disabled{opacity:.38;cursor:default}.admin-app button:hover:enabled{border-color:var(--accent)}.admin-app .segments{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:1px solid var(--border);border-radius:6px;overflow:hidden}.admin-app .segments button{border:0;border-radius:0;min-width:0;padding-inline:3px;font-size:14px;overflow-wrap:anywhere}.admin-app .segments button+button{border-left:1px solid var(--border)}.admin-app button[aria-pressed=true]{background:var(--active);color:var(--accent);box-shadow:inset 0 -3px var(--accent)}.admin-app .field{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:8px;margin:7px 0}.admin-app .field input{padding-inline:10px;width:100%;min-width:0}.admin-app .custom-row{display:block;margin-top:9px}.admin-app .custom-row input{width:76px;padding-inline:9px}.admin-app .primary{background:#17667c;border-color:#6acddd;color:#fff}.admin-app .full{width:100%;min-height:51px;margin-top:13px}.admin-app .quiet{font-size:13px;white-space:nowrap}.admin-app .admin-score-table{width:100%;table-layout:fixed;border-collapse:collapse;font-variant-numeric:tabular-nums;text-align:center}.admin-app .admin-score-table th,.admin-app .admin-score-table td{padding:4px 2px}.admin-app .admin-score-table thead{color:var(--muted);font-size:13px;border-bottom:1px solid var(--border)}.admin-app .admin-score-table thead .current{color:var(--accent);background:var(--active)}.admin-app .teamhead{text-align:left;padding:6px 9px 0!important;overflow-wrap:anywhere}.admin-app .marks{margin-left:8px;color:#8da7bb;letter-spacing:.1em;white-space:nowrap}.admin-app .lit{color:#ffad99}.admin-app .teamhead small{margin-left:8px;font-size:11px;font-weight:400}.admin-app .scores{border-bottom:1px solid var(--border)}.admin-app .scores td{height:35px}.admin-app .active{background:var(--active)}.admin-app .active .teamhead{box-shadow:inset 3px 0 var(--accent)}.admin-app .input-cell{box-shadow:inset 0 -2px var(--accent)}.admin-app .total{color:var(--ink);border-left:1px solid var(--border);font-size:23px;font-weight:800}.admin-app .turnrow{padding:8px 0 5px}.admin-app .turnrow strong{font-size:19px}.admin-app .throwing{font-size:14px;color:var(--accent);margin:0 0 6px;overflow-wrap:anywhere;min-height:20px}.admin-app .keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.admin-app .keys button{font-size:23px;min-height:48px;padding:4px}.admin-app .actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.admin-app .miss{color:#ffc3b4;border-color:#805b59}.admin-app .effects{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.65fr);gap:6px;margin-top:10px}.admin-app .effects button{font-size:13px;padding-inline:4px;overflow-wrap:anywhere}.admin-app .effect-status{min-height:24px;color:var(--accent);font-size:13px;margin:7px 0}.admin-app .setcontrols{border-block:1px solid var(--border);padding:9px 0;flex-wrap:wrap}.admin-app .setcontrols select{padding:4px;max-width:48%;min-width:0}.admin-app details{border-top:1px solid var(--border);padding:9px 0}.admin-app summary{cursor:pointer;font-weight:700;min-height:32px}.admin-app ul{list-style:none;padding:0;margin:4px 0}.admin-app li{border-bottom:1px solid var(--border);padding:7px 0;display:flex;justify-content:space-between;gap:10px;font-size:14px}.admin-app .result-list{margin:6px 0}.admin-app .effect-log li>small{white-space:nowrap;font-variant-numeric:tabular-nums}.admin-app .effect-log li>span{min-width:0;overflow-wrap:anywhere}.admin-app .preview{background:#1c3845 url(/assets/admin-preview-field.jpg) center/cover no-repeat;border-radius:6px}.admin-app .preview.overlay-surface{border:none}.admin-app .connection-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:9px}.admin-app .connection-row small{font-size:12px}.admin-app .pair-section{padding-block:4px}.admin-app a{color:var(--accent)}.admin-app .button-link{display:flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #6acddd;border-radius:6px;font-weight:750}.admin-app .access-code{font-family:Agarime Numeric,sans-serif;font-size:44px;color:var(--accent);letter-spacing:.16em;margin:20px 0;overflow-wrap:anywhere}.admin-app .access-field{grid-template-columns:100px minmax(0,1fr);margin-top:16px}.admin-app .access-management button{font-size:13px}.admin-app .connected{color:var(--accent)!important}.admin-app .error{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #805b59;border-radius:6px;padding:10px;margin-bottom:14px;background:#35232b;color:#ffc3b4;overflow-wrap:anywhere}.admin-app .error button{flex-shrink:0;min-height:32px}.admin-app p{line-height:1.6}.admin-app .display h2{margin:0;color:inherit}@media(max-width:440px){.admin-app .wrap{padding-inline:12px}.admin-app .head{min-height:50px}.admin-app main{padding-block-start:10px}.admin-app .field{grid-template-columns:68px minmax(0,1fr)}.admin-app .top h1{font-size:20px}.admin-app .head small{font-size:11px}.admin-app .access-field{grid-template-columns:96px minmax(0,1fr)}}@media(max-width:350px){.admin-app .head{gap:5px}.admin-app .brand span{margin-left:6px;font-size:12px}.admin-app .effect-log li{flex-wrap:wrap;gap:4px}}.admin-app .display .sheet-heading h2{font-size:1.85cqw}.admin-app .display .summary-heading h2{font-size:2.4cqw}
