@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-Dun_Rd-l.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #262114;--surface: #302A1B;--ink: #F1E9DA;--muted: #A99D8B;--accent: #3D94D6;--accent-ink: #0B1620;--font-display-stack: "Newsreader", ui-sans-serif, system-ui, sans-serif;--font-body-stack: "Onest", ui-sans-serif, system-ui, sans-serif;--radius: 10px}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--bg: #F5EFE3;--surface: #FFFCF5;--ink: #2B251C;--muted: #665C4B;--accent: #1B5E9E;--accent-ink: #FFFFFF}}:root[data-theme=light]{--bg: #F5EFE3;--surface: #FFFCF5;--ink: #2B251C;--muted: #665C4B;--accent: #1B5E9E;--accent-ink: #FFFFFF}:root[data-theme=dark]{--bg: #262114;--surface: #302A1B;--ink: #F1E9DA;--muted: #A99D8B;--accent: #3D94D6;--accent-ink: #0B1620}:root{--ease: .16s cubic-bezier(.2, .7, .2, 1);--duration-fast: 80ms;--duration: .16s;--duration-slow: .28s}:root{--font-sans: var(--font-body-stack);--font-display: var(--font-display-stack);--radius-control: 8px;--radius-key: 4px;--line: color-mix(in srgb, var(--ink) 16%, var(--bg));--raised: color-mix(in srgb, var(--ink) 7%, var(--surface));--shadow-raised: 0 1px 2px color-mix(in srgb, #000 22%, transparent), 0 8px 24px color-mix(in srgb, #000 16%, transparent)}@media(prefers-reduced-motion:reduce){:root{--ease: 0ms;--duration-fast: 0ms;--duration: 0ms;--duration-slow: 0ms}}html{color-scheme:light dark}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:14px;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}button,input{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cabinet{display:flex;flex-direction:column;min-width:360px;height:100dvh;min-height:100dvh;background:var(--bg)}.marquee{display:flex;align-items:center;min-height:2.9rem;padding:.5rem .9rem .3rem;flex-shrink:0}.identity{display:inline-flex;align-items:center;gap:.5rem;margin:0}.mark{width:1.5rem;height:1.5rem;color:var(--ink);display:block;flex-shrink:0}.mark .pip{fill:var(--accent)}.wordmark{font-family:var(--font-display);font-size:1.3rem;font-weight:600;letter-spacing:-.01em;line-height:1}.wordmark:after{content:"";display:inline-block;width:.28em;height:.28em;margin-left:.12em;border-radius:50%;background:var(--accent)}.stage{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 .7rem;gap:.45rem}.tape{display:flex;align-items:stretch;justify-content:space-between;gap:.25rem;flex-shrink:0}.stat{margin:0;flex:1;display:flex;flex-direction:column;align-items:center;gap:.05rem;min-width:0}.stat-k{color:var(--muted);font-size:.72rem;font-weight:500;letter-spacing:.01em}.stat-v{font-family:var(--font-display);font-size:1.15rem;font-weight:600;font-variant-numeric:lining-nums tabular-nums;line-height:1.1}.felt{flex:1 1 0;min-width:0;min-height:12rem;position:relative;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.felt canvas{display:block;width:100%;height:100%;background:var(--bg);cursor:pointer;touch-action:manipulation}.idle{position:absolute;left:.7rem;right:.7rem;bottom:.55rem;margin:0;pointer-events:none;text-align:center}.idle-kicker,.landed-kicker{margin:0 0 .15rem;color:var(--ink);font-family:var(--font-display);font-size:1rem;font-weight:600}.idle-copy{margin:0 auto;max-width:22rem;color:var(--muted);font-size:.8rem;line-height:1.35}.idle[hidden],.landed[hidden]{display:none}.landed{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.landed-card{pointer-events:auto;background:var(--raised);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-raised);padding:.7rem 1.1rem .75rem;text-align:center;min-width:11rem}.landed-total{margin:0;font-family:var(--font-display);font-size:clamp(2.6rem,8cqi,4rem);font-weight:600;font-variant-numeric:lining-nums;letter-spacing:-.02em;line-height:1}.landed-line{margin:.2rem 0 .45rem;color:var(--muted);font-size:.8rem}.landed-actions{display:flex;justify-content:center;gap:.3rem}.deck{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;width:100%;max-width:34rem;margin:0 auto;padding:.4rem .7rem .25rem}.dice{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}.dice button,.count button,.ghost,.primary,.theme-toggle button,.notation-wrap input{appearance:none;border-radius:var(--radius-control);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;touch-action:manipulation}.dice button{min-height:2.5rem;min-width:3rem;padding:0 .6rem;font-size:.9rem;font-weight:600}.dice button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.count{display:flex;align-items:center;justify-content:center;gap:.35rem}.count button{min-height:2.5rem;min-width:2.5rem;padding:0 .5rem;font-size:1.15rem;line-height:1}.count button:disabled{color:var(--muted);cursor:default}.count-label{min-width:4.5rem;text-align:center;font-size:1.05rem;font-weight:600;font-variant-numeric:tabular-nums}.primary,.ghost{min-height:2.5rem;padding:0 1rem;font-size:.95rem;font-weight:600}.primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.ghost{background:transparent}.landed-actions .primary,.landed-actions .ghost{min-width:5rem}.palette{background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-raised);overflow:hidden}.palette .notation-wrap input{display:block;width:100%;min-height:3rem;padding:0 1rem;border:0;border-radius:0;background:transparent;font-size:1.1rem;font-weight:500;font-variant-numeric:tabular-nums;text-align:left;cursor:text}.palette .notation-wrap input:focus-visible{outline-offset:-2px}.actions{display:flex;border-top:1px solid var(--line)}.actions button{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:2.75rem;padding:0 .9rem;border:0;border-radius:0;font-size:.95rem;font-weight:600}.actions .ghost{border-left:1px solid var(--line);background:transparent}.actions .primary{background:var(--accent);color:var(--accent-ink)}kbd{display:inline-block;min-width:1.6rem;padding:.15rem .4rem;border:1px solid currentColor;border-radius:var(--radius-key);font:inherit;font-size:.7rem;font-weight:500;line-height:1.2;text-align:center;opacity:.85}.keys{margin:0;color:var(--muted);text-align:center;font-size:.72rem}.colophon{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.3rem .9rem .6rem;flex-shrink:0}.byline{margin:0;color:var(--muted);font-size:.75rem;line-height:1.3}.colophon a,.colophon a:link,.colophon a:visited,.colophon a:hover,.colophon a:active,.byline a,.byline a:link,.byline a:visited,.byline a:hover,.byline a:active{color:inherit;text-decoration:inherit;opacity:inherit;pointer-events:auto}.theme-toggle{display:inline-flex;flex-shrink:0;gap:.15rem}.theme-toggle button{min-height:1.9rem;padding:0 .6rem;color:var(--muted);font-size:.75rem;font-weight:500;border-radius:var(--radius-control)}.theme-toggle button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}@media(min-width:720px){.stage{display:grid;grid-template-columns:4.6rem minmax(0,1fr) 4.6rem;align-items:stretch}.tape{flex-direction:column;justify-content:center;width:4.6rem;grid-column:3;grid-row:1;gap:.55rem}.felt{grid-column:2;grid-row:1}.stat{align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
