:root{--surface:#fff;--surface-subtle:#f9fafb;--surface-muted:#f2f4f6;--text-primary:#191f28;--text-secondary:#4e5968;--text-muted:#6b7684;--text-disabled:#b0b8c1;--border:#e5e8eb;--brand:#25804a;--brand-pressed:#1e6b3d;--success:#185631;--success-soft:#eaf5ee;--warning-soft:#fff4e5;--danger:#f04452;--focus:#25804a66;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--surface)}body{color:var(--text-primary);background:var(--surface);letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-family:Pretendard,-apple-system,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;font-size:16px;font-weight:500;line-height:1.63}button,a{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{box-shadow:0 0 0 3px var(--focus);outline:none}.skip-link{z-index:100;color:#fff;background:var(--brand);border-radius:8px;padding:12px 16px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.landing-page,.state-page{background:var(--surface-subtle);place-items:center;min-height:100svh;padding:32px 20px;display:grid}.landing-card,.state-card{background:var(--surface);border-radius:24px;width:min(100%,480px);padding:32px 24px}.eyebrow,.step-label{color:var(--brand-pressed);margin:0 0 8px;font-size:15px;font-weight:700;line-height:1.47}.landing-card h1,.state-card h1,.manual-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(28px,8vw,32px);font-weight:800;line-height:1.25}.landing-copy,.state-card p{color:var(--text-secondary);margin:20px 0 0;font-size:18px;line-height:1.56}.landing-note{background:var(--success-soft);color:var(--success);border-radius:16px;margin-top:32px;padding:20px}.landing-note p{color:var(--text-secondary);margin:8px 0 0}.state-card .primary-button{width:100%;margin-top:24px}.manual-page{width:min(100%,480px);min-height:100svh;margin:0 auto;padding:32px 20px 128px}.manual-header h1{font-size:24px;line-height:1.33}.progress-section{margin-top:24px}.progress-track{background:var(--surface-muted);border-radius:999px;height:8px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--brand);height:100%;transition:width .2s cubic-bezier(.2,0,0,1);display:block}.progress-section p{color:var(--text-muted);margin:8px 0 0;font-size:15px;font-weight:600}.step-card{margin-top:32px}.step-card h2{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:800;line-height:1.36}.detail{background:var(--surface-subtle);border-radius:16px;margin-top:24px;padding:20px}.detail h3{margin:0;font-size:16px;font-weight:700;line-height:1.63}.detail p{color:var(--text-secondary);margin:8px 0 0;font-size:18px;line-height:1.56}.detail-check{color:var(--success);background:var(--success-soft)}.detail-warning{background:var(--warning-soft)}.listen-button,.secondary-button,.primary-button{border:0;border-radius:16px;min-height:52px;padding:12px 20px;font-size:18px;font-weight:700;line-height:1.3;transition:transform .12s cubic-bezier(.2,0,0,1),background .12s cubic-bezier(.2,0,0,1)}.listen-button:active,.secondary-button:active,.primary-button:active{transform:scale(.98)}.listen-button{width:100%;color:var(--brand-pressed);background:var(--success-soft);margin-top:24px}.primary-button{color:#fff;background:var(--brand);min-height:64px}.primary-button:hover{background:var(--brand-pressed)}.primary-button:disabled{color:var(--text-secondary);background:var(--surface-muted)}.secondary-button{min-height:64px;color:var(--text-primary);background:var(--surface-muted)}.secondary-button:disabled{color:var(--text-disabled)}.step-actions{width:min(100%,480px);padding:16px 20px max(16px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fffffff5;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}@media (max-width:379px){.landing-card,.state-card{padding:24px 20px}.step-actions{grid-template-columns:1fr}.manual-page{padding-bottom:208px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (forced-colors:active){.progress-track span{forced-color-adjust:none;background:highlight}.primary-button{border:2px solid buttontext}}
