@charset "UTF-8";
:root{color-scheme:light;--ink:#263e34;--green:#294c3d;--muted:#6c756a;--paper:#fffdf7;--line:#dedfd2;--terracotta:#aa6147;--gold:#ac8750;font-family:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;background:#f8f5ec;color:var(--ink);font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,.button{min-height:46px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);padding:11px 18px;cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{border-color:var(--green);background:#eef0e7}button:disabled{opacity:.5;cursor:default}button.primary,.button.primary{background:var(--green);color:white;border-color:var(--green)}button.primary:hover{background:#3e6050}.danger{color:#9a4437}.quiet{color:var(--muted);font-size:.88rem}a{color:var(--green)}:focus-visible{outline:3px solid #bb8737;outline-offset:4px}#main:focus-visible{outline:none}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:"Yu Mincho","Hiragino Mincho ProN",serif}h1{font-size:2.5rem;font-weight:600;letter-spacing:.05em;line-height:1.5}h2{font-size:1.5rem;font-weight:600;line-height:1.7}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;gap:32px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:serif;font-size:1.6rem;font-weight:bold;white-space:nowrap}.brand-icon{background:var(--green);color:#f5efdf;width:39px;height:43px;border-radius:5px 12px 5px 5px;display:grid;place-content:center}.brand-sub{font:11px sans-serif;writing-mode:vertical-rl;letter-spacing:2px}nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap}nav a{text-decoration:none;font-size:.9rem;padding:8px 0;border-bottom:2px solid transparent}nav a:hover,nav a[aria-current]{border-color:var(--terracotta)}main{max-width:1200px;margin:0 auto;padding:55px 32px 80px;min-height:75vh}footer{max-width:1200px;margin:auto;border-top:1px solid var(--line);padding:28px 32px;color:var(--muted);font-size:.8rem;display:flex;justify-content:space-between;gap:20px}.eyebrow{font-size:.75rem;letter-spacing:.17em;color:var(--terracotta);font-weight:700;margin-bottom:18px}.hero{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:55px;padding:28px 0 55px}.hero h1{font-size:clamp(2.7rem,4.2vw,4rem);line-height:1.6;letter-spacing:.08em;margin:0 0 25px}.hero h1 em{font-style:normal;color:var(--terracotta)}.hero p{line-height:2;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero .actions{margin:28px 0 20px}.art{position:relative;min-height:370px;display:grid;place-items:center;background:radial-gradient(ellipse,#e7e9db 0%,#eeeddf 55%,transparent 70%)}.book{width:300px;min-height:330px;background:#fefcf6;border:1px solid #d9d6c7;box-shadow:9px 10px 0 #e0dece,10px 11px 0 #c6c5b7,15px 20px 35px #2d44341a;transform:rotate(6deg);padding:35px;border-radius:4px 16px 16px 4px;position:relative}.book:before{content:"";position:absolute;left:12px;top:0;bottom:0;border-left:1px solid #d8d2bb}.book .book-label{font:11px sans-serif;letter-spacing:5px;text-align:center;color:var(--gold)}.book h2{font-size:2.2rem;text-align:center;margin:30px 0}.book p{font-size:14px;line-height:2.5;color:#687265}.word-chip{display:inline-block;background:#ecd9c5;padding:1px 9px;border-radius:5px;color:#684c37}.floating{position:absolute;padding:14px 23px;background:#dce5d3;border-radius:12px;box-shadow:0 6px 15px #31432b0c;transform:rotate(-9deg);left:0;top:35px;font-size:22px}.floating.two{background:#ecd8ca;left:auto;right:-8px;top:auto;bottom:15px;transform:rotate(-5deg)}.intro-strip{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding:25px 0;gap:30px}.intro-strip strong{display:block;margin-bottom:8px}.intro-strip span{font-size:.85rem;color:var(--muted)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.section-head h1{margin-bottom:5px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.story-card{justify-content:start;align-items:start;text-align:left;padding:23px 22px;gap:17px;min-height:110px;background:var(--paper);transition:transform .15s}.story-card:hover{transform:translateY(-3px)}.story-no{font:italic 1.8rem Georgia,serif;color:#b9a581;min-width:36px}.story-card strong{display:block;font-family:serif;font-size:1.15rem;margin:3px 0 8px}.story-card small{font-weight:400;font-size:.75rem;color:var(--muted)}.paper{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:32px}.editor{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:start}.input-panel{padding:24px;max-height:calc(100vh - 50px);overflow:auto;position:sticky;top:20px}.input-panel h2{margin-bottom:7px}.answer-field{display:block;margin-top:19px}.field-heading{display:flex;align-items:center;gap:9px;font-size:.83rem;margin-bottom:7px}.badge{min-width:25px;height:25px;border-radius:50%;display:inline-grid;place-items:center;color:#374437;background:var(--tone)}input[type=text]{width:100%;padding:13px;border:1px solid #d2d7cb;border-radius:7px;color:var(--ink);background:#fff;font-size:16px}input[type=search]{padding:13px;border:1px solid var(--line);border-radius:8px;min-width:240px;max-width:100%;background:var(--paper);font:inherit}.answer-field input{border-left:4px solid var(--tone)}.story-tools{display:flex;justify-content:flex-end;gap:8px;margin-bottom:24px;flex-wrap:wrap}.story-tools button{font-size:.8rem;padding:8px 12px;min-height:40px}.story-content{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:2.65;font-size:18px;overflow-wrap:anywhere;white-space:pre-wrap}.story-content h2{font:inherit;font-size:1.6rem;line-height:2.2;margin-bottom:30px}.story-content p{margin:0 0 1.35em}.hole{background:var(--tone);border-radius:4px;padding:2px 3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.story-content ruby{ruby-align:center}rt{font:normal .5em sans-serif;letter-spacing:.02em}.saved{font-size:.8rem;color:var(--muted);min-height:23px}.mobile-switch{display:none}.library-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:20px}select{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);min-height:44px}.library-list{display:grid;gap:12px}.library-row{display:flex;gap:16px;align-items:center;background:var(--paper);padding:15px 20px;border:1px solid var(--line);border-radius:10px}.library-open{display:block;flex:1;text-align:left;border:0;background:none;padding:5px;min-width:0}.library-open strong{display:block;font-family:serif;font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:6px 0}.library-open small{color:var(--muted);font-weight:400}.star{font-size:1.5rem;color:#9d763a;padding:8px 13px}.warning{font-size:.85rem;color:var(--muted);margin-top:30px;line-height:1.8}.empty{padding:65px 20px;text-align:center;background:#eeeee3;border-radius:12px}.empty p{color:var(--muted)}input[type=checkbox]{width:22px;height:22px;accent-color:var(--green)}dialog{border:1px solid var(--line);border-radius:15px;background:var(--paper);color:var(--ink);padding:28px;width:min(790px,92vw);max-height:88dvh;overflow:auto;box-shadow:0 25px 90px #162b3444}dialog::backdrop{background:#23342c88;backdrop-filter:blur(3px)}dialog.confirm{max-width:480px}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.dialog-head h2{margin:0}.dialog-foot{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.close{padding:5px 14px;font-size:22px}.export-image{max-width:100%;max-height:50vh;object-fit:contain;display:block;margin:15px auto;border:1px solid var(--line)}.help{max-width:740px;margin:auto}.help p{line-height:2.1}.help .sample{padding:24px;border-left:3px solid var(--terracotta);background:#efeee2}.help hr{border:0;border-top:1px solid var(--line);margin:28px 0}.custom-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:25px}.candidate{display:inline;padding:3px 4px;border:0;border-bottom:1px dashed #a4ac91;border-radius:4px;min-height:0;font:inherit;line-height:inherit;background:#f1f1e5}.candidate[aria-pressed=true]{background:var(--tone);border-bottom-style:solid}.target-list{position:sticky;top:20px;max-height:80vh;overflow:auto;padding:20px}.target-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:8px;padding:6px 0}.target-item button{padding:5px 10px;min-height:36px}.small-label{font-size:.8rem;color:var(--muted)}#error{background:#fbe3da;color:#702e22;padding:16px 6%;position:sticky;top:0;z-index:8}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--green);color:white;padding:14px 24px;border-radius:30px;opacity:0;pointer-events:none;transition:.2s;z-index:50;max-width:90vw;text-align:center;font-size:.9rem}#toast.show{opacity:1;transform:translate(-50%,0)}.skip{position:fixed;left:10px;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.muted{color:var(--muted)}.export-pages{display:grid;gap:22px}.install-note{border-left:3px solid #a2ad90;padding-left:20px;line-height:1.9}.bottom-delete{margin-top:20px}
@media(max-width:950px){header{align-items:start;gap:15px;padding:20px 25px;flex-wrap:wrap}nav{gap:22px}.hero{gap:20px}.book{width:260px}.editor{grid-template-columns:290px minmax(0,1fr)}.paper{padding:24px}.story-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){header{padding:17px 20px;gap:16px}.brand{font-size:1.4rem}nav{width:100%;gap:0;justify-content:space-between}nav a{font-size:.75rem}main{padding:30px 20px 55px}h1{font-size:1.8rem}.hero{grid-template-columns:1fr;padding:5px 0 35px;gap:15px}.hero h1{font-size:2.65rem}.hero p{font-size:.9rem}.hero .actions{margin-bottom:10px}.art{min-height:300px;max-width:380px;width:100%;justify-self:center}.book{min-height:270px;padding:25px;width:250px}.book h2{margin:20px 0;font-size:1.8rem}.book p{font-size:12px}.floating{font-size:18px;padding:10px 16px;left:5px}.intro-strip{grid-template-columns:1fr;gap:22px}.intro-strip strong{display:inline;margin-right:14px}.story-grid{grid-template-columns:1fr}.story-card{min-height:87px;padding:18px}.section-head{align-items:start;flex-direction:column;gap:14px}.section-head input{width:100%}.editor{display:block}.input-panel{position:static;max-height:none}.mobile-switch{display:flex;position:sticky;top:10px;z-index:5;justify-content:center;margin-bottom:18px}.mobile-switch button{box-shadow:0 5px 15px #294c3d20;width:100%}.editor:not(.reading) .story-panel{display:none}.editor.reading .input-panel{display:none}.story-content{font-size:17px;line-height:2.6}.story-panel{padding:24px 20px}.story-tools{gap:6px}.story-tools button{padding:8px 10px}.custom-layout{display:flex;flex-direction:column}.target-list{position:static;width:100%;max-height:none}.library-row{padding:12px;gap:9px}.library-open strong{font-size:1rem}.library-controls button{font-size:.8rem;padding:10px}.library-controls{gap:8px}footer{padding:25px 20px;display:block}footer span{display:block;margin-top:10px;font-size:.72rem}.dialog-head h2{font-size:1.1rem}dialog{padding:21px}dialog .story-content{font-size:16px}.actions button,.actions .button{flex-grow:1}.hero .actions button,.hero .actions .button{flex-grow:0}.custom-layout .story-content{line-height:3}.candidate{padding:6px 4px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* 2026-11-09: compact header and story editor */
header{padding-top:15px;padding-bottom:15px;gap:20px}
.brand{gap:9px}.brand-sub{writing-mode:horizontal-tb;font-size:11px;letter-spacing:.06em;line-height:1.4}
.brand-logo{width:39px;height:39px;object-fit:contain;flex-shrink:0}
main.editing{padding-top:22px}.editing>.section-head{margin-bottom:18px}
.editing>.section-head .eyebrow{display:none}.editing>.section-head h1{font-size:1.9rem;line-height:1.35;margin-bottom:8px}
.editing>.section-head p{margin-bottom:0}.story-content h2{line-height:1.6;margin-bottom:16px}
.story-tools{margin-bottom:16px}.original-comparison{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}
.original-comparison>h3{font:600 .9rem sans-serif;color:var(--muted);margin-bottom:14px}
@media(max-width:700px){header{padding:12px 20px;gap:10px}.brand-sub{font-size:10px}.brand-icon,.brand-logo{width:34px;height:36px}.editing>.section-head h1{font-size:1.6rem}.editing>.section-head{margin-bottom:14px}.story-content h2{margin-bottom:12px}.original-comparison{margin-top:24px;padding-top:20px}}

.brand-logo{width:48px;height:48px}@media(max-width:700px){.brand-logo{width:42px;height:42px}}

/* Saved-story title, count and controls share a row on desktop. */
main.library-page{padding-top:34px}
.library-header{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.library-header>.section-head{margin:0;flex-shrink:0}
.library-header>.section-head>div{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}
.library-header .eyebrow{display:none}
.library-header h1{font-size:1.9rem;line-height:1.35;margin:0}
.library-header .quiet{margin:0;white-space:nowrap}
.library-header .library-controls{margin:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:700px){
 main.library-page{padding-top:26px}
 .library-header{display:block;margin-bottom:24px}
 .library-header>.section-head{margin-bottom:20px}
 .library-header h1{font-size:1.6rem}
 .library-header>.section-head>div{gap:14px}
}

/* A quiet editorial recommendation, separate from game settings. */
.preparedness{margin-top:48px;padding-top:32px;border-top:1px solid var(--line);max-width:920px}
.preparedness-label{font-size:.78rem;color:var(--muted);letter-spacing:.08em;margin-bottom:12px}
.preparedness h2{font-size:clamp(1.25rem,2.1vw,1.65rem);line-height:1.65;margin-bottom:12px}
.preparedness-intro{max-width:46em;line-height:1.9;color:var(--muted);margin-bottom:26px}
.preparedness-product{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:center}
.preparedness-photo{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;padding:16px;min-height:220px;text-decoration:none}
.preparedness-photo img{width:100%;height:auto;max-height:220px;object-fit:contain}
.preparedness-description h3{font-size:1rem;line-height:1.7;margin:0 0 12px;font-weight:600}
.preparedness-description p{font-size:.9rem;line-height:1.9;color:var(--muted);margin-bottom:12px}
.preparedness-link{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:6px;font-size:.92rem}
.preparedness-description .preparedness-note{font-size:.78rem;margin:10px 0 0;line-height:1.7}
.preparedness-image-fallback{font-size:.85rem;line-height:1.8;text-align:center}
footer{flex-wrap:wrap}
@media(max-width:700px){.preparedness{margin-top:36px;padding-top:26px}.preparedness-product{grid-template-columns:1fr;gap:20px}.preparedness-photo{width:200px;min-height:200px}.preparedness-intro{margin-bottom:20px}}
