:root{--bg: #121417;--panel: #1b1e23;--card: #2a2d33;--card-2: #33373e;--line: #2e333a;--fg: #e8eaed;--muted: #959ca6;--accent: #ff8c1a;--good: #57e26b;--bad: #ff5555;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);min-height:100vh}a{color:var(--accent);text-decoration:none}.wrap{max-width:1180px;margin:0 auto;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;border-bottom:1px solid var(--line);background:var(--panel)}.brand{font-weight:800;font-size:19px;color:var(--fg);letter-spacing:.3px;display:flex;align-items:center;gap:10px}.brand-mark{width:28px;height:28px;border-radius:4px;display:block}.login-logo{display:block;width:260px;max-width:80%;margin:28px auto 26px}.row{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.spread{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}.muted{color:var(--muted);font-size:14px}.err{color:var(--bad);font-size:14px}h1{font-size:26px;margin:0 0 4px}h2{font-size:17px;margin:22px 0 10px;color:var(--accent)}button{background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:8px 14px;font-size:14px;cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);color:#14161a;border-color:var(--accent);font-weight:600}input,select,textarea{background:#0e1013;color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:14px;font-family:inherit}label,.label{display:block;font-size:13px;color:var(--muted);margin:12px 0 4px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--muted);font-weight:500;padding:6px 8px;border-bottom:1px solid var(--line)}td{padding:7px 8px;border-bottom:1px solid var(--line)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:16px 0}.tabs button{border:none;border-radius:0;background:none;padding:10px 18px;color:var(--muted)}.tabs button.on{color:var(--fg);background:var(--card)}.pill{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--card);font-size:12px}.rounds{display:flex;gap:18px;overflow-x:auto;padding-bottom:12px}.round{min-width:230px}.round-head{text-align:center;background:var(--card);padding:7px;border-radius:4px;margin-bottom:10px;font-size:14px}.match{display:flex;align-items:center;gap:6px;margin-bottom:10px}.match-no{width:22px;text-align:right;color:var(--muted);font-size:12px}.match-card{flex:1;border-radius:4px;overflow:hidden;border:1px solid transparent}.match-card.clickable{cursor:pointer}.match-card.clickable:hover,.match-card.clickable:focus-visible{border-color:var(--accent);outline:none}.entrant{display:flex;align-items:center;height:24px;background:var(--card);font-size:13px}.entrant+.entrant{border-top:1px solid #22252a}.seed{width:24px;text-align:center;color:#b4bac3;background:var(--card-2);height:100%;line-height:24px;font-size:12px}.ename{flex:1;padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ename.tbd{color:var(--muted);font-style:italic}.score{width:26px;text-align:center;height:100%;line-height:24px;background:var(--card-2)}.score.win{background:var(--accent);color:#14161a;font-weight:700}.entrant.loser .ename{color:var(--muted)}.bracket{display:flex;gap:28px;overflow-x:auto;padding-bottom:12px}.bracket .round{display:flex;flex-direction:column}.bracket .round-body{display:flex;flex-direction:column;justify-content:space-around;flex:1}.dialog-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10}.dialog{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px;width:420px;max-width:calc(100vw - 32px)}.games input{width:64px;text-align:center}.match-arena{margin-top:3px;font-size:10px;background:#3a3f47;color:var(--fg);border-radius:3px;text-align:center}.score.live{color:var(--good);font-style:italic}.arena-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.arena-card{background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:14px}.arena-card.free{border-color:#4b525c}.arena-card.called{border-color:var(--accent)}.arena-card.battle{border-color:var(--good)}.arena-card.out{opacity:.55}.arena-label{font-size:22px;font-weight:800}.arena-match{margin-top:8px;font-size:13px;color:var(--muted)}.arena-players{font-size:16px;font-weight:600;margin:2px 0 4px}.judge-link{background:#0e1013;padding:6px 10px;border-radius:6px;font-size:13px;word-break:break-all}.check{display:flex;align-items:center;gap:8px;color:var(--fg);font-size:14px}.kinds td{padding:4px 6px}.top.slim{padding:8px 14px}.top{position:relative}.nav-burger{display:none}@media (max-width: 640px){.top{padding:10px 14px}.nav-burger{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:44px;height:44px;padding:0}.nav-burger span{display:block;width:18px;height:2px;border-radius:2px;background:var(--fg)}.nav-links{display:none;position:absolute;left:0;right:0;top:100%;z-index:20;flex-direction:column;align-items:stretch;padding:12px 14px 14px;background:var(--panel);border-bottom:1px solid var(--line);box-shadow:0 10px 24px #0000008c}.nav-links.open{display:flex}.nav-links a,.nav-links button{width:100%;min-height:44px}.nav-links .muted{padding:4px 2px;overflow-wrap:anywhere}}.judge-wrap{max-width:640px;padding:12px}.judge-tournament{color:var(--muted);font-size:13px;margin-bottom:8px}.judge-bar{background:var(--accent);color:#14161a;border-radius:10px;padding:12px 14px}.judge-title{font-size:22px;font-weight:800;letter-spacing:.5px}.judge-where{font-size:15px;font-weight:600;margin-top:2px}.judge-where .muted{color:#3b2a14;font-weight:400}.judge-players{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.judge-player{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center}.judge-player.won{border-color:var(--good)}.judge-name{font-size:18px;font-weight:700;overflow-wrap:anywhere}.judge-points{font-size:52px;font-weight:800;line-height:1.1;min-height:57px}.judge-pads{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.judge-pad{display:flex;flex-direction:column;gap:8px}.judge-btn{padding:16px 8px;font-size:17px;font-weight:600;display:flex;flex-direction:column;gap:2px}.judge-btn span{font-size:12px;font-weight:400;color:var(--muted)}.judge-btn.against{background:#3a2424;border-color:#6b3434}.judge-done{margin-top:16px;text-align:center}.judge-winner{font-size:24px;font-weight:800;margin-bottom:12px}.judge-submit{width:100%;padding:18px;font-size:19px}.judge-undo{width:100%;margin-top:14px;padding:12px}.judge-change{margin-top:18px;background:none;border:none;color:var(--muted);text-decoration:underline}.judge-blocked{margin-top:14px;padding:16px;border-radius:10px;background:#3a2424;text-align:center;font-size:17px}.judge-info{margin:8px 0;padding:10px 12px;border-radius:8px;background:#1e3a24;color:#bff5c8}.judge-confirm{text-align:center}.judge-confirm-text{font-size:21px;font-weight:700;margin-bottom:6px}.judge-confirm-buttons{display:grid;grid-template-columns:1fr 1.6fr;gap:10px;margin-top:18px}.judge-confirm-buttons button{padding:16px;font-size:18px}.judge-arenas{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.judge-arena{display:flex;flex-direction:column;gap:4px;padding:16px 10px}.judge-arena-label{font-size:30px;font-weight:800}.judge-find{width:100%;font-size:17px;padding:12px}.judge-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.judge-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;text-align:left}.judge-pick strong{font-size:17px}.judge-sent,.judge-wait{margin-top:12px;font-size:17px;text-align:center}.judge-lost{margin:8px 0;padding:10px 12px;border-radius:8px;background:#4a1f1f;color:#ffd0d0}
