
:root{color-scheme:dark;--bg:#0c2229;--panel:#16333a;--ink:#f2eee5;--muted:#b5c6c7;--gold:#efd19b;--line:#385158}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 0,#33525a 0,transparent 50%),var(--bg);color:var(--ink);font:16px/1.85 system-ui,-apple-system,"Yu Gothic",sans-serif;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:var(--gold)}header{max-width:1160px;margin:auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.logo{font:24px Georgia,serif;letter-spacing:.16em}.logo small{font:10px system-ui;display:block;color:var(--muted);letter-spacing:.26em}nav{display:flex;gap:8px}.quiet{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:8px 15px}main{max-width:1080px;margin:auto;padding:42px 32px 70px}.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--gold);margin-bottom:18px}h1,h2,h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.55;font-weight:500}h1{font-size:clamp(32px,5vw,58px);margin:12px 0 24px}h2{font-size:clamp(27px,4vw,38px);margin:10px 0 24px}h3{font-size:22px}p{margin:0 0 20px}.lead{max-width:680px;color:#dce4e2;font-size:17px}.primary{background:var(--gold);color:#182c30;border:0;border-radius:6px;padding:13px 25px;font-weight:700}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:30px 0}.card{padding:25px;background:linear-gradient(140deg,#23434a,#122e36);border:1px solid var(--line);border-radius:10px}.card p{color:var(--muted);font-size:14px}.card button{width:100%}.num{font:italic 30px Georgia;color:var(--gold)}.tag{display:inline-block;border:1px solid var(--line);color:var(--muted);border-radius:4px;padding:2px 8px;font-size:12px;margin:0 6px 6px 0}.note{color:var(--muted);font-size:13px}.setup{max-width:650px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;color:var(--muted);font-size:14px}input,select{display:block;width:100%;background:#0d252d;color:var(--ink);border:1px solid #6e858a;border-radius:5px;padding:11px;margin-top:7px}.stage{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:36px}.paper{max-width:720px;background:#f3efe5;color:#293c3e;padding:38px 42px;border-radius:3px;box-shadow:0 15px 60px #0002}.story{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;line-height:2.1;white-space:pre-line}.story p{margin-bottom:18px}.chapter{color:#7e6136;letter-spacing:.15em;font-size:12px}.choices{display:grid;gap:13px;margin-top:30px}.choice{display:block;text-align:left;width:100%;padding:17px 20px;color:var(--ink);background:#193740;border:1px solid #557078;border-radius:7px;transition:background .2s}.choice:hover{background:#294e57;border-color:var(--gold)}.choice strong{display:block;font-size:16px}.choice span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.choice.locked{background:#172c33}.side{font-size:13px;color:var(--muted)}.side h3{font:14px system-ui;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:10px;margin-top:0}.stat{display:flex;justify-content:space-between;margin-top:12px}.bar{height:4px;background:#29434b;border-radius:4px;overflow:hidden;margin-top:5px}.bar i{display:block;background:var(--gold);height:100%}.memory{padding:12px 0;border-bottom:1px solid var(--line)}.memory button{color:var(--gold);background:none;border:0;text-align:left;padding:0;font-size:13px}.flash{border-left:3px solid var(--gold);padding:14px 18px;background:#203e45;margin-bottom:25px;color:#e2e9e5;white-space:pre-line}.explain{border:1px solid var(--line);padding:24px;margin:26px 0;border-radius:8px}.explain p{margin:0}.shelf{display:grid;gap:16px}.empty{padding:40px;border:1px dashed var(--line)}footer{max-width:1080px;margin:auto;padding:0 32px 28px;color:var(--muted);font-size:11px}.notice{background:#664d26;color:#fff;padding:10px 18px;text-align:center;font-size:13px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffdc99;outline-offset:4px}.divider{width:60px;height:1px;background:var(--gold);margin:30px 0}.endline{font-family:"Yu Mincho",serif;font-size:23px;color:var(--gold)}@media(max-width:760px){header{padding:17px 18px}.logo{font-size:18px}nav .quiet{font-size:12px;padding:7px 9px}main{padding:27px 18px 50px}.cards,.stage{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.paper{padding:26px 22px}.story{font-size:17px}.side{margin-top:10px}.cards{gap:13px}.card{padding:22px}.stage{gap:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.book-title{font-family:"Yu Mincho",serif;color:var(--gold)!important;font-size:17px!important}.card h3{margin-bottom:8px}.card:last-child{grid-column:1/-1}.story{line-height:2.25}.paper{padding:42px 46px}.stage{grid-template-columns:minmax(0,1fr) 220px}@media(max-width:760px){.cards,.stage{grid-template-columns:1fr}.paper{padding:28px 22px}.card:last-child{grid-column:auto}.side{border-top:1px solid var(--line);padding-top:20px}}
.memory-banner{border:1px solid var(--gold);border-radius:8px;background:#203b40;padding:19px 22px;margin-bottom:18px}.memory-banner p{margin:8px 0}.memory-banner summary{cursor:pointer;color:var(--gold);font-size:14px}.memory-banner .eyebrow{margin-bottom:8px}.decision{padding:13px 0;border-top:1px solid var(--line);font-size:14px}.decision .quiet{display:block;margin-top:8px}.effect{color:#f2d6a4!important;font-size:13px!important;line-height:1.7}.special{border:2px solid var(--gold);background:#25454a}.replay{margin:30px 0;padding:23px;border:1px solid var(--line);border-radius:8px}.replay h3{margin:0 0 12px}.replay article{margin-top:23px;padding-top:20px;border-top:1px solid var(--line)}.replay .choice{margin-top:10px}.memory-banner strong{font-size:16px;line-height:1.8}.flash strong{color:var(--gold)}@media(max-width:760px){.memory-banner{padding:16px}.replay{padding:18px}.replay .choice{padding:14px}}
.score-panel{background:#173d43;border:2px solid #d7b779;border-radius:14px;padding:22px;margin-bottom:20px}.score-total{font-size:44px;font-weight:800;color:#ffe0a2}.score-total small{font-size:18px}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.score-cell{background:#102d32;padding:12px;border-radius:8px}.score-cell b{display:block;font-size:24px;color:#ffe0a2}.score-panel ol{line-height:1.9;padding-left:22px}.score-next{font-weight:bold;color:#ffe0a2}.score-panel h2{font-size:25px}@media(max-width:760px){.score-grid{grid-template-columns:repeat(2,1fr)}.score-panel{padding:16px}.score-total{font-size:38px}}
