:root{--bg:#fbf6ee;--surface:#fff;--edge:#eadfcf;--ink:#2b2118;--ink-muted:#5c4a3a;--accent:#c4461c;--accent-edge:#9a3414;--on-accent:#fff;--board:#efe4d3;--tile:#fffdf8;--danger:#d92d20;--highlight:#fde7dc;--track-off:#cfc3b2;--backdrop:#2b211873;--font:-apple-system, "SF Pro Rounded", "Segoe UI", Roboto, system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--bg);height:100%;color:var(--ink);font:20px/1.35 var(--font);-webkit-text-size-adjust:100%;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}button,a{font:inherit;color:inherit;touch-action:manipulation}#app{height:100%}.screen{height:100%;padding:max(16px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));flex-direction:column;gap:12px;display:flex}.screen--scroll{overflow-y:auto}.home-title{letter-spacing:-.5px;margin:8px 4px 0;font-size:30px;font-weight:800}.home-greeting{color:var(--ink-muted);margin:0 4px 8px;font-size:18px}.game-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.card{background:var(--surface);min-height:80px;box-shadow:0 2px 0 var(--edge), 0 6px 14px #78501e14;border-radius:20px;align-items:center;gap:14px;padding:12px 14px;text-decoration:none;display:flex}.card:active{box-shadow:0 1px 0 var(--edge);transform:translateY(1px)}.card-icon{border-radius:16px;flex:none;place-items:center;width:56px;height:56px;font-size:34px;display:grid}.card-icon img{width:40px;height:40px}.card-text{flex:1;min-width:0}.card-title{font-size:20px;font-weight:700;line-height:1.15}.card-sub{color:var(--ink-muted);margin-top:2px;font-size:16px}.badge{background:var(--accent);color:var(--on-accent);border-radius:999px;flex:none;padding:6px 12px;font-size:19px;font-weight:700}.btn{background:var(--surface);min-height:56px;color:var(--ink);box-shadow:0 2px 0 var(--edge);cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:700;display:flex}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--edge);transform:translateY(1px)}.btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:0 2px 0 var(--accent-edge)}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible,.card:focus-visible,.switch:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.topbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.btn--back{justify-self:start;min-width:88px}.topbar-title{text-align:center;margin:0;font-size:22px;font-weight:800}.stats{gap:8px;display:flex}.stats:empty{display:none}.stat{background:var(--surface);box-shadow:0 2px 0 var(--edge);border-radius:14px;flex:1;padding:8px 12px}.stat-label{color:var(--ink-muted);font-size:15px}.stat-value{font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.game-extra{justify-content:center;align-items:center;min-height:28px;display:flex}.game-extra:empty{display:none}.game-area{flex:1;min-height:0;position:relative}.game-message{color:var(--ink-muted);text-align:center;align-content:center;place-items:center;gap:16px;display:grid;position:absolute;inset:0}.actions{gap:8px;display:flex}.actions:empty{display:none}.actions .btn{flex-direction:column;flex:1;gap:2px;min-height:64px;padding:8px 4px}.action-icon{font-size:24px;line-height:1}.action-label{font-size:19px}.settings-list{flex-direction:column;gap:12px;display:flex}.switch{background:var(--surface);width:100%;min-height:72px;box-shadow:0 2px 0 var(--edge);text-align:left;cursor:pointer;border:none;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-weight:700;display:flex}.switch:disabled{opacity:.5;cursor:default}.switch-note{color:var(--ink-muted);margin-top:2px;font-size:15px;font-weight:400;display:block}.switch-track{background:var(--track-off);border-radius:999px;flex:none;width:64px;height:36px;transition:background .15s;position:relative}.switch-track:after{content:"";background:#fff;border-radius:50%;width:28px;height:28px;transition:transform .15s;position:absolute;top:4px;left:4px;box-shadow:0 1px 3px #0000004d}.switch[aria-checked=true] .switch-track{background:var(--accent)}.switch[aria-checked=true] .switch-track:after{transform:translate(28px)}.version{color:var(--ink-muted);text-align:center;margin:auto 0 0;font-size:15px}.dialog-backdrop{z-index:10;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));background:var(--backdrop);place-items:center;display:grid;position:fixed;inset:0}.dialog{background:var(--surface);border-radius:24px;width:min(420px,100%);max-height:100%;padding:20px;overflow:auto;box-shadow:0 12px 40px #00000040}.dialog-title{margin:0 0 8px;font-size:24px;font-weight:800}.dialog p{margin:0 0 8px}.dialog-actions{gap:10px;margin-top:16px;display:flex}.dialog-actions .btn{flex:1}.scores{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:18px}.scores th{color:var(--ink-muted);text-align:left;padding:4px 6px;font-size:15px;font-weight:600}.scores td{border-top:1px solid var(--edge);padding:8px 6px}.scores td:nth-child(2){font-weight:800}.scores .is-new td{background:var(--highlight)}.scores-empty{color:var(--ink-muted);text-align:center;padding:16px 0}.l98-board{touch-action:none;width:100%;height:100%;display:block}.l98-next{color:var(--ink-muted);align-items:center;gap:8px;font-size:17px;display:flex}.l98-dot{border-radius:50%;width:22px;height:22px;box-shadow:inset -2px -3px 4px #00000040,inset 2px 2px 3px #ffffff73}.pk-board{touch-action:none;width:100%;height:100%;display:block}.pk-toast{background:var(--ink);color:var(--on-accent);white-space:nowrap;pointer-events:none;opacity:0;border-radius:14px;padding:10px 18px;font-size:19px;font-weight:700;transition:opacity .2s;position:absolute;top:8px;left:50%;transform:translate(-50%)}.pk-toast.is-on{opacity:1}
