:root{--bg: #f4f3ef;--ink: #111111;--muted: #6f6f69;--ball: #e4572e;--felt: rgba(0, 0, 0, .028);--hole: #1f1f1c;--shadow: .24;--water: #8cc0dc;--sand: #e6d6aa;--grain: rgba(120, 90, 30, .28);--block: #dcd8ce;--edge: rgba(0, 0, 0, .14);--veil: rgba(244, 243, 239, .86)}@media(prefers-color-scheme:dark){:root{--bg: #101012;--ink: #ecebe5;--muted: #8b8b85;--ball: #f07a4f;--felt: rgba(255, 255, 255, .03);--veil: rgba(16, 16, 18, .86);--hole: #000000;--shadow: .6;--water: #1f4d6b;--sand: #5e5237;--grain: rgba(0, 0, 0, .3);--block: #2c2c31;--edge: rgba(255, 255, 255, .09)}}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);overscroll-behavior:none}body{font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none}canvas{display:block}#c,#gl{position:fixed;inset:0}#gl[hidden]{display:none}#safe{position:fixed;inset:0;visibility:hidden;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#hud{position:fixed;left:calc(16px + env(safe-area-inset-left));top:calc(12px + env(safe-area-inset-top));white-space:pre;letter-spacing:.02em;pointer-events:none}#mulligan{position:fixed;font:inherit;color:var(--ink);background:var(--bg);border:1px solid currentColor;border-radius:6px;padding:6px 10px;cursor:pointer}#mulligan[hidden]{display:none}.shop-tier{color:var(--ink);letter-spacing:.1em;margin:16px 0 2px}.shop-lock{color:var(--muted);font-size:11px;margin:0 0 6px}.shop-row.locked{opacity:.45}#shopResult{white-space:pre-line}.shop-row .new{color:var(--bg);background:var(--ball);border-radius:3px;font-size:10px;padding:0 4px;margin-left:6px;vertical-align:1px}#note{position:fixed;text-align:center;white-space:pre;color:var(--ink);pointer-events:none}#dbg{position:fixed;width:158px;font-size:11px;line-height:1.5;white-space:pre;cursor:pointer}#dbg[hidden]{display:none}#help{position:fixed;left:calc(14px + env(safe-area-inset-left));right:calc(14px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));display:flex;flex-wrap:wrap;gap:7px;align-items:center}#help button{font:inherit;color:var(--muted);background:transparent;border:1px solid rgba(128,128,128,.35);border-radius:5px;padding:3px 8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}#help button:hover{color:var(--ink);border-color:#808080bf}#help button:disabled{opacity:.4;cursor:default}#help button:disabled:hover{color:var(--muted);border-color:#80808059}#help button.on{color:var(--ink);border-color:currentColor}#help button:focus-visible{outline:1px solid currentColor;outline-offset:2px}kbd{font:inherit;opacity:.65;border:1px solid currentColor;border-radius:3px;padding:0 4px}#help button[hidden]{display:none}@media(hover:none)and (pointer:coarse){#help kbd{display:none}#help button{padding:6px 8px}#help{gap:6px}}#overlay{position:fixed;inset:0;display:flex;padding:24px;background:var(--veil);overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}#overlay[hidden]{display:none}.card{max-width:340px;margin:auto;text-align:center}.card[hidden]{display:none}#demo{display:block;width:260px;height:72px;margin:0 auto 14px}.card h1{font:inherit;font-size:20px;letter-spacing:.1em;color:var(--ink);margin:0 0 16px}.card p{margin:0 0 10px}.card .ink{color:var(--ink)}.card .big{font-size:16px;color:var(--ink);letter-spacing:.06em}.card button{font:inherit;color:var(--ink);background:transparent;border:1px solid currentColor;border-radius:6px;padding:9px 16px;margin:10px 4px 0;cursor:pointer}.card pre{font:inherit;text-align:left;display:inline-block;color:var(--ink);margin:0 0 6px}.card button.quiet{color:var(--muted);border-color:#80808066}.card button.danger{color:#e5484d}.card button:disabled{opacity:.45;cursor:default}.card form{display:flex;gap:8px;justify-content:center;margin:14px 0 0}.card form[hidden]{display:none}.card form button{margin:0}.card input{font:inherit;font-size:16px;color:var(--ink);background:transparent;width:11em;border:1px solid rgba(128,128,128,.5);border-radius:6px;padding:8px 10px;-webkit-user-select:text;user-select:text;touch-action:manipulation}.card input:focus{outline:none;border-color:var(--ink)}.card h2{font:inherit;letter-spacing:.1em;color:var(--ink);margin:20px 0 6px}.board{list-style:none;padding:0;margin:0 auto;width:100%;max-width:300px;text-align:left;color:var(--ink)}.board li{display:grid;grid-template-columns:2.4em 1fr 2.6em 2.6em;gap:6px;padding:1px 6px;border-radius:4px}.board li.me{background:color-mix(in srgb,var(--ball) 22%,transparent)}.board li.quiet{display:block;color:var(--muted);text-align:center}.board .n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board .t,.board .r{text-align:right}.card .note{color:var(--muted);min-height:1.55em;margin:8px 0 0}#shopList{text-align:left;margin:4px 0 6px}.shop-row{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(128,128,128,.2)}.shop-row .name{color:var(--ink)}.shop-row .lvl{letter-spacing:.1em;color:var(--ball);margin-left:6px}.shop-row small{grid-column:1;color:var(--muted);font-size:11px}.shop-row button{grid-column:2;grid-row:1 / span 2;margin:0;padding:7px 10px;min-width:6.5em}.card .legend{min-height:0;font-size:11px;margin:4px 0 0}.card .legend[hidden]{display:none}
