:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--viewport-height: 100dvh}*{box-sizing:border-box}body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body)}button,input,textarea,select{font:inherit}input,textarea,select{font-size:16px}button{min-height:44px;cursor:pointer;color:var(--c-ink);background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-pill);padding:12px 20px}button:focus-visible,input:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px}button:disabled{opacity:.5;cursor:default}h1,h2{font-family:var(--font-display);font-weight:400;font-size:clamp(1.4rem,5vw,1.65rem)}p{color:var(--c-ink-2);line-height:1.6}.screen{min-height:var(--viewport-height);max-width:640px;margin:auto;padding:calc(28px + var(--safe-top)) calc(24px + var(--safe-right)) calc(110px + max(var(--safe-bottom),env(safe-area-inset-bottom))) calc(24px + var(--safe-left))}.screen>*+*{margin-top:24px}.progress{display:flex;gap:6px}.progress span{flex:1;height:3px;background:var(--c-line)}.progress span[data-done=true]{background:var(--c-ink)}.chip{border-color:var(--c-chip-line)}.chip[aria-pressed=true]{background:var(--c-ink);color:var(--c-on-dark);border-color:var(--c-ink)}.option{width:100%;text-align:left;border-radius:var(--r-tile);padding:20px}.option strong,.option span{display:block}.option span{margin-top:8px;color:var(--c-ink-2)}.option[aria-pressed=true]{border-color:var(--c-ink)}.price{font-variant-numeric:tabular-nums}.sticky-cta{position:fixed;z-index:5;bottom:0;left:0;right:0;background:var(--c-bg);padding:16px 24px calc(16px + max(var(--safe-bottom),env(safe-area-inset-bottom)))}.sticky-cta button{display:block;width:100%;max-width:592px;margin:auto;height:var(--cta-h);background:var(--c-ink);color:var(--c-on-dark);border:0}.sticky-cta button:hover,.sticky-cta button:active{background:var(--c-accent)}.toast{display:block;padding:16px;border-radius:var(--r-card);background:var(--c-dark);color:var(--c-on-dark)}.skeleton{display:block;height:60px;border-radius:var(--r-tile);background:var(--c-line);animation:pulse 1s ease-in-out infinite alternate}.error{background:var(--c-surface);border-radius:var(--r-card);padding:24px}.splash{position:fixed;z-index:10;inset:0;display:grid;place-items:center;background:var(--c-dark);color:var(--c-on-dark);font:1.6rem var(--font-display);letter-spacing:.1em;animation:splash-reveal .32s cubic-bezier(.16,1,.3,1) 1.48s both}.splash-brand{display:grid;place-items:center}.splash[data-mode=full] .splash-brand{animation:splash-resolve 1.04s cubic-bezier(.16,1,.3,1) both}.splash[data-mode=short]{animation-duration:.24s;animation-delay:0ms}@keyframes splash-resolve{0%{opacity:.15;transform:scale(.94);filter:blur(6px);clip-path:inset(0 46%)}46.15%{opacity:1;transform:scale(.985);filter:blur(0);clip-path:inset(0 0)}to{opacity:1;transform:scale(1);filter:blur(0);clip-path:inset(0 0)}}@keyframes splash-reveal{0%{opacity:1}to{opacity:0}}.navigation{display:grid;position:relative;overflow-x:clip;min-height:var(--viewport-height)}.page{grid-area:1 / 1;width:100%;background:var(--c-bg)}.page[hidden]{display:none}.page-enter{animation:slide-in .3s var(--ease)}.page-leave{animation:slide-out .3s var(--ease) forwards;pointer-events:none}.gallery-row{display:flex;gap:12px;flex-wrap:wrap}input{min-height:44px;max-width:100%;padding:12px;background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-line);border-radius:var(--r-tile)}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-out{to{transform:translate(100%)}}@keyframes pulse{to{opacity:.5}}@media(prefers-reduced-motion:reduce){.page-enter,.page-leave,.splash,.splash-brand,.skeleton{animation:none;transition:none}}@media(prefers-reduced-motion:reduce){.page-leave{visibility:hidden}}html,body{overflow:hidden;overscroll-behavior:none}::selection{background:var(--c-ink);color:var(--c-on-dark)}
