:root{--paper: #e9e4d6;--paper-2: #f3efe4;--paper-3: #ddd6c4;--ink: #2b2723;--ink-2: #5a534a;--ink-3: #847b6e;--rule: #c9bfaa;--shu: #b23a26;--shu-soft: #f0d5cb;--ai: #2f4a68;--ai-soft: #d9dfe5;--draft: #f2d9d0;--draft-ink: #7d2617;--ration: #e6e0c8;--ok: #3f6b45;--bar-bg: #d4ccb8;--bar: #4d463e;--shadow: 0 1px 0 rgba(60, 50, 30, .08), 0 4px 14px rgba(60, 50, 30, .08);--mincho: "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--gothic: "Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", sans-serif;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #1c1a17;--paper-2: #25221e;--paper-3: #2f2b26;--ink: #e6dfd1;--ink-2: #bdb4a4;--ink-3: #8f8676;--rule: #433d35;--shu: #e0735a;--shu-soft: #3d2620;--ai: #9db6d3;--ai-soft: #24303d;--draft: #3a2420;--draft-ink: #f0a594;--ration: #2e2b20;--ok: #8fbf95;--bar-bg: #3a352e;--bar: #d8cfbe;--shadow: 0 1px 0 rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .25);color-scheme:dark}}:root[data-theme=dark]{--paper: #1c1a17;--paper-2: #25221e;--paper-3: #2f2b26;--ink: #e6dfd1;--ink-2: #bdb4a4;--ink-3: #8f8676;--rule: #433d35;--shu: #e0735a;--shu-soft: #3d2620;--ai: #9db6d3;--ai-soft: #24303d;--draft: #3a2420;--draft-ink: #f0a594;--ration: #2e2b20;--ok: #8fbf95;--bar-bg: #3a352e;--bar: #d8cfbe;--shadow: 0 1px 0 rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .25);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--mincho);font-size:16px;line-height:1.85;-webkit-text-size-adjust:100%;background-image:radial-gradient(rgba(120,100,60,.05) 1px,transparent 1px);background-size:5px 5px}button,input,select{font:inherit;color:inherit}a{color:var(--ai)}.g{font-family:var(--gothic)}.muted{color:var(--ink-3)}.small{font-size:.82rem}.wrap{max-width:640px;margin:0 auto;padding:0 16px}.hidden{display:none!important}:focus-visible{outline:2px solid var(--shu);outline-offset:2px}.btn{font-family:var(--gothic);font-size:.95rem;border:1px solid var(--ink);background:var(--paper-2);color:var(--ink);padding:10px 18px;border-radius:3px;cursor:pointer;letter-spacing:.05em}.btn:hover{background:var(--paper-3)}.btn.primary{background:var(--ink);color:var(--paper)}.btn.primary:hover{opacity:.88}.btn.shu{background:var(--shu);border-color:var(--shu);color:#fff}.btn.ghost{border-color:var(--rule);background:transparent}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.block{display:block;width:100%}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.screen{min-height:100vh;padding-top:28px;padding-bottom:60px}.notice{margin:12vh auto 0;max-width:520px;border:1px solid var(--rule);background:var(--paper-2);padding:28px 24px;box-shadow:var(--shadow)}.notice h2{font-size:1.1rem;margin:0 0 12px}.title-block{text-align:center;padding:28px 0 8px}.title-block .kicker{font-family:var(--gothic);letter-spacing:.3em;font-size:.78rem;color:var(--ink-3)}.title-block h1{font-size:clamp(2.2rem,9vw,3.4rem);margin:6px 0 4px;letter-spacing:.12em;font-weight:800}.title-block .sub{color:var(--ink-2);font-size:.92rem}.seal{display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--shu);color:var(--shu);font-family:var(--gothic);font-weight:700;padding:1px 6px;border-radius:3px;font-size:.72rem;letter-spacing:.1em;transform:rotate(-3deg);white-space:nowrap}.seal.round{border-radius:50%;width:44px;height:44px;padding:0;font-size:.7rem;line-height:1.1;text-align:center}fieldset{border:none;padding:0;margin:22px 0 0}legend{font-family:var(--gothic);font-size:.8rem;color:var(--ink-3);letter-spacing:.15em;margin-bottom:8px}.opts{display:grid;gap:8px}.opt{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;border:1px solid var(--rule);background:var(--paper-2);padding:12px 14px;cursor:pointer;border-radius:3px}.opt:has(input:checked){border-color:var(--ink);box-shadow:inset 3px 0 0 var(--shu)}.opt input{margin-top:6px;accent-color:var(--shu)}.opt b{font-weight:700}.opt .desc{display:block;color:var(--ink-2);font-size:.86rem;line-height:1.6}.opt.disabled{opacity:.5;cursor:not-allowed}.seg{display:inline-flex;border:1px solid var(--rule);border-radius:3px;overflow:hidden}.seg label{font-family:var(--gothic);font-size:.86rem;padding:7px 12px;cursor:pointer;background:var(--paper-2)}.seg label:has(input:checked){background:var(--ink);color:var(--paper)}.seg input{position:absolute;opacity:0;pointer-events:none}.field{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px;font-family:var(--gothic);font-size:.88rem}.field select,.field input[type=text]{border:1px solid var(--rule);background:var(--paper-2);padding:6px 8px;border-radius:3px}.check{font-family:var(--gothic);font-size:.9rem;display:flex;gap:8px;align-items:center;cursor:pointer}.check input{accent-color:var(--shu);width:18px;height:18px}.foot-links{text-align:center;margin-top:28px;font-family:var(--gothic);font-size:.85rem}.foot-links button{background:none;border:none;color:var(--ai);text-decoration:underline;cursor:pointer;padding:4px 8px}.doc{background:var(--paper-2);border:1px solid var(--ink-2);outline:3px double var(--rule);outline-offset:-8px;padding:26px 22px;box-shadow:var(--shadow);position:relative}.doc .doc-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink-2);padding-bottom:8px;margin-bottom:14px}.doc .doc-head h2{margin:0;font-size:1.05rem;letter-spacing:.3em}.doc .name{font-size:2rem;font-weight:800;letter-spacing:.15em;margin:6px 0}.doc dl{display:grid;grid-template-columns:5.5em 1fr;gap:6px 10px;margin:0}.doc dt{font-family:var(--gothic);color:var(--ink-3);font-size:.82rem;padding-top:3px}.doc dd{margin:0}.doc .stamp{position:absolute;right:18px;top:58px}.commonness{margin-top:16px;border-top:1px dashed var(--rule);padding-top:12px;font-size:.92rem;color:var(--ink-2)}.fam-mini{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.9rem}.fam-mini .dead{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-3)}.hud{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(4px);border-bottom:1px solid var(--rule)}.hud .wrap{padding-top:10px;padding-bottom:8px}.hud-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.hud-era{font-size:1.35rem;font-weight:800;letter-spacing:.08em}.hud-era small{font-family:var(--gothic);font-size:.75rem;color:var(--ink-3);font-weight:400;margin-left:6px;letter-spacing:0}.hud-age{font-family:var(--gothic);font-size:.9rem;color:var(--ink-2);white-space:nowrap}.hud-who{font-family:var(--gothic);font-size:.78rem;color:var(--ink-3)}.bars{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:6px}.bar{font-family:var(--gothic);font-size:.68rem;color:var(--ink-2)}.bar .lab{display:flex;justify-content:space-between}.bar .track{height:5px;background:var(--bar-bg);border-radius:3px;overflow:hidden;margin-top:2px}.bar .fill{height:100%;background:var(--bar);border-radius:3px;transition:width .5s ease}.bar.low .fill{background:var(--shu)}.log{padding-top:10px;padding-bottom:140px}.turn{margin:18px 0 6px;animation:page .45s ease both}@keyframes page{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.turn{animation:none}.bar .fill{transition:none}}.turn-head{display:flex;align-items:baseline;gap:10px;border-bottom:1px solid var(--ink-2);padding-bottom:2px;margin-bottom:8px}.turn-head h3{margin:0;font-size:1.1rem;letter-spacing:.06em}.turn-head .y{font-family:var(--gothic);font-size:.75rem;color:var(--ink-3)}.turn-head .a{margin-left:auto;font-family:var(--gothic);font-size:.78rem;color:var(--ink-2)}.entry{margin:6px 0;padding:2px 0}.entry .when{font-family:var(--gothic);font-size:.7rem;color:var(--ink-3);margin-right:6px}.entry.self p,.entry.family p{margin:0}.entry.family p:before{content:"家族";font-family:var(--gothic);font-size:.66rem;color:var(--ink-3);border:1px solid var(--rule);padding:0 4px;margin-right:6px;border-radius:2px;vertical-align:2px}.entry.news{background:var(--ai-soft);border-left:3px solid var(--ai);padding:6px 12px;font-size:.9rem;color:var(--ink)}.entry.news .tag{font-family:var(--gothic);font-size:.66rem;color:var(--ai);letter-spacing:.2em;margin-right:8px;font-weight:700}.quote{display:block;margin-top:4px;font-size:.86rem;color:var(--ink-2);border-left:2px solid var(--ink-3);padding-left:8px;font-style:normal}.quote:before{content:"当時の言葉　";font-family:var(--gothic);font-size:.64rem;color:var(--ink-3)}.card{background:var(--paper-2);border:1px solid var(--rule);padding:10px 14px;margin:8px 0;position:relative;box-shadow:var(--shadow)}.card .card-tag{position:absolute;top:-9px;right:10px;background:var(--paper)}.card.draft{background:var(--draft);border-color:var(--draft-ink);color:var(--ink)}.card.draft .card-tag .seal{border-color:var(--draft-ink);color:var(--draft-ink)}.card.ration{background:var(--ration);border-style:double;border-width:3px}.card.telegram{background-image:repeating-linear-gradient(to bottom,transparent 0 27px,var(--rule) 27px 28px)}.card.letter{background-image:repeating-linear-gradient(to right,transparent 0 31px,var(--rule) 31px 32px);background-color:var(--paper-2)}.card.school{border-left:4px solid var(--ok)}.card.radio{border-left:4px solid var(--ai)}.entry.death{margin:18px 0;text-align:center}.entry.death .card{border-color:var(--ink);text-align:left}.entry.end .card{border-color:var(--shu)}.decision{border:1.5px solid var(--ink);background:var(--paper-2);padding:14px;margin:12px 0;box-shadow:var(--shadow);position:relative}.decision .dhead{display:flex;gap:8px;align-items:center;margin-bottom:6px}.decision .prompt{font-weight:700;margin:6px 0 10px}.decision .choices{display:grid;gap:8px}.choice{text-align:left;border:1px solid var(--ink-2);background:var(--paper);padding:10px 12px;border-radius:3px;cursor:pointer;font-family:var(--mincho);font-size:1rem;line-height:1.5}.choice:hover:not(:disabled){border-color:var(--shu);box-shadow:inset 3px 0 0 var(--shu)}.choice .hint{display:block;font-family:var(--gothic);font-size:.75rem;color:var(--ink-3)}.choice:disabled{opacity:.55;cursor:not-allowed;background:transparent;border-style:dashed}.choice .why{display:block;font-family:var(--gothic);font-size:.75rem;color:var(--shu)}.choice.chosen{border-color:var(--shu);box-shadow:inset 3px 0 0 var(--shu);opacity:1}.decision.done .choice:not(.chosen){opacity:.4}.controls{position:fixed;left:0;right:0;bottom:0;z-index:6;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(4px);border-top:1px solid var(--rule);padding:10px 0 calc(10px + env(safe-area-inset-bottom))}.controls .wrap{display:flex;gap:8px;align-items:center}.controls .grow{flex:1}.iconbtn{font-family:var(--gothic);font-size:.8rem;border:1px solid var(--rule);background:var(--paper-2);border-radius:3px;padding:9px 10px;cursor:pointer;white-space:nowrap}.iconbtn[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hud-status{display:flex;flex-wrap:wrap;gap:4px 14px;width:100%;margin-top:6px;padding:5px 0 1px;border:0;border-top:1px dashed var(--rule);background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.hud-status .ss{font-family:var(--gothic);font-size:.74rem;display:flex;gap:5px;min-width:0}.hud-status .k{color:var(--ink-3)}.hud-status .v{font-weight:700;color:var(--ink)}.hud-status .front .v{color:var(--shu)}.hud-status .warn .v{color:var(--draft-ink)}.hud-status .bad .v{color:var(--shu)}.srow{display:grid;grid-template-columns:4.5em 1fr;gap:8px;padding:10px 0;border-bottom:1px dashed var(--rule);align-items:baseline}.srow .k{font-family:var(--gothic);font-size:.78rem;color:var(--ink-3)}.tone-warn{color:var(--draft-ink)}.tone-bad{color:var(--shu)}.sups h3{margin:18px 0 2px;font-size:1rem;letter-spacing:.1em}.sup{padding:10px 0;border-bottom:1px dashed var(--rule)}.sup-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.sup-head .post{font-family:var(--gothic);font-size:.74rem;color:var(--ink-3);min-width:3.6em}.sup-head .trait{font-family:var(--gothic);font-size:.7rem;padding:0 6px;border:1px solid var(--rule);border-radius:2px;color:var(--ink-2)}.sup-head .trait.bad{border-color:var(--shu);color:var(--shu)}.drawer-back{position:fixed;inset:0;background:#00000059;z-index:9}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(420px,100%);z-index:10;background:var(--paper);border-left:1px solid var(--rule);overflow-y:auto;padding:18px 16px 40px;box-shadow:-8px 0 24px #00000026}.drawer h2{margin:0 0 4px;font-size:1.1rem}.map-overlay{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;background:var(--paper)}.map-overlay-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--rule)}.map-frame{flex:1;width:100%;border:0;background:var(--paper)}.fam-list{list-style:none;padding:0;margin:10px 0 0}.fam-list li{display:grid;grid-template-columns:3.2em 1fr auto;gap:8px;padding:9px 0;border-bottom:1px dashed var(--rule);align-items:baseline}.fam-list .role{font-family:var(--gothic);font-size:.78rem;color:var(--ink-3)}.fam-list .nm{font-weight:700}.fam-list .st{font-family:var(--gothic);font-size:.78rem;text-align:right}.fam-list .st.dead{color:var(--ink-3)}.fam-list .st.away{color:var(--shu)}.fam-list .st.unknown{color:var(--draft-ink);font-weight:700}.fam-list li.dead .nm{color:var(--ink-3)}.section{margin-top:28px}.section h2{font-size:1.1rem;border-bottom:1px solid var(--ink-2);padding-bottom:4px;letter-spacing:.1em}.timeline{list-style:none;padding:0;margin:0;border-left:2px solid var(--rule)}.timeline li{padding:4px 0 4px 14px;position:relative;font-size:.93rem}.timeline li:before{content:"";position:absolute;left:-6px;top:13px;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--ink-2)}.timeline li.k-decision:before{border-color:var(--shu);background:var(--shu)}.timeline li.k-death:before{background:var(--ink);border-color:var(--ink)}.timeline .d{font-family:var(--gothic);font-size:.72rem;color:var(--ink-3);display:block}.stat-big{font-size:2.4rem;font-weight:800;line-height:1.1}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat-tile{background:var(--paper-2);border:1px solid var(--rule);padding:12px}.stat-tile .lab{font-family:var(--gothic);font-size:.78rem;color:var(--ink-2)}.multiples{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.mini{background:var(--paper-2);border:1px solid var(--rule);padding:8px 10px 4px;position:relative}.mini h4{margin:0;font-family:var(--gothic);font-size:.78rem;font-weight:700;display:flex;justify-content:space-between}.mini h4 span{font-weight:400;color:var(--ink-2)}.mini svg{display:block;width:100%;height:70px;overflow:visible}.mini .tip{position:absolute;pointer-events:none;background:var(--ink);color:var(--paper);font-family:var(--gothic);font-size:.72rem;padding:3px 7px;border-radius:3px;white-space:nowrap;transform:translate(-50%,-110%)}.share{width:100%;min-height:120px;font-family:var(--gothic);font-size:.85rem;border:1px solid var(--rule);background:var(--paper-2);padding:10px;border-radius:3px;color:var(--ink)}table.data{width:100%;border-collapse:collapse;font-size:.85rem}table.data th,table.data td{border-bottom:1px solid var(--rule);padding:6px 4px;text-align:left;vertical-align:top}table.data th{font-family:var(--gothic);font-weight:700;font-size:.75rem;color:var(--ink-2)}.badge{font-family:var(--gothic);font-size:.7rem;padding:1px 6px;border-radius:2px;border:1px solid;white-space:nowrap}.badge.unv{color:var(--shu);border-color:var(--shu)}.badge.ver{color:var(--ok);border-color:var(--ok)}details summary{cursor:pointer;font-family:var(--gothic);font-size:.88rem}.backstory{border:1px dashed var(--rule);padding:10px 12px;margin:10px 0;font-size:.9rem;color:var(--ink-2)}@media(max-width:420px){body{font-size:15.5px}.bars{gap:4px}.bar{font-size:.62rem}.doc{padding:22px 16px}}.custom-panel{margin-top:10px;border:1px solid var(--rule);background:var(--paper-2);padding:12px;border-radius:3px;display:grid;gap:12px}.cf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.cf{display:grid;gap:3px;font-family:var(--gothic);font-size:.78rem;color:var(--ink-2);min-width:0}.cf select{width:100%;min-width:0;border:1px solid var(--rule);background:var(--paper);padding:7px 8px;border-radius:3px;font-size:.9rem;color:var(--ink)}.epilogue .epi-block{margin:14px 0}.epilogue h3{font-family:var(--gothic);font-size:.8rem;letter-spacing:.15em;color:var(--ink-3);margin:0 0 4px;font-weight:700}.epilogue p{margin:6px 0;line-height:1.9}.credit{padding:16px;text-align:center;font-size:12px;color:var(--ink-3)}.credit a{color:inherit;text-decoration:underline}.card.action{border-left:4px solid var(--shu)}.act-list{display:grid;gap:8px}.act-list .act-cost{float:right;margin-left:8px;font-family:var(--gothic);font-size:.8rem;color:var(--ink-2)}.act-result{background:var(--paper-2);border-left:3px solid var(--shu);padding:8px 10px;margin:0 0 10px;font-size:.92rem}
