:root{--panel:#0c1016d1;--line:#ffffff1a;--text:#eef1f4;--muted:#98a4b2;--accent:#ff8a1f;--accent2:#34d399;--shadow:0 10px 30px #00000073;--bg:#0b0f14;--hairline:#ffffff12;--muted-2:#9aa6b4;--accent-ink:#1a1206;--surface-1:#ffffff0d;--surface-2:#ffffff0f;--surface-2-hover:#ffffff1f;--scroll-thumb:#ffffff24;--att:#dce4ec8c;--label-bg:#0c1016d1;--label-fg:#fff;--label-border:#ffffff24;--label-shadow:0 3px 12px #00000080;--label-head-border:#34d39973;--water-label:#2f6f99;--water-label-2:#3f7fa8;--hint-bg:#0c1016b3;--vintage-label-bg:#f7f2e7eb;--vintage-ink:#3a2c1c;--vintage-border:#785a3473;--vintage-shadow:0 2px 8px #3c281440;--vintage-e:#6f5c40;--vintage-leader:#7a5630;--vintage-leader-ring:#f0ebe0;--vintage-water:#2b6286;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-serif:Georgia, "Iowan Old Style", "Times New Roman", serif;--radius-xs:4px;--radius-sm:7px;--radius-md:8px;--radius-lg:9px;--radius-xl:10px;--radius-panel:14px;--radius-pill:999px;--blur-panel:14px;--blur-label:7px;--blur-hint:8px}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}#c{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#dock{display:contents}#overlay{z-index:3;pointer-events:none;position:fixed;inset:0;overflow:hidden}#overlay.off{display:none}#leaders{width:100%;height:100%;position:absolute;inset:0}.plabel{background:var(--label-bg);border:1px solid var(--label-border);border-radius:var(--radius-md);white-space:nowrap;color:var(--label-fg);box-shadow:var(--label-shadow);-webkit-backdrop-filter:blur(var(--blur-label)) saturate(120%);padding:3px 8px;font-size:11px;font-weight:600;position:absolute;transform:translate(-50%,-100%)}.plabel .e{color:var(--muted-2);font-variant-numeric:tabular-nums;margin-left:5px;font-size:10px;font-weight:500}.plabel.head{border-color:var(--label-head-border)}body.vintage .plabel{font-family:var(--font-serif);background:var(--vintage-label-bg);color:var(--vintage-ink);border-color:var(--vintage-border);box-shadow:var(--vintage-shadow);font-style:italic}body.vintage .plabel .e{color:var(--vintage-e);font-style:normal}body.vintage #leaders line{stroke:var(--vintage-leader)}body.vintage #leaders circle{fill:var(--vintage-leader);stroke:var(--vintage-leader-ring)}#woverlay{z-index:3;pointer-events:none;position:fixed;inset:0;overflow:hidden}#woverlay.off{display:none}.wlabel{white-space:nowrap;color:var(--water-label);text-shadow:0 1px 2px #ffffffa6,0 0 3px #ffffff8c;font-size:10.5px;font-weight:600;position:absolute;transform:translate(-50%,-50%)}.wlabel .we{color:var(--water-label-2);font-variant-numeric:tabular-nums;margin-left:4px;font-size:9.5px;font-weight:500}body.vintage .wlabel{font-family:var(--font-serif);color:var(--vintage-water);font-style:italic}.panel{z-index:5;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-panel);-webkit-backdrop-filter:blur(var(--blur-panel)) saturate(120%);box-shadow:var(--shadow);position:absolute}#title{max-width:330px;padding:14px 16px 13px;top:14px;left:14px}#title .ey{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 4px;font-size:10.5px;font-weight:600}#title h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700;line-height:1.05}#title .sub{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.35}.stats{gap:18px;margin-top:12px;display:flex}.stat .n{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.stat .l{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:1px;font-size:10px}#ctl{width:216px;max-height:calc(100vh - 28px);padding:12px;top:14px;right:14px;overflow-y:auto}#ctl::-webkit-scrollbar{width:8px}#ctl::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:var(--radius-md)}#ctl .t{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:10px}#ctlHead{cursor:pointer;user-select:none;justify-content:space-between;align-items:center;display:flex}#ctlHead .t{margin:0}.chev{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px;font-size:12px;line-height:1;transition:transform .2s,color .15s}#ctlHead:hover .chev{color:var(--text)}#ctlBody{padding-top:11px}#ctl.collapsed{width:auto;min-width:120px}#ctl.collapsed #ctlBody{display:none}#ctl.collapsed .chev{transform:rotate(-90deg)}.sec{border-top:1px solid var(--hairline);margin-top:13px;padding-top:11px}.seg{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-xl);gap:3px;padding:3px;display:flex}.seg button{appearance:none;color:var(--muted);font:inherit;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:1;padding:6px 2px;font-size:11px;font-weight:600;transition:background .15s,color .15s}.seg button:hover{color:var(--text)}.seg button.on{background:var(--accent);color:var(--accent-ink)}.row{justify-content:space-between;align-items:center;gap:10px;margin-top:11px;display:flex}.row.tg{margin-top:12px}.row label{color:var(--muted);font-size:11.5px}.row .v{font-variant-numeric:tabular-nums;color:var(--text);font-size:11px;font-weight:600}.mini{appearance:none;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font:inherit;border-radius:var(--radius-sm);cursor:pointer;min-width:50px;padding:4px 13px;font-size:11px;font-weight:600;transition:background .15s,color .15s}.mini.on{background:var(--accent);color:var(--accent-ink);border-color:#0000}.hint2{color:var(--muted);opacity:.85;margin:8px 0 2px;font-size:10px;line-height:1.35}input[type=range]{appearance:none;border-radius:var(--radius-xs);background:linear-gradient(90deg, var(--accent2), var(--accent));outline:none;width:100%;height:4px;margin-top:7px}input[type=range]::-webkit-slider-thumb{appearance:none;border:2px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:15px;height:15px;box-shadow:0 1px 4px #0006}input[type=range]::-moz-range-thumb{border:2px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:15px;height:15px}.btn{appearance:none;cursor:pointer;background:var(--surface-2);border:1px solid var(--line);width:100%;color:var(--text);font:inherit;border-radius:var(--radius-lg);margin-top:13px;padding:8px;font-size:11.5px;font-weight:600;transition:background .15s;display:block}.btn:hover{background:var(--surface-2-hover)}#prof{padding:11px 14px 8px;bottom:14px;left:14px;right:14px}#prof .h{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}#prof .h .t{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11px}#prof .h .lg{color:var(--muted);font-size:11px}#prof svg{width:100%;display:block}.ax{fill:var(--muted);font-size:10px}.pk{fill:var(--text);font-variant-numeric:tabular-nums;font-size:9.5px;font-weight:600}.vl{fill:var(--muted-2);font-variant-numeric:tabular-nums;font-size:9px}#hint{z-index:5;background:var(--hint-bg);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--muted);backdrop-filter:blur(var(--blur-hint));pointer-events:none;text-align:center;padding:6px 14px;font-size:11px;transition:opacity .6s;position:absolute;bottom:150px;left:50%;transform:translate(-50%)}#att{z-index:4;color:var(--att);font-size:9.5px;position:absolute;bottom:6px;right:8px}#err{z-index:9;background:var(--bg);color:var(--text);text-align:center;justify-content:center;align-items:center;padding:24px;font-size:14px;display:none;position:absolute;inset:0}@media (width<=680px){#title{padding:10px 12px;left:8px;right:8px}#title h1{font-size:18px}#title .sub{display:none}#title .stats{gap:14px;margin-top:8px}#title .stat .n{font-size:15px}#hint,#att{display:none}#dock{z-index:6;flex-direction:column;gap:7px;display:flex;position:fixed;bottom:8px;left:8px;right:8px}#ctl,#prof{width:auto;max-width:none;margin:0;position:static;inset:auto}#ctl{max-height:40vh;padding:9px 11px}#ctl .row{margin-top:8px}#ctl .sec{margin-top:10px;padding-top:9px}#ctl input[type=range]{margin-top:6px}#ctl .btn{margin-top:9px;padding:7px}#prof{padding:8px 11px 5px}#prof .h{margin-bottom:2px}}
