:root{--shell-bg:#2b1a10;--shell-bg-soft:#3a2416;--bar-bg:#1f120a;--text:#f7e7d2;--text-dim:#c8a985;--accent:#f0a45c;--accent-strong:#ffc078;--focus:#ffd9a0}*{box-sizing:border-box}html,body{background:var(--shell-bg);height:100%;color:var(--text);overscroll-behavior:none;margin:0;padding:0;font-family:Trebuchet MS,Segoe UI,system-ui,-apple-system,sans-serif}body{overflow:hidden}#app{background:radial-gradient(circle at 50% 20%, var(--shell-bg-soft), var(--shell-bg) 70%);padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);flex-direction:column;display:flex;position:fixed;inset:0}.stage{flex:auto;min-width:0;min-height:0;display:flex;position:relative}.game-root{flex:auto;min-width:0;min-height:0;overflow:hidden}.game-root canvas{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:14px;display:block;box-shadow:0 18px 40px #00000073}.app-bar{padding:8px 14px calc(8px + env(safe-area-inset-bottom));background:var(--bar-bg);border-top:1px solid #ffffff14;flex-wrap:wrap;flex:none;align-items:center;gap:10px;display:flex}.hud{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.hud__label,.next__label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin:0;font-size:.62rem;font-weight:700}.hud__value{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:700;line-height:1.15;overflow:hidden}.track{gap:5px;margin:3px 0 0;padding:0;list-style:none;display:flex}.track__pip{background:#f7e7d229;border-radius:999px;width:8px;height:8px}.track__pip[data-made=true]{background:var(--accent)}.track__pip[data-target=true]{box-shadow:0 0 0 2px var(--accent-strong)}.tally{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.tally__wait{white-space:nowrap;color:var(--text-dim);margin:0;font-size:.68rem;line-height:1.2}.tally__wait[data-mood=restless]{color:var(--accent)}.tally__wait[data-mood=sour]{opacity:.7}.next{background:#f7e7d20f;border:1px solid #ffffff24;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:1px;padding:4px 9px 5px;display:flex}.next[hidden],.button[hidden]{display:none}.next__glass{object-fit:contain;width:34px;height:34px;display:block}.button{background:linear-gradient(180deg, var(--accent-strong), var(--accent));color:#3a1f08;font:inherit;cursor:pointer;touch-action:manipulation;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:700;transition:transform .12s,filter .12s;display:inline-flex}.button:hover{filter:brightness(1.06)}.button:active{transform:translateY(1px)}.button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.button--quiet{color:var(--text-dim);background:0 0;border-color:#f7e7d23d;font-weight:600}.button--quiet:hover{filter:none;color:var(--text);background:#f7e7d214;border-color:#f7e7d273}.button__key{background:#3a1f082e;border:1px solid #3a1f0847;border-radius:6px;padding:1px 7px;font-family:ui-monospace,Consolas,monospace;font-size:.72rem}.button--quiet .button__key{background:#f7e7d21a;border-color:#f7e7d238}@media (hover:none){.button__key{display:none}}.sound{gap:7px}.sound__icon{flex:none;width:18px;height:18px}.sound__horn{fill:currentColor}.sound__wave,.sound__cross{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round}.sound__cross,.sound[aria-pressed=false] .sound__wave{display:none}.sound[aria-pressed=false] .sound__cross{display:inline}@media (max-width:419px){.sound__word{display:none}}.button--wide{justify-content:center;width:100%;padding-block:13px;font-size:1rem}.view-switch{background:#00000038;border:1px solid #f7e7d22e;border-radius:999px;flex:100%;order:1;padding:2px;display:flex}.view-switch__button{min-width:0;color:var(--text-dim);font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:999px;flex:1 1 0;padding:7px 6px;font-size:.82rem;font-weight:600;transition:background-color .12s,color .12s}.view-switch__button:hover{color:var(--text);background:#f7e7d212}.view-switch__button[aria-pressed=true]{color:var(--text);cursor:default;background:#f7e7d224}.view-switch__button:focus-visible{outline:3px solid var(--focus);outline-offset:-2px}.result{background:linear-gradient(#150b0529,#150b05b8);justify-content:center;align-items:flex-end;padding:16px 16px 22px;animation:.22s ease-out both result-in;display:flex;position:absolute;inset:0}.result[data-outcome=lost]{align-items:center}.result[hidden]{display:none}.result__panel{text-align:center;background:linear-gradient(#3a2416f7,#1f120af7);border:1px solid #ffffff24;border-radius:18px;width:100%;max-width:340px;padding:18px 20px 20px;box-shadow:0 20px 44px #00000080}.result__eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:.72rem;font-weight:700}.result__title{margin:0 0 6px;font-size:1.35rem;line-height:1.2}.result__text{color:var(--text-dim);margin:0 0 16px;font-size:.9rem;line-height:1.4}.result[data-outcome=lost] .result__eyebrow{color:#ff9d6b}.result[data-outcome=lost] .result__panel{border-color:#ff8d5852}@keyframes result-in{0%{opacity:0}to{opacity:1}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.button,.view-switch__button{transition:none}.result{animation:none}}@media (min-width:640px){.app-bar{gap:28px;padding-inline:24px}.hud__value{font-size:1.05rem}.next__glass{width:38px;height:38px}.view-switch{flex:none;order:0}.view-switch__button{padding-inline:14px}}@media (orientation:landscape) and (max-height:560px){.app-bar{padding:4px 12px calc(4px + env(safe-area-inset-bottom));gap:12px}.hud{flex-direction:row;align-items:center;gap:10px}.hud__label,.next__label{display:none}.track{margin:0}.tally{flex-direction:row;align-items:baseline;gap:10px}.next{flex-direction:row;padding:3px 8px}.next__glass{width:24px;height:24px}.button{padding:6px 12px;font-size:.82rem}.view-switch{flex:none;order:0}.view-switch__button{padding:5px 10px;font-size:.78rem}.game-root canvas{box-shadow:none}}
