:root{color-scheme:dark;--bg:#07121f;--panel:#101f30;--ice:#a7efff;--muted:#a2b4c6;--red:#ff627d;--blue:#56d2ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% 40%,#143044 0,transparent 56%),radial-gradient(ellipse at 100% 90%,#26182b,transparent 40%),var(--bg);color:#eef8ff;font-family:Arial,Helvetica,sans-serif;min-height:100vh}button,select,input{font:inherit}button,select{min-height:44px}button{cursor:pointer;color:inherit;border:1px solid #34495f;background:#14263a;border-radius:8px;padding:10px 17px}button:hover{border-color:#a7efff;background:#213d52}button:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #f5da90;outline-offset:3px}button:disabled{opacity:.4;cursor:default}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.mast{max-width:1250px;margin:auto;padding:28px 36px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff15}.brand{font-weight:bold;letter-spacing:3px;font-size:14px}.brand span,.edition span{display:block;color:var(--muted);font-size:9px;letter-spacing:2px;margin-top:7px}.edition{font-size:12px;letter-spacing:3px;text-align:right}.menu{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:80px;padding:42px 30px 30px}.eyebrow,.panel-heading,.fine{color:var(--muted);font-size:10px;letter-spacing:2px;line-height:1.6}h1{font-size:clamp(35px,4.6vw,64px);line-height:1.04;letter-spacing:-2px;margin:22px 0}h1 em{font-style:normal;color:var(--ice);font-weight:300}.lede{color:#b6c9d9;font-size:17px;line-height:1.55}.mini-table{height:235px;width:360px;max-width:95%;border:14px solid #152636;box-shadow:0 18px 40px #0008,inset 0 0 35px #5ce3ff66,0 0 0 1px #506578;border-radius:38px;background:repeating-radial-gradient(circle at center,#8ed4e811 0 1px,transparent 1px 8px),linear-gradient(130deg,#c9f6ff,#7ab6c9);position:relative;transform:perspective(700px) rotateX(28deg) rotateZ(-12deg);margin:22px 12px 35px;color:#31778a;overflow:hidden}.mini-table .line{position:absolute;left:50%;height:100%;border-left:2px solid #569caf}.mini-table .ring{position:absolute;width:85px;height:85px;border:2px solid #569caf;border-radius:50%;top:60px;left:calc(50% - 42px)}.mini-table .red-paddle,.mini-table .blue-paddle{position:absolute;width:56px;height:56px;border-radius:50%;box-shadow:3px 8px 4px #0005,inset 0 0 0 6px #ffffff40}.red-paddle{background:radial-gradient(circle at 35% 25%,#ffacb9,#ce254f 65%,#6e122e);left:35px;top:45px}.blue-paddle{background:radial-gradient(circle at 35% 25%,#c2f5ff,#158ebd 65%,#034368);right:30px;bottom:22px}.mini-table .disc{position:absolute;width:23px;height:23px;border-radius:50%;background:linear-gradient(#475466,#080f1c);left:58%;top:38%;box-shadow:3px 5px 3px #0006}.mini-table span{position:absolute;bottom:18px;left:90px;font-size:10px;letter-spacing:5px}.menu-panel{background:#0d1b2acc;border:1px solid #ffffff18;border-radius:18px;padding:24px;align-self:start}.panel-heading{display:flex;justify-content:space-between;align-items:center;letter-spacing:1px}.text{background:transparent;border:0;color:#bfe5f4;padding:8px;font-size:12px}.modes{display:grid;gap:9px;margin:15px 0 20px}.mode{text-align:left;position:relative;background:#142334;border-color:#263749;padding:15px 18px;border-radius:8px}.mode b{display:block;font-size:16px}.mode span{display:block;font-size:12px;color:var(--muted);margin-top:6px}.mode i{position:absolute;right:18px;top:22px;font-size:13px;font-style:normal;color:#71869b}.mode.selected{border-color:#71d8f4;background:linear-gradient(105deg,#204457,#152a3c);box-shadow:inset 3px 0 #9feaff}.options{display:flex;gap:15px}.options label{flex:1;font-size:10px;letter-spacing:1.5px;color:var(--muted)}select{width:100%;background:#081726;color:#effaff;border:1px solid #3a4c60;border-radius:6px;padding:10px;margin-top:9px;font-size:14px}.primary{background:var(--ice);color:#092536;border:0;font-weight:bold;width:100%;margin-top:12px;padding:16px 20px}.primary:hover{background:#d7faff;color:#092536}.primary span{float:right}.menu-bottom{display:flex;justify-content:space-between;margin-top:12px}.fine{letter-spacing:1px;font-size:10px}.playing{overflow:hidden;height:100dvh;min-height:0}.playing .mast{display:none}#arena{height:100dvh;padding: max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:flex;align-items:center;flex-direction:column;gap:5px}.scoreboard{width:min(600px,100%);display:grid;grid-template-columns:1fr 1.6fr 1fr;align-items:center;height:78px;flex-shrink:0}.score{text-align:center;display:flex;flex-direction:column}.score span{font-size:10px;letter-spacing:1.3px}.score strong{font-size:40px;line-height:1.1;font-variant-numeric:tabular-nums}.blue{color:var(--blue)}.red{color:var(--red)}.match-meta{text-align:center}.match-meta span{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.match-meta strong{display:block;font-size:17px;margin:5px}.match-meta small{font-size:11px;color:var(--muted)}#tableWrap{flex:1;min-height:0;min-width:0;width:100%;display:flex;align-items:center;justify-content:center;position:relative}canvas{display:block;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:22px;box-shadow:0 8px 30px #0009;max-width:100%;cursor:crosshair}#banner{position:absolute;pointer-events:none;text-align:center;color:#fff;font-size:clamp(18px,4vw,30px);font-weight:bold;text-shadow:0 2px 8px #000;padding:10px 20px;border-radius:10px;background:#07121ee8;max-width:90%}#banner:empty{display:none}.playbar{width:min(600px,100%);display:flex;justify-content:space-between;align-items:center;gap:8px;flex-shrink:0;min-height:46px}.playbar button{font-size:12px}.playbar>span{font-size:9px;letter-spacing:1px;color:var(--muted);text-align:center}dialog{background:#0e2032;color:#eef8ff;border:1px solid #55758c;border-radius:18px;width:min(460px,calc(100% - 26px));max-height:90dvh;padding:27px;box-shadow:0 30px 100px #000b}dialog::backdrop{background:#030c16bb;backdrop-filter:blur(7px)}dialog h2{margin:0 0 12px;font-size:27px}dialog p,dialog li{font-size:14px;color:#bfd0df;line-height:1.65}dialog ul{padding-left:20px}dialog .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}dialog .actions button{flex:1;white-space:nowrap}dialog label.setting{display:flex;align-items:center;justify-content:space-between;margin:20px 0;gap:15px}input[type=checkbox]{width:22px;height:22px;accent-color:#8de0fa}input[type=range]{width:55%;accent-color:#8de0fa}dialog table{border-collapse:collapse;width:100%;font-size:12px}dialog td,dialog th{border-bottom:1px solid #ffffff20;padding:10px 4px;text-align:left}.result-score{font-size:48px;letter-spacing:8px;color:var(--ice);margin:16px 0}.badge{color:var(--ice);font-size:11px;letter-spacing:2px;text-transform:uppercase}.statgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.statgrid div{padding:12px;background:#182d41;border-radius:8px}.statgrid b{display:block;font-size:26px;color:var(--ice)}.statgrid span{font-size:11px;color:var(--muted)}@media(max-width:760px){.mast{padding:17px 20px}.edition{display:none}.menu{display:block;padding:20px;max-width:520px}.intro .mini-table,.intro .fine,.intro .lede{display:none}h1{font-size:38px;margin:10px 0 22px}.eyebrow{font-size:9px}.menu-panel{padding:18px}.mode{padding:13px 16px}.mode span{font-size:11px}.panel-heading{font-size:9px}}@media(max-height:480px) and (orientation:landscape){#arena{display:grid;grid-template-columns:150px 1fr 110px;gap:8px}.scoreboard{width:150px;height:100%;display:flex;flex-direction:column;justify-content:space-evenly}.score strong{font-size:35px}.match-meta strong{font-size:14px}.playbar{flex-direction:column;width:110px;align-self:center}.playbar>span{line-height:1.8;margin:15px 0}#tableWrap{height:100%;width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.mini-table{transform:none}}

/* Games navigation uses normal header/menu flow, never the playfield overlay. */
a.return-games{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 10px;box-sizing:border-box;color:inherit;font:600 13px/1.25 system-ui,sans-serif;letter-spacing:normal;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;border-radius:5px}
a.return-games:hover{background:#ffffff14}a.return-games:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.mast{flex-wrap:wrap;gap:8px}
