:root{--ground:#E7EBE2;--surface:#F4F7F0;--surface-2:#EDF1E8;--ink:#171E1A;--ink-2:#4C564F;--ink-3:#848E86;--line:#CBD4C6;--line-2:#DCE3D7;--accent:#A0741F;--good:#4C7A4E;--warn:#B07A2A;--bad:#9A4A3C;--desk:#C7A585;--desk-edge:#A8855F;--desk-line:rgba(23,30,26,.09);--zone:rgba(160,116,31,.10);--m-graphite:#3A4147;--m-leather:#7E4038;--m-brass:#B08432;--m-jade:#2E5B48;--m-book:#1F1F22;--m-crystal:#C3D0CE;--m-marble:#DCD8CF;--m-bone:#E6DFCE;--m-walnut:#7A5636;--shade:rgba(40,28,14,.34);--sans:"Archivo",system-ui,-apple-system,sans-serif;--serif:"Bodoni Moda",Georgia,serif;--mono:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#121714;--surface:#1A211C;--surface-2:#161D18;--ink:#E7EDE5;--ink-2:#A5B0A7;--ink-3:#77837B;--line:#2B342D;--line-2:#222A24;--accent:#D4A54A;--good:#7FB27F;--warn:#D9A34E;--bad:#D77A66;--desk:#4A3627;--desk-edge:#2E2016;--desk-line:rgba(255,248,235,.07);--zone:rgba(212,165,74,.10);--m-graphite:#4E575E;--m-leather:#8E4C42;--m-brass:#C79B45;--m-jade:#3C7259;--m-book:#33333A;--m-crystal:#8FA3A1;--m-marble:#B5B1A8;--m-bone:#D9D2C0;--m-walnut:#8A6440;--shade:rgba(0,0,0,.5)}}:root[data-theme=dark]{--ground:#121714;--surface:#1A211C;--surface-2:#161D18;--ink:#E7EDE5;--ink-2:#A5B0A7;--ink-3:#77837B;--line:#2B342D;--line-2:#222A24;--accent:#D4A54A;--good:#7FB27F;--warn:#D9A34E;--bad:#D77A66;--desk:#4A3627;--desk-edge:#2E2016;--desk-line:rgba(255,248,235,.07);--zone:rgba(212,165,74,.10);--m-graphite:#4E575E;--m-leather:#8E4C42;--m-brass:#C79B45;--m-jade:#3C7259;--m-book:#33333A;--m-crystal:#8FA3A1;--m-marble:#B5B1A8;--m-bone:#D9D2C0;--m-walnut:#8A6440;--shade:rgba(0,0,0,.5)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;padding:0 16px 28px;-webkit-font-smoothing:antialiased}img{max-width:100%}.wrap{max-width:1180px;margin:0 auto}.mast{align-items:flex-end;justify-content:space-between;gap:16px;padding-block:22px 14px;border-bottom:1px solid var(--line)}.brand,.mast{display:flex;flex-wrap:wrap}.brand{align-items:baseline;gap:12px}.wordmark{font-family:var(--serif);font-weight:500;font-size:clamp(30px,5.4vw,44px);letter-spacing:.1em;line-height:1;margin:0}.tag{letter-spacing:.14em;color:var(--ink-3);padding-bottom:3px}.lvl,.tag{font-family:var(--mono);font-size:10.5px;text-transform:uppercase}.lvl{letter-spacing:.16em;color:var(--accent);display:flex;align-items:center;gap:9px;padding-bottom:4px}.lvl b{font-weight:500}.dot{width:5px;height:5px;border-radius:50%;background:var(--accent);display:inline-block}.brief{padding-block:14px 18px;max-width:62ch;color:var(--ink-2);font-size:14.5px}.brief strong{color:var(--ink);font-weight:600}.game{display:grid;grid-template-columns:minmax(0,1fr) 322px;grid-gap:26px;gap:26px;align-items:start}@media (max-width:900px){.game{grid-template-columns:minmax(0,1fr);gap:20px}}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:14px 14px 10px}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin-bottom:11px;min-height:19px}.sheet-head b{font-weight:500;color:var(--ink-2)}.sheet-head i{font-family:var(--serif);font-style:italic;text-transform:none;letter-spacing:0;font-size:12.5px;color:var(--ink-3)}.scroller{overflow-x:auto;overflow-y:hidden;padding-bottom:2px}.stage{min-width:430px}.dim-top{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--ink-3);margin-bottom:5px}.dim-top .rule{flex:1 1;height:1px;background:var(--line)}.brow{display:flex;gap:8px;align-items:stretch}.dim-side{width:14px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--ink-3);writing-mode:vertical-rl;transform:rotate(180deg)}.board{position:relative;flex:1 1;aspect-ratio:180/80;background:var(--desk);border:1px solid var(--desk-edge);border-radius:2px;background-image:linear-gradient(to right,var(--desk-line) 1px,transparent 1px),linear-gradient(to bottom,var(--desk-line) 1px,transparent 1px);background-size:calc(100%/18) calc(100%/8);touch-action:none;overflow:hidden}.zone{background:var(--zone);border:1px dashed rgba(255,255,255,.22);pointer-events:none}.zone,.zone span{position:absolute}.zone span{left:5px;bottom:3px;font-family:var(--mono);font-size:8px;letter-spacing:.11em;color:rgba(255,255,255,.55);text-transform:uppercase;white-space:nowrap}.piece{position:absolute;border:1px solid rgba(0,0,0,.3);cursor:-webkit-grab;cursor:grab;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font:inherit;color:inherit;background:transparent}.piece:active{cursor:-webkit-grabbing;cursor:grabbing}.piece.round{border-radius:50%}.piece.sel{outline:1.5px solid var(--accent);outline-offset:1.5px}.piece:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.piece.hit{border-color:var(--bad);box-shadow:0 0 0 1.5px var(--bad)!important}.piece .lbl{font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:.8;pointer-events:none}.piece.on-dark .lbl{color:#F2F5EE}.piece.on-light .lbl{color:#2A241A}.piece.round:after{inset:24%;border-radius:50%;border:1px solid rgba(0,0,0,.2)}.p-blotter:after,.piece.round:after{content:"";position:absolute;pointer-events:none}.p-blotter:after{inset:7%;border:1px solid rgba(255,255,255,.22)}.p-humidor:after{inset:13%;border:1px solid rgba(0,0,0,.26)}.p-humidor:after,.p-laptop:after{content:"";position:absolute;pointer-events:none}.p-laptop:after{left:7%;right:7%;top:7%;height:36%;background:rgba(255,255,255,.15);border-bottom:1px solid rgba(0,0,0,.25)}.p-lamp:after{content:"";position:absolute;left:35%;right:35%;top:12%;bottom:12%;background:var(--m-brass);opacity:.9;pointer-events:none}.p-monograph:after{left:0;top:0;bottom:0;width:9%;opacity:.75}.p-clock:after,.p-monograph:after{content:"";position:absolute;background:var(--m-bone);pointer-events:none}.p-clock:after{inset:20%;border-radius:50%;opacity:.85}.p-pen:after{content:"";left:8%;right:8%;top:40%;height:16%;background:var(--m-brass)}.guide,.p-pen:after{position:absolute;pointer-events:none}.guide{background:var(--accent);opacity:.75;z-index:60}.guide.v{width:1px;top:0;bottom:0}.guide.h{height:1px;left:0;right:0}.legend{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:9px;font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}.legend .sw{display:inline-flex;align-items:center;gap:6px}.shadowdemo{width:14px;height:7px;background:var(--m-walnut);box-shadow:3px 4px 5px var(--shade)}.tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}button{font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;padding:8px 13px;border-radius:2px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}button:hover{border-color:var(--ink-3);color:var(--ink)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--ink);color:var(--ground);border-color:var(--ink)}button.primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}button:disabled{opacity:.42;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:16px}.card+.card{margin-top:14px}.card-tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}.total{display:flex;align-items:baseline;gap:10px;border-bottom:1px solid var(--line-2);padding-bottom:12px;margin-bottom:13px}.total .n{font-family:var(--serif);font-size:54px;font-weight:500;line-height:.9;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.total .of{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.total .rank{margin-left:auto;text-align:right;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--accent);max-width:9.5em;line-height:1.35}.best,.total .rank{text-transform:uppercase}.best{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:var(--ink-3);margin:-6px 0 13px}.crit{border-top:1px solid var(--line-2);padding-top:12px}.crit+.crit{margin-top:12px}.crit:first-of-type{border-top:none;padding-top:0}.crit-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.crit-name{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.crit-val{font-family:var(--mono);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-2)}.track{height:3px;background:var(--line-2);margin:7px 0;position:relative;overflow:hidden}.fill{position:absolute;inset:0 auto 0 0;background:var(--good);transition:width .25s ease,background .25s ease}.fill.mid{background:var(--warn)}.fill.low{background:var(--bad)}.crit-note{font-size:12.5px;line-height:1.45;color:var(--ink-2)}.readout{font-family:var(--mono);font-size:10.5px;color:var(--ink-2);display:grid;grid-template-columns:auto 1fr;grid-gap:4px 12px;gap:4px 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:0}.readout dt{color:var(--ink-3);text-transform:uppercase;font-size:9.5px;letter-spacing:.11em;align-self:center}.readout dd{margin:0;text-align:right}.unlock{border:1px solid var(--accent);background:linear-gradient(to bottom,var(--zone),transparent);padding:13px 14px;border-radius:3px;margin-top:14px}.unlock .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent)}.unlock .t{font-family:var(--serif);font-size:20px;font-weight:500;margin:4px 0}.unlock .s,.vote-copy{font-size:12.5px;color:var(--ink-2)}.vote-copy{line-height:1.5;margin:0 0 9px}.vote-copy em{color:var(--ink);font-style:italic;font-family:var(--serif)}.vote-note{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.foot,.vote-note{color:var(--ink-3)}.foot{margin-top:24px;font-size:12px;max-width:66ch;line-height:1.55}.foot em{font-family:var(--serif);font-style:italic;color:var(--ink-2)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}