:root{--navy:#0e310ed8;--navy-2:#141413;--navy-3:#000;--paper:#f7fcfa73;--surface:#43ad7b54;--ink:#000;--ink-soft:#010716bb;--ink-faint:#010102;--on-navy:#2e3e5e;--on-navy-faint:#fff;--line:#8b7d29;--line-soft:#dbaf1ea2;--line-on-navy:#4f6925;--gold:#745c2e;--gold-dark:#9c711d;--gold-soft:#f7ecd6;--good:#1f8f5f;--good-soft:#e1f4ea;--bad:#c9432f;--bad-soft:#fbe7e3;--display:"Space Grotesk",var(--sans);--sans:"IBM Plex Sans",ui-sans-serif,system-ui,Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,"SF Mono",Consolas,monospace;--radius:0px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}img,svg,table{max-width:100%}::selection{background:var(--gold);color:var(--navy)}a{color:inherit}:focus-visible{outline:2px solid var(--gold-dark);outline-offset:2px}.app{min-height:100vh;display:flex}aside.sidebar{background:var(--navy);width:240px;color:var(--on-navy);border-right:4px solid var(--gold);flex-direction:column;flex:0 0 240px;height:100vh;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid var(--line-on-navy);align-items:center;gap:11px;padding:20px 18px;text-decoration:none;display:flex}.mark{background:var(--gold);width:34px;height:34px;font-family:var(--display);color:var(--navy);flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.brand-name{font-family:var(--display);letter-spacing:.1px;color:#fff;font-size:14.5px;font-weight:700}.brand-sub{font-family:var(--mono);color:var(--on-navy-faint);text-transform:uppercase;letter-spacing:1px;margin-top:2px;font-size:9.5px}.identity{border-bottom:1px solid var(--line-on-navy);padding:15px 18px}.identity-row{align-items:center;gap:9px;display:flex}.avatar{background:var(--navy-3);border:1px solid var(--line-on-navy);width:30px;height:30px;font-family:var(--mono);color:var(--gold);flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;overflow:hidden}.identity-name{color:#fff;font-size:12.5px;font-weight:600;line-height:1.3}.identity-tag{font-family:var(--mono);color:var(--on-navy-faint);text-transform:uppercase;letter-spacing:.5px;font-size:9.5px}.identity-actions{gap:6px;margin-top:10px;display:flex}.identity-actions button{border:1px solid var(--line-on-navy);color:var(--on-navy-faint);font-family:var(--mono);text-transform:uppercase;letter-spacing:.4px;cursor:pointer;background:0 0;flex:1;padding:6px 4px;font-size:9.5px}.identity-actions button:hover{border-color:var(--gold);color:var(--gold)}.login-form{flex-direction:column;gap:7px;margin-top:2px;display:flex}.login-form input{background:var(--navy-2);border:1px solid var(--line-on-navy);color:#fff;font-family:var(--sans);width:100%;padding:8px 9px;font-size:12px}.login-form input::placeholder{color:var(--on-navy-faint)}.login-form button{background:var(--gold);border:1px solid var(--gold);color:var(--navy);font-weight:700;font-family:var(--mono);text-transform:uppercase;letter-spacing:.4px;cursor:pointer;margin-top:2px;padding:8px 10px;font-size:10px}.login-form button:hover{background:var(--gold-dark)}.login-form button:disabled{opacity:.5;cursor:default}.login-error{font-family:var(--mono);color:#f0a598;font-size:10px;display:none}.login-error.show{display:block}.lock-note{border:1px dashed var(--line-soft);background:var(--paper);color:var(--ink-faint);font-family:var(--mono);text-align:center;padding:22px;font-size:12px}nav.navlist{flex-direction:column;flex:1;gap:3px;padding:14px 12px;display:flex;overflow-y:auto}nav.navlist .navgroup-label{font-family:var(--mono);color:var(--on-navy-faint);text-transform:uppercase;letter-spacing:1px;padding:4px 6px 8px;font-size:9.5px}nav.navlist a{text-align:left;color:var(--on-navy-faint);font-family:var(--sans);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:9px 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex}nav.navlist a .dot{background:var(--line-on-navy);flex:none;width:6px;height:6px}nav.navlist a:hover{color:#fff;border-color:var(--line-on-navy)}nav.navlist a.active{background:var(--navy-2);border-color:var(--gold);color:#fff;font-weight:600}nav.navlist a.active .dot{background:var(--gold)}.sync-box{border-top:1px solid var(--line-on-navy);flex-direction:column;gap:8px;padding:14px 18px;display:flex}.sync-row{font-family:var(--mono);color:var(--on-navy-faint);text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:7px;font-size:10.5px;display:flex}.sync-led{background:var(--on-navy-faint);border-radius:50%;flex:none;width:7px;height:7px}.sync-led.connecting{background:var(--gold);animation:1s steps(2,end) infinite blink}.sync-led.synced{background:var(--good)}.sync-led.error{background:var(--bad)}@keyframes blink{50%{opacity:.25}}.sync-meta{font-family:var(--mono);color:var(--on-navy-faint);font-size:9px}main{flex:1;min-width:0;max-width:1120px;padding:34px 40px 60px}.pagehead{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;padding-bottom:16px;display:flex}.pagehead h1{font-family:var(--display);letter-spacing:-.3px;margin:0;font-size:24px;font-weight:700}.pagehead p{color:var(--ink-soft);max-width:560px;margin:6px 0 0;font-size:12.5px}.pagehead .tag{font-family:var(--mono);text-transform:uppercase;letter-spacing:1px;color:var(--gold-dark);background:var(--gold-soft);border:1px solid var(--gold);white-space:nowrap;padding:4px 8px;font-size:10px}.banner{border:1px solid var(--bad);border-left:5px solid var(--bad);background:var(--bad-soft);color:#7a231a;font-size:12.5px;font-family:var(--mono);margin-bottom:18px;padding:12px 14px}.stats{background:var(--surface);grid-template-columns:repeat(4,1fr);gap:2px;margin-bottom:24px;display:grid}.stat{background:var(--surface);padding:16px 18px;position:relative}.stat .k{font-family:var(--mono);text-transform:uppercase;letter-spacing:.8px;color:var(--ink-faint);margin-bottom:10px;font-size:9.5px}.stat .flap{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink);padding-bottom:4px;font-size:26px;font-weight:600;display:inline-block;position:relative}.card{background:var(--surface);border:1px solid var(--line-soft);border-top:3px solid var(--ink);margin-bottom:18px;padding:22px 24px}.card h2{font-family:var(--display);letter-spacing:-.1px;margin:0 0 4px;font-size:15.5px;font-weight:700}.card p.hint{color:var(--ink-soft);max-width:620px;margin:0 0 18px;font-size:12.5px;line-height:1.55}label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-faint);margin:16px 0 6px;font-size:10px;font-weight:600;display:block}label:first-of-type{margin-top:0}select,input[type=text],input[type=number],input[type=password]{background:var(--surface);border:1.5px solid var(--line);width:100%;color:var(--ink);font-family:var(--sans);border-radius:0;padding:10px 11px;font-size:13.5px}select:focus,input:focus{outline:2px solid var(--gold-dark);outline-offset:-1px}select[multiple]{padding:4px}select[multiple] option{padding:6px 7px}.row2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.check{align-items:center;gap:8px;margin-top:16px;display:flex}.check input{width:16px;height:16px;accent-color:var(--gold-dark)}.check label{text-transform:none;letter-spacing:0;font-family:var(--sans);color:var(--ink);margin:0;font-size:13px;font-weight:400}.btn{background:var(--ink);border:1.5px solid var(--ink);color:#fff;cursor:pointer;font-size:12.5px;font-weight:600;font-family:var(--sans);letter-spacing:.1px;border-radius:0;margin-top:18px;padding:11px 20px}.btn:hover{background:var(--gold-dark);border-color:var(--gold-dark)}.btn:disabled{opacity:.4;cursor:default;background:var(--ink-faint);border-color:var(--ink-faint)}.btn.secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);margin-right:10px}.btn.secondary:hover{background:var(--paper);border-color:var(--ink)}.btn.small{margin:0;padding:6px 11px;font-size:11px}table{border-collapse:collapse;width:100%;font-size:13px}thead th{text-align:left;font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;background:var(--ink);color:#fff;padding:10px 11px;font-size:10px;font-weight:600}td{border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:11px}tbody tr:hover td{background:var(--paper)}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.badge{font-family:var(--mono);background:var(--gold-soft);color:var(--gold-dark);border:1px solid var(--gold);padding:2px 7px;font-size:10px;font-weight:700}.muted{color:var(--ink-faint);font-size:12px}.ladder{background:var(--paper);border:1px solid var(--line);width:84px;height:6px;overflow:hidden}.ladder-fill{background:var(--gold);height:100%}.ladder.wide{width:100%;margin-top:6px}.member-search{margin-bottom:16px}.member-card{border:1px solid var(--line-soft);border-top:none}.member-card:first-child{border-top:1px solid var(--line-soft)}.member-summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:inherit;justify-content:space-between;align-items:center;gap:14px;padding:13px 16px;text-decoration:none;display:flex}.member-summary:hover{background:var(--paper)}.member-summary-main{align-items:center;gap:9px;min-width:0;display:flex}.member-name{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.member-summary-side{flex:none;align-items:center;gap:12px;display:flex}.member-elo{color:var(--ink-soft);font-size:13px}.chevron{color:var(--ink-faint);font-size:16px;line-height:1;display:inline-block}.detail-grid{grid-template-columns:repeat(4,1fr);gap:14px;padding-top:14px;display:grid}.detail-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-faint);margin-bottom:4px;font-size:9.5px;display:block}.detail-value{font-size:14px;font-weight:600}.detail-progress{margin-top:16px}.lb-row{border-bottom:1px solid var(--line-soft);color:inherit;align-items:center;gap:12px;padding:11px 4px;font-size:13px;text-decoration:none;display:flex}.lb-row:last-child{border-bottom:none}.lb-row:hover{background:var(--paper)}.lb-rank{font-family:var(--mono);color:var(--ink-faint);text-align:right;flex:none;width:22px;font-size:12px;font-weight:700}.lb-row:first-child .lb-rank{color:var(--gold-dark)}.lb-row:nth-child(2) .lb-rank{color:var(--ink-soft)}.lb-row:nth-child(3) .lb-rank{color:#9c6b3e}.lb-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-weight:600;overflow:hidden}.lb-value{flex:none;font-size:13.5px;font-weight:700}.empty{color:var(--ink-faint);text-align:center;font-size:13px;font-family:var(--mono);border:1px dashed var(--line-soft);margin-top:4px;padding:34px 0}.delta-pos{color:var(--good);font-weight:700}.delta-neg{color:var(--bad);font-weight:700}.result-box{border:1.5px solid var(--line);border-left:5px solid var(--gold);background:var(--paper);font-family:var(--mono);margin-top:16px;padding:14px 16px;font-size:12.5px;line-height:1.8}.logline{border-bottom:1px solid var(--line-soft);gap:12px;padding:13px 4px;font-size:13px;display:flex}.logline:last-child{border-bottom:none}.logline .when{color:var(--ink-faint);font-size:10.5px;font-family:var(--mono);white-space:nowrap;flex:none;width:128px;padding-top:2px}.logtype{font-family:var(--mono);text-transform:uppercase;letter-spacing:.3px;color:#fff;background:var(--ink);margin-right:8px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.logline .by{color:var(--ink-faint);margin-top:3px;font-size:11px;display:block}.footnote{color:var(--ink-soft);border-top:1px solid var(--line-soft);margin-top:28px;padding-top:16px;font-size:11.5px;line-height:1.65}.footnote code{background:var(--paper);border:1px solid var(--line-soft);font-family:var(--mono);padding:1px 4px}.login-page-wrap{max-width:380px;margin:60px auto}.not-found{text-align:center;font-family:var(--mono);padding:80px 0}@media (width<=760px){.app{flex-direction:column}aside.sidebar{border-right:none;border-bottom:4px solid var(--gold);flex:none;width:100%;height:auto;position:static}.brand{padding:14px 16px}.identity{padding:12px 16px}.sync-box{display:none}nav.navlist{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-flow:row;gap:6px;padding:10px 12px;overflow-x:auto}nav.navlist::-webkit-scrollbar{display:none}nav.navlist .navgroup-label{flex:none;align-items:center;padding:0 4px 0 2px;display:flex}nav.navlist a{white-space:nowrap;border:1px solid var(--line-on-navy);flex:none;padding:8px 12px;font-size:12.5px}nav.navlist a.active{border-color:var(--gold)}main{padding:18px 16px 44px}.pagehead{flex-wrap:wrap;margin-bottom:18px;padding-bottom:12px}.pagehead h1{font-size:20px}.card{padding:18px 16px}.stats{grid-template-columns:repeat(2,1fr);gap:1px;margin-bottom:18px}.stat{padding:12px 14px}.stat .flap{font-size:21px}.row2{grid-template-columns:1fr;gap:0}.detail-grid{grid-template-columns:repeat(2,1fr);gap:12px}.logline{flex-direction:column;gap:4px}.logline .when{width:auto}}
