@font-face{font-family:PressStart2P;src:url(/PressStart2P.woff2)format("woff2");font-display:swap}*,:before,:after{box-sizing:border-box}html,body{background:#1a1a1a;height:100%;margin:0;overflow:hidden}body{color:#eef3fb;font:14px/1.5 ui-sans-serif,system-ui,sans-serif}.pixel{font-family:PressStart2P,ui-monospace,monospace}.crt{z-index:15;pointer-events:none;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000001f 0 1px,#0000 1px 3px);position:fixed;inset:0}:root{--rail:clamp(232px, 21vw, 520px)}.dash{z-index:1;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(6px,1vh,16px);padding:clamp(8px,1.1vw,22px);display:grid;position:fixed;inset:0;overflow:hidden}.dash-foot{color:#6d7a99;letter-spacing:1px;text-shadow:1px 1px #000;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(7px,.7vw,14px);font-size:clamp(8px,.7vw,14px);display:grid}.foot-credits{color:#8a93a6;justify-self:end;font-size:clamp(6px,.5vw,10px)}.foot-credits:before{content:"▸ ";color:#d97757}.foot-brand{align-items:center;gap:clamp(7px,.7vw,14px);display:inline-flex}.foot-spacer{display:block}.foot-logo{width:auto;height:clamp(18px,1.6vw,34px);image-rendering:pixelated;display:block}@media (max-width:640px){.dash-foot{grid-template-columns:1fr;justify-items:center;gap:4px;font-size:8px}.foot-credits{justify-self:center}.foot-spacer{display:none}}.dash-head{text-shadow:2px 2px #000;align-items:baseline;gap:clamp(10px,1.4vw,28px);display:flex}.dash-body{grid-template-columns:var(--rail) minmax(0, 1fr) var(--rail);gap:clamp(8px,1vw,20px);min-width:0;min-height:0;display:grid}.rail{flex-direction:column;gap:clamp(8px,1vh,16px);min-width:0;min-height:0;display:flex;overflow:auto}.stage-cell{min-width:0;min-height:0;position:relative;overflow:hidden}.stage-canvas{position:absolute;inset:0}.stage-canvas canvas{display:block;width:100%!important;height:100%!important}.title{letter-spacing:1px;font-size:clamp(18px,2vw,46px)}.title b{color:#d97757}.livebar{color:#aebbd4;align-items:center;gap:8px;font-size:clamp(10px,.9vw,20px);display:flex}.led{background:#6d7a99;flex:none;width:clamp(10px,.8vw,18px);height:clamp(10px,.8vw,18px);display:inline-block}.led.live{background:#5ad19a;animation:1s step-end infinite blink;box-shadow:0 0 8px #5ad19a}.led.error{background:#e0655f}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:.2}}.cursor{margin-left:6px;animation:1s step-end infinite blink}@media (prefers-reduced-motion:reduce){.led.live,.cursor{animation:none}}.panel{background:#0a0d16d1;border:3px solid #2b3a5c;flex-direction:column;gap:clamp(6px,.6vh,12px);min-width:0;padding:clamp(8px,.7vw,16px);display:flex;box-shadow:inset -3px -3px #070b14,inset 3px 3px #1f2c46}.panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.panel-title{color:#f2f5fb;letter-spacing:1px;font-size:clamp(10px,.78vw,17px)}.panel-meta{color:#aebbd4;letter-spacing:1px;align-items:center;gap:6px;font-size:clamp(8px,.58vw,12px);display:inline-flex}.panel-date{color:#5ad19a;letter-spacing:1px;font-size:clamp(8px,.58vw,12px)}.panel-foot{color:#6d7a99;letter-spacing:1px;font-size:clamp(7px,.5vw,11px)}.scoreboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,.5vw,10px);display:grid}.score{text-align:center;background:#121a2c99;padding:clamp(6px,.6vw,12px)}.score .k{color:#aebbd4;letter-spacing:1px;font-size:clamp(7px,.5vw,11px)}.score .v{margin-top:clamp(5px,.5vh,10px);font-family:PressStart2P,ui-monospace,monospace;font-size:clamp(12px,1.05vw,23px)}.score .v.accent{color:#d97757}.score .v.gold{color:#f2c14e}.score .v.good{color:#5ad19a}.mini-table{border-collapse:collapse;table-layout:fixed;width:100%}.mini-table td{color:#eef3fb;white-space:nowrap;text-overflow:ellipsis;border-bottom:2px solid #1f2c46;padding:clamp(3px,.4vh,8px) clamp(4px,.4vw,9px);font-size:clamp(9px,.66vw,15px);overflow:hidden}.mini-table tr:last-child td{border-bottom:none}.mini-table .r{text-align:center;color:#f2c14e;padding-right:clamp(4px,.4vw,10px)}.mini-table .day{color:#aebbd4;letter-spacing:1px}.mini-table .who{letter-spacing:0}.mini-table .num{text-align:right;font-variant-numeric:tabular-nums}.mini-table.today .r{width:12%}.mini-table.today .num{width:26%}.mini-table.top .day{width:32%}.mini-table.top .num{width:26%}.mini-table .num.strong{color:#d97757}.mini-table tr.dim td{color:#6d7a99}.mini-table tr.peak td{background:#f2c14e1a}.mini-table tr:first-child td{background:#f2c14e0f}.mini-table .dot{vertical-align:middle;flex:none;width:clamp(8px,.56vw,12px);height:clamp(8px,.56vw,12px);margin-right:clamp(5px,.45vw,10px);display:inline-block;box-shadow:inset -2px -2px #00000059}@media (max-width:820px),(max-aspect-ratio:1){.dash-body{grid-template-columns:1fr;grid-auto-rows:min-content;overflow:auto}.stage-cell{order:-1;min-height:52vh}.rail{flex-flow:wrap;overflow:visible}.rail>.panel{flex:280px}}@media (min-width:821px) and (max-width:1100px) and (min-aspect-ratio:1){:root{--rail:clamp(188px, 22vw, 268px)}.dash{gap:clamp(5px,.7vh,10px);padding:clamp(6px,.8vw,12px)}.dash-body{gap:clamp(6px,.8vw,12px)}.panel{gap:clamp(4px,.5vh,8px);padding:clamp(6px,.7vw,12px)}.score{padding:clamp(5px,.6vw,10px)}}@media (max-width:640px){.dash{gap:7px;padding:7px}.dash-head{align-items:center;gap:10px}.title{font-size:17px}.livebar{font-size:9px}.stage-cell{aspect-ratio:8/7;min-height:0}.rail{flex-flow:column;gap:7px}.rail>.panel{flex:none}.panel{gap:5px;padding:8px}.panel-title{font-size:11px}.panel-meta,.panel-date{font-size:8px}.panel-foot{font-size:7px}.scoreboard{gap:5px}.score{padding:6px}.score .k{font-size:7px}.score .v{margin-top:4px;font-size:14px}.mini-table td{padding:4px 5px;font-size:11px}.mini-table .dot{width:8px;height:8px;margin-right:5px}}@media (min-width:2400px){:root{--rail:clamp(520px, 21vw, 820px)}.title{font-size:clamp(46px,2vw,82px)}.livebar{font-size:clamp(20px,.9vw,36px)}.led{width:clamp(18px,.8vw,32px);height:clamp(18px,.8vw,32px)}.panel-title{font-size:clamp(17px,.78vw,30px)}.panel-meta,.panel-date{font-size:clamp(12px,.58vw,21px)}.panel-foot{font-size:clamp(11px,.5vw,19px)}.score .v{font-size:clamp(23px,1.05vw,40px)}.score .k{font-size:clamp(11px,.5vw,19px)}.mini-table td{font-size:clamp(15px,.66vw,26px)}.mini-table .dot{width:clamp(12px,.56vw,20px);height:clamp(12px,.56vw,20px)}.dash-foot{font-size:clamp(14px,.7vw,26px)}.foot-logo{height:clamp(34px,1.6vw,60px)}}.daily{z-index:1;flex-direction:column;align-items:center;gap:22px;padding:36px 24px;display:flex;position:fixed;inset:0;overflow:auto}.daily-head{text-align:center;flex-direction:column;gap:10px;display:flex}.daily-head .title{letter-spacing:2px;text-shadow:3px 3px #000;font-size:30px}.daily-sub{color:#aebbd4;letter-spacing:1px;justify-content:center;align-items:center;gap:8px;font-size:12px;display:inline-flex}.daily-table{border-collapse:collapse;background:#0a0d16d1;border:3px solid #2b3a5c;min-width:min(900px,94vw);box-shadow:inset -3px -3px #070b14,inset 3px 3px #1f2c46}.daily-table th,.daily-table td{text-align:left;white-space:nowrap;border-bottom:2px solid #1f2c46;padding:12px 18px}.daily-table thead th{color:#aebbd4;letter-spacing:1px;background:#121a2c99;font-size:12px}.daily-table tbody td{color:#eef3fb;font-size:16px}.daily-table .num{text-align:right}.daily-table .r{text-align:center;color:#f2c14e;width:56px}.daily-table .strong{color:#d97757}.daily-table tbody tr.dim td{color:#6d7a99}.daily-table tbody tr:first-child td{background:#f2c14e12}.daily-table tfoot td{color:#5ad19a;letter-spacing:1px;background:#121a2c99;border-bottom:none;font-size:14px}.daily-table .dot{vertical-align:middle;width:12px;height:12px;margin-right:10px;display:inline-block;box-shadow:inset -2px -2px #00000059}.mini-table tr.clickable{cursor:pointer}.mini-table tr.clickable:hover td{background:#d9775724}.mini-table tr.clickable:focus-visible{outline-offset:-2px;outline:2px solid #d97757}.user-page{z-index:1;flex-direction:column;gap:clamp(12px,1.6vh,28px);padding:clamp(12px,2vw,40px);display:flex;position:fixed;inset:0;overflow:auto}.user-head{text-shadow:2px 2px #000;flex-direction:column;gap:clamp(6px,.8vh,14px);display:flex}.back-btn{color:#aebbd4;letter-spacing:1px;background:#0a0d16d1;border:3px solid #2b3a5c;align-self:flex-start;padding:clamp(6px,.6vw,10px) clamp(10px,1vw,16px);font-size:clamp(10px,.8vw,16px);text-decoration:none;box-shadow:inset -3px -3px #070b14,inset 3px 3px #1f2c46}.back-btn:hover{color:#f2f5fb;border-color:#d97757}.user-id{flex-wrap:wrap;align-items:center;gap:clamp(8px,.9vw,16px);display:flex}.user-dot{flex:none;width:clamp(18px,1.6vw,30px);height:clamp(18px,1.6vw,30px);box-shadow:inset -3px -3px #0006}.user-name{letter-spacing:1px;color:#f2f5fb;font-size:clamp(20px,2.4vw,52px)}.user-tags{color:#f2c14e;letter-spacing:1px;font-size:clamp(9px,.8vw,16px)}.user-email{color:#6d7a99;letter-spacing:1px;font-size:clamp(9px,.7vw,14px)}.user-msg{color:#aebbd4;letter-spacing:1px;padding:clamp(8px,1vw,16px) 0;font-size:clamp(11px,1vw,18px)}.user-msg.err{color:#e0655f}.user-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:clamp(8px,.8vw,16px);display:grid}.ustat{text-align:center;background:#0a0d16d1;border:3px solid #2b3a5c;padding:clamp(10px,1vw,18px);box-shadow:inset -3px -3px #070b14,inset 3px 3px #1f2c46}.ustat .k{color:#aebbd4;letter-spacing:1px;font-size:clamp(8px,.62vw,13px)}.ustat .v{color:#eef3fb;margin-top:clamp(6px,.6vh,12px);font-size:clamp(18px,1.6vw,36px)}.ustat .v.accent{color:#d97757}.ustat .v.gold{color:#f2c14e}.ustat .v.good{color:#5ad19a}.ustat-sub{color:#6d7a99;font-size:.5em}.user-cols{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;gap:clamp(10px,1vw,20px);display:grid}.bar-row{grid-template-columns:clamp(70px,7vw,130px) 1fr clamp(48px,4vw,80px);align-items:center;gap:clamp(6px,.6vw,12px);padding:clamp(3px,.4vh,7px) 0;font-size:clamp(9px,.72vw,15px);display:grid}.bar-label{color:#aebbd4;letter-spacing:1px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-label.day{color:#aebbd4}.bar-track{background:#121a2cb3;height:clamp(10px,1vh,18px);box-shadow:inset 2px 2px #070b14}.bar-fill{min-width:2px;height:100%;display:block}.bar-val{text-align:right;color:#d97757;font-variant-numeric:tabular-nums}@media (max-width:640px){.user-stats{grid-template-columns:repeat(2,1fr)}.ustat .v{font-size:20px}}
