@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dbbdd2d89d2ef0ef-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a06229eb79a83cfc-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c9e224327ce7933e-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d85064eaed4b8683-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Press Start\ 2P;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db234bd00cda6a96-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Press Start\ 2P Fallback;src:local("Arial");ascent-override:44.58%;descent-override:0.00%;line-gap-override:0.00%;size-adjust:224.32%}.__className_6d0c14{font-family:Press Start\ 2P,Press Start\ 2P Fallback;font-weight:400;font-style:normal}.__variable_6d0c14{--font-pixel:"Press Start 2P","Press Start 2P Fallback"}@font-face{font-family:VT323;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/751eccb0decf5e18-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:VT323;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f6590a0f07a97750-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:VT323;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b7bd7951037de757-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:VT323 Fallback;src:local("Arial");ascent-override:89.16%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:89.73%}.__className_4f2f0f{font-family:VT323,VT323 Fallback;font-weight:400;font-style:normal}.__variable_4f2f0f{--font-mono:"VT323","VT323 Fallback"}:root{--bg:#0b1020;--bg-2:#121a33;--panel:#182246;--panel-2:#1f2c58;--line:#2f3f7a;--ink:#e9ecff;--ink-dim:#9aa4d6;--court:#1f7ae0;--court-2:#1a66bd;--ball:#c6ff3d;--gold:#ffd23f;--hp:#ff4d6d;--ok:#3ddc84;--warn:#ff9f1c;--sel:#ffffff;--shadow:#05081a;--font-pixel:"Press Start 2P",monospace;--font-mono:"VT323",monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-mono),monospace;font-size:20px;line-height:1.2;-webkit-font-smoothing:none}body{background-image:radial-gradient(circle at 20% 0,#16204a 0,transparent 40%),radial-gradient(circle at 90% 100%,#0f2a3a 0,transparent 40%);min-height:100vh}body:after{content:"";pointer-events:none;position:fixed;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px);mix-blend-mode:multiply;z-index:999}button{font-family:inherit;cursor:pointer}.pixel,h1,h2,h3{font-family:var(--font-pixel),monospace;letter-spacing:0;line-height:1.5}h1{font-size:22px;margin:0;color:var(--ball);text-shadow:3px 3px 0 var(--shadow)}h2{font-size:12px;margin:0 0 8px;color:var(--gold)}h2,h3{text-transform:uppercase}h3{font-size:10px;margin:0}.dim,h3{color:var(--ink-dim)}.gold{color:var(--gold)}.ok{color:var(--ok)}.hp{color:var(--hp)}.warn{color:var(--warn)}.small{font-size:16px}.tiny{font-size:9px}.panel{background:var(--panel);border:4px solid var(--line);box-shadow:0 0 0 4px var(--shadow),6px 6px 0 4px var(--shadow);padding:12px;position:relative}.panel.tight{padding:8px}.btn{font-family:var(--font-pixel),monospace;font-size:10px;padding:10px 14px;background:var(--panel-2);color:var(--ink);border:4px solid var(--line);box-shadow:0 4px 0 0 var(--shadow);text-transform:uppercase;transition:transform 60ms}.btn:hover:not(:disabled){filter:brightness(1.15)}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 0 var(--shadow)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--court);border-color:#6fb1ff;color:#fff}.btn.go{background:#1f8f4a;border-color:#6fe39a;color:#fff}.btn.danger{background:#8f1f3a;border-color:#ff6f8f;color:#fff}.btn.gold{background:#7a5a00;border-color:var(--gold);color:#fff}.btn.sm{font-size:8px;padding:7px 9px}.btn.big{font-size:13px;padding:16px 22px}.app{max-width:1280px;margin:0 auto;padding:16px}.topbar{align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.topbar,.topbar .stats{display:flex;flex-wrap:wrap}.topbar .stats{gap:10px}.stat{background:var(--bg-2);border:3px solid var(--line);padding:6px 10px;font-family:var(--font-pixel),monospace;font-size:10px;display:flex;align-items:center;gap:8px;min-height:38px}.stat .val{font-size:12px}.main{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:16px;gap:16px;align-items:start}@media (max-width:980px){.main{grid-template-columns:1fr}}.stack{flex-direction:column;gap:16px}.row,.stack{display:flex}.row{gap:8px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.board{display:grid;grid-gap:10px;gap:10px}.pair{display:grid;grid-template-columns:90px 1fr 1fr;grid-gap:8px;gap:8px;align-items:stretch;background:var(--bg-2);border:3px solid var(--line);padding:8px}.pair.locked{opacity:.45;filter:grayscale(.6)}.pair .label{display:flex;flex-direction:column;justify-content:center;gap:4px;font-family:var(--font-pixel),monospace;font-size:9px;color:var(--ink-dim)}.pair .label .pw{color:var(--ball);font-size:12px}.pair .bonuses{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap;min-height:18px}.tag{font-family:var(--font-pixel),monospace;font-size:7px;padding:3px 5px;border:2px solid var(--line);background:var(--panel);color:var(--ink);text-transform:uppercase}.tag.good{border-color:var(--ok);color:var(--ok)}.tag.bad{border-color:var(--hp);color:var(--hp)}.tag.dream{border-color:var(--gold);color:var(--gold)}.slot{min-height:118px;border:3px dashed var(--line);background:rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;padding:4px}.slot .slot-name{position:absolute;top:3px;left:6px;font-family:var(--font-pixel),monospace;font-size:7px;color:var(--ink-dim);text-transform:uppercase}.slot.target{border-color:var(--ball);background:rgba(198,255,61,.08)}.slot.filled{border-style:solid}.slot .empty-hint{font-size:15px;color:var(--ink-dim);text-align:center}.card{width:100%;max-width:190px;background:var(--panel-2);border:3px solid var(--line);padding:6px;display:grid;grid-template-columns:44px 1fr;grid-gap:6px;gap:6px;align-items:start;cursor:pointer;position:relative;color:var(--ink);text-align:left;font-family:var(--font-mono),monospace;font-size:18px}.card.selected{outline:3px solid var(--sel);outline-offset:2px}:root{--c1:#9aa4b2;--c2:#3ddc84;--c3:#4dabf7;--c4:#c084fc;--c5:#ffd23f}.card.cost1{--rar:var(--c1)}.card.cost2{--rar:var(--c2)}.card.cost3{--rar:var(--c3)}.card.cost4{--rar:var(--c4)}.card.cost5{--rar:var(--c5)}.card{--rar:var(--line);border-color:var(--rar);background:linear-gradient(180deg,color-mix(in srgb,var(--rar) 14%,var(--panel-2)) 0,var(--panel-2) 45%)}.card .cost{background:var(--rar)}.card.cost5 .name{color:var(--c5)}.card.cost4 .name{color:#e2c4ff}.card.lvl2{box-shadow:inset 0 0 0 2px rgba(255,255,255,.18)}.card.lvl3{box-shadow:inset 0 0 0 2px rgba(255,255,255,.35),0 0 12px rgba(255,210,63,.35)}.card.partner-owned{outline:2px dashed var(--gold);outline-offset:1px;animation:karte-schweben 2.4s ease-in-out infinite}.card.schon-da{box-shadow:0 0 0 2px rgba(198,255,61,.35),0 0 10px rgba(198,255,61,.25)}.card.macht-upgrade{border-color:var(--gold);animation:karte-puls 1.1s ease-in-out infinite}.card .hinweis{position:absolute;top:-8px;left:-8px;font-family:var(--font-pixel),monospace;font-size:7px;padding:3px 5px;color:#000;border:2px solid var(--shadow);white-space:nowrap}.card .hinweis.upgrade{background:var(--gold)}.card .hinweis.habe{background:var(--ball)}.card.macht-upgrade:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);background-size:250% 100%;animation:karte-glanz 1.8s linear infinite;pointer-events:none}@keyframes karte-puls{0%,to{box-shadow:0 0 0 2px rgba(255,210,63,.5),0 0 10px rgba(255,210,63,.3);transform:translateY(0)}50%{box-shadow:0 0 0 3px rgba(255,210,63,.9),0 0 20px rgba(255,210,63,.6);transform:translateY(-3px)}}@keyframes karte-schweben{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes karte-glanz{0%{background-position:160% 0}60%,to{background-position:-60% 0}}.mergefx{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:60;pointer-events:none}.mf-box{background:rgba(5,8,26,.9);border:4px solid var(--gold);box-shadow:0 0 0 4px var(--shadow),0 0 30px rgba(255,210,63,.4);padding:16px 24px;text-align:center;animation:mf-box 1.5s ease-out forwards}.mf-sprites{position:relative;height:70px;width:200px;margin:0 auto}.mf-s{position:absolute;top:14px;left:50%;margin-left:-16px;animation-duration:1.5s;animation-fill-mode:forwards;animation-timing-function:ease-in}.mf-s0{animation-name:mf-s0}.mf-s1{animation-name:mf-s1}.mf-s2{animation-name:mf-s2}.mf-neu{position:absolute;top:3px;left:50%;margin-left:-24px;opacity:0;animation:mf-neu 1.5s ease-out forwards}.mf-text{font-family:var(--font-pixel),monospace;font-size:10px;color:#fff;margin-top:8px}@keyframes mf-s0{0%{transform:translateX(-70px);opacity:1}45%{transform:translateX(0);opacity:1}55%,to{transform:translateX(0);opacity:0}}@keyframes mf-s1{0%,45%{opacity:1}55%,to{opacity:0}}@keyframes mf-s2{0%{transform:translateX(70px);opacity:1}45%{transform:translateX(0);opacity:1}55%,to{transform:translateX(0);opacity:0}}@keyframes mf-neu{0%,48%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.25)}70%,88%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes mf-box{0%{opacity:0;transform:scale(.85)}10%,85%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.card.macht-upgrade,.card.macht-upgrade:after,.card.partner-owned,.mf-box,.mf-neu,.mf-s{animation:none}.mf-neu{opacity:1}.mf-s{opacity:0}}.card .meta.partner{font-size:13px;gap:6px}.card.sold{opacity:.35;cursor:default}.card.unaffordable{opacity:.6}.card .name{font-family:var(--font-pixel),monospace;font-size:8px;line-height:1.4;color:#fff;min-height:22px}.card .meta{display:flex;gap:4px;flex-wrap:wrap;font-size:15px;color:var(--ink-dim)}.card .stars{color:var(--gold);font-size:12px;letter-spacing:1px}.card .cost{position:absolute;top:-8px;right:-8px;background:var(--gold);color:#000;font-family:var(--font-pixel),monospace;font-size:9px;padding:3px 5px;border:2px solid #000}.card .item{position:absolute;bottom:-8px;right:-6px;font-size:16px;background:#000;border:2px solid var(--gold);padding:0 3px;line-height:1.2}.card .sprite-box{display:flex;flex-direction:column;align-items:center;gap:2px}.card .flag{font-size:14px;line-height:1}.statbars{display:grid;grid-template-columns:24px 1fr 20px;grid-gap:2px 4px;gap:2px 4px;font-size:13px;align-items:center;margin-top:3px}.statbars .k{font-family:var(--font-pixel),monospace;font-size:6px;color:var(--ink-dim)}.bar{height:6px;background:#0a0f24;border:1px solid #000;position:relative}.bar>i{display:block;height:100%;background:var(--court)}.bar>i.up{background:var(--ok)}.bar>i.down{background:var(--hp)}.statbars .v{font-size:13px;text-align:right}.bench{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px}.bench .slot{min-height:96px}.shop{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:14px;gap:14px}.shopbar{gap:10px;justify-content:space-between;margin-top:12px}.actionbar,.shopbar{display:flex;align-items:center;flex-wrap:wrap}.actionbar{gap:8px;background:var(--bg-2);border:3px solid var(--sel);padding:8px}.syn{display:flex;justify-content:space-between;gap:8px;padding:5px 6px;border-bottom:2px solid var(--bg-2);font-size:17px}.syn.active{color:#fff;background:rgba(198,255,61,.08)}.syn .cnt{font-family:var(--font-pixel),monospace;font-size:8px}.syn.active .cnt{color:var(--ball)}.syn .desc{font-size:14px;color:var(--ink-dim)}.court-wrap{background:#0d3b1e;border:4px solid #2c6b3f;padding:10px}.court{width:100%;height:auto;display:block;image-rendering:pixelated}.scoreboard{display:grid;grid-template-columns:1fr auto auto;grid-gap:6px 14px;gap:6px 14px;font-family:var(--font-pixel),monospace;font-size:10px;align-items:center;background:#000;border:3px solid var(--line);padding:8px 10px}.scoreboard .team{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scoreboard .team.serving:before{content:"● ";color:var(--ball)}.scoreboard .games{font-size:14px;color:var(--gold);min-width:24px;text-align:center}.scoreboard .pts{font-size:12px;color:var(--ball);min-width:48px;text-align:center}.commentary{min-height:92px;background:rgba(0,0,0,.35);border:3px solid var(--line);padding:8px 10px;font-size:19px}.commentary p{margin:0 0 3px}.commentary p.latest{color:#fff}.commentary p.old{color:var(--ink-dim)}.commentary .golden{color:var(--gold)}.matches{grid-gap:8px}.matches,.matchrow{display:grid;gap:8px}.matchrow{grid-template-columns:26px 1fr auto 1fr;grid-gap:8px;align-items:center;font-size:17px;padding:6px 8px;border:3px solid var(--line);background:var(--bg-2)}.matchrow.current{border-color:var(--ball)}.matchrow .score{font-family:var(--font-pixel),monospace;font-size:12px;color:var(--gold);white-space:nowrap}.matchrow .side{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matchrow .side.won{color:var(--ok)}.matchrow .side.lost{color:var(--ink-dim)}.matchrow .side.right{text-align:right}.banner{font-family:var(--font-pixel),monospace;font-size:16px;text-align:center;padding:14px;border:4px solid;animation:pop .3s ease-out}.banner.win{color:var(--ok);border-color:var(--ok);background:rgba(61,220,132,.1)}.banner.loss{color:var(--hp);border-color:var(--hp);background:rgba(255,77,109,.1)}@keyframes pop{0%{transform:scale(.94)}to{transform:scale(1)}}.overlay{position:fixed;inset:0;background:rgba(3,5,15,.82);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50;overflow:auto}.modal{width:min(720px,100%);max-height:100%;overflow:auto}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.choice{background:var(--panel-2);border:3px solid var(--line);padding:12px;text-align:center;cursor:pointer;color:var(--ink);font-family:var(--font-mono),monospace;font-size:18px}.choice:hover{border-color:var(--ball)}.choice .icon{font-size:34px;line-height:1.2}.choice .t{font-family:var(--font-pixel),monospace;font-size:8px;margin:6px 0 4px;color:#fff}.hero{text-align:center;padding:40px 16px 24px}.hero .logo{font-family:var(--font-pixel),monospace;font-size:clamp(22px,5vw,44px);color:var(--ball);text-shadow:4px 4px 0 var(--shadow),8px 8px 0 #1f7ae0;line-height:1.3;margin-bottom:8px}.hero .sub{color:var(--ink-dim);font-size:22px}.howto{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.howto .step{background:var(--bg-2);border:3px solid var(--line);padding:10px 12px;font-size:18px}.howto .step b{display:block;font-family:var(--font-pixel),monospace;font-size:9px;color:var(--gold);margin-bottom:6px}.marquee{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;padding:10px 0}.diff{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px}.diff button{background:var(--bg-2);border:3px solid var(--line);color:var(--ink);padding:10px;font-family:var(--font-mono),monospace;font-size:18px;text-align:left}.diff button.on{border-color:var(--ball);background:rgba(198,255,61,.08)}.diff button b{display:block;font-size:9px;color:#fff;margin-bottom:4px}.diff button b,.lvlbadge{font-family:var(--font-pixel),monospace}.lvlbadge{display:inline-flex;align-items:center;gap:4px;border:2px solid;padding:2px 6px;font-size:7px;vertical-align:middle;background:rgba(0,0,0,.35)}.lvlbadge.big{font-size:10px;padding:4px 8px}.xpbar{height:10px;background:#0a0f24;border:2px solid #000}.xpbar>i{display:block;height:100%;background:var(--ball)}.modebadge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-pixel),monospace;font-size:8px;color:var(--ink)}.modebadge.national{color:#ffd23f}.modebadge.wpt{color:#6fb1ff}.modecards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:12px;gap:12px}.modecard{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--bg-2);border:4px solid var(--line);box-shadow:0 4px 0 0 var(--shadow);color:var(--ink);padding:12px;font-family:var(--font-mono),monospace;font-size:18px;transition:transform 80ms,border-color 80ms}.modecard:hover{filter:brightness(1.12)}.modecard.on{border-color:var(--ball);background:rgba(198,255,61,.08);transform:translateY(-2px)}.mc-top{display:flex;align-items:center;gap:8px}.mc-top b{font-family:var(--font-pixel),monospace;font-size:10px;color:#fff}.mc-check{margin-left:auto;color:var(--ball)}.mc-faces{display:flex;gap:6px;background:#071022;border:2px solid var(--line);padding:6px 8px}.mc-desc{color:var(--ink-dim);line-height:1.2}.mc-meta{font-family:var(--font-pixel),monospace;font-size:7px;color:var(--gold)}.startzone{margin-top:16px;border-top:3px solid var(--line);padding-top:12px}.hs-list{list-style:none;margin:8px 0 0;padding:0}.hs-list li{display:flex;align-items:baseline;gap:8px;padding:3px 0;border-bottom:2px solid var(--bg-2);font-size:18px}.hs-rank{font-family:var(--font-pixel),monospace;font-size:8px;color:var(--gold);min-width:16px}.hs-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}.hs-own{display:flex;flex-direction:column;gap:2px;margin-top:8px;border-top:2px solid var(--line);padding-top:6px;font-size:18px}.aufstellung{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px;font-size:16px}.au-mann{display:inline-flex;align-items:center;gap:4px}.au-kosten{font-family:var(--font-pixel),monospace;font-size:7px;color:#000;padding:3px 4px;background:var(--c1)}.au-kosten.k2{background:var(--c2)}.au-kosten.k3{background:var(--c3)}.au-kosten.k4{background:var(--c4)}.au-kosten.k5{background:var(--c5)}.duelrow{margin:4px 0 6px}.duel-label{font-size:13px;color:var(--ink-dim);margin-bottom:1px}.duel-bars{display:grid;grid-template-columns:52px 1fr 1fr 52px;grid-gap:4px;gap:4px;align-items:center}.duel-bars .dv{font-family:var(--font-pixel),monospace;font-size:7px}.duel-bars .dv.right{text-align:right}.dbar{height:10px;background:#0a0f24;border:1px solid #000;display:flex}.dbar.left{justify-content:flex-end}.dbar>i{display:block;height:100%}.pair-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:10px;gap:10px}.pair-card{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;align-items:center;border:3px solid var(--line);background:var(--bg-2);padding:8px 10px}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#000;color:#fff;border:3px solid var(--warn);padding:8px 14px;font-size:18px;z-index:60;animation:pop .2s ease-out}.footer{margin-top:28px;text-align:center;font-size:15px}.footer,.footer a{color:var(--ink-dim)}table.hist{width:100%;border-collapse:collapse;font-size:17px}table.hist td,table.hist th{padding:3px 6px;border-bottom:2px solid var(--bg-2);text-align:left}table.hist th{font-family:var(--font-pixel),monospace;font-size:7px;color:var(--ink-dim)}.replay-grid{display:grid;grid-template-columns:minmax(180px,250px) 1fr;grid-gap:12px;gap:12px;align-items:start}.scoreboard2{background:#000;border:3px solid var(--line);padding:8px 10px;font-family:var(--font-pixel),monospace;font-size:10px}.sb-row{display:grid;grid-template-columns:var(--sb-cols,minmax(0,1fr) 44px 36px 56px);grid-gap:6px 8px;gap:6px 8px;align-items:center;padding:3px 0}.sb-row.sb-head{border-bottom:2px solid var(--line);margin-bottom:4px}.sb-team{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-team.serving:before{content:"● ";color:var(--ball)}.sb-sets{font-size:15px;color:var(--gold);text-align:center}.sb-games{font-size:13px;text-align:center;color:#fff}.sb-games.done{color:var(--ink-dim)}.sb-pts{font-size:13px;text-align:center;color:var(--ball);min-width:40px}.rally{border:3px solid var(--line);padding:8px 10px;min-height:300px}.chip,.rally{background:rgba(0,0,0,.35)}.chip{display:inline-flex;align-items:center;gap:6px;border:2px solid;padding:2px 6px 2px 2px;font-size:15px;line-height:1.2}.chip b{font-family:var(--font-pixel),monospace;font-size:7px;color:#000;padding:3px 4px}.rally-log{display:flex;flex-direction:column;gap:4px;min-height:120px;max-height:320px;overflow-y:auto;scroll-behavior:smooth;padding-right:4px}.rl-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:3px 4px;border-left:3px solid transparent}.rl-row.now{border-left-color:var(--ball);background:rgba(255,255,255,.06)}.rl-nr{font-family:var(--font-pixel),monospace;font-size:7px;min-width:14px}.rl-nr,.rl-text{color:var(--ink-dim)}.rl-text{font-size:19px;flex:1 1 180px}.rl-row.now .rl-text{color:#fff}@media (prefers-reduced-motion:reduce){.rally-log{scroll-behavior:auto}}.point-result{margin-top:10px;border:4px solid;padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:rgba(0,0,0,.45);animation:pop .2s ease-out}.pr-head{font-family:var(--font-pixel),monospace;font-size:13px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pr-kind{font-size:7px;color:#000;padding:3px 5px}.pr-text{font-size:21px;color:#fff}.duel{display:flex;flex-direction:column;gap:4px;margin-top:4px}.duel-row{display:grid;grid-template-columns:90px 1fr 70px;grid-gap:8px;gap:8px;align-items:center;font-size:16px}.duel-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duel-bar{height:12px;background:#0a0f24;border:2px solid #000}.duel-bar>i{display:block;height:100%;transition:width .4s}.duel-val{font-family:var(--font-pixel),monospace;font-size:8px;text-align:right}.ff-prompt{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--panel);border:4px solid var(--gold);box-shadow:0 0 0 4px var(--shadow),6px 6px 0 4px var(--shadow);padding:14px 18px;z-index:70;width:min(520px,calc(100vw - 32px))}.banner-mini,.ff-prompt{animation:pop .2s ease-out}.banner-mini{margin-top:8px;font-family:var(--font-pixel),monospace;font-size:10px;color:var(--gold);border:3px solid var(--gold);padding:8px;text-align:center}.livebar{display:grid;grid-template-columns:30px 1fr 24px;grid-gap:6px;gap:6px;align-items:center;font-size:14px;margin:2px 0}.lb-k{font-family:var(--font-pixel),monospace;font-size:7px}.lb-bar{height:8px;background:#0a0f24;border:1px solid #000}.lb-bar>i{display:block;height:100%;transition:width .2s}.lb-v{text-align:right}@media (max-width:640px){.app{padding:8px}h1{font-size:16px}.topbar{gap:8px;margin-bottom:10px}.stat{padding:4px 7px;font-size:9px;min-height:32px}.panel{padding:8px}.pair{grid-template-columns:1fr 1fr;gap:6px;padding:6px}.pair .label{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}.slot{min-height:100px;padding:2px}.card{grid-template-columns:30px 1fr;gap:4px;padding:4px;font-size:15px;max-width:none}.card .name{font-size:7px;min-height:20px}.card .meta{font-size:13px}.statbars{grid-template-columns:20px 1fr 18px}.statbars .v{font-size:12px}.bench,.shop{grid-template-columns:repeat(2,1fr);gap:10px}.btn.big{font-size:11px;padding:12px 14px;width:100%}.shopbar{flex-direction:column;align-items:stretch}.replay-grid{grid-template-columns:1fr}.court-wrap{max-width:260px;margin:0 auto}.scoreboard{font-size:8px;gap:6px 8px}.hero{padding:20px 8px 12px}}@keyframes blink{50%{opacity:.3}}.blink{animation:blink 1s steps(2) infinite}