:root{--bg:#f7f1e6;--surface:#fffaf2;--text:#2a211a;--muted:#6b5d50;--border:#e3d6c3;--accent:#a2541a;--accent-text:#fffaf2;--focus:#1f5fbf;--good:#2f6b3a;--neutral:#6b5d50;--bad:#9b2f2f;--danger:#9b2f2f;--notice-bg:#fbeccd;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1c1814;--surface:#26201b;--text:#efe6da;--muted:#b3a593;--border:#3d342c;--accent:#e3934f;--accent-text:#1c1814;--focus:#8cb8ff;--good:#7fc28b;--neutral:#b3a593;--bad:#ef8b84;--danger:#ef8b84;--notice-bg:#3a2e1d}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:400 1.125rem/1.6 ui-serif,Georgia,Iowan Old Style,Palatino Linotype,serif}h1,h2,.button,.choice,.topbar,.meta,.notice,.ending-label,.confirm{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1,h2{margin:0 0 .5rem;line-height:1.2}a{color:var(--accent)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}[tabindex="-1"]:focus{outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{max-width:46rem;padding:1.5rem max(1rem, env(safe-area-inset-right)) calc(3rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}.reading{max-width:38rem}.masthead{padding:1rem 0 1.5rem}.masthead h1{color:var(--accent);font-size:2rem}.masthead p{color:var(--muted);margin:0}.library{gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.library{grid-template-columns:repeat(2,1fr)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;padding:1.25rem;display:flex}.card h2{font-size:1.35rem}.card p{margin:0 0 .75rem}.card .actions{margin-top:auto}.tagline{font-style:italic}.meta{color:var(--muted);font-size:.875rem}.actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.button{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.button.danger{border-color:var(--danger);color:var(--danger)}.confirm{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.95rem;display:inline-flex}.topbar{z-index:1;min-height:56px;padding:env(safe-area-inset-top) max(1rem, env(safe-area-inset-right)) 0 max(1rem, env(safe-area-inset-left));background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;font-size:.95rem;display:flex;position:sticky;top:0}.back{align-items:center;gap:.25rem;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.topbar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);text-align:center;flex:1;overflow:hidden}.topbar .button{min-height:36px;padding:.25rem .75rem;font-size:.9rem}.topbar .confirm span{white-space:nowrap}.scene p{margin:0 0 1rem}.scene{animation:.2s ease-out fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.scene{animation:none}}.choices{gap:.6rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.choice{border:1px solid var(--border);background:var(--surface);width:100%;min-height:52px;color:var(--text);text-align:left;cursor:pointer;touch-action:manipulation;border-radius:12px;align-items:flex-start;gap:.75rem;padding:.8rem 1rem;font-size:1rem;line-height:1.4;display:flex}@media (hover:hover){.choice:hover{border-color:var(--accent)}}.choice:active{transform:scale(.99)}.key{background:var(--bg);width:1.6rem;height:1.6rem;color:var(--muted);border-radius:6px;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:inline-grid}@media (hover:none){.key{display:none}}.ending{border:2px solid var(--neutral);background:var(--surface);border-radius:14px;margin-top:2rem;padding:1.25rem}.ending.good{border-color:var(--good)}.ending.bad{border-color:var(--bad)}.ending-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .25rem;font-size:.8rem}.ending h2{font-size:1.6rem}.ending.good h2{color:var(--good)}.ending.bad h2{color:var(--bad)}.notice{background:var(--notice-bg);border-radius:10px;padding:.75rem 1rem;font-size:.95rem}.problem h2{font-size:1.4rem}
