:root{--bg:var(--lightningcss-light,#eef1f4)var(--lightningcss-dark,#0f141a);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#18212b);--ink:var(--lightningcss-light,#16202b)var(--lightningcss-dark,#e5ebf1);--muted:var(--lightningcss-light,#5a6876)var(--lightningcss-dark,#93a2b1);--line:var(--lightningcss-light,#d6dde4)var(--lightningcss-dark,#2a3644);--accent:var(--lightningcss-light,#2b5d8a)var(--lightningcss-dark,#84b3df);--accent-soft:var(--lightningcss-light,#dce7f1)var(--lightningcss-dark,#1f3245);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0f141a);--good:var(--lightningcss-light,#2c8a57)var(--lightningcss-dark,#5cc28a);--bad:var(--lightningcss-light,#c2433a)var(--lightningcss-dark,#ef7a70);--sq-light:var(--lightningcss-light,#dee3e6)var(--lightningcss-dark,#b9c4cb);--sq-dark:var(--lightningcss-light,#8ca2ad)var(--lightningcss-dark,#6f8794);--sq-last:var(--lightningcss-light,#ecbe468c)var(--lightningcss-dark,#ecbe4680);--sq-selected:var(--lightningcss-light,#2b5d8a73)var(--lightningcss-dark,#84b3df80);--sq-dot:var(--lightningcss-light,#16202b47)var(--lightningcss-dark,#0a101659);--arrow:var(--lightningcss-light,#2b5d8acc)var(--lightningcss-dark,#285c8cd9);--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-base:15px;--text-lg:16px;--text-xl:20px;--text-2xl:clamp(24px, 4vw, 30px);--text-3xl:clamp(32px, 6vw, 44px);--tracking-caps:.12em;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--control-h-sm:36px;--control-h:44px;--control-h-lg:48px;--card-pad:16px;--page-top:24px;--page-bottom:56px;--gutter:20px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur-base:.24s;--dur-slow:.42s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-swatch=slate]{--sq-light:var(--lightningcss-light,#dee3e6)var(--lightningcss-dark,#b9c4cb);--sq-dark:var(--lightningcss-light,#8ca2ad)var(--lightningcss-dark,#6f8794)}:root[data-board=wood],[data-swatch=wood]{--sq-light:var(--lightningcss-light,#f0d9b5)var(--lightningcss-dark,#d6be98);--sq-dark:var(--lightningcss-light,#b58863)var(--lightningcss-dark,#9a7151)}:root[data-board=green],[data-swatch=green]{--sq-light:var(--lightningcss-light,#eeeed2)var(--lightningcss-dark,#d3d3b4);--sq-dark:var(--lightningcss-light,#769656)var(--lightningcss-dark,#62804a)}:root[data-board=mono],[data-swatch=mono]{--sq-light:var(--lightningcss-light,#e6e6e6)var(--lightningcss-dark,#c4c4c4);--sq-dark:var(--lightningcss-light,#a3a3a3)var(--lightningcss-dark,#828282)}@media (max-width:480px){:root{--gutter:16px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-ui), system-ui, sans-serif;font-size:var(--text-base);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.45;display:flex;overflow-x:clip}a{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}:root[data-theme-transition=retract]::view-transition-old(root){z-index:1}::view-transition-group(theme-icon){animation:none}::view-transition-new(theme-icon){animation:none}::view-transition-old(theme-icon){display:none}.page-enter>*>*{animation:page-rise var(--dur-slow) var(--ease-out) backwards}.page-enter>*>:nth-child(2){animation-delay:50ms}.page-enter>*>:nth-child(3){animation-delay:.1s}.page-enter>*>:nth-child(4){animation-delay:.15s}.page-enter>*>:nth-child(n+5){animation-delay:.2s}:root[data-intro=play] main,:root[data-intro=play] main *{animation-play-state:paused!important}@keyframes page-rise{0%{opacity:0;translate:0 10px}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}
