@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../fonts/dm-sans-latin-wght-normal.woff2) format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../fonts/space-grotesk-latin-wght-normal.woff2) format("woff2")}:root{--neutral-50:#f4f5ed;--neutral-100:#e8ebdf;--neutral-200:#d3d8c9;--neutral-500:#65705e;--neutral-600:#535f4c;--neutral-700:#65735d;--neutral-900:#202820;--lime-300:#d4ed93;--lime-400:#c1dd76;--warning-700:#80521f;--error-700:#a73d33;--color-bg:var(--neutral-50);--color-surface:var(--neutral-100);--color-text:var(--neutral-900);--color-muted:var(--neutral-600);--color-border:var(--neutral-200);--color-accent:var(--lime-300);--color-accent-hover:var(--lime-400);--color-focus:#315c08;--color-board:var(--neutral-900);--color-tile-off:var(--neutral-700);--color-board-text:#d9dfd0;--color-warning:var(--warning-700);--color-error:var(--error-700);--text-xs:.8125rem;--text-sm:.9375rem;--text-body:1rem;--text-lg:1.5rem;--text-xl:2rem;--text-display:3.5rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;font-family:DM Sans,sans-serif;font-size:16px;color:var(--color-text);background:var(--color-bg);font-weight:400;font-synthesis:none;-webkit-font-smoothing:antialiased;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-inline-size:280px}button,input,textarea,summary{font:inherit;color:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:disabled:not(.tile){opacity:.48}button{touch-action:manipulation}a{color:inherit;text-underline-offset:3px}a svg{vertical-align:middle}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.container{inline-size:min(1160px,calc(100% - 80px));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-block-size:104px;border-block-end:1px solid var(--color-border)}.brand{display:inline-flex;align-items:center;gap:var(--space-3);min-block-size:44px;text-decoration:none;font-family:Space Grotesk,sans-serif;font-size:var(--text-lg);font-weight:600;letter-spacing:-.035em}.brand-mark{flex:none}.header-utilities{display:flex;align-items:center;gap:var(--space-8)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:12px 16px;min-block-size:48px;font-size:var(--text-sm);line-height:1.5;font-weight:500;text-decoration:none;border:0;border-radius:10px;background:transparent;white-space:normal}.button svg{flex:none}.button-primary{background:var(--color-accent);color:var(--color-text)}.button-outline{border:1px solid var(--color-border);background:transparent}.button-quiet{padding-inline:var(--space-3)}.icon-button{display:inline-flex;align-items:center;justify-content:center;flex:none;inline-size:44px;block-size:44px;padding:0;border:0;border-radius:10px;background:transparent}.text-button{min-block-size:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:0;padding:var(--space-2) 0;background:transparent;font-size:var(--text-sm);font-weight:500;text-decoration:underline;text-underline-offset:4px}.skip-link{position:fixed;inset-block-start:-100px;inset-inline-start:16px;z-index:10;background:var(--color-text);color:var(--color-bg);padding:12px 16px;border-radius:8px}.skip-link:focus{inset-block-start:12px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-8);padding-block:var(--space-8) var(--space-6)}.desktop-break{display:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Space Grotesk,sans-serif;font-weight:500;text-wrap:balance}h1{font-size:var(--text-display);line-height:1.06;letter-spacing:-.055em;font-weight:600}h1 span{color:var(--color-muted)}.intro p{font-size:var(--text-body);line-height:1.5;color:var(--color-muted);padding-block-end:6px;max-inline-size:32ch}.workspace{display:grid;grid-template-columns:minmax(0,520px) minmax(300px,1fr);grid-template-rows:auto 1fr;grid-template-areas:"board controls" "board source";column-gap:var(--space-16);align-items:start}.board-section{grid-area:board;min-inline-size:0}.board-frame{background:var(--color-board);color:var(--color-board-text);padding:var(--space-6);border-radius:24px}.board-topline,.board-bottomline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);line-height:1.5}.board-topline{padding-block-end:var(--space-6)}.board-origin{display:flex;align-items:center;gap:var(--space-2)}.tiny-grid{font-size:var(--text-lg);line-height:1}.board-bottomline{padding-block-start:var(--space-6);font-size:var(--text-xs)}.grid{display:grid;grid-template-rows:repeat(5,1fr);gap:10px;aspect-ratio:1;direction:ltr}.grid-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-block-size:0}.grid-cell{min-inline-size:0;min-block-size:0}.tile{position:relative;display:flex;align-items:center;justify-content:center;inline-size:100%;block-size:100%;border:0;border-radius:12px;background:var(--color-tile-off);color:var(--color-bg);padding:0}.tile-on{background:var(--color-accent);color:var(--color-board)}.light-mark{inline-size:8px;block-size:8px;border:1.5px solid currentColor;border-radius:50%}.tile-on .light-mark{background:currentColor}.tile-affected{outline:1.5px solid var(--color-bg);outline-offset:-5px}.tile-on.tile-affected:not(:focus-visible):not(.tile-hint){outline-color:var(--color-board)}.tile:focus-visible{outline:3px solid var(--color-bg);outline-offset:3px;z-index:1}.tile-hint{outline:3px dashed var(--color-bg);outline-offset:3px}.hint-label{position:absolute;inset-block-end:6px;font-size:var(--text-xs);font-weight:600;line-height:1}.board-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-block:var(--space-3)}.board-instructions{font-size:var(--text-sm);line-height:1.5;max-inline-size:52ch}.keyboard-note{font-size:var(--text-xs);line-height:1.5;color:var(--color-muted);margin-block-start:var(--space-2)}.round-controls{grid-area:controls;min-inline-size:0;padding-block-start:var(--space-2)}.round-source{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-muted);min-block-size:36px}.round-source .icon-button{inline-size:44px;block-size:44px}.round-name{font-size:var(--text-lg);line-height:1.3;letter-spacing:-.03em;margin-block-start:var(--space-1);overflow-wrap:anywhere}.metrics{display:flex;justify-content:space-between;gap:var(--space-4);margin-block:var(--space-6);padding:0 0 var(--space-6);border-block-end:1px solid var(--color-border);font-variant-numeric:tabular-nums}.metrics div{min-inline-size:0}dt{font-size:var(--text-xs);line-height:1.5;color:var(--color-muted);margin-block-end:var(--space-1)}dd{margin:0;font-size:var(--text-lg);line-height:1.3;font-weight:500}.metric-total{font-size:var(--text-body);color:var(--color-muted)}.main-action{inline-size:100%;justify-content:space-between;padding-inline:var(--space-6);min-block-size:56px;font-size:var(--text-body)}.main-action>span{font-size:var(--text-xs)}.round-guidance{font-size:var(--text-sm);line-height:1.5;margin-block-start:var(--space-3);min-block-size:45px;color:var(--color-muted)}.score-note{display:flex;align-items:flex-start;gap:var(--space-2);margin-block:var(--space-6) var(--space-8);font-size:var(--text-xs);line-height:1.5;color:var(--color-muted);max-inline-size:36ch}.score-note svg{flex:none;margin-block-start:1px}.source-panel{grid-area:source;min-inline-size:0;border-block-start:1px solid var(--color-border);padding-block-start:var(--space-6)}.feed-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;line-height:1.5}.status-dot{display:inline-block;inline-size:8px;block-size:8px;border:1.5px solid currentColor;border-radius:50%;flex:none}.feed-live .status-dot{background:var(--color-text)}.feed-stale,.feed-unavailable{color:var(--color-warning)}.feed-detail{font-size:var(--text-xs);color:var(--color-muted);line-height:1.6;margin-block:var(--space-2) var(--space-4);min-block-size:42px}.source-action{inline-size:100%;justify-content:space-between}.source-alternatives{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-block-start:var(--space-2)}.source-footnote{font-size:var(--text-xs);color:var(--color-muted);line-height:1.6;margin-block-start:var(--space-3);max-inline-size:65ch}.notice{font-size:var(--text-sm);color:var(--color-muted);line-height:1.5;min-block-size:24px;margin-block:var(--space-6)}.storage-warning{font-size:var(--text-sm);line-height:1.5;margin-block-end:var(--space-6);color:var(--color-warning)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-block:var(--space-6);border-block-start:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-muted)}.site-footer .text-button{font-size:var(--text-xs)}body:has(dialog[open]){overflow:hidden}.modal{inline-size:min(480px,calc(100% - 32px));max-block-size:calc(100dvh - 48px);border:0;padding:0;border-radius:24px;background:var(--color-bg);color:var(--color-text);box-shadow:0 24px 80px #0003;overscroll-behavior:contain}.modal-wide{inline-size:min(600px,calc(100% - 32px))}.modal::backdrop{background:#162015a6;backdrop-filter:blur(3px)}.modal-inner{padding:var(--space-8)}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-block-end:var(--space-6)}.modal-heading h2{font-size:var(--text-lg);line-height:1.3;letter-spacing:-.03em;padding-block-start:5px}.modal-heading .icon-button{margin-block-start:-4px;margin-inline-end:-8px}.modal p,.modal li{font-size:var(--text-sm);line-height:1.6}.modal p+p{margin-block-start:var(--space-3)}.modal h3{font-size:var(--text-body);line-height:1.4;font-weight:600;margin-block:var(--space-6) var(--space-2)}strong{font-weight:600}.how-list{padding-inline-start:24px;margin-block:var(--space-6)}.how-list li{padding-inline-start:var(--space-1);margin-block:var(--space-3)}.help-example{display:flex;align-items:center;justify-content:center;gap:var(--space-6);background:var(--color-surface);border-radius:16px;padding:var(--space-6);margin-block:var(--space-6)}.mini-grid{display:grid;grid-template-columns:repeat(3,28px);gap:4px}.mini-grid span{display:grid;place-items:center;block-size:28px;background:var(--color-tile-off);border-radius:5px;font-size:var(--text-body);font-weight:600}.mini-grid .mini-on{background:var(--color-accent)}.help-example p{font-size:var(--text-sm)}.full-width{inline-size:100%;margin-block-start:var(--space-6)}.source-data{display:grid;gap:var(--space-4);margin-block:var(--space-6)}.source-data>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--space-4)}.source-data dd{font-size:var(--text-sm);line-height:1.6;font-weight:400}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:var(--text-xs);line-height:1.6}.hash{overflow-wrap:anywhere;word-break:break-word}.export-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:var(--space-3);margin-block-start:var(--space-6)}.export-actions .button{flex:1}.technical-details{border-block-start:1px solid var(--color-border);margin-block-start:var(--space-6);padding-block-start:var(--space-3)}.technical-details summary{font-size:var(--text-sm);cursor:pointer;min-block-size:44px;align-content:center}.technical-details p{margin-block-start:var(--space-3)}.modal-notice{color:var(--color-muted);font-size:var(--text-xs)!important;margin-block-start:var(--space-3);min-block-size:0}.modal-notice:empty{display:none}.link-label{display:block;margin-block-start:var(--space-4);font-size:var(--text-sm)}textarea{display:block;inline-size:100%;resize:vertical;padding:var(--space-3);border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);margin-block-start:var(--space-2);font-size:var(--text-body);line-height:1.5;overflow-wrap:anywhere}.import-button{position:relative;margin-block:var(--space-6) var(--space-2);cursor:pointer}.import-button input{position:absolute;opacity:0;inset:0;inline-size:100%;cursor:pointer}.import-button:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:4px}.archive-list{padding:0;list-style:none;margin-block:var(--space-4);max-block-size:340px;overflow:auto}.archive-list li{border-block-end:1px solid var(--color-border)}.archive-list button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);inline-size:100%;text-align:start;background:transparent;border:0;padding:var(--space-4) var(--space-2);border-radius:8px}.archive-list strong,.archive-list button>span>span{display:block}.archive-list strong{font-size:var(--text-body)}.archive-list button>span>span{font-size:var(--text-xs);color:var(--color-muted);margin-block-start:var(--space-1)}.field-error{color:var(--color-error);margin-block-start:var(--space-3)}.result-symbol{display:grid;place-items:center;inline-size:64px;block-size:64px;background:var(--color-surface);border-radius:50%;margin-block-end:var(--space-6)}.result-win{background:var(--color-accent)}.result-score{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin-block:var(--space-6) var(--space-2)}.result-score>span:first-child{font-family:Space Grotesk,sans-serif;font-size:var(--text-display);line-height:1;font-weight:600;letter-spacing:-.055em}.result-score>span:last-child{font-size:var(--text-xs);color:var(--color-muted)}@media(hover:hover){.button-primary:not(:disabled):hover{background:var(--color-accent-hover)}.button-quiet:not(:disabled):hover,.button-outline:not(:disabled):hover,.icon-button:hover,.archive-list button:hover{background:var(--color-surface)}.text-button:hover{color:var(--color-text);text-decoration-thickness:2px}.tile:not(:disabled):hover{filter:brightness(1.06)}}@media(prefers-reduced-motion:no-preference){.button,.icon-button,.tile{transition:background-color .12s cubic-bezier(.2,0,0,1),scale .12s cubic-bezier(.2,0,0,1)}.button:not(:disabled):active,.icon-button:active,.tile:not(:disabled):active{scale:.96}}@media(max-width:60rem){.container{inline-size:calc(100% - 48px)}.workspace{column-gap:var(--space-8);grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr)}.board-frame{padding:var(--space-4);border-radius:20px}.board-topline{padding-block-end:var(--space-4)}.board-bottomline{padding-block-start:var(--space-4)}.grid,.grid-row{gap:8px}.tile{border-radius:10px}.board-tools .button{padding-inline:var(--space-2)}}@media(max-width:44rem){.container{inline-size:calc(100% - 32px);max-inline-size:500px}.site-header{min-block-size:76px}.brand{gap:var(--space-2)}.header-utilities{gap:0}.header-utilities .button{padding-inline:var(--space-2);font-size:var(--text-xs);gap:6px}.intro{display:block;padding-block:var(--space-4)}h1{font-size:var(--text-xl);line-height:1.12;letter-spacing:-.05em}.desktop-break{display:none}.intro p{font-size:var(--text-sm);line-height:1.5;margin-block-start:var(--space-2);padding:0;max-inline-size:none}.workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"controls" "board" "source";gap:var(--space-4)}.round-controls{padding:0}.round-source{min-block-size:28px}.round-source .icon-button{inline-size:44px;block-size:44px}.round-name{font-size:var(--text-body);line-height:1.4;margin-block-start:0;letter-spacing:0}.metrics{margin-block:var(--space-3);padding-block-end:var(--space-3)}.metrics dt{margin-block-end:0}.main-action{min-block-size:48px;padding-block:var(--space-3)}.round-guidance{font-size:var(--text-xs);margin-block-start:var(--space-2);min-block-size:20px}.score-note{display:none}.board-tools{padding-block:var(--space-2)}.board-tools .button{font-size:var(--text-xs);min-block-size:44px}.keyboard-note{display:none}.board-instructions{font-size:var(--text-xs);max-inline-size:45ch}.source-panel{padding-block-start:var(--space-6)}.source-footnote{max-inline-size:60ch}.notice{margin-block:var(--space-4);font-size:var(--text-xs)}.site-footer{padding-block:var(--space-4);flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.site-footer>span:last-child{margin-inline-start:auto}.modal-inner{padding:var(--space-6)}.source-data>div{grid-template-columns:90px minmax(0,1fr);gap:var(--space-3)}.modal-heading{margin-block-end:var(--space-4)}.result-score>span:first-child{font-size:var(--text-xl)}}@media(max-width:22rem){.brand{font-size:var(--text-body)}.brand-mark{inline-size:26px;block-size:26px}.intro h1{max-inline-size:13ch}.board-frame{padding:var(--space-3);border-radius:18px}.grid,.grid-row{gap:6px}.tile{border-radius:8px}.board-tools .button{padding-inline:6px}.hint-label{inset-block-end:3px}}@media(forced-colors:active){.tile{border:2px solid ButtonText}.tile-on{background:Highlight;color:HighlightText;forced-color-adjust:none}.tile:focus-visible{outline-color:Highlight}.button,.icon-button{border:1px solid ButtonText}}
