:root{--font-display:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--rtr-start:#c9547d;--rtr-end:#eca541;--rtr-mid:#6dbab9;--rtr-mid-deep:#3e8a89;--rtr-green:#9ac138;--rtr-link:#1876d2;--rtr-dark-magenta:#823751;--rtr-portal:#8b5cf6;--rtr-golden:#d4a017;--rtr-grey:#4f4f4f;--white:#fff;--black:#000;--dark-bg:#2d2b3e;--dark-card:#433f54;--light-bg:#f7f5f2;--border:#e4ded6;--dark-border:#564e63;--error-bg:#fee2e2;--error-bg-dark:#ef444440;--success-bg:#6dbab9;--on-brand-dark:#292a3a;--success-fg:#292a3a;--error-fg:#ef4444;--text-light:#292a3a;--text-dark:#f1f1f0;--muted-light:#292a3aad;--muted-dark:#f1f1f08c;--subtle-light:#1f293773;--subtle-dark:#f1f5f959;--blocked-bg-light:#2d2d3d;--blocked-bg-dark:#1a1a2e;--blocked-border-light:#1a1a2e;--blocked-border-dark:#0d0d1a;--bg:var(--light-bg);--surface:var(--white);--text:var(--text-light);--muted:var(--muted-light);--line:var(--border)}@media (prefers-color-scheme:dark){:root{--bg:var(--dark-bg);--surface:var(--dark-card);--text:var(--text-dark);--muted:var(--muted-dark);--line:var(--dark-border)}}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{background:var(--bg);color:var(--text);font-family:var(--font-display);-webkit-font-smoothing:antialiased;margin:0;line-height:1.45}h1,h2,p,dl,dd{margin:0}a{color:var(--rtr-link)}:focus-visible{outline:2px solid var(--rtr-start);outline-offset:2px;border-radius:4px}.page{flex-direction:column;align-items:center;gap:clamp(.75rem,3vw,1.25rem);max-width:34rem;margin:0 auto;padding:clamp(1rem,4vw,2.5rem) clamp(.75rem,4vw,1.5rem) 3rem;display:flex}.masthead{text-align:center}.wordmark{letter-spacing:.32em;text-indent:.32em;margin:0;font-size:clamp(1.75rem,8vw,2.5rem);font-weight:700}.tagline{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.875rem}.board-status{text-align:center;min-height:1.45em;color:var(--muted);font-size:.9375rem}.board{aspect-ratio:1;grid-template-columns:repeat(6,1fr);gap:clamp(.25rem,1.2vw,.4rem);width:min(100%,26rem);display:grid}.cell{aspect-ratio:1;border:1.5px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:clamp(1rem,5vw,1.5rem);font-weight:600;transition:background-color .16s ease-out,border-color .16s ease-out;display:flex;position:relative}.cell:disabled{cursor:default}.cell[data-kind=start]{border-color:var(--rtr-start);background:color-mix(in srgb, var(--rtr-start) 14%, var(--surface))}.cell[data-kind=end]{border-color:var(--rtr-end);background:color-mix(in srgb, var(--rtr-end) 14%, var(--surface))}.cell[data-kind=fixed]{border-color:var(--rtr-mid);background:color-mix(in srgb, var(--rtr-mid) 14%, var(--surface))}.cell[data-kind=blocked]{border-color:var(--blocked-border-light);background:var(--blocked-bg-light)}.cell[data-cursor]{border-color:var(--rtr-start);box-shadow:inset 0 0 0 2px var(--rtr-start)}.cell[data-errored]{border-color:var(--error-fg);background:var(--error-bg)}.cell[data-errored] .cell-letter{-webkit-text-decoration:underline wavy var(--error-fg);text-decoration:underline wavy var(--error-fg);text-underline-offset:.2em}.cell-direction{color:var(--rtr-start);font-size:.5em;line-height:1;position:absolute;bottom:.05em;right:.15em}.cell-skeleton{background:color-mix(in srgb, var(--text) 6%, var(--surface));border-color:var(--line)}@media (hover:hover){.cell:not(:disabled):hover{background:color-mix(in srgb, var(--rtr-mid) 10%, var(--surface))}}.controls{text-align:center;flex-direction:column;align-items:center;gap:.6rem;display:flex}.button{letter-spacing:.04em;border:1.5px solid var(--rtr-mid);background:var(--success-bg);color:var(--success-fg);cursor:pointer;border-radius:14px;padding:.7rem 1.6rem;font-family:inherit;font-size:1rem;font-weight:600;transition:transform .16s ease-out,filter .16s ease-out}.button:not(:disabled):hover{filter:brightness(1.05)}.button:not(:disabled):active{transform:translateY(1px)}.hint{color:var(--muted);max-width:24rem;font-size:.8125rem}.panel{border:1.5px solid var(--line);background:var(--surface);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:.6rem;width:min(100%,26rem);padding:1.25rem;display:flex}.panel-success{border-color:var(--rtr-mid);background:color-mix(in srgb, var(--rtr-mid) 8%, var(--surface))}.panel-quiet{border-color:var(--rtr-end);background:color-mix(in srgb, var(--rtr-end) 8%, var(--surface))}.panel-title{font-size:1.375rem;font-weight:700}.panel-body,.panel-note{color:var(--muted);font-size:.9375rem}.stats{justify-content:center;gap:1.5rem;display:flex}.stat dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem}.stat dd{font-size:1.5rem;font-weight:700}.share-status{color:var(--muted);min-height:1.2em;margin:0;font-size:.8125rem}.keyboard{display:none}@media (pointer:coarse){.keyboard{flex-direction:column;gap:.35rem;width:100%;max-width:30rem;display:flex}}.keyboard-row{justify-content:center;gap:.25rem;display:flex}.key{border:1.5px solid var(--line);background:var(--surface);min-width:0;min-height:2.75rem;color:var(--text);cursor:pointer;border-radius:8px;flex:1 1 0;font-family:inherit;font-size:.9375rem;font-weight:600}.key-wide{flex:2 1 0}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.masthead,.board,.controls,.panel{animation:.22s ease-out both rise}.board{animation-delay:25ms}.controls,.panel{animation-delay:50ms}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}@media (prefers-color-scheme:dark){.cell[data-kind=start]{background:color-mix(in srgb, var(--rtr-start) 28%, var(--surface))}.cell[data-kind=end]{background:color-mix(in srgb, var(--rtr-end) 28%, var(--surface))}.cell[data-kind=fixed]{background:color-mix(in srgb, var(--rtr-mid) 28%, var(--surface))}.cell[data-kind=blocked]{border-color:var(--blocked-border-dark);background:var(--blocked-bg-dark)}.cell[data-errored]{background:var(--error-bg-dark)}.panel-success{background:color-mix(in srgb, var(--rtr-mid) 16%, var(--surface))}.panel-quiet{background:color-mix(in srgb, var(--rtr-end) 16%, var(--surface))}}
