:root{color-scheme:dark;--bg: #0d0b1a;--solid: #26214d;--free: #1a1630;--edge: #29d9f2;--ink: #e6e1f5;--dim: #8d85ad;--accent: #ffd21f;--bad: #ff3d3d;--good: #9dff3d;--line: #2d2752;--surface: #17132e;--panel-w: 344px}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}#app{display:flex;height:100%}#view{flex:1 1 0;min-width:0;display:block;background:var(--free);cursor:crosshair}#hud{position:fixed;top:10px;left:12px;pointer-events:none;white-space:pre;text-shadow:0 1px 2px #000;font-size:12px;line-height:1.5}#hud .k{color:var(--dim)}#hud .v{color:var(--ink)}#hud .ok{color:var(--good)}#hud .bad{color:var(--bad)}#hud .warn{color:var(--accent)}#panel{flex:0 0 var(--panel-w);width:var(--panel-w);height:100%;overflow-y:auto;background:var(--surface);border-left:1px solid var(--line);padding:10px 12px 40px}#panel.hidden{display:none}#panel h1{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 2px}#panel .sub{color:var(--dim);margin-bottom:10px}#panel h2{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin:16px 0 6px;border-bottom:1px solid var(--line);padding-bottom:3px}#panel h2 .why{display:block;text-transform:none;letter-spacing:0;color:#6b6390;font-size:10px}.row{display:grid;grid-template-columns:1fr auto;gap:2px 6px;margin:7px 0}.row label{color:var(--ink)}.row .num{color:var(--accent);font-variant-numeric:tabular-nums;text-align:right;max-width:130px;overflow:hidden;text-overflow:ellipsis}.row input[type=range]{grid-column:1 / -1;width:100%;height:16px;margin:0;accent-color:var(--edge)}.row .hint{grid-column:1 / -1;color:#6b6390;font-size:10px}.btns{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}button,select{font:inherit;color:var(--ink);background:#221c46;border:1px solid var(--line);border-radius:3px;padding:4px 8px;cursor:pointer}button:hover,select:hover{background:#2c2458}button.primary{border-color:#29d9f2;color:#b9f3fb}select{width:100%;cursor:pointer}.note{color:var(--dim);margin:8px 0}.note b{color:var(--accent);font-weight:400}.keys{color:var(--dim)}.keys b{color:var(--ink);font-weight:400}code{color:#29d9f2}#levelbar{position:fixed;top:10px;right:calc(var(--panel-w) + 14px);display:flex;align-items:center;gap:8px;max-width:520px;flex-wrap:wrap;justify-content:flex-end;text-shadow:0 1px 2px #000}body:has(#panel.hidden) #levelbar{right:14px}#levelbar .lb-label{color:var(--dim)}#levelbar select{width:auto;min-width:180px;max-width:260px}#levelbar .lb-browse{font-size:10px;padding:2px 7px;background:#221d42;color:var(--dim);letter-spacing:.04em}#levelbar .lb-browse:hover{color:var(--ink);border-color:var(--edge)}#levelbar .lb-note{color:var(--dim);font-size:10px}#levelbar .lb-note.bad{color:var(--bad)}#legend{position:fixed;left:12px;bottom:10px;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:calc(100vw - 24px);text-shadow:0 1px 2px #000;transition:opacity .3s ease}body.riding #legend{opacity:.2}body.riding #legend:hover,body.riding #legend:focus-within{opacity:1}#legend [hidden]{display:none!important}#legend button{font:inherit;cursor:pointer;border-radius:3px}#legend button:focus-visible,#legend .lg-chip:focus-visible{outline:2px solid var(--edge);outline-offset:1px}.lg-chip{display:flex;align-items:center;gap:6px;padding:3px 8px;background:#17132ee0;border:1px solid var(--line);color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.lg-chip:hover{color:var(--ink);border-color:var(--edge)}.lg-card{display:flex;flex-direction:column;gap:6px;width:372px;max-width:calc(100vw - 24px);padding:7px 8px 8px;background:#17132ee8;border:1px solid var(--line);border-radius:4px}.lg-head{display:flex;align-items:center;gap:6px}.lg-title{flex:1 1 auto;color:var(--dim);letter-spacing:.12em;text-transform:uppercase;font-size:10px}.lg-devtoggle,.lg-close{padding:1px 7px;background:#221d42;border:1px solid var(--line);color:var(--dim);font-size:10px;letter-spacing:.08em}.lg-devtoggle:hover,.lg-close:hover{color:var(--ink);border-color:var(--edge)}.lg-devtoggle.on{color:var(--edge);border-color:#2a5f78;background:#13233a}.lg-close{padding:0 7px;font-size:13px;line-height:1.2}.lg-hero{display:flex;align-items:center;gap:10px;padding:5px 8px;background:#100d20;border:1px solid #332c5e;border-radius:3px}.lg-heroart{display:flex;align-items:center;gap:3px;flex:0 0 auto}.lg-arrow{color:var(--edge);font-size:17px;line-height:1;margin:0 1px}.lg-herotext{display:flex;flex-direction:column;gap:1px;min-width:0}.lg-herotext b{color:var(--ink);font-weight:400;letter-spacing:.1em;text-transform:uppercase;font-size:11px}.lg-heronote{color:var(--dim);font-size:10px;line-height:1.35}.lg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.lg-tile{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:4px 2px 5px;background:#100d20;border:1px solid #241f45;border-radius:3px}.lg-name{color:var(--ink);font-size:10px;letter-spacing:.06em}.lg-bike{display:block;max-width:100%;height:auto}.lg-keys{display:flex;flex-wrap:wrap;gap:3px 9px}.lg-key{display:inline-flex;align-items:center;gap:4px}.lg-label{color:var(--dim);font-size:10px}.lg-caps{display:inline-flex;align-items:center;gap:2px}.lg-sep{color:#5b5482;font-size:9px}.lg-cap{display:inline-block;min-width:15px;padding:0 4px;background:#241f48;border:1px solid #3a3268;border-bottom-width:2px;border-radius:3px;color:var(--ink);font:inherit;font-size:10px;line-height:15px;text-align:center}.lg-pad{padding:0 5px;border:1px solid #3a3268;border-radius:3px;background:#1c1838;color:var(--edge);font-size:10px;line-height:16px}.lg-dev{display:flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:372px;padding:5px 6px;background:#0e1a22e8;border:1px solid #2a5f78;border-radius:4px}.lg-devtitle{color:#7fd4ff;letter-spacing:.14em;text-transform:uppercase;font-size:9px;padding-right:2px}.lg-tool{display:inline-flex;align-items:center;gap:4px;padding:1px 6px 2px;background:#13233a;border:1px solid #27455c;color:#cfe9fb;font-size:10px}.lg-tool:hover{border-color:#7fd4ff}.lg-tool .lg-cap{background:#1b3145;border-color:#2f5570;color:#cfe9fb}#panel .tuned{margin:8px 0;padding:5px 7px;border:1px solid #6b5a20;border-radius:3px;background:#221d0d;color:var(--accent);font-size:10px;line-height:1.4}#toast{position:fixed;top:44px;left:50%;transform:translate(-50%,-8px);max-width:62vw;padding:6px 12px;background:#17132eeb;border:1px solid #3b6b8a;border-radius:3px;color:var(--ink);text-shadow:0 1px 2px #000;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;white-space:pre-wrap}#toast.show{opacity:1;transform:translate(-50%)}#toast b{color:var(--accent);font-weight:400;margin-right:8px;text-transform:uppercase;letter-spacing:.1em;font-size:10px}#panel .remote{margin:8px 0;padding:5px 7px;border:1px solid #3b6b8a;border-radius:3px;background:#0e1a22;color:#cfe9fb;font-size:10px;line-height:1.4}#panel .toggle{display:flex;align-items:center;gap:7px;margin:10px 0 2px;cursor:pointer;color:var(--ink)}#panel .toggle input{accent-color:var(--edge);cursor:pointer}.row.remote-held label{color:#7fd4ff}.row.remote-held .num{color:#7fd4ff;opacity:.75}.row.remote-held input[type=range]{opacity:.4;cursor:not-allowed}.live-badge{margin-left:6px;padding:0 4px;border:1px solid #3b6b8a;border-radius:2px;color:#7fd4ff;font-size:9px;letter-spacing:.08em}#board{position:fixed;right:calc(var(--panel-w) + 14px);bottom:10px;width:310px;max-height:58vh;overflow-y:auto;text-shadow:0 1px 2px #000}body:has(#panel.hidden) #board{right:14px}#board.hidden{display:none}#board .bd-panel{background:#17132ee0;border:1px solid var(--line);border-radius:3px;padding:6px 8px}#board .bd-head{display:flex;align-items:center;gap:6px;margin-bottom:5px}#board .bd-title{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:10px;flex:1 1 auto}#board button{background:#221d42;color:var(--dim);border:1px solid var(--line);border-radius:2px;font:inherit;font-size:10px;padding:1px 6px;cursor:pointer}#board button:hover{color:var(--ink);border-color:var(--edge)}#board .bd-cat.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#board .bd-list{margin:4px 0}#board .bd-row{display:grid;grid-template-columns:22px 46px 1fr auto auto;gap:6px;align-items:baseline;padding:1px 0}#board .bd-row.you{color:var(--accent);border-left:2px solid var(--accent);margin-left:-4px;padding-left:2px}#board .bd-rank{color:var(--dim);text-align:right}#board .bd-name-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#board .bd-time{font-variant-numeric:tabular-nums}#board .bd-watch{opacity:0}#board .bd-row:hover .bd-watch{opacity:1}#board .bd-empty,#board .bd-hint{color:var(--dim);font-size:10px}#board .bd-you{margin:4px 0}#board .bd-gap{color:var(--dim)}#board .bd-gap.ok{color:var(--good)}#board .bd-ghost{display:flex;align-items:center;gap:6px;margin:6px 0 2px}#board .bd-ghost select{flex:1 1 auto;font:inherit;font-size:11px}#board .bd-name{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 6px}#board .bd-name .bd-hint{flex:1 0 100%}#board .bd-name input{flex:1 1 auto;min-width:0;background:var(--free);color:var(--ink);border:1px solid var(--edge);border-radius:2px;font:inherit;padding:1px 4px}#board .bd-note{color:var(--dim);font-size:10px;margin:4px 0;line-height:1.35}#board .bd-note.ok{color:var(--good)}#board .bd-note.warn{color:var(--accent)}#board .bd-note.bad{color:var(--bad)}#board .bd-foot{color:#6b6390;font-size:9px;margin-top:6px;line-height:1.35}#results{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:340px;max-width:calc(100vw - 24px);max-height:88vh;overflow-y:auto;text-shadow:0 1px 2px #000;z-index:5}#results{margin-left:calc(var(--panel-w) / -2)}body:has(#panel.hidden) #results{margin-left:0}#results.hidden{display:none}#results .rs-panel{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:12px 14px 10px}#results .rs-head{color:var(--good);letter-spacing:.18em;font-size:10px}#results .rs-level{color:var(--dim);margin-bottom:2px}#results .rs-time{line-height:1;margin:2px 0 6px}#results .rs-time-num{font-size:40px;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}#results .rs-time-unit{font-size:16px;color:var(--dim);margin-left:2px}#results .rs-pb.new{display:inline-block;margin:0 0 4px;padding:1px 6px;border:1px solid var(--good);border-radius:2px;color:var(--good);letter-spacing:.12em;font-size:10px}#results .rs-delta{font-variant-numeric:tabular-nums}#results .rs-delta.faster,#results .rs-delta.first{color:var(--good)}#results .rs-delta.slower{color:var(--dim)}#results .rs-delta.same{color:var(--accent)}#results .rs-apples{color:var(--dim);font-size:10px;margin-bottom:8px}#results .rs-submit{margin:8px 0;padding:5px 7px;border:1px solid var(--line);border-left-width:2px;border-radius:3px;background:#0f0c22;line-height:1.4}#results .rs-submit.ok{border-left-color:var(--good)}#results .rs-submit.warn{border-left-color:var(--accent)}#results .rs-submit.bad{border-left-color:var(--bad)}#results .rs-submit.ok .rs-submit-line{color:var(--good)}#results .rs-submit.warn .rs-submit-line{color:var(--accent)}#results .rs-submit.bad .rs-submit-line{color:var(--bad)}#results .rs-fix{color:var(--ink);font-size:10px;margin-top:3px}#results .rs-detail{color:#6b6390;font-size:9px;margin-top:3px}#results .rs-standing{margin:8px 0 4px}#results .rs-list{margin:4px 0 6px}#results .rs-row{display:grid;grid-template-columns:22px 46px 1fr auto auto;gap:6px;align-items:baseline;padding:1px 0}#results .rs-row.you{color:var(--accent);border-left:2px solid var(--accent);margin-left:-4px;padding-left:2px}#results .rs-rank{color:var(--dim);text-align:right}#results .rs-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#results .rs-rowtime{font-variant-numeric:tabular-nums}#results .rs-watch{opacity:0}#results .rs-row:hover .rs-watch{opacity:1}#results .rs-break{color:var(--dim);padding-left:8px;line-height:1}#results .rs-tas{color:var(--dim);font-size:10px;margin:4px 0 2px}#results .rs-acts{display:flex;flex-direction:column;gap:3px;margin-top:10px}#results .rs-act{display:flex;align-items:baseline;gap:8px;width:100%;text-align:left;background:#221d42;border:1px solid var(--line);border-radius:2px;font:inherit;padding:3px 7px;color:var(--dim);cursor:pointer}#results .rs-act:hover{color:var(--ink);border-color:var(--edge)}#results .rs-act.primary{border-color:var(--edge);color:var(--ink);background:#1b2a44}#results .rs-act kbd{flex:0 0 34px;color:var(--accent);font:inherit;font-size:10px;letter-spacing:.06em;text-align:center;border:1px solid var(--line);border-radius:2px;padding:0 3px}#results .rs-act.primary kbd{border-color:var(--edge)}#results .rs-act-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#touch{position:fixed;inset:0;z-index:4;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#touch.hidden{display:none}#touch.tc-away{opacity:0;pointer-events:none}#touch.tc-away .tc-zone{pointer-events:none}#touch .tc-zone{position:absolute;pointer-events:auto;touch-action:none;display:flex;align-items:center;justify-content:center;padding:2px;border:1px solid #ffffff33;border-radius:7px;color:#ffffff7a;letter-spacing:.1em;text-transform:uppercase;text-align:center;line-height:1.15;overflow:hidden;background:#0d0b1a1f;text-shadow:0 1px 2px #0d0b1a99}#touch .tc-zone.on{border-color:var(--edge);background:#29d9f21f;color:#29d9f2b0}#touch .tc-throttle{color:#ffffff9e;background:#0d0b1a29}#touch .tc-flip{color:#ffffff85}#touch .tc-cmd{letter-spacing:.04em;background:#17132e73;color:var(--dim);border-radius:4px;border-color:#ffffff14}#touch .tc-menu.open,#touch .tc-overview.open{border-color:var(--edge);color:#29d9f2b0;background:#29d9f21f}#touch .tc-zoom{color:#8d85ad99;text-transform:none;letter-spacing:0}body.touch #view{touch-action:none}body.touch #hud,body.touch #board,body.touch #levelbar{display:none}body.touch #legend{left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);z-index:6;max-width:none}body.touch #legend:not(.lg-open){display:none}body.touch .lg-chip,body.touch .lg-devtoggle,body.touch .lg-dev{display:none}body.touch .lg-card{width:min(430px,calc(100vw - 28px));gap:5px;max-height:92vh;overflow-y:auto}body.touch .lg-hero{padding:4px 7px}body.touch .lg-tile{padding:3px 2px 4px}body.touch.riding #legend{opacity:1}body.touch #results{max-height:78vh}#chooser{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(860px,calc(100vw - 24px));max-height:88vh;overflow-y:auto;z-index:6;text-shadow:0 1px 2px #000;outline:none}#chooser{margin-left:calc(var(--panel-w) / -2)}body:has(#panel.hidden) #chooser{margin-left:0}#chooser.hidden{display:none}#chooser .ch-panel{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:10px 12px 12px}#chooser .ch-head{display:flex;align-items:center;gap:6px}#chooser .ch-title{flex:1 1 auto;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:12px}#chooser .ch-sorts{display:flex;gap:4px}#chooser button{background:#221d42;color:var(--dim);border:1px solid var(--line);border-radius:2px;font:inherit;font-size:10px;padding:2px 7px;cursor:pointer}#chooser button:hover{color:var(--ink);border-color:var(--edge)}#chooser .ch-sort.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#chooser .ch-sub{color:var(--dim);font-size:10px;margin:2px 0 8px}#chooser .ch-group{display:flex;align-items:baseline;gap:8px;margin:10px 0 5px;border-bottom:1px solid var(--line);padding-bottom:3px}#chooser .ch-group-label{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:10px}#chooser .ch-group-note{color:#6b6390;font-size:10px}#chooser .ch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:8px}#chooser .ch-card{display:block;text-align:left;padding:0;overflow:hidden;background:#17132e;border:1px solid var(--line);border-radius:3px;font-size:11px}#chooser .ch-card:hover{border-color:var(--edge)}#chooser .ch-card.sel{border-color:var(--edge);box-shadow:inset 0 0 0 1px var(--edge)}#chooser .ch-card.on{border-left:3px solid var(--accent)}#chooser .ch-card.broken{border-color:#5a2323}#chooser .ch-shot{display:flex;align-items:center;justify-content:center;aspect-ratio:8 / 3;background:var(--free);border-bottom:1px solid var(--line);overflow:hidden}#chooser .ch-shot img{display:block;width:100%;height:100%;object-fit:cover}#chooser .ch-shot-wait{color:#3b3466;font-size:22px;letter-spacing:.08em}#chooser .ch-shot-wait.bad{color:var(--bad)}#chooser .ch-meta{padding:5px 7px 6px}#chooser .ch-name{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chooser .ch-card.on .ch-name{color:var(--accent)}#chooser .ch-facts{color:#6b6390;font-size:10px}#chooser .ch-err{color:var(--bad);font-size:10px;line-height:1.3}#chooser .ch-diff{display:flex;align-items:center;gap:5px;margin:4px 0 2px}#chooser .ch-bar{flex:1 1 auto;height:3px;background:#221d42;border-radius:2px;overflow:hidden}#chooser .ch-fill{display:block;height:100%;background:var(--dim)}#chooser .ch-fill.gentle{background:#7fd4ff}#chooser .ch-fill.steady{background:var(--good)}#chooser .ch-fill.tricky{background:var(--accent)}#chooser .ch-fill.hard{background:#ff9a3d}#chooser .ch-fill.brutal{background:var(--bad)}#chooser .ch-band.gentle{color:#7fd4ff}#chooser .ch-band.steady{color:var(--good)}#chooser .ch-band.tricky{color:var(--accent)}#chooser .ch-band.hard{color:#ff9a3d}#chooser .ch-band.brutal{color:var(--bad)}#chooser .ch-band{font-size:10px;letter-spacing:.04em;white-space:nowrap;font-variant-numeric:tabular-nums}#chooser .ch-band.none{color:#6b6390;font-size:9px;white-space:normal;line-height:1.25}#chooser .ch-best{color:var(--dim);font-size:10px;font-variant-numeric:tabular-nums}#chooser .ch-best.done{color:var(--good)}#chooser .ch-foot{color:#6b6390;font-size:9px;margin-top:10px;line-height:1.4}#hud.compact{max-width:44vw;white-space:normal}#hud.compact span{display:inline-block;margin-bottom:4px;padding:2px 7px;border:1px solid #6b5a20;border-radius:3px;background:#221d0dee;line-height:1.35}#hud.compact span.bad{border-color:#6b2020;background:#220d0dee}#chooser .ch-head{position:sticky;top:0;z-index:2;margin:-10px -12px 0;padding:8px 12px 6px;background:var(--surface);border-bottom:1px solid var(--line)}#chooser .ch-views{display:flex;gap:4px}#chooser .ch-view.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#chooser.ch-times{width:min(980px,calc(100vw - 24px))}#chooser .ch-stepbtn{flex:0 0 auto;font-size:13px;line-height:1;padding:2px 9px}#chooser .ch-at{flex:0 0 auto;color:var(--dim);font-size:10px;letter-spacing:.08em;font-variant-numeric:tabular-nums;text-align:center}#chooser.ch-times .ch-title{text-transform:none;letter-spacing:.02em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chooser .ch-lv{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;margin:2px 0 8px}#chooser .ch-shot.big{flex:0 0 216px;width:216px;border:1px solid var(--line);border-radius:3px}#chooser .ch-lvmeta{flex:1 1 220px;min-width:0;font-size:11px}#chooser .ch-here{color:var(--accent);font-size:9px;letter-spacing:.1em;text-transform:uppercase;margin-left:7px}#chooser .ch-nums{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:5px;font-size:10px;font-variant-numeric:tabular-nums}#chooser .ch-par{color:#8e86c8}#chooser .ch-pargap{color:var(--dim)}#chooser .ch-lvgo{flex:0 0 auto;align-self:center}#chooser .ch-ride{padding:6px 12px;color:var(--ink);border-color:var(--edge)}#chooser .ch-cardtimes{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}#chooser .ch-bdhead{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:7px}#chooser .ch-cats{display:flex;gap:4px}#chooser .ch-cat.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#chooser .ch-entries{flex:1 1 auto;color:var(--dim);font-size:10px}#chooser .ch-bdlist{margin:5px 0 6px}#chooser .ch-bdrow{display:flex;align-items:center;gap:8px;padding:2px 4px;border-bottom:1px solid #1d1838;font-size:11px}#chooser .ch-bdrow.you{background:#221d42;border-radius:2px}#chooser .ch-bdrank{flex:0 0 22px;text-align:right;color:var(--dim);font-variant-numeric:tabular-nums}#chooser .ch-bdav{flex:0 0 46px}#chooser .ch-bdrow .avatar{flex:0 0 auto}#chooser .ch-bdname{flex:1 1 auto;min-width:0;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#chooser .ch-bdtime{flex:0 0 auto;font-variant-numeric:tabular-nums}#chooser .ch-bdgap{flex:0 0 74px;text-align:right;color:var(--dim);font-size:10px;font-variant-numeric:tabular-nums}#chooser .ch-bdrow.par{border-bottom:1px dashed #4a4380;border-top:1px dashed #4a4380;background:#181433;color:#8e86c8}#chooser .ch-bdrow.par .ch-bdname{color:#8e86c8;letter-spacing:.1em;text-transform:uppercase;font-size:10px}#chooser .ch-bdwatch,#chooser .ch-bdwatchpad{flex:0 0 52px;box-sizing:border-box}#chooser .ch-bdwatch{padding:2px 0;text-align:center}#chooser .ch-stand{color:var(--ink);font-size:11px;margin:4px 0}#chooser .ch-bdnote{color:#6b6390;font-size:10px;margin:4px 0;line-height:1.35}#chooser .ch-ghost{display:flex;align-items:center;gap:8px;margin:8px 0 2px;border-top:1px solid var(--line);padding-top:7px}#chooser .ch-ghostlabel{flex:0 0 auto;color:var(--dim);font-size:10px;white-space:nowrap}#chooser .ch-ghost select{flex:1 1 auto;min-width:0;font:inherit;font-size:11px}body.touch #chooser{max-height:80vh;margin-left:0}body.touch #chooser.ch-times{inset:0;width:auto;max-height:none;transform:none;margin-left:0;background:var(--bg, #0d0b1a);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}body.touch #chooser.ch-times .ch-panel{min-height:100%;border:0;border-radius:0;background:transparent;max-width:900px;margin:0 auto}body.touch #chooser.ch-times .ch-head{background:var(--bg, #0d0b1a)}body.touch #chooser button{padding:6px 10px;font-size:11px}body.touch #chooser .ch-stepbtn,body.touch #chooser .ch-ride{padding:9px 14px}body.touch #chooser .ch-shot.big{flex-basis:160px;width:160px}body.touch #chooser .ch-bdrow{padding:4px}@media (max-width: 400px){body.touch #chooser.ch-times .ch-at{display:none}}@media (max-height: 440px){body.touch #chooser.ch-times .ch-head{padding:5px 10px 4px}body.touch #chooser.ch-times .ch-lv{gap:8px;margin:4px 0 5px}body.touch #chooser.ch-times .ch-shot.big{flex-basis:104px;width:104px}body.touch #chooser.ch-times .ch-lvmeta{flex-basis:150px}body.touch #chooser.ch-times .ch-nums{margin-top:3px}body.touch #chooser.ch-times .ch-bdhead{padding-top:5px}body.touch #chooser.ch-times .ch-bdrow{padding:2px 4px}body.touch #chooser.ch-times button{padding:5px 9px}body.touch #chooser.ch-times .ch-ride{padding:7px 11px}}.avatar{display:block;width:46px;height:26px;align-self:center}#look{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(700px,calc(100vw - 24px));max-height:88vh;overflow-y:auto;z-index:6;text-shadow:0 1px 2px #000;outline:none}#look{margin-left:calc(var(--panel-w) / -2)}body:has(#panel.hidden) #look{margin-left:0}#look.hidden{display:none}#look .lk-panel{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:10px 12px 12px}#look .lk-head{display:flex;align-items:center;gap:6px}#look .lk-title{flex:1 1 auto;color:var(--accent);letter-spacing:.14em;text-transform:uppercase}#look .lk-acts{display:flex;gap:4px}#look button{font:inherit;font-size:11px;color:var(--dim);background:none;border:1px solid var(--line);border-radius:2px;padding:1px 7px;cursor:pointer}#look button:hover{color:var(--ink);border-color:var(--edge)}#look .lk-shot{margin:8px 0 4px;display:flex;justify-content:center;border:1px solid var(--line);border-radius:2px;overflow:hidden}#look .lk-shot canvas{display:block}#look .lk-sub{color:var(--dim);font-size:10px;margin:2px 0 8px;text-align:center}#look .lk-row{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:start;padding:4px 0 4px 6px;border-left:2px solid transparent;margin-left:-8px}#look .lk-row.sel{border-left-color:var(--accent)}#look .lk-label{line-height:1.25}#look .lk-axis{color:var(--ink)}#look .lk-axis-note{display:block;color:#6b6390;font-size:9px;line-height:1.3}#look .lk-opts{display:flex;flex-wrap:wrap;gap:4px}#look .lk-opt.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#look .lk-set{font:inherit;font-size:11px;color:var(--dim);background:none;border:1px solid var(--line);border-radius:2px;padding:1px 7px;cursor:pointer}#look .lk-set:hover{color:var(--ink);border-color:var(--edge)}#look .lk-set.on{color:var(--bg);background:var(--edge);border-color:var(--edge)}#look .lk-row-set .lk-axis{color:var(--dim)}#look .lk-foot{color:#6b6390;font-size:9px;margin-top:10px;line-height:1.4}#look .lk-top{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}#look .lk-side{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 auto}@media (min-width: 560px){#look .lk-top{flex-direction:row;align-items:flex-start}#look .lk-shot{flex:0 0 auto;margin:0}}@media (min-width: 860px) and (max-height: 520px){#look .lk-side{flex-direction:row;align-items:flex-start;gap:10px}#look .lk-name{flex:0 1 260px;align-content:flex-start}#look .lk-seen{flex:1 1 340px}}@media (max-height: 460px){#look .lk-top{margin:5px 0 2px}#look .lk-lead{margin:2px 0 0}#look .lk-sub{margin:2px 0 3px}#look .lk-row{padding:2px 0 2px 6px}}#look .lk-lead{color:var(--ink);font-size:11px;line-height:1.4;margin:4px 0 0}#look .lk-name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}#look .lk-name-label{flex:1 0 100%;color:var(--accent);font-size:10px;letter-spacing:.12em;text-transform:uppercase}#look .lk-name-input{flex:1 1 120px;min-width:0;font:inherit;font-size:12px;color:var(--ink);background:#0f0d20;border:1px solid var(--line);border-radius:2px;padding:3px 6px}#look .lk-name-input:focus{outline:none;border-color:var(--edge)}#look .lk-name-hint{flex:1 0 100%;color:#6b6390;font-size:9px;line-height:1.35}#look .lk-link{flex:0 0 auto;color:var(--dim)}#look .lk-seen{border:1px solid var(--line);border-left:2px solid var(--edge);border-radius:2px;padding:5px 7px 6px;background:#15122acc}#look .lk-seen.anon{border-left-color:var(--line)}#look .lk-seen-title{color:var(--accent);font-size:9px;letter-spacing:.14em;text-transform:uppercase}#look .lk-seen.anon .lk-seen-title{color:var(--dim)}#look .lk-seen-cols{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:flex-start;margin:4px 0 2px}#look .lk-seen-card{display:flex;flex-direction:column;gap:2px;min-width:0}#look .lk-seen-cap{color:#6b6390;font-size:9px}#look .lk-seen-row{display:grid;grid-template-columns:22px auto 1fr auto;align-items:center;gap:6px;padding:2px 5px;border-left:3px solid var(--accent);background:#1a1633;border-radius:2px}#look .lk-seen.anon .lk-seen-row{border-left-color:#2a2450}#look .lk-seen-rank{color:var(--dim);text-align:right;font-size:10px}#look .lk-seen-name{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#look .lk-seen-name.none{color:#5b5482;font-style:italic}#look .lk-seen-time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:11px}#look .lk-seen.anon .lk-seen-time{color:var(--dim)}#look .lk-seen-ghost{display:block;border-radius:2px}#look .lk-seen-note{color:#6b6390;font-size:9px;line-height:1.4;margin-top:3px}#look .lk-go{display:flex;justify-content:flex-end;margin:10px 0 0;position:sticky;bottom:0;z-index:1;padding:6px 0 2px;background:var(--surface);border-top:1px solid var(--line)}#look .lk-go-btn{font-size:12px;color:var(--ink);border-color:var(--edge);background:#1b2a44;padding:4px 14px}#look .lk-go-btn:hover{background:#22375a}#board .bd-mine{display:flex;align-items:center;gap:6px;margin:4px 0 6px}#board .bd-edit{flex:0 0 auto}body.touch #look{max-height:94vh;margin-left:0;width:calc(100vw - 16px)}body.touch #look .lk-panel{padding:7px 9px 9px}body.touch #look button{padding:5px 10px;font-size:12px}body.touch #look .lk-close{padding:3px 10px}body.touch #look .lk-opts{gap:5px}body.touch #look .lk-set{padding:5px 10px;font-size:12px}body.touch #look .lk-name-input{padding:6px 8px;font-size:13px}body.touch #look .lk-go-btn{padding:7px 18px;font-size:13px}body.touch #look .lk-row{grid-template-columns:1fr;gap:2px}#claim{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 24px));max-height:88vh;overflow-y:auto;z-index:7;text-shadow:0 1px 2px #000;outline:none}#claim{margin-left:calc(var(--panel-w) / -2)}body:has(#panel.hidden) #claim{margin-left:0}#claim.hidden{display:none}#claim .cl-panel{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:10px 12px 12px}#claim .cl-head{display:flex;align-items:center;gap:6px}#claim .cl-title{flex:1 1 auto;color:var(--accent);letter-spacing:.14em;text-transform:uppercase}#claim button{font:inherit;font-size:11px;color:var(--dim);background:none;border:1px solid var(--line);border-radius:2px;padding:2px 8px;cursor:pointer}#claim button:hover{color:var(--ink);border-color:var(--edge)}#claim button.primary{color:#b9f3fb;border-color:#29d9f2}#claim .cl-lead{color:var(--ink);margin:6px 0;line-height:1.4}#claim .cl-shot{display:flex;justify-content:center;padding:8px 0 4px}#claim .cl-shot canvas{display:block;border-radius:2px}#claim .cl-code{text-align:center;font-size:15px;letter-spacing:.12em;color:var(--ink);margin:2px 0 6px;cursor:text;user-select:all;word-break:break-all}#claim .cl-hint{color:var(--dim);font-size:10px;text-align:center;word-break:break-all}#claim .cl-note{color:var(--dim);font-size:10px;margin:8px 0;line-height:1.4}#claim .cl-note.ok{color:var(--good)}#claim .cl-note.warn{color:var(--accent)}#claim .cl-note.bad{color:var(--bad)}#claim .cl-form{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0 4px}#claim .cl-form .cl-hint{flex:1 0 100%;text-align:left}#claim .cl-form input{flex:1 1 140px;font:inherit;font-size:11px;color:var(--ink);background:#120f26;border:1px solid var(--line);border-radius:2px;padding:2px 6px}#claim .cl-acts{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}#claim .cl-foot{color:#6b6390;font-size:9px;margin-top:8px;line-height:1.4}body.touch #claim{max-height:82vh;margin-left:0}#editor{flex:0 0 380px;width:380px;height:100%;overflow-y:auto;background:var(--surface);border-left:1px solid var(--line);padding:10px 12px 60px}#editor.hidden{display:none}#editor h1{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 2px}#editor h2{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin:14px 0 6px;border-bottom:1px solid var(--line);padding-bottom:3px}#editor h2 .why{display:block;text-transform:none;letter-spacing:0;color:#6b6390;font-size:10px}#editor .sub{color:var(--dim);margin-bottom:8px}#editor input[type=text],#editor input[type=number]{font:inherit;color:var(--ink);background:#120f26;border:1px solid var(--line);border-radius:3px;padding:3px 6px;width:100%;min-width:0}#editor .row{grid-template-columns:64px 1fr;align-items:center}#editor button:disabled{opacity:.4;cursor:default}#editor .note.ok{color:var(--good)}#editor .note.warn{color:var(--accent)}#editor .note.bad{color:var(--bad)}.ed-nums{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:4px 6px;align-items:center;margin:6px 0}.ed-nums label{color:var(--dim)}.ed-nums input{grid-column:auto}.ed-nums input:nth-of-type(3){grid-column:2 / 5}.ed-aids{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin:6px 0}.ed-aids select{width:auto}.ed-chk{color:var(--ink);cursor:pointer;user-select:none}.ed-chk input{accent-color:var(--edge);vertical-align:-1px}.ed-findings{max-height:34vh;overflow-y:auto;margin:4px 0}.ed-finding{border-left:2px solid var(--line);padding:3px 0 3px 6px;margin:3px 0;color:var(--dim);cursor:pointer;line-height:1.35}.ed-finding:hover{background:#1d1838;color:var(--ink)}.ed-finding.warn{border-left-color:var(--accent)}.ed-finding.error{border-left-color:var(--bad);color:#ffb3b3}.ed-tag{display:inline-block;min-width:58px;color:#6b6390;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.ed-rows{margin:4px 0}.ed-row{display:grid;grid-template-columns:96px 1fr;gap:6px;margin:2px 0}.ed-k{color:var(--dim)}.ed-v{color:var(--ink)}body.editing #view{cursor:crosshair}body.editing #board,body.editing #levelbar,body.editing #legend{display:none}.ch-tier{margin-left:6px;padding:0 4px;border:1px solid var(--line);border-radius:2px;color:var(--dim);font-size:9px;letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}
