:root{--ink:#3d2a1f;--muted:#756657;--moss:#304b35;--moss2:#54705a;--cream:#f7efd9;--paper:#fffaf0;--gold:#d7a842;--line:rgba(77,53,34,.22);--shadow:0 18px 48px rgba(33,30,19,.24);font-family:"Hiragino Mincho ProN","Yu Mincho",serif;color:var(--ink);background:#23362a}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#23362a}button,input{font:inherit}button{color:inherit}.app{min-height:100dvh}.forest-header{position:fixed;z-index:50;left:0;right:0;top:0;height:68px;display:flex;align-items:center;justify-content:space-between;padding:7px 20px;color:#fff;background:linear-gradient(180deg,rgba(27,48,33,.88),rgba(27,48,33,.58),transparent);pointer-events:none}.brand{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#fff;text-align:left;pointer-events:auto;cursor:pointer;text-shadow:0 2px 10px rgba(0,0,0,.35)}.brand img{width:46px;height:46px;object-fit:contain}.brand span{display:grid}.brand b{letter-spacing:.12em}.brand small{font-size:10px;letter-spacing:.2em;opacity:.8}.header-status{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.08em;text-shadow:0 2px 10px #000}.dot{width:4px;height:4px;border-radius:50%;background:#f6d77d}.scene{position:relative;min-height:100dvh;overflow:hidden}.scene[hidden]{display:none}.scene-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,31,20,.76) 0%,rgba(15,31,20,.32) 43%,rgba(15,31,20,.04) 72%)}.scene-shade.bottom{background:linear-gradient(0deg,rgba(18,29,21,.82),transparent 68%)}.story-panel{position:absolute;z-index:3;left:clamp(20px,7vw,110px);top:50%;width:min(520px,calc(100% - 40px));transform:translateY(-45%);padding:clamp(24px,4vw,44px);background:linear-gradient(rgba(255,250,238,.94),rgba(248,236,208,.94)),url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,255,255,.55);border-radius:4px 30px 4px 30px;box-shadow:var(--shadow)}.eyebrow{margin:0 0 10px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:800;letter-spacing:.22em;color:#687957}.story-panel h1,.map-heading h1,.shelf-heading h1,.article-head h1,.farewell-copy h1{margin:0;line-height:1.35;font-weight:600;letter-spacing:.05em}.story-panel h1{font-size:clamp(32px,5vw,58px)}.story-panel>p:not(.eyebrow){line-height:2;margin:20px 0}.story-button{border:1px solid transparent;border-radius:999px;padding:13px 22px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:.2s transform,.2s box-shadow}.story-button:hover,.story-button:focus-visible{transform:translateY(-2px)}.story-button.primary{color:#fff;background:var(--moss);box-shadow:0 8px 18px rgba(48,75,53,.2)}.story-button.secondary{background:#fffaf0;border-color:var(--line)}.text-button{display:block;border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;margin:18px auto 0;cursor:pointer}.tamagorou{position:absolute;z-index:2;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(20,25,18,.25))}.tamagorou.welcome{right:clamp(5%,10vw,15%);bottom:3%;height:min(68vh,720px)}.dialogue-card{position:absolute;z-index:3;left:8%;right:8%;bottom:4%;max-width:760px;padding:20px 26px;background:rgba(255,250,238,.95);border:1px solid rgba(255,255,255,.7);border-radius:22px 22px 5px 22px;box-shadow:var(--shadow)}.dialogue-card .speaker{margin:0;color:#69805c;font-weight:700;font-size:12px;letter-spacing:.1em}.dialogue-card h2{margin:6px 0 8px;font-size:clamp(21px,3vw,34px);line-height:1.45}.dialogue-card>p:last-of-type{line-height:1.8;margin:0 0 14px}.button-row{display:flex;flex-wrap:wrap;gap:10px}.paper-scene{padding:100px 5vw 140px;background:#e8ddbd url("assets/ui/article-paper-v1.jpg") center/cover fixed}.map-heading{text-align:center;max-width:780px;margin:0 auto 30px}.map-heading h1{font-size:clamp(28px,4vw,48px)}.map-heading>p:last-child{color:var(--muted)}.map-frame{position:relative;max-width:1180px;margin:auto;border:12px solid #8a6036;border-radius:16px;box-shadow:0 0 0 4px #d2ab66,0 30px 70px rgba(61,43,27,.32);overflow:hidden;background:#c7b17e}.map-frame>img{display:block;width:100%;height:auto}.map-pin{position:absolute;display:flex;align-items:center;gap:8px;min-width:150px;padding:7px 12px 7px 7px;border:2px solid rgba(90,59,31,.55);border-radius:999px;background:rgba(255,249,225,.94);box-shadow:0 6px 16px rgba(49,36,20,.28);cursor:pointer;text-align:left;transition:.2s}.map-pin:hover,.map-pin:focus-visible{transform:translateY(-3px) scale(1.02);background:#fff}.map-pin>img{width:44px;height:44px;object-fit:contain}.map-pin span{display:grid;font-weight:800;font-size:13px}.map-pin small{font-size:10px;font-weight:400;color:var(--muted)}.map-pin.library{left:11%;top:18%}.map-pin.post{right:14%;top:25%}.map-pin.shop{right:8%;top:56%}.map-pin.concert{right:4%;bottom:10%}.map-note{max-width:680px;margin:28px auto 0;padding:14px 20px;text-align:center;background:#fff8e7;border:1px solid var(--line);border-radius:14px;line-height:1.7}.shelf-scene{padding:100px 5vw 130px}.shelf-scene .scene-shade{position:fixed;background:linear-gradient(rgba(30,26,18,.52),rgba(30,26,18,.68))}.shelf-shell{position:relative;z-index:2;max-width:1120px;margin:auto;padding:30px;background:rgba(255,248,225,.93) url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,255,255,.5);border-radius:6px 34px 6px 34px;box-shadow:var(--shadow)}.shelf-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.shelf-heading h1{font-size:clamp(30px,4vw,46px)}.search-box{display:flex;align-items:center;gap:8px;padding:7px 14px;background:#fff;border:1px solid var(--line);border-radius:999px}.search-box img{width:30px;height:30px;object-fit:contain}.search-box input{width:240px;border:0;outline:0;background:transparent}.category-row{display:flex;gap:8px;overflow:auto;padding:20px 0 15px}.chip{white-space:nowrap;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fffaf0;cursor:pointer}.chip.selected{background:var(--moss);color:#fff}.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.book-card{position:relative;display:grid;grid-template-rows:155px 1fr;min-height:330px;padding:0;border:1px solid rgba(75,53,35,.25);border-radius:12px 12px 4px 4px;background:#fffbef;overflow:hidden;text-align:left;cursor:pointer;box-shadow:0 10px 22px rgba(76,51,29,.13);transition:.2s transform,.2s box-shadow}.book-card:hover,.book-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 32px rgba(76,51,29,.22)}.book-card>img{width:100%;height:100%;object-fit:cover}.book-copy{display:flex;flex-direction:column;padding:16px 17px}.book-copy small{color:#71805f;font-weight:700;letter-spacing:.08em}.book-copy b{font-size:18px;line-height:1.55;margin:6px 0}.book-copy em{font-style:normal;color:var(--muted);font-size:12px;margin-top:auto}.empty{text-align:center;padding:30px}.reader-scene{padding:210px 4vw 120px;background:#27392c;overflow-y:auto}.reader-landscape{position:fixed;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.72)}.reader-scene:after{content:"";position:fixed;z-index:0;inset:0;background:linear-gradient(rgba(18,29,21,.18),rgba(18,29,21,.55))}.reader-toolbar{position:fixed;z-index:12;right:18px;top:94px;display:grid;gap:9px}.tool-button{display:grid;grid-template-columns:40px auto;align-items:center;gap:8px;min-width:124px;padding:7px 14px 7px 8px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,249,230,.94);box-shadow:0 6px 20px rgba(0,0,0,.18);cursor:pointer}.tool-button img{width:40px;height:40px;object-fit:contain}.tool-button[aria-pressed="true"]{background:#fff2bd;box-shadow:0 0 35px rgba(255,222,116,.7)}.reader-paper{position:relative;z-index:2;max-width:820px;margin:auto;padding:clamp(28px,6vw,74px);background:#fffaf0 url("assets/ui/article-paper-v1.jpg") center/620px auto;border:1px solid rgba(255,255,255,.5);box-shadow:0 30px 80px rgba(0,0,0,.35)}.reader-paper.lamp-on{box-shadow:0 0 110px 30px rgba(255,218,111,.43),0 30px 80px rgba(0,0,0,.35)}.article-head{padding-bottom:28px;border-bottom:1px solid var(--line)}.article-head h1{font-size:clamp(30px,5vw,52px)}.reading-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.article-cover{margin:36px -20px}.article-cover img{width:100%;max-height:500px;object-fit:cover;border-radius:4px}.toc{margin:34px 0;padding:22px;background:rgba(234,225,195,.52);border-left:5px solid #8da076}.toc:before{content:"この本の目次";display:block;margin-bottom:10px;font-weight:800}.toc button{display:block;width:100%;padding:8px 0;border:0;border-bottom:1px dotted var(--line);background:transparent;text-align:left;cursor:pointer}.article-body{font-size:17px;line-height:2.15;letter-spacing:.03em}.article-body h2{margin:70px 0 24px;padding-top:14px;font-size:28px;border-top:1px solid var(--line)}.article-body h3{margin-top:42px;font-size:22px}.article-body p{margin:0 0 1.7em}.article-body blockquote{margin:30px 0;padding:15px 20px;border-left:4px solid #8fa27d;background:rgba(229,222,193,.5)}.article-body ul{padding-left:1.4em}.reader-story-image{margin:46px -30px;text-align:center}.reader-story-image img{width:100%;border-radius:5px}.reader-story-image figcaption{font-size:11px;color:var(--muted);margin-top:8px}.reader-ornament{text-align:center;color:#8ca075;margin:40px 0}.article-end{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:24px;margin:80px -20px -30px;padding:24px 28px;background:#ebe2c5;border-radius:4px 22px 4px 22px}.article-end img{width:100%}.article-end h2{margin:4px 0 8px;font-size:24px}.reading-progress{position:fixed;z-index:20;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.25)}.reading-progress span{display:block;width:0;height:100%;background:#f0c858;transition:.15s width}.farewell-copy{top:48%;left:auto;right:7%}.tamagorou.lantern{left:8%;bottom:2%;height:min(64vh,660px)}.satchel-button{position:fixed;z-index:60;right:16px;bottom:12px;display:grid;justify-items:center;border:0;background:transparent;color:#fff;font-size:11px;text-shadow:0 2px 8px #000;cursor:pointer}.satchel-button img{width:94px;height:76px;object-fit:contain;filter:drop-shadow(0 7px 9px rgba(0,0,0,.35));transition:.2s transform}.satchel-button:hover img{transform:translateY(-4px)}.satchel-panel{position:fixed;z-index:70;right:18px;bottom:16px;width:min(390px,calc(100% - 36px));max-height:calc(100dvh - 32px);overflow:auto;padding:22px;background:#f8efd8 url("assets/ui/article-paper-v1.jpg") center/cover;border:2px solid #8b623b;border-radius:20px 20px 5px 20px;box-shadow:0 26px 70px rgba(0,0,0,.45)}.satchel-head{display:flex;align-items:start;justify-content:space-between}.satchel-head h2{margin:0}.satchel-head button{border:0;background:transparent;text-decoration:underline;cursor:pointer}.memory-list{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.memory-list span{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px}.satchel-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.satchel-actions button{display:grid;grid-template-columns:68px 1fr;align-items:center;border:1px solid var(--line);border-radius:12px;background:#fffaf0;text-align:left;cursor:pointer}.satchel-actions img{width:68px;height:58px;object-fit:cover}.sound-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:13px;background:#27392c;color:#fff;border-radius:12px}.sound-card div{display:grid}.sound-card .eyebrow{color:#cbd8b9}.sound-card small{opacity:.72;line-height:1.5;margin-top:4px}.sound-card button{flex:0 0 auto;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:8px 12px;background:#f3d170;color:#3d2a1f;cursor:pointer}.toast{position:fixed;z-index:100;left:50%;bottom:26px;transform:translate(-50%,20px);padding:12px 18px;border-radius:999px;background:#243b2d;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:820px){.forest-header{padding:5px 10px}.header-status{display:none}.brand img{width:40px;height:40px}.story-panel{left:16px;top:auto;bottom:90px;transform:none;padding:24px}.story-panel h1{font-size:34px}.scene-shade{background:linear-gradient(0deg,rgba(15,31,20,.84),rgba(15,31,20,.05) 75%)}.tamagorou.welcome{right:-7%;bottom:27%;height:44vh}.dialogue-card{left:12px;right:12px;bottom:88px;padding:18px}.dialogue-card h2{font-size:21px}.paper-scene{padding:90px 12px 120px}.map-frame{border-width:6px;overflow:visible;margin-bottom:240px}.map-pin{min-width:0;padding:5px}.map-pin>img{width:32px;height:32px}.map-pin span{display:none}.map-pin.library{left:9%;top:17%}.map-pin.post{right:14%;top:24%}.map-pin.shop{right:7%;top:55%}.map-pin.concert{right:2%;bottom:8%}.map-note{margin-top:20px}.shelf-scene{padding:86px 12px 120px}.shelf-shell{padding:20px 14px}.shelf-heading{display:block}.search-box{margin-top:16px}.search-box input{width:100%}.book-grid{grid-template-columns:1fr}.book-card{grid-template-columns:120px 1fr;grid-template-rows:1fr;min-height:190px}.book-card>img{height:100%}.reader-scene{padding:180px 10px 110px}.reader-toolbar{top:76px;left:10px;right:10px;grid-template-columns:repeat(3,1fr)}.tool-button{display:flex;min-width:0;padding:5px 8px;justify-content:center}.tool-button img{width:30px;height:30px}.tool-button span{font-size:11px}.reader-paper{padding:30px 22px}.article-head h1{font-size:31px}.article-cover{margin:26px -10px}.article-body{font-size:16px}.reader-story-image{margin:38px -12px}.article-end{grid-template-columns:100px 1fr;margin:60px -10px -15px;padding:18px 15px}.article-end h2{font-size:19px}.tamagorou.lantern{left:-8%;bottom:26%;height:42vh}.farewell-copy{right:16px}.satchel-button img{width:82px;height:65px}.satchel-button{right:8px}.button-row .story-button{flex:1}.sound-card{align-items:flex-end}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.brand,.story-button,.map-pin,.book-card{color:inherit;text-decoration:none}.story-button{display:inline-block;text-align:center}.text-button{color:inherit;text-align:center}
.paper-scene{isolation:isolate;background:#4a3a25;padding-top:92px}.map-room-background{position:fixed;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.map-room-shade{position:fixed;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(25,35,25,.58),rgba(46,30,17,.18) 42%,rgba(31,22,14,.55))}.paper-scene .map-heading{width:min(760px,calc(100% - 32px));padding:18px 28px 20px;background:rgba(255,249,231,.94) url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,255,255,.68);border-radius:4px 22px 4px 22px;box-shadow:0 16px 36px rgba(31,22,14,.28)}.paper-scene .map-frame{border-color:#704724;box-shadow:0 0 0 4px #d5ad65,0 26px 60px rgba(31,22,14,.45)}.paper-scene .map-note{background:rgba(255,249,231,.96);box-shadow:0 10px 26px rgba(31,22,14,.25)}.app[data-scene="map"] .satchel-button{right:24px;bottom:18px;padding:7px 12px 8px;background:rgba(255,249,231,.96) url("assets/ui/article-paper-v1.jpg") center/cover;border:2px solid #936638;border-radius:20px;color:#493321;font-weight:800;text-shadow:none;box-shadow:0 12px 30px rgba(24,17,10,.42)}.app[data-scene="map"] .satchel-button img{width:126px;height:96px;filter:drop-shadow(0 8px 8px rgba(49,29,12,.32))}.app[data-scene="map"] .satchel-button span{margin-top:-5px;letter-spacing:.08em}.app[data-scene="map"] .satchel-button:focus-visible{outline:4px solid #f2cf69;outline-offset:3px}
@media(max-width:820px){.paper-scene{padding-top:82px}.paper-scene .map-heading{padding:16px 18px}.map-room-background{object-position:center top}.app[data-scene="map"] .satchel-button{right:8px;bottom:8px;padding:5px 8px}.app[data-scene="map"] .satchel-button img{width:96px;height:72px}}
.paper-scene{padding-bottom:190px}.map-room-background{z-index:0}.map-room-shade{z-index:1}.paper-scene>.map-heading,.paper-scene>.map-frame,.paper-scene>.map-note{position:relative;z-index:2}.app[data-scene="map"]{position:relative}.app[data-scene="map"] .satchel-button{position:absolute;z-index:5;right:clamp(18px,4vw,58px);bottom:22px}.app[data-scene="map"] .satchel-button:hover img{transform:translateY(-3px) rotate(-1deg)}
@media(max-width:820px){.paper-scene{padding-bottom:154px}.app[data-scene="map"] .satchel-button{right:12px;bottom:12px}}
.paper-scene{padding-bottom:230px}.map-room-link{position:relative;z-index:2;display:grid;grid-template-columns:92px 1fr;align-items:center;width:min(360px,calc(100% - 140px));margin:18px auto 0;padding:8px 18px 8px 8px;background:rgba(255,249,231,.96) url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(83,52,27,.34);border-radius:16px;color:inherit;text-decoration:none;box-shadow:0 10px 28px rgba(31,22,14,.3);transition:.2s transform}.map-room-link:hover,.map-room-link:focus-visible{transform:translateY(-3px)}.map-room-link img{width:86px;height:76px;object-fit:contain}.map-room-link span{display:grid}.map-room-link small,.map-room-link em{font-size:11px;color:var(--muted);font-style:normal}.map-room-link b{font-size:17px;margin:2px 0}.profile-scene{background:#392b1d}.profile-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(35,25,16,.18),rgba(35,25,16,.08) 45%,rgba(35,25,16,.54))}.profile-character{position:absolute;z-index:2;left:clamp(2%,7vw,10%);bottom:-2%;height:min(70vh,720px);max-width:46vw;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(47,29,15,.28))}.profile-book{position:absolute;z-index:3;right:clamp(18px,6vw,90px);top:50%;transform:translateY(-45%);width:min(580px,54vw);max-height:82vh;overflow:auto;padding:clamp(24px,4vw,46px);background:rgba(255,249,231,.95) url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,255,255,.75);border-radius:4px 30px 4px 30px;box-shadow:0 24px 65px rgba(47,29,15,.32)}.profile-book h1{margin:0;font-size:clamp(34px,5vw,56px);font-weight:600}.profile-lead{font-size:16px;line-height:1.9}.profile-facts{display:grid;gap:8px;margin:22px 0}.profile-facts div{display:grid;grid-template-columns:155px 1fr;gap:12px;padding:10px 0;border-bottom:1px dotted var(--line)}.profile-facts dt{font-size:12px;font-weight:800;color:#677958}.profile-facts dd{margin:0;line-height:1.65}.profile-book blockquote{margin:22px 0;padding:14px 17px;background:rgba(225,218,188,.55);border-left:5px solid #82946f;line-height:1.8}.text-button.compact{display:inline-block;margin:10px 4px 0}.satchel-actions{grid-template-columns:repeat(3,1fr)}.satchel-actions a,.satchel-actions button{display:grid;grid-template-rows:60px auto;align-items:center;justify-items:center;padding:6px;border:1px solid var(--line);border-radius:12px;background:#fffaf0;color:inherit;text-align:center;text-decoration:none;cursor:pointer}.satchel-actions img{width:100%;height:58px;object-fit:cover}.satchel-actions img.contain{object-fit:contain}.satchel-actions span{font-size:12px;font-weight:700}
@media(max-width:820px){.paper-scene{padding-bottom:205px}.map-room-link{grid-template-columns:72px 1fr;width:calc(100% - 118px);margin-left:6px}.map-room-link img{width:68px;height:62px}.profile-shade{background:linear-gradient(0deg,rgba(35,25,16,.72),rgba(35,25,16,.02) 75%)}.profile-character{left:-8%;bottom:40%;height:42vh;max-width:60vw}.profile-book{left:12px;right:12px;top:auto;bottom:90px;transform:none;width:auto;max-height:65vh;padding:22px}.profile-book h1{font-size:34px}.profile-facts div{grid-template-columns:1fr;gap:3px}.profile-book .button-row .story-button{flex-basis:100%}.satchel-actions{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.profile-scene{min-height:1280px;overflow:hidden}.profile-shade{position:absolute;min-height:1280px}.profile-character{left:50%;top:72px;bottom:auto;height:260px;max-width:76vw;transform:translateX(-50%)}.profile-book{left:12px;right:12px;top:310px;bottom:auto;transform:none;width:auto;max-height:none;padding:22px;margin-bottom:120px}.profile-book .text-button.compact{width:100%;margin-top:8px}}
.app[data-scene="map"] .satchel-button{position:fixed;left:14px;right:auto;bottom:14px;grid-template-columns:68px auto;align-items:center;gap:2px;padding:5px 12px 5px 5px}.app[data-scene="map"] .satchel-button img{width:68px;height:54px}.app[data-scene="map"] .satchel-button span{margin:0;font-size:12px;white-space:nowrap}
.zukan-scene{padding:105px 5vw 90px;display:flex;align-items:flex-end;background:#332619}.zukan-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(24,34,24,.12),rgba(38,24,14,.28) 50%,rgba(28,20,14,.72))}.zukan-shell{position:relative;z-index:2;width:min(1180px,100%);margin:0 auto;padding:24px 26px;background:rgba(255,249,231,.94) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.66);border-radius:5px 30px 5px 30px;box-shadow:0 24px 65px rgba(30,19,11,.4)}.zukan-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.zukan-heading h1{margin:0;font-size:clamp(32px,4vw,52px);font-weight:600}.zukan-heading p:last-child{margin:8px 0 0;color:var(--muted)}.resident-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.resident-card{position:relative;display:grid;grid-template-rows:170px 1fr;min-height:340px;padding:0;border:1px solid rgba(78,54,33,.25);border-radius:16px 16px 5px 5px;overflow:hidden;background:rgba(255,252,242,.96);color:inherit;text-align:left;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px rgba(74,47,25,.16);transition:.2s transform,.2s box-shadow}.resident-card:hover,.resident-card:focus-visible{transform:translateY(-5px);box-shadow:0 17px 34px rgba(74,47,25,.24)}.resident-card>img{width:100%;height:170px;object-fit:contain;padding:10px;background:linear-gradient(145deg,#dce4c5,#f7e6bd)}.resident-card.waiting:not([href]){cursor:help}.resident-card.waiting>img{filter:saturate(.78);background:linear-gradient(145deg,#e1dfcd,#eee4d2)}.resident-number{position:absolute;z-index:2;left:10px;top:10px;padding:5px 8px;border-radius:999px;background:rgba(50,70,51,.9);color:#fff;font-size:10px;letter-spacing:.08em}.resident-copy{display:grid;align-content:start;padding:14px 16px 18px}.resident-copy small{color:#71805f;font-weight:800}.resident-copy b{font-size:20px;margin:4px 0 8px}.resident-copy em{font-style:normal;color:var(--muted);font-size:13px;line-height:1.65}.zukan-note{margin:18px 0 0;padding-top:14px;border-top:1px dotted var(--line);color:var(--muted);font-size:12px;text-align:center}.satchel-actions{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px) and (min-width:821px){.resident-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.zukan-scene{display:block;min-height:auto;padding:88px 12px 120px;overflow:visible}.zukan-scene .scene-background{position:fixed}.zukan-shell{padding:20px 14px}.zukan-heading{display:block}.zukan-heading .text-button{margin:10px 0}.resident-grid{grid-template-columns:1fr}.resident-card{grid-template-columns:120px 1fr;grid-template-rows:1fr;min-height:190px}.resident-card>img{width:120px;height:100%;min-height:190px}.resident-copy b{font-size:18px}}
.reader-landscape{filter:saturate(.78) brightness(.58);object-position:center}.reader-scene:after{background:linear-gradient(90deg,rgba(18,29,21,.5),rgba(18,29,21,.16) 28%,rgba(18,29,21,.16) 72%,rgba(18,29,21,.5))}.reader-paper{color:#33251d;background:#fbf7ed url("assets/ui/article-paper-v1.jpg") center top/100% auto repeat-y;border:1px solid rgba(113,83,54,.28);box-shadow:0 34px 90px rgba(17,19,13,.48)}.article-body{max-width:680px;margin-inline:auto;font-size:18px;line-height:2.2;letter-spacing:.025em}.article-body p{margin-bottom:1.85em}.article-body h2{color:#2f402f;border-top-color:rgba(76,83,61,.24)}.article-head{max-width:680px;margin-inline:auto}.article-cover{max-width:720px;margin-left:auto;margin-right:auto}.toc{max-width:680px;margin-left:auto;margin-right:auto;background:rgba(238,231,206,.64)}.reader-paper.lamp-on{background-color:#fffaf0;box-shadow:0 0 100px 24px rgba(255,222,128,.32),0 34px 90px rgba(17,19,13,.48)}
@media(max-width:820px){.reader-landscape{object-position:45% center}.article-body{font-size:17px;line-height:2.15}}

/* v24: long-form reading rhythm */
.article-body{line-height:2.08}.article-body p{margin-bottom:1.55em}

/* v24: Forest Post Office */
.post-scene{background:#3c2a1a}.post-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(35,24,14,.06) 0 44%,rgba(35,24,14,.54) 76%,rgba(35,24,14,.66))}.post-desk{position:absolute;z-index:2;right:clamp(18px,6vw,90px);top:50%;transform:translateY(-46%);width:min(590px,48vw);max-height:82vh;overflow:auto;padding:clamp(25px,3.4vw,44px);background:rgba(255,249,232,.96) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.72);border-radius:5px 30px 5px 30px;box-shadow:0 25px 70px rgba(34,20,11,.38)}.post-desk h1{margin:0;font-size:clamp(36px,4.4vw,58px);line-height:1.35;font-weight:600}.post-lead{line-height:1.85;color:var(--muted)}.letter-form{display:grid;gap:15px;margin-top:22px}.letter-form>label,.letter-options>label:not(.reply-option){display:grid;gap:7px;font-size:12px;font-weight:800;color:#657457}.letter-form textarea,.letter-form select{width:100%;border:1px solid rgba(91,66,43,.3);border-radius:10px;background:rgba(255,254,246,.9);padding:13px 14px;color:#3c2b21;font:inherit;line-height:1.7;resize:vertical}.letter-form textarea:focus,.letter-form select:focus{outline:3px solid rgba(223,183,88,.42);border-color:#a77a32}.letter-options{display:grid;grid-template-columns:150px 1fr;gap:13px;align-items:stretch}.reply-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(91,66,43,.2);border-radius:10px;background:rgba(245,237,211,.58);cursor:pointer}.reply-option input{width:20px;height:20px;accent-color:#647b57}.reply-option span{display:grid}.reply-option b{font-size:12px}.reply-option small{margin-top:3px;color:var(--muted);font-weight:400;line-height:1.45}.privacy-note{margin:0;font-size:11px;line-height:1.6;color:var(--muted)}.post-desk .button-row{align-items:center}.post-desk .story-button{font-size:12px}.post-finale{position:absolute;z-index:2;left:7vw;top:50%;transform:translateY(-45%);width:min(500px,42vw);padding:35px 40px;border-radius:7px 35px 7px 35px;background:rgba(12,29,35,.72);border:1px solid rgba(255,244,201,.34);box-shadow:0 24px 70px rgba(0,0,0,.38);color:#fff;backdrop-filter:blur(8px)}.post-finale h2{margin:.1em 0;font-size:clamp(44px,6vw,78px);font-weight:500;line-height:1.25}.post-finale>p:not(.eyebrow):not(.delivery-note){font-size:clamp(21px,2.5vw,33px);line-height:1.65}.post-finale .eyebrow{color:#f1d787}.delivery-note{padding-top:13px;border-top:1px solid rgba(255,255,255,.22);color:#e9e3ce}.post-finale .story-button.secondary{color:#fff;border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.1)}.post-scene.sent .post-shade{background:linear-gradient(90deg,rgba(5,19,29,.64),rgba(5,19,29,.1) 62%)}
@media(max-width:820px){.article-body{line-height:2}.article-body p{margin-bottom:1.4em}.post-scene{display:block;min-height:1280px;overflow:hidden}.post-desk{left:12px;right:12px;top:100px;transform:none;width:auto;max-height:none;padding:23px}.post-desk h1{font-size:36px}.letter-options{grid-template-columns:1fr}.post-desk .button-row .story-button,.post-desk .button-row .text-button{flex-basis:100%;text-align:center}.post-scene.sent{min-height:100dvh}.post-finale{left:14px;right:14px;top:auto;bottom:88px;transform:none;width:auto;padding:28px 25px}.post-finale h2{font-size:44px}.post-finale>p:not(.eyebrow):not(.delivery-note){font-size:22px}}

/* v25: article-first post office */
.post-desk h1{font-size:clamp(34px,3.8vw,50px);word-break:keep-all}
.post-desk{width:min(660px,53vw)}.post-featured-article{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;margin:22px 0 18px;padding:18px;border:1px solid rgba(109,76,43,.24);border-radius:16px 16px 5px 16px;background:rgba(255,252,242,.9);box-shadow:0 12px 28px rgba(73,46,24,.12)}.post-featured-article>img{width:112px;height:112px;object-fit:contain}.post-featured-article small{color:#71805f;font-weight:800}.post-featured-article h2{margin:4px 0;font-size:23px}.post-featured-article p{margin:0 0 11px;font-size:13px;line-height:1.65;color:var(--muted)}.post-featured-article .story-button{display:inline-flex}.write-letter{border-top:1px dotted var(--line);padding-top:12px}.write-letter summary{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-radius:12px;background:#e6edd7;cursor:pointer;list-style:none}.write-letter summary::-webkit-details-marker{display:none}.write-letter summary:after{content:'＋';font-size:22px}.write-letter[open] summary:after{content:'−'}.write-letter summary span{display:grid}.write-letter summary small{color:#6b7b5d}.write-letter summary b{font-size:15px}.write-letter-lead{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.map-room-links{display:grid;grid-template-columns:repeat(2,minmax(0,360px));justify-content:center;gap:14px;margin-top:18px}.map-room-links .map-room-link{width:100%;margin:0}.repayment-scene{background:#3e2d1e}.repayment-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(47,31,18,.06) 0 42%,rgba(47,31,18,.5) 73%,rgba(47,31,18,.64))}.repayment-ledger{position:absolute;z-index:2;right:clamp(18px,5vw,80px);top:50%;transform:translateY(-46%);width:min(650px,53vw);max-height:82vh;overflow:auto;padding:clamp(26px,3.5vw,46px);background:rgba(255,249,232,.96) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.72);border-radius:5px 30px 5px 30px;box-shadow:0 25px 70px rgba(34,20,11,.38)}.repayment-ledger h1{margin:0;font-size:clamp(36px,4.2vw,56px);line-height:1.35;font-weight:600}.repayment-lead{line-height:1.8;color:var(--muted)}.repayment-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0}.repayment-numbers div{display:grid;padding:12px;border:1px solid rgba(91,66,43,.2);border-radius:10px;background:rgba(249,245,229,.76)}.repayment-numbers .current{background:#e7edd9;border-color:#91a07d}.repayment-numbers small{font-size:10px;color:var(--muted)}.repayment-numbers b{margin-top:3px;font-size:21px}.repayment-route{margin:22px 0}.route-line{position:relative;height:9px;margin:0 7px 13px;border-radius:999px;background:#d8cfb8}.route-line span{display:block;height:100%;border-radius:inherit;background:#70835f}.route-line i{position:absolute;left:0;top:50%;width:21px;height:21px;border:5px solid #fff;border-radius:50%;background:#70835f;box-shadow:0 2px 8px rgba(0,0,0,.2);transform:translate(-7px,-50%)}.route-signs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.route-signs span{display:grid;padding:8px 6px;border-left:1px solid var(--line);color:#867563}.route-signs .now{color:#40513c;font-weight:800}.route-signs b{font-size:12px}.route-signs small{font-size:9px;line-height:1.4}.repayment-updated{font-size:11px;color:var(--muted)}.repayment-note{padding:12px 15px;border-left:4px solid #9d5e4f;background:rgba(155,75,65,.07);font-size:12px;line-height:1.7}.repayment-ledger .story-button{font-size:12px}
@media(max-width:820px){.post-scene{min-height:1550px}.post-featured-article{grid-template-columns:82px 1fr}.post-featured-article>img{width:76px;height:76px}.post-featured-article h2{font-size:19px}.map-room-links{grid-template-columns:1fr;width:calc(100% - 118px);margin-left:6px}.map-room-links .map-room-link{width:100%;margin:0}.repayment-scene{display:block;min-height:1120px;overflow:hidden}.repayment-ledger{left:12px;right:12px;top:92px;transform:none;width:auto;max-height:none;padding:23px}.repayment-ledger h1{font-size:36px}.repayment-numbers{grid-template-columns:1fr}.route-signs{grid-template-columns:repeat(2,1fr)}.repayment-ledger .button-row .story-button,.repayment-ledger .button-row .text-button{flex-basis:100%;text-align:center}}

/* v26: Cafe Tamarigi */
.cafe-scene{background:#3e2b1c}.cafe-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(44,28,15,.07),rgba(44,28,15,.16) 42%,rgba(44,28,15,.62) 72%,rgba(44,28,15,.7))}.cafe-card{position:absolute;z-index:2;right:clamp(18px,5vw,78px);top:50%;transform:translateY(-45%);width:min(650px,53vw);max-height:84vh;overflow:auto;padding:clamp(25px,3.5vw,44px);background:rgba(255,249,232,.96) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.74);border-radius:5px 30px 5px 30px;box-shadow:0 25px 70px rgba(34,20,11,.4)}.cafe-card h1{margin:0;font-size:clamp(35px,4.1vw,54px);line-height:1.36;font-weight:600}.cafe-dialogue{padding:12px 15px;border-left:4px solid #879a70;background:rgba(225,235,207,.58);font-size:13px;line-height:1.7}.cafe-dialogue b{display:block;color:#536449}.cafe-step{margin-top:18px}.cafe-step h2,.cafe-talk h2,.cafe-received h2,.cafe-rest h2{margin:0 0 9px;font-size:17px}.cafe-step h2 span{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:7px;border-radius:50%;background:#6f835f;color:#fff;font-size:12px}.cafe-step>p{margin:0 0 8px;color:var(--muted);font-size:11px}.cafe-choices{display:flex;flex-wrap:wrap;gap:7px}.cafe-choices button,.talk-starters button{border:1px solid rgba(91,66,43,.25);border-radius:999px;padding:8px 12px;background:#fffaf0;color:#4a382b;cursor:pointer}.cafe-choices button.selected{background:#506744;color:#fff;border-color:#506744;box-shadow:0 5px 13px rgba(64,83,54,.25)}.cafe-action,.cafe-talk,.cafe-received,.cafe-rest{margin-top:20px;padding:16px;border-top:1px dotted var(--line);background:rgba(250,246,230,.62)}.cafe-action>p{margin:0 0 12px;color:#526148}.cafe-talk label{display:grid;gap:7px;margin-top:13px;color:#637156;font-size:12px;font-weight:800}.cafe-talk textarea{width:100%;border:1px solid rgba(91,66,43,.3);border-radius:10px;background:rgba(255,254,246,.94);padding:13px 14px;color:#3c2b21;font:inherit;line-height:1.75;resize:vertical}.talk-starters{display:flex;flex-wrap:wrap;gap:6px}.talk-starters button{font-size:11px;background:#eef2e2}.safety-note{padding:10px 12px;border-radius:8px;background:#f4ead5;color:#6c5746;font-size:10px;line-height:1.6}.cafe-received h2{font-size:22px;line-height:1.6}.cafe-rest{text-align:center}.cafe-rest h2{font-size:23px}.cafe-card .story-button{font-size:12px}
@media(max-width:820px){.cafe-scene{display:block;min-height:1450px;overflow:hidden}.cafe-card{left:12px;right:12px;top:92px;transform:none;width:auto;max-height:none;padding:23px}.cafe-card h1{font-size:36px}.cafe-card .button-row .story-button,.cafe-card .button-row .text-button{flex-basis:100%;text-align:center}}

/* v27: dedicated bookshelf hall and lakeside night concert */
.shelf-scene>.scene-background{position:fixed;filter:saturate(.92) contrast(1.03);object-position:center}.shelf-scene .scene-shade{background:linear-gradient(180deg,rgba(25,22,14,.38),rgba(25,22,14,.62))}.concert-scene{background:#112522}.concert-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(8,20,19,.05) 0%,rgba(8,20,19,.12) 48%,rgba(8,20,19,.67) 74%,rgba(8,20,19,.77) 100%)}.concert-card{position:absolute;z-index:2;right:clamp(18px,5vw,78px);top:50%;transform:translateY(-45%);width:min(600px,48vw);padding:clamp(25px,3.8vw,46px);background:rgba(255,248,226,.95) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.62);border-radius:5px 30px 5px 30px;box-shadow:0 26px 72px rgba(3,12,12,.55)}.concert-card h1{margin:0;font-size:clamp(36px,4.5vw,58px);line-height:1.35;font-weight:600}.concert-lead{margin:18px 0;line-height:1.9}.concert-program{display:grid;gap:5px;margin:20px 0;padding:15px 17px;border-left:5px solid #7c956e;background:rgba(223,233,204,.58)}.concert-program span{font-size:11px;font-weight:800;letter-spacing:.15em;color:#64765b}.concert-program b{font-size:18px}.concert-program small{line-height:1.65;color:var(--muted)}.concert-volume-note{padding:11px 14px;border-radius:10px;background:rgba(28,55,49,.08);color:#50635a;font-size:12px;line-height:1.7}.concert-card .button-row{align-items:center}.concert-card .text-button{margin:0 4px}
@media(max-width:820px){.concert-scene{min-height:1050px}.concert-scene>.scene-background{height:58vh;object-position:35% center}.concert-shade{background:linear-gradient(0deg,rgba(8,20,19,.78),rgba(8,20,19,.02) 68%)}.concert-card{left:12px;right:12px;top:auto;bottom:88px;transform:none;width:auto;padding:23px}.concert-card h1{font-size:35px}.concert-card .button-row .story-button,.concert-card .button-row .text-button{flex-basis:100%;text-align:center}}
.shelf-shell{background:#fbf7ed url("assets/ui/article-paper-v1.jpg") center top/100% auto repeat-y}

/* v28: each destination gets its own illustration; Forest Shop */
.map-pin.cafe{left:4%;bottom:9%}.map-pin img{object-fit:contain}.shop-scene{background:#59452d}.shop-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(40,29,17,.08) 0 43%,rgba(40,29,17,.54) 72%,rgba(40,29,17,.7))}.shop-card{position:absolute;z-index:2;right:clamp(18px,5vw,78px);top:50%;transform:translateY(-45%);width:min(650px,52vw);max-height:84vh;overflow:auto;padding:clamp(25px,3.5vw,44px);background:rgba(255,249,232,.96) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.72);border-radius:5px 30px 5px 30px;box-shadow:0 25px 70px rgba(34,20,11,.4)}.shop-card h1{margin:0;font-size:clamp(34px,4vw,53px);line-height:1.36;font-weight:600}.shop-lead{line-height:1.85;color:var(--muted)}.shop-categories{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.shop-categories button{padding:8px 12px;border:1px solid rgba(91,66,43,.25);border-radius:999px;background:#fffaf0;color:#4a382b;cursor:pointer}.shop-categories button.selected{background:#506744;color:#fff;border-color:#506744}.shop-shelf-note{padding:15px 17px;border:1px solid rgba(91,66,43,.2);border-radius:12px;background:rgba(238,232,206,.58)}.shop-shelf-note small{color:#667757;font-weight:800}.shop-shelf-note h2{margin:5px 0 7px;font-size:20px}.shop-shelf-note p{margin:0;line-height:1.7;font-size:13px;color:var(--muted)}.shop-promise{display:grid;gap:4px;margin-top:14px;padding:11px 14px;border-left:4px solid #899b73;background:rgba(226,236,207,.48);font-size:11px;line-height:1.65}.shop-card blockquote{margin:15px 0;padding:0 0 0 14px;border-left:3px solid #c49b51;line-height:1.8;font-size:13px}.shop-card .story-button{font-size:12px}
@media(max-width:820px){.map-pin.cafe{left:3%;bottom:7%}.shop-scene{min-height:1240px}.shop-scene>.scene-background{height:58vh;object-position:35% center}.shop-shade{background:linear-gradient(0deg,rgba(40,29,17,.78),rgba(40,29,17,.02) 68%)}.shop-card{left:12px;right:12px;top:auto;bottom:88px;transform:none;width:auto;max-height:none;padding:23px}.shop-card h1{font-size:34px}.shop-card .button-row .story-button{flex-basis:100%;text-align:center}}

/* v29: the small nighttime meal room behind Cafe Tamarigi */
.map-pin.meal{left:37%;bottom:5%}.meal-scene{background:#122520}.meal-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(7,17,15,.04) 0 45%,rgba(7,17,15,.5) 70%,rgba(7,17,15,.76) 100%)}.meal-card{position:absolute;z-index:2;right:clamp(18px,5vw,76px);top:50%;transform:translateY(-45%);width:min(650px,51vw);max-height:85vh;overflow:auto;padding:clamp(25px,3.5vw,44px);background:rgba(255,248,226,.96) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.65);border-radius:5px 30px 5px 30px;box-shadow:0 27px 76px rgba(2,12,10,.56)}.meal-card h1{margin:0;font-size:clamp(36px,4.3vw,56px);line-height:1.35;font-weight:600}.meal-lead{line-height:1.85;color:var(--muted)}.meal-origin{margin:17px 0;padding:13px 16px;border-left:4px solid #a67b43;background:rgba(238,225,190,.58)}.meal-origin b{font-size:12px;color:#6d583d}.meal-origin p{margin:5px 0 0;font-size:12px;line-height:1.75}.meal-choices{display:flex;flex-wrap:wrap;gap:8px}.meal-choices button{flex:1 1 145px;padding:10px 12px;border:1px solid rgba(90,64,39,.26);border-radius:999px;background:#fffaf0;color:#49372a;cursor:pointer}.meal-choices button.selected{background:#536c59;color:#fff;border-color:#536c59}.meal-response{margin-top:13px;padding:13px 16px;border-radius:12px;background:rgba(220,233,204,.58)}.meal-response small{font-weight:800;color:#637455}.meal-response h2{margin:4px 0;font-size:19px}.meal-response p{margin:0;font-size:12px;line-height:1.65}.meal-ledger{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;margin:15px 0;padding:14px 15px;border:1px solid rgba(86,58,36,.2);border-radius:12px;background:rgba(248,243,226,.82)}.meal-ledger span{display:grid}.meal-ledger small{color:#6b795e}.meal-ledger b{font-size:20px}.meal-ledger em{font-size:10px;font-style:normal;color:var(--muted)}.meal-ledger .story-button{font-size:11px}.meal-card .button-row{align-items:center}.meal-card .text-button{margin:0 4px}
@media(max-width:820px){.map-pin.meal{left:39%;bottom:2%}.meal-scene{min-height:1460px}.meal-scene>.scene-background{height:58vh;object-position:36% center}.meal-shade{background:linear-gradient(0deg,rgba(7,17,15,.8),rgba(7,17,15,.02) 68%)}.meal-card{left:12px;right:12px;top:calc(58vh - 24px);bottom:auto;transform:none;width:auto;max-height:none;padding:23px}.meal-card h1{font-size:35px}.meal-ledger{grid-template-columns:1fr}.meal-card .button-row .story-button,.meal-card .button-row .text-button{flex-basis:100%;text-align:center}}

/* v30: rain-sound hut, intentionally untracked rest */
.map-pin.rainhut{left:19%;top:52%}.rainhut-scene{background:#172824}.rainhut-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(7,18,16,.05) 0 45%,rgba(7,18,16,.5) 70%,rgba(7,18,16,.78) 100%)}.rainhut-card{position:absolute;z-index:2;right:clamp(18px,5vw,76px);top:50%;transform:translateY(-45%);width:min(610px,49vw);max-height:84vh;overflow:auto;padding:clamp(25px,3.5vw,44px);background:rgba(250,247,231,.95) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.6);border-radius:5px 30px 5px 30px;box-shadow:0 28px 78px rgba(2,12,10,.58)}.rainhut-card h1{margin:0;font-size:clamp(36px,4.2vw,55px);line-height:1.36;font-weight:600}.rainhut-lead{line-height:1.9;color:var(--muted)}.rainhut-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.rainhut-actions button{padding:11px 13px;border:1px solid rgba(76,69,53,.25);border-radius:12px;background:rgba(255,252,241,.94);text-align:left;cursor:pointer}.rainhut-actions button.selected{background:#405f55;color:#fff;border-color:#405f55}.rainhut-response{padding:14px 16px;border-left:4px solid #769089;background:rgba(215,230,222,.58)}.rainhut-response h2{margin:0 0 5px;font-size:19px}.rainhut-response p{margin:0;font-size:12px;line-height:1.7;color:#5f6e68}.rainhut-note{font-size:11px;line-height:1.7;color:var(--muted)}.rainhut-card .button-row{align-items:center}.rainhut-card .text-button{margin:0 4px}.support-drawer{margin-top:15px;padding-top:12px;border-top:1px dotted var(--line);font-size:11px}.support-drawer summary{cursor:pointer;color:#5f6f65;font-weight:800}.support-drawer p{padding:10px 12px;border-radius:8px;background:#f1e8d6;line-height:1.65}
@media(max-width:820px){.map-pin.rainhut{left:18%;top:51%}.rainhut-scene{min-height:1260px}.rainhut-scene>.scene-background{height:58vh;object-position:38% center}.rainhut-shade{background:linear-gradient(0deg,rgba(7,18,16,.82),rgba(7,18,16,.02) 68%)}.rainhut-card{left:12px;right:12px;top:calc(58vh - 24px);bottom:auto;transform:none;width:auto;max-height:none;padding:23px}.rainhut-card h1{font-size:34px}.rainhut-actions{grid-template-columns:1fr}.rainhut-card .button-row .story-button,.rainhut-card .button-row .text-button{flex-basis:100%;text-align:center}}

/* v31: the closed attic archive door */
.attic-door-link{display:grid;grid-template-columns:86px 1fr;align-items:center;gap:12px;margin:18px 0;padding:8px 14px 8px 8px;border:1px solid rgba(87,61,39,.22);border-radius:14px;background:rgba(242,233,205,.68);color:inherit;text-decoration:none;transition:.2s transform,.2s box-shadow}.attic-door-link:hover,.attic-door-link:focus-visible{transform:translateY(-3px);box-shadow:0 10px 22px rgba(60,39,22,.16)}.attic-door-link img{width:86px;height:72px;object-fit:contain}.attic-door-link span{display:grid}.attic-door-link small{color:#708060}.attic-door-link b{margin:2px 0;font-size:15px}.attic-door-link em{font-size:11px;font-style:normal;color:var(--muted)}.atticdoor-scene{background:#59452d}.atticdoor-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(48,32,18,.05) 0 45%,rgba(48,32,18,.42) 67%,rgba(48,32,18,.62) 100%)}.atticdoor-card{position:absolute;z-index:2;right:clamp(18px,5vw,78px);top:50%;transform:translateY(-45%);width:min(590px,47vw);padding:clamp(25px,3.6vw,46px);background:rgba(255,249,232,.95) url("assets/ui/article-paper-v1.jpg") center top/100% auto;border:1px solid rgba(255,255,255,.68);border-radius:5px 30px 5px 30px;box-shadow:0 26px 72px rgba(35,21,10,.42)}.atticdoor-card h1{margin:0;font-size:clamp(35px,4.3vw,56px);line-height:1.36;font-weight:600}.atticdoor-card>p:not(.eyebrow){line-height:1.9;color:var(--muted)}.door-state{display:grid;gap:7px;margin:20px 0;padding:15px 17px;border-left:5px solid #9a7a50;background:rgba(231,220,188,.58)}.door-state b{font-size:18px}.door-state span{font-size:12px;line-height:1.75}.door-whisper{font-size:12px}.atticdoor-card .button-row{align-items:center}.atticdoor-card .text-button{margin:0 4px}
@media(max-width:820px){.attic-door-link{grid-template-columns:72px 1fr}.attic-door-link img{width:72px;height:62px}.atticdoor-scene{min-height:1050px}.atticdoor-scene>.scene-background{height:60vh;object-position:30% center}.atticdoor-shade{background:linear-gradient(0deg,rgba(48,32,18,.78),rgba(48,32,18,.02) 68%)}.atticdoor-card{left:12px;right:12px;top:calc(58vh - 20px);bottom:auto;transform:none;width:auto;padding:23px}.atticdoor-card h1{font-size:34px}.atticdoor-card .button-row .story-button,.atticdoor-card .button-row .text-button{flex-basis:100%;text-align:center}}

/* WordPress standalone shell */
body.kara-no-mori-page{margin:0;padding:0;overflow-x:hidden}
body.admin-bar .forest-header{top:32px}
@media(max-width:782px){body.admin-bar .forest-header{top:46px}}

/* v33: shared paper, header tools, book-like shelf, and the letter path */
.header-left{display:flex;align-items:center;gap:18px;pointer-events:auto}.forest-quick-nav{display:flex;align-items:center;gap:8px}.header-tool{display:flex;align-items:center;gap:7px;min-height:44px;padding:5px 12px 5px 6px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(34,52,39,.68);color:#fff;text-decoration:none;text-shadow:0 2px 8px rgba(0,0,0,.45);box-shadow:0 6px 18px rgba(18,28,21,.16);cursor:pointer;backdrop-filter:blur(8px)}.header-tool img{width:36px;height:36px;border-radius:50%;object-fit:cover}.header-tool:hover,.header-tool:focus-visible{background:rgba(255,250,235,.92);color:var(--ink);text-shadow:none;transform:translateY(-1px)}

.story-panel,.dialogue-card,.paper-scene .map-heading,.paper-scene .map-note,.map-room-link,.profile-book,.atticdoor-card,.zukan-shell,.post-desk,.repayment-ledger,.shop-card,.cafe-card,.meal-card,.rainhut-card,.concert-card,.shelf-shell,.satchel-panel{background:linear-gradient(rgba(255,250,238,.84),rgba(248,236,208,.84)),url("assets/ui/article-paper-v1.jpg") center/cover fixed;border-color:rgba(255,255,255,.62);backdrop-filter:blur(4px)}.profile-book{background:linear-gradient(rgba(255,250,238,.78),rgba(248,236,208,.78)),url("assets/ui/article-paper-v1.jpg") center/cover fixed}.profile-facts div,.profile-book blockquote{background:rgba(255,251,239,.32)}

.profile-record-link,.attic-door-link{display:grid;grid-template-columns:88px 1fr;align-items:center;gap:10px;margin:14px 0;padding:10px;border:1px solid rgba(83,52,27,.28);border-radius:15px 15px 5px 15px;background:rgba(255,252,241,.58);color:inherit;text-decoration:none;transition:.2s transform,.2s background}.profile-record-link:hover,.profile-record-link:focus-visible,.attic-door-link:hover,.attic-door-link:focus-visible{transform:translateY(-2px);background:rgba(255,255,250,.82)}.profile-record-link img,.attic-door-link img{width:82px;height:70px;object-fit:contain}.profile-record-link span,.attic-door-link span{display:grid}.profile-record-link small,.profile-record-link em,.attic-door-link small,.attic-door-link em{font-size:11px;color:var(--muted);font-style:normal}.profile-record-link b,.attic-door-link b{margin:2px 0;font-size:16px}

.reader-scene{padding-top:105px}.reader-paper{background:linear-gradient(rgba(255,250,240,.86),rgba(248,238,214,.86)),url("assets/ui/article-paper-v1.jpg") center top/720px auto fixed;border-color:rgba(255,255,255,.62);backdrop-filter:blur(4px)}.toc{display:block!important;background:rgba(236,226,197,.58)}.toc-empty{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.article-body p{margin-bottom:1.35em}

.book-grid{gap:30px 27px;padding:12px 12px 24px}.book-card{grid-template-rows:165px 1fr;min-height:350px;margin:0 10px 15px 0;border:2px solid rgba(74,47,27,.42);border-left:11px solid #73503a;border-radius:5px 13px 13px 5px;background:#fdf7e8;overflow:visible;box-shadow:5px 3px 0 #aa8b65,9px 7px 0 #e8dcc0,14px 15px 25px rgba(43,29,18,.28);transform:perspective(900px) rotateY(-2deg);transform-origin:left center}.book-card:before{content:"";position:absolute;z-index:3;left:-9px;top:5px;bottom:5px;width:7px;border-radius:4px 0 0 4px;background:linear-gradient(90deg,#4e3327,#8d6750 45%,#5e3e2d)}.book-card:after{content:"";position:absolute;z-index:-1;left:8px;right:-9px;bottom:-9px;height:12px;border:1px solid rgba(85,61,39,.25);border-radius:0 0 8px 3px;background:repeating-linear-gradient(0deg,#efe4ca 0 2px,#cdbd9a 2px 3px)}.book-card:hover,.book-card:focus-visible{transform:perspective(900px) rotateY(0) translateY(-7px);box-shadow:4px 3px 0 #aa8b65,8px 7px 0 #e8dcc0,15px 22px 34px rgba(43,29,18,.34)}.book-card>img{border-radius:2px 10px 0 0}.book-copy{position:relative;border-radius:0 0 10px 0;background:linear-gradient(rgba(255,251,239,.84),rgba(247,237,211,.92)),url("assets/ui/article-paper-v1.jpg") center/cover}.book-copy:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:rgba(91,58,36,.18)}

.letterpath-scene{background:#10202c}.letterpath-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(4,17,27,.66),rgba(4,17,27,.08) 64%)}.letterpath-scene .post-finale{display:block}.map-room-links.single{grid-template-columns:minmax(0,360px)}

@media(max-width:820px){.forest-header{height:auto;min-height:66px;align-items:flex-start}.header-left{width:100%;gap:7px}.brand{flex:1;min-width:0}.brand small{display:none}.forest-quick-nav{gap:5px}.header-tool{padding:4px 8px 4px 4px;font-size:10px}.header-tool img{width:30px;height:30px}.reader-scene{padding-top:88px}.book-grid{gap:22px;padding:8px 5px 20px}.book-card{grid-template-columns:112px 1fr;grid-template-rows:1fr;min-height:190px;margin-right:8px}.book-card>img{border-radius:2px 0 0 2px}.profile-record-link,.attic-door-link{grid-template-columns:70px 1fr}.profile-record-link img,.attic-door-link img{width:66px;height:60px}.letterpath-scene .post-finale{left:14px;right:14px;bottom:88px;width:auto}.map-room-links.single{width:calc(100% - 118px)}}

/* WordPress articles remain inside the forest reader */
.article-body img{display:block;max-width:100%;height:auto;margin:28px auto;border-radius:8px;box-shadow:0 10px 28px rgba(59,42,28,.12)}
.article-body figure{max-width:100%;margin:38px auto}
.article-body figcaption{text-align:center;color:var(--muted);font-size:12px;line-height:1.7}
.article-body a{color:#49664c;text-decoration-thickness:1px;text-underline-offset:4px}
.article-body .wp-block-image,.article-body .wp-block-gallery,.article-body .wp-block-embed{margin:42px 0}
.article-body iframe{display:block;max-width:100%;margin:28px auto;border:0}
.article-body>*:first-child{margin-top:0}
.reader-paper.letter-reading{background-color:#fbf2df;border-color:rgba(137,99,55,.34);box-shadow:0 0 100px 22px rgba(236,194,112,.2),0 30px 80px rgba(0,0,0,.35)}
.reader-paper.letter-reading .article-head{border-bottom-color:rgba(137,99,55,.28)}
.reader-paper.letter-reading .toc{background:rgba(218,196,154,.28);border-left-color:#a47749}
.article-head h1.long-title{font-size:clamp(27px,3.2vw,39px);line-height:1.48;letter-spacing:.025em}

/* v34: an always-visible path back to the outside world */
.header-right{display:flex;align-items:center;gap:13px;pointer-events:auto}.forest-exit-button{min-height:39px;padding:8px 15px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(93,64,42,.78);color:#fffaf0;box-shadow:0 6px 18px rgba(18,28,21,.2);font-size:12px;font-weight:800;letter-spacing:.08em;text-shadow:0 2px 7px rgba(0,0,0,.35);cursor:pointer;backdrop-filter:blur(8px);transition:.2s transform,.2s background}.forest-exit-button:hover,.forest-exit-button:focus-visible{transform:translateY(-2px);background:rgba(255,249,232,.96);color:var(--ink);text-shadow:none;outline:3px solid rgba(247,215,125,.7);outline-offset:2px}.exit-dialog[hidden]{display:none}.exit-dialog{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:22px}.exit-dialog-shade{position:absolute;inset:0;background:rgba(10,25,19,.76);backdrop-filter:blur(5px);animation:forest-exit-shade .28s ease both}.exit-card{position:relative;z-index:1;display:grid;grid-template-columns:180px 1fr;align-items:center;gap:25px;width:min(650px,100%);padding:28px 34px 28px 24px;background:linear-gradient(rgba(255,250,238,.94),rgba(248,236,208,.94)),url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,255,255,.7);border-radius:5px 30px 5px 30px;box-shadow:0 30px 90px rgba(0,0,0,.48);animation:forest-exit-card .35s ease both}.exit-card>img{width:100%;max-height:240px;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(35,27,17,.2))}.exit-card h2{margin:0;font-size:clamp(25px,4vw,39px);line-height:1.45;font-weight:600}.exit-card>div>p:not(.eyebrow){margin:13px 0 19px;line-height:1.8}.exit-card .story-button{font-size:12px}.exit-card button.story-button{font-family:inherit}.exit-dialog-open{overflow:hidden}.forest-leaving .app{opacity:0;filter:brightness(.65);transition:.52s opacity,.52s filter}@keyframes forest-exit-shade{from{opacity:0}to{opacity:1}}@keyframes forest-exit-card{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:820px){.forest-header{align-items:center}.header-left{width:auto;flex:1;min-width:0}.header-right{flex:0 0 auto}.forest-exit-button{min-height:36px;padding:7px 10px;font-size:10px}.exit-dialog{padding:14px}.exit-card{grid-template-columns:92px 1fr;gap:13px;padding:22px 18px 22px 14px}.exit-card h2{font-size:24px}.exit-card>div>p:not(.eyebrow){font-size:12px}.exit-card .button-row{display:grid}.exit-card .story-button{width:100%}}

/* v40: the residents keep living while visitors walk through the forest */
[data-resident]{cursor:pointer;transform-origin:50% 100%;animation:resident-breathe 4.8s ease-in-out infinite;will-change:transform}.scene.scene-entering .tamagorou,.scene.scene-entering .profile-character{animation:resident-arrive .9s cubic-bezier(.2,.8,.24,1) both,resident-breathe 4.8s .9s ease-in-out infinite}.resident-status{position:fixed;z-index:62;left:16px;bottom:14px;display:grid;grid-template-columns:82px 1fr;align-items:center;width:min(340px,calc(100% - 32px));padding:8px 13px 8px 7px;border:1px solid rgba(255,255,255,.7);border-radius:18px 18px 5px 18px;background:linear-gradient(rgba(255,250,238,.94),rgba(248,236,208,.94)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 16px 42px rgba(19,27,20,.28);transition:.25s transform,.25s opacity}.resident-status-toggle{display:grid;place-items:center;width:76px;height:76px;padding:0;border:0;border-radius:50%;background:rgba(226,218,187,.55);cursor:pointer}.resident-status-toggle img{width:70px;height:70px;object-fit:contain;filter:drop-shadow(0 6px 7px rgba(56,38,23,.2));transform-origin:50% 100%;animation:resident-breathe 4.8s ease-in-out infinite}.resident-status-copy{display:grid;gap:2px;min-width:0}.resident-status-copy small{font-size:9px;font-weight:800;letter-spacing:.08em;color:#6d805d}.resident-status-copy b{font-size:13px;line-height:1.45}.resident-status-copy span{font-size:10px;line-height:1.45;color:var(--muted)}.resident-snack{justify-self:start;margin-top:5px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:#fff8df;font-size:10px;font-weight:800;cursor:pointer}.resident-status-copy em{font-size:9px;font-style:normal;color:#8c6742}.app[data-scene="reader"] .resident-status{transform:translateY(calc(100% - 48px));opacity:.82}.app[data-scene="reader"] .resident-status:hover,.app[data-scene="reader"] .resident-status:focus-within{transform:none;opacity:1}.forest-flyby{position:fixed;z-index:58;left:-150px;top:18vh;width:94px;height:74px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 7px 8px rgba(23,35,24,.28));opacity:0}.forest-flyby.flying{animation:fumi-cross 8s ease-in-out both}.resident-speech{position:fixed;z-index:90;left:50%;bottom:118px;display:grid;gap:2px;width:min(440px,calc(100% - 30px));padding:12px 18px;border:1px solid rgba(255,255,255,.7);border-radius:18px 18px 4px 18px;background:rgba(255,250,238,.97);box-shadow:0 14px 34px rgba(20,29,20,.3);transform:translateX(-50%);animation:resident-talk .28s ease both}.resident-speech[hidden]{display:none}.resident-speech b{font-size:10px;letter-spacing:.1em;color:#6c805c}.resident-speech span{font-size:13px;line-height:1.7}.app[data-time="night"] .resident-status{background:linear-gradient(rgba(43,55,51,.95),rgba(32,45,42,.95)),url("assets/ui/article-paper-v1.jpg") center/cover;color:#fff8e7;border-color:rgba(255,226,145,.45)}.app[data-time="night"] .resident-status-copy span,.app[data-time="night"] .resident-status-copy em{color:#d9d3c3}.app[data-time="night"] .resident-snack{background:#f5d47c;color:#3d2a1f}
@keyframes resident-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.008)}}@keyframes resident-arrive{from{opacity:0;transform:translateX(90px) translateY(8px)}to{opacity:1;transform:none}}@keyframes fumi-cross{0%{opacity:0;transform:translate(-20px,16px) rotate(-5deg)}8%{opacity:1}48%{transform:translate(52vw,-18px) rotate(4deg)}92%{opacity:1}100%{opacity:0;transform:translate(calc(100vw + 190px),8px) rotate(-2deg)}}@keyframes resident-talk{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:820px){.resident-status{left:8px;bottom:8px;display:block;width:76px;padding:4px;border-radius:50%}.resident-status-toggle{width:66px;height:66px}.resident-status-toggle img{width:61px;height:61px}.resident-status-copy{display:none}.resident-status.open{width:min(330px,calc(100% - 16px));padding:8px 12px 10px 78px;border-radius:18px 18px 5px 18px}.resident-status.open .resident-status-toggle{position:absolute;left:7px;top:8px}.resident-status.open .resident-status-copy{display:grid}.app[data-scene="reader"] .resident-status{transform:none}.forest-flyby{width:72px}.resident-speech{bottom:90px}.forest-header+.resident-speech{bottom:90px}}
@media(prefers-reduced-motion:reduce){[data-resident],.resident-status-toggle img{animation:none!important}.forest-flyby{display:none}.scene.scene-entering .tamagorou,.scene.scene-entering .profile-character{animation:none!important}}

/* v41: a small path guide and the first two chapters of the visit */
.forest-route-strip{position:absolute;z-index:2;left:50%;top:68px;display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 40px);padding:7px 10px;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(255,250,238,.9);box-shadow:0 9px 24px rgba(24,37,27,.2);color:#4d654e;pointer-events:auto;transform:translateX(-50%);backdrop-filter:blur(10px)}.forest-route-strip a{display:block;padding:6px 9px;border-radius:999px;color:inherit;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:800;letter-spacing:.03em;text-decoration:none;white-space:nowrap;transition:.18s background,.18s color,.18s transform}.forest-route-strip a:hover,.forest-route-strip a:focus-visible{background:#e8eedc;color:#2f4d36;transform:translateY(-1px)}.forest-route-strip a.current{background:#4f6f55;color:#fff;box-shadow:0 4px 12px rgba(48,75,53,.18)}.forest-route-strip i{width:12px;height:4px;border-radius:99px;background:#bca98c;opacity:.8}.forest-route-strip .route-expand{margin-left:4px;padding-inline:13px;border:1px solid rgba(80,104,77,.24);background:#fff9ea;color:#4f694f}.forest-route-strip .route-expand:before{content:"＋";margin-right:4px;font-weight:900}

.welcome-scene{background:#bfd3c0}.welcome-shade{background:linear-gradient(90deg,rgba(255,250,235,.96) 0%,rgba(255,250,235,.76) 44%,rgba(255,250,235,.04) 71%)}.welcome-copy{top:54%;width:min(580px,calc(100% - 40px));background:rgba(255,251,240,.86);backdrop-filter:blur(5px)}.welcome-copy h1{font-size:clamp(39px,5vw,66px)}.welcome-copy>p:not(.eyebrow){margin:17px 0;line-height:1.92}.welcome-copy .welcome-note{padding-top:14px;border-top:1px solid rgba(87,66,43,.18);font-size:14px}.welcome-copy .button-row{margin-top:24px}.welcome-scene .tamagorou.welcome{right:clamp(2%,8vw,12%);bottom:0;height:min(67vh,700px)}

.beginning-scene{min-height:100dvh;background:#efe6c9;overflow:auto}.beginning-shade{position:fixed;z-index:1;inset:0;background:linear-gradient(90deg,rgba(255,252,242,.99) 0%,rgba(255,252,242,.93) 32%,rgba(255,252,242,.55) 52%,rgba(255,252,242,.04) 75%)}.beginning-character{position:fixed;z-index:3;right:clamp(2%,5vw,8%);bottom:1%;width:min(28vw,430px);max-height:63vh;object-fit:contain;filter:drop-shadow(0 18px 25px rgba(55,39,22,.22));transform-origin:50% 100%}.beginning-paper{position:relative;z-index:2;width:min(760px,57vw);min-height:100dvh;margin:0;padding:150px 4vw 80px clamp(30px,6vw,105px);background:linear-gradient(90deg,rgba(255,252,243,.98),rgba(255,252,243,.91) 78%,rgba(255,252,243,0));box-shadow:none}.beginning-paper h1{margin:0;font-size:clamp(32px,4.2vw,54px);font-weight:600;letter-spacing:.05em}.beginning-tale{margin:22px 0;line-height:1.9}.old-volume{position:relative;margin:26px 0;padding:24px 28px;border-left:8px solid #cfb78f;border-radius:5px 22px 5px 22px;background:rgba(246,230,190,.72);box-shadow:0 13px 28px rgba(88,62,34,.14);overflow:hidden}.old-volume:after{content:"";position:absolute;right:-52px;top:-62px;width:170px;height:170px;border:3px solid rgba(151,119,72,.16);border-radius:50%}.old-volume h2{position:relative;z-index:1;margin:0 0 14px;font-size:20px;font-weight:700;letter-spacing:.05em}.old-volume ol{position:relative;z-index:1;margin:0;padding-left:1.5em}.old-volume li{margin:.5em 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:13px;line-height:1.75}.beginning-paper blockquote{margin:25px 0;padding:5px 0 5px 18px;border-left:4px solid #e5bf5b;font-size:15px;font-weight:700;line-height:2}.beginning-paper .button-row{align-items:center}.beginning-paper .text-button.compact{margin:0 5px}.beginning-scene.scene-entering .beginning-paper{animation:beginning-page-in .55s ease both}.beginning-scene.scene-entering .beginning-character{animation:resident-arrive .9s .12s cubic-bezier(.2,.8,.24,1) both,resident-breathe 4.8s 1s ease-in-out infinite}.beginning-scene.scene-entering .old-volume{animation:old-volume-in .6s .25s ease both}@keyframes beginning-page-in{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}@keyframes old-volume-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.paper-scene,.shelf-scene{padding-top:132px}.reader-scene{padding-top:132px}

@media(max-width:980px){.forest-route-strip{left:14px;right:14px;max-width:none;width:auto;justify-content:flex-start;overflow-x:auto;transform:none;scrollbar-width:none}.forest-route-strip::-webkit-scrollbar{display:none}.forest-route-strip i{flex:0 0 10px}.beginning-paper{width:min(680px,70vw);padding-left:40px}.beginning-character{right:1%;width:31vw}}
@media(max-width:820px){.forest-route-strip{top:66px;left:8px;right:8px;padding:6px 8px;border-radius:15px}.forest-route-strip a{padding:6px 8px;font-size:10px}.forest-route-strip .route-expand{position:sticky;right:0;box-shadow:-12px 0 14px rgba(255,250,238,.92)}.welcome-scene{min-height:1120px}.welcome-scene>.scene-background{height:62vh;object-position:61% center}.welcome-shade{height:62vh;background:linear-gradient(0deg,rgba(255,250,235,.94),rgba(255,250,235,.02) 63%)}.welcome-scene .tamagorou.welcome{right:0;bottom:auto;top:22vh;height:43vh}.welcome-copy{left:12px;right:12px;top:calc(58vh - 5px);width:auto;transform:none;padding:26px 23px}.welcome-copy h1{font-size:39px}.welcome-copy .button-row .story-button{flex:1 1 100%;text-align:center}.beginning-scene{min-height:1350px}.beginning-scene>.scene-background{position:absolute;height:62vh;object-position:67% center}.beginning-shade{position:absolute;height:67vh;background:linear-gradient(0deg,rgba(255,252,242,.96),rgba(255,252,242,.04) 68%)}.beginning-character{position:absolute;right:0;top:25vh;bottom:auto;width:44vw;max-height:39vh}.beginning-paper{width:auto;min-height:auto;margin-top:55vh;padding:72px 20px 100px;background:linear-gradient(rgba(255,252,243,.96),rgba(248,238,213,.98)),url("assets/ui/article-paper-v1.jpg") center/cover}.beginning-paper h1{font-size:36px}.old-volume{padding:20px 18px}.beginning-paper .button-row .story-button,.beginning-paper .button-row .text-button{flex:1 1 100%;text-align:center}.paper-scene,.shelf-scene,.reader-scene{padding-top:128px}}
@media(prefers-reduced-motion:reduce){.beginning-scene.scene-entering .beginning-paper,.beginning-scene.scene-entering .beginning-character,.beginning-scene.scene-entering .old-volume{animation:none!important}}

/* v42: welcome and the first volume now form one continuous page */
.forest-route-strip{overflow-x:auto;scrollbar-width:none}.forest-route-strip::-webkit-scrollbar{display:none}.forest-route-strip>a,.forest-route-strip>i{flex:0 0 auto}.forest-route-strip .route-expand{position:sticky;right:0;box-shadow:-14px 0 16px rgba(255,250,238,.94)}
.welcome-scene{min-height:200dvh;overflow:visible}.welcome-chapter{position:relative;min-height:100dvh;overflow:hidden}.welcome-beginning{background:#efe6c9}.welcome-beginning .beginning-shade,.welcome-beginning .beginning-character{position:absolute}.welcome-beginning .beginning-shade{inset:0}.welcome-beginning .beginning-character{right:clamp(2%,5vw,8%);bottom:1%;top:auto}.welcome-beginning .beginning-paper{min-height:100dvh}.beginning-paper h2{margin:0;font-size:clamp(32px,4.2vw,54px);font-weight:600;letter-spacing:.05em}.old-volume h3{position:relative;z-index:1;margin:0 0 14px;font-size:20px;font-weight:700;letter-spacing:.05em}.welcome-scene.scene-entering .welcome-beginning .beginning-paper{animation:beginning-page-in .55s .15s ease both}.welcome-scene.scene-entering .welcome-beginning .beginning-character{animation:resident-breathe 4.8s ease-in-out infinite}.welcome-scene.scene-entering .welcome-beginning .old-volume{animation:old-volume-in .6s .25s ease both}
@media(max-width:820px){.welcome-scene{min-height:2470px}.welcome-chapter.welcome-arrival{min-height:1120px}.welcome-chapter.welcome-beginning{min-height:1350px}.welcome-beginning>.scene-background{position:absolute;height:62vh;object-position:67% center}.welcome-beginning .beginning-shade{height:67vh;background:linear-gradient(0deg,rgba(255,252,242,.96),rgba(255,252,242,.04) 68%)}.welcome-beginning .beginning-character{right:0;top:25vh;bottom:auto;width:44vw;max-height:39vh}.welcome-beginning .beginning-paper{width:auto;min-height:auto;margin-top:55vh;padding:72px 20px 100px;background:linear-gradient(rgba(255,252,243,.96),rgba(248,238,213,.98)),url("assets/ui/article-paper-v1.jpg") center/cover}.beginning-paper h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.welcome-scene.scene-entering .welcome-beginning .beginning-paper,.welcome-scene.scene-entering .welcome-beginning .beginning-character,.welcome-scene.scene-entering .welcome-beginning .old-volume{animation:none!important}}

/* v43: the two paintings dissolve into the same soft paper-white light */
.welcome-arrival:after{content:"";position:absolute;z-index:8;left:0;right:0;bottom:-1px;height:210px;background:linear-gradient(180deg,rgba(251,245,232,0),rgba(251,245,232,.6) 46%,rgba(251,245,232,.94) 78%,#fbf5e8);pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.welcome-beginning{margin-top:-1px}.welcome-beginning:before{content:"";position:absolute;z-index:4;left:0;right:0;top:0;height:210px;background:linear-gradient(180deg,#fbf5e8 0%,rgba(251,245,232,.94) 23%,rgba(251,245,232,.55) 58%,rgba(251,245,232,0) 100%);pointer-events:none;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.welcome-beginning .beginning-paper,.welcome-beginning .beginning-character{z-index:5}.welcome-beginning .beginning-paper{background:linear-gradient(90deg,rgba(255,252,243,.98),rgba(255,252,243,.9) 72%,rgba(255,252,243,0)),linear-gradient(180deg,#fbf5e8 0,rgba(251,245,232,0) 120px)}
@media(max-width:820px){.welcome-arrival:after{height:170px}.welcome-beginning:before{height:180px}.welcome-beginning .beginning-paper{background:linear-gradient(180deg,#fbf5e8 0,rgba(255,252,243,.96) 90px,rgba(248,238,213,.98) 100%),url("assets/ui/article-paper-v1.jpg") center/cover}}

/* v44: restore the loved first-visit chapters from the former library */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.welcome-scene{display:flex;flex-direction:column;background:#fbf5e8}.welcome-arrival{order:1}.archive-chapter{order:2}.welcome-beginning{order:3}.guide-chapter{order:4}.welcome-chapter{flex:0 0 auto;min-height:max(820px,100dvh);background:#fbf5e8}.welcome-chapter>.scene-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.legacy-white-fade,.chapter-side-fade{position:absolute;z-index:1;inset:0;pointer-events:none}.legacy-white-fade.from-left{background:linear-gradient(90deg,rgba(255,251,240,.97) 0%,rgba(255,251,240,.92) 39%,rgba(255,251,240,.55) 58%,rgba(255,251,240,0) 78%)}.chapter-side-fade.from-right{background:linear-gradient(270deg,rgba(255,251,240,.98) 0%,rgba(255,251,240,.94) 43%,rgba(255,251,240,.64) 58%,rgba(255,251,240,0) 76%)}.welcome-chapter:after{content:"";position:absolute;z-index:7;left:0;right:0;bottom:-1px;height:125px;background:linear-gradient(transparent,#fbf5e8);pointer-events:none}.welcome-chapter+.welcome-chapter:before{content:"";position:absolute;z-index:7;left:0;right:0;top:0;height:125px;background:linear-gradient(#fbf5e8,transparent);pointer-events:none}
.legacy-welcome-inner{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);align-items:center;gap:30px;width:min(1400px,100%);min-height:max(820px,100dvh);margin:auto;padding:135px clamp(34px,7vw,120px) 120px}.legacy-welcome-copy{max-width:720px}.chapter-label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 25px;padding:9px 20px 9px 13px;border-radius:999px;background:rgba(255,253,247,.95);box-shadow:0 6px 16px rgba(40,25,10,.12);font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700;color:#476a4d}.chapter-label:before{content:"";width:20px;height:12px;border-radius:100% 0 100% 0;background:#6f9b57}.chapter-label small{font-size:13px;letter-spacing:.13em}.chapter-label span{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(18px,2vw,27px);letter-spacing:.04em;color:var(--ink)}.legacy-welcome-copy h1{margin:0;font-size:clamp(48px,6vw,84px);line-height:1.42;font-weight:600;letter-spacing:.05em}.legacy-welcome-copy mark{background:linear-gradient(transparent 72%,#f5d36f 72% 94%,transparent 94%);color:inherit}.legacy-about{max-width:720px;margin:34px 0 22px;font-size:clamp(17px,1.55vw,23px);font-weight:700;line-height:2}.legacy-sub{max-width:680px;font-size:15px;line-height:2}.legacy-welcome-stage{position:relative;align-self:stretch}.welcome-arrival .tamagorou.welcome{right:2%;bottom:7%;height:min(66vh,700px)}.legacy-season{position:absolute;z-index:4;right:6%;top:22%;padding:12px 22px;border:2px solid #8b6543;border-radius:14px;background:#f7deb7;font-weight:800;transform:rotate(-2deg)}.legacy-welcome-line{position:absolute;z-index:5;left:clamp(30px,7vw,120px);bottom:55px;display:flex;align-items:center;gap:14px;max-width:900px;margin:0;padding:15px 24px;border-radius:19px;background:rgba(255,253,247,.93);box-shadow:0 8px 24px rgba(49,33,20,.14);font-weight:700;line-height:1.7}.legacy-welcome-line img{width:46px;height:46px}.legacy-welcome-line small{font-weight:400;color:var(--muted)}
.welcome-info-card{position:relative;z-index:3;width:min(760px,52vw);min-height:100%;margin-left:auto;padding:150px clamp(35px,6vw,95px) 130px 45px}.welcome-info-card h2{margin:38px 0 28px;font-size:clamp(36px,4vw,60px);line-height:1.5;font-weight:600}.chapter-tale{font-size:15px;font-weight:700;line-height:1.9}.archive-character,.guide-character{position:absolute;z-index:4;left:clamp(30px,7vw,110px);bottom:70px;width:min(27vw,430px);max-height:58vh;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(54,36,20,.2));transform-origin:50% 100%}.guide-character{width:min(24vw,370px)}.chapter-speech{position:absolute;z-index:5;left:clamp(250px,26vw,470px);bottom:31%;max-width:260px;margin:0;padding:16px 20px;border-radius:17px 17px 4px 17px;background:#fffaf0;box-shadow:0 8px 22px rgba(55,38,24,.15);font-size:13px;line-height:1.75}.guide-speech{left:clamp(245px,25vw,445px);bottom:35%}.archive-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 28px;padding:0;list-style:none}.archive-categories li{position:relative;display:flex;flex-direction:column;gap:6px;min-height:178px;padding:15px;border:1px solid rgba(115,80,47,.2);border-radius:16px;background:linear-gradient(rgba(255,253,247,.7),rgba(255,253,247,.7)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 8px 20px rgba(60,40,20,.11)}.archive-categories img{width:45px;height:55px;object-fit:contain}.archive-categories b{font-size:17px}.archive-categories span{font-size:12px;line-height:1.65;color:#604a3a}.archive-categories li:last-child{grid-column:1}.archive-copy>.story-button{display:inline-block;text-decoration:none}
.welcome-beginning .beginning-shade{z-index:1;background:linear-gradient(90deg,rgba(255,251,240,.97) 0%,rgba(255,251,240,.94) 43%,rgba(255,251,240,.62) 58%,rgba(255,251,240,0) 76%)}.welcome-beginning .beginning-paper{z-index:3;width:min(760px,55vw);min-height:max(820px,100dvh);margin:0;padding:155px 45px 130px clamp(40px,7vw,115px);background:transparent}.welcome-beginning .beginning-character{z-index:4;right:clamp(35px,8vw,130px);bottom:70px;width:min(28vw,440px);max-height:58vh}.beginning-paper h2{font-size:clamp(38px,4vw,60px)}
.guide-copy{padding-top:120px}.mini-floor-map{position:relative;display:block;margin:25px 0 24px;border:10px solid rgba(102,70,40,.76);border-radius:18px;background:#f1dfb6;box-shadow:0 16px 34px rgba(55,37,22,.25);overflow:hidden}.mini-floor-map img{display:block;width:100%;height:auto}.mini-floor-map span{position:absolute;right:14px;bottom:12px;padding:8px 13px;border-radius:999px;background:rgba(255,250,235,.94);color:#47634c;font-size:11px;font-weight:800}.place-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.place-legend a{display:grid;grid-template-columns:150px 1fr;gap:8px;padding:8px 0;border-bottom:1px dotted rgba(91,63,41,.25);color:inherit;text-decoration:none}.place-legend b{font-size:13px}.place-legend span{font-size:12px;color:var(--muted)}
.legacy-motion-ready .welcome-chapter:not(.is-visible) .legacy-welcome-copy,.legacy-motion-ready .welcome-chapter:not(.is-visible) .welcome-info-card{opacity:0;transform:translateY(18px)}.legacy-motion-ready .welcome-chapter:not(.is-visible) .archive-character,.legacy-motion-ready .welcome-chapter:not(.is-visible) .guide-character,.legacy-motion-ready .welcome-chapter:not(.is-visible) .beginning-character{opacity:0;transform:translateY(25px) scale(.97)}.legacy-motion-ready .welcome-chapter:not(.is-visible) .archive-categories li,.legacy-motion-ready .welcome-chapter:not(.is-visible) .old-volume li,.legacy-motion-ready .welcome-chapter:not(.is-visible) .place-legend a{opacity:0;transform:translateY(14px)}.legacy-welcome-copy,.welcome-info-card,.archive-character,.guide-character,.beginning-character,.archive-categories li,.old-volume li,.place-legend a{transition:opacity .8s ease,transform .85s cubic-bezier(.2,.8,.25,1)}.welcome-chapter.is-visible .archive-categories li:nth-child(2),.welcome-chapter.is-visible .old-volume li:nth-child(2),.welcome-chapter.is-visible .place-legend a:nth-child(2){transition-delay:.12s}.welcome-chapter.is-visible .archive-categories li:nth-child(3),.welcome-chapter.is-visible .old-volume li:nth-child(3),.welcome-chapter.is-visible .place-legend a:nth-child(3){transition-delay:.24s}.welcome-chapter.is-visible .archive-categories li:nth-child(4),.welcome-chapter.is-visible .old-volume li:nth-child(4),.welcome-chapter.is-visible .place-legend a:nth-child(4){transition-delay:.36s}.welcome-chapter.is-visible .archive-categories li:nth-child(5),.welcome-chapter.is-visible .old-volume li:nth-child(5),.welcome-chapter.is-visible .place-legend a:nth-child(5){transition-delay:.48s}
@media(max-width:900px){.welcome-chapter{min-height:auto;padding-top:0}.legacy-white-fade.from-left,.chapter-side-fade.from-right,.welcome-beginning .beginning-shade{background:linear-gradient(180deg,rgba(255,251,240,.06),rgba(255,251,240,.22) 40%,#fbf5e8 70%)}.legacy-welcome-inner{display:block;min-height:1080px;padding:480px 20px 140px}.welcome-arrival>.scene-background{height:620px;object-position:62% center}.legacy-welcome-copy h1{font-size:43px}.legacy-about{font-size:15px}.welcome-arrival .tamagorou.welcome{top:175px;right:0;bottom:auto;height:390px}.legacy-season{top:165px;right:15px;font-size:11px}.legacy-welcome-line{left:16px;right:16px;bottom:40px}.welcome-info-card,.welcome-beginning .beginning-paper{width:auto;min-height:auto;margin:0;padding:530px 20px 110px;background:linear-gradient(180deg,rgba(251,245,232,0),#fbf5e8 490px)}.welcome-info-card h2{font-size:35px}.welcome-extension>.scene-background,.welcome-beginning>.scene-background{height:620px;object-position:48% center}.archive-character,.guide-character,.welcome-beginning .beginning-character{left:10px;right:auto;top:240px;bottom:auto;width:46vw;max-height:350px}.welcome-beginning .beginning-character{left:auto;right:8px}.chapter-speech{left:42%;right:12px;bottom:auto;top:360px}.archive-categories{grid-template-columns:1fr 1fr}.archive-categories li:last-child{grid-column:auto}.guide-copy{padding-top:520px}.mini-floor-map{border-width:6px}.place-legend{grid-template-columns:1fr}.place-legend a{grid-template-columns:130px 1fr}}
@media(prefers-reduced-motion:reduce){.legacy-welcome-copy,.welcome-info-card,.archive-character,.guide-character,.beginning-character,.archive-categories li,.old-volume li,.place-legend a{transition:none!important;opacity:1!important;transform:none!important}}

.legacy-motion-ready .welcome-chapter:not(.is-visible) .old-volume{opacity:0;transform:perspective(700px) rotateY(-16deg) translateX(-20px)}.legacy-motion-ready .welcome-chapter:not(.is-visible) .mini-floor-map{opacity:0;transform:scale(.96) translateY(16px)}.old-volume,.mini-floor-map{transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.25,1)}
@media(max-width:900px){.welcome-chapter,.welcome-chapter.welcome-arrival,.welcome-chapter.welcome-beginning,.welcome-chapter.welcome-extension{min-height:auto}.welcome-scene{min-height:0}.welcome-beginning{margin-top:0}}
@media(prefers-reduced-motion:reduce){.old-volume,.mini-floor-map{transition:none!important;opacity:1!important;transform:none!important}}

.legacy-welcome-copy h1{font-size:clamp(46px,5.2vw,70px);letter-spacing:.025em}.welcome-info-card h2{font-size:clamp(34px,3.25vw,49px);line-height:1.48}

.mini-floor-map .floor-marker{position:absolute;z-index:2;right:auto;bottom:auto;min-width:22%;padding:4px 8px;border:1px solid rgba(112,75,39,.34);border-radius:999px;background:rgba(255,247,222,.9);box-shadow:0 3px 7px rgba(69,45,26,.16);color:#5a412d;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:800;text-align:center;text-decoration:none;transform:translate(-50%,-50%)}.mini-floor-map span.floor-marker.current{right:auto;bottom:auto;padding:4px 8px;background:#fff0c7;color:#9a5136}.mini-floor-map .floor-marker:hover,.mini-floor-map .floor-marker:focus-visible{background:#fff;transform:translate(-50%,-54%)}.floor-map-expand{position:absolute;z-index:3;right:12px;bottom:10px;padding:7px 12px;border-radius:999px;background:rgba(255,250,235,.94);color:#47634c;font-size:10px;font-weight:800;text-decoration:none}

/* v47: the first visit is one uninterrupted prologue */
.app[data-scene="arrival"] .forest-route-strip,.app[data-scene="reception"] .forest-route-strip,.app[data-scene="arrival"] .forest-quick-nav,.app[data-scene="reception"] .forest-quick-nav{display:none}.welcome-arrival{order:1}.welcome-beginning{order:2}.archive-chapter{order:3}.guide-chapter{order:4}
.welcome-scene .welcome-chapter:after{z-index:2;height:92px;background:linear-gradient(180deg,rgba(251,245,232,0),rgba(251,245,232,.78) 72%,#fbf5e8);-webkit-backdrop-filter:none;backdrop-filter:none}.welcome-scene .welcome-chapter+.welcome-chapter:before{z-index:2;height:92px;background:linear-gradient(180deg,#fbf5e8,rgba(251,245,232,.78) 30%,rgba(251,245,232,0));-webkit-backdrop-filter:none;backdrop-filter:none}.welcome-scene .legacy-white-fade.from-left{background:linear-gradient(90deg,rgba(255,251,240,.94) 0%,rgba(255,251,240,.86) 38%,rgba(255,251,240,.44) 58%,rgba(255,251,240,0) 77%)}.welcome-scene .chapter-side-fade.from-right{background:linear-gradient(270deg,rgba(255,251,240,.94) 0%,rgba(255,251,240,.87) 40%,rgba(255,251,240,.47) 58%,rgba(255,251,240,0) 76%)}
.beginning-replay{appearance:none;border:0;background:transparent;cursor:pointer;font:inherit}.current-forest-map img{aspect-ratio:16/9;object-fit:cover}.place-legend>span{display:grid;grid-template-columns:minmax(130px,170px) 1fr;gap:10px;padding:8px 0;border-bottom:1px dotted rgba(91,63,41,.25)}.place-legend em{font-size:12px;font-style:normal;line-height:1.65;color:var(--muted)}.prologue-finish{margin-top:28px;padding:22px 24px;border:1px solid rgba(92,115,78,.25);border-radius:20px;background:rgba(255,253,247,.82);box-shadow:0 10px 24px rgba(52,37,24,.1);text-align:center}.prologue-finish p{margin:0 0 16px;font-size:13px;line-height:1.9}.forest-departure{display:inline-flex;min-width:220px;justify-content:center;text-decoration:none}
.legacy-motion-ready .welcome-beginning.is-visible .beginning-character:not(.story-enter):not(.story-show){opacity:0;transform:translateX(24vw) scale(.94)}.legacy-motion-ready .welcome-beginning.is-visible .old-volume:not(.story-show){opacity:0;transform:perspective(900px) translate(30vw,20px) rotateY(-75deg) scale(.25)}.legacy-motion-ready .welcome-beginning.is-visible .old-volume li:not(.story-show),.legacy-motion-ready .welcome-beginning.is-visible blockquote:not(.story-show){opacity:0;transform:translateY(12px)}.beginning-character.story-enter{animation:beginning-character-enter .82s cubic-bezier(.2,.82,.25,1) both!important}.beginning-character.handing{animation:beginning-handing 1s ease-in-out both!important}.old-volume.opening{transform-origin:100% 100%;animation:beginning-book-open 1.1s cubic-bezier(.2,.8,.2,1) both!important}.old-volume li.story-show,.welcome-beginning blockquote.story-show{opacity:1!important;transform:none!important;transition:opacity .48s ease,transform .55s ease!important}
@keyframes beginning-character-enter{from{opacity:0;transform:translateX(24vw) scale(.94)}to{opacity:1;transform:none}}@keyframes beginning-handing{0%{transform:translate(0,0)}50%{transform:translate(-24px,-6px) scale(1.07)}100%{transform:translate(-12px,0) scale(1.03)}}@keyframes beginning-book-open{0%{opacity:0;transform:perspective(900px) translate(30vw,20px) rotateY(-75deg) scale(.25)}55%{opacity:1;transform:perspective(900px) translate(0,0) rotateY(4deg) scale(1.03)}100%{opacity:1;transform:none}}
@media(max-width:900px){.welcome-scene .welcome-chapter:after,.welcome-scene .welcome-chapter+.welcome-chapter:before{height:70px}.place-legend>span{grid-template-columns:135px 1fr}.guide-copy{padding-bottom:90px}}
@media(min-width:621px) and (max-width:900px){.welcome-info-card,.welcome-beginning .beginning-paper{padding-top:650px;background:linear-gradient(180deg,rgba(251,245,232,0),#fbf5e8 610px)}}
@media(max-width:620px){.legacy-welcome-inner{min-height:920px;padding:390px 16px 110px}.welcome-arrival>.scene-background,.welcome-extension>.scene-background,.welcome-beginning>.scene-background{height:500px}.welcome-arrival .tamagorou.welcome{top:145px;right:-8px;width:auto;height:250px;max-width:48vw}.legacy-season{top:135px;right:10px;max-width:44vw;padding:8px 11px;font-size:9px}.legacy-welcome-copy h1{font-size:34px}.legacy-about{font-size:14px;line-height:1.85}.legacy-sub{font-size:13px}.legacy-welcome-line{position:relative;left:auto;right:auto;bottom:auto;margin:0 16px 38px;padding:12px 14px;font-size:12px}.welcome-info-card,.welcome-beginning .beginning-paper{padding:400px 16px 80px;background:linear-gradient(180deg,rgba(251,245,232,0),#fbf5e8 365px)}.welcome-info-card h2,.beginning-paper h2{font-size:30px}.archive-character,.guide-character,.welcome-beginning .beginning-character{top:145px;left:8px;width:min(42vw,178px);max-height:245px}.welcome-beginning .beginning-character{left:auto;right:5px}.chapter-speech,.guide-speech{left:auto;right:12px;top:265px;width:52%;max-width:205px;padding:11px 12px;font-size:10px;line-height:1.6}.archive-categories{grid-template-columns:1fr 1fr;gap:8px}.archive-categories li{min-height:154px;padding:11px}.archive-categories b{font-size:14px}.archive-categories span{font-size:10px}.current-forest-map{border-width:5px}.place-legend{display:block}.place-legend>span{grid-template-columns:1fr;gap:3px;padding:9px 2px}.prologue-finish{padding:18px 14px}.forest-departure{width:100%;min-width:0}.chapter-label{padding:8px 13px}.chapter-label span{font-size:17px}}
@media(prefers-reduced-motion:reduce){.beginning-character.story-enter,.beginning-character.handing,.old-volume.opening{animation:none!important;opacity:1!important;transform:none!important}.old-volume li,.welcome-beginning blockquote{opacity:1!important;transform:none!important}}

/* v50: keep the first welcome clear at every width */
.welcome-arrival .tamagorou.welcome{right:clamp(24px,5vw,78px);bottom:78px;width:min(29vw,390px);height:auto;max-height:54vh}.place-legend{grid-template-columns:1fr}.place-legend>span{grid-template-columns:minmax(150px,190px) minmax(0,1fr)}.place-legend b,.place-legend em{word-break:normal;overflow-wrap:break-word}
@media(max-width:900px){.legacy-welcome-stage{position:absolute;inset:0;align-self:auto;pointer-events:none}.welcome-arrival .tamagorou.welcome{top:175px;right:4vw;bottom:auto;width:min(34vw,280px);height:auto;max-height:38vh}.place-legend>span{grid-template-columns:150px minmax(0,1fr)}}
@media(max-width:620px){.welcome-arrival .tamagorou.welcome{top:145px;right:10px;width:min(42vw,170px);height:auto;max-height:230px}.place-legend>span{grid-template-columns:1fr}.place-legend b,.place-legend em{line-height:1.65}}

/* v51: readable place signs inside the introductory map */
.current-forest-map .guide-map-pin{position:absolute;z-index:3;right:auto;bottom:auto;display:flex;align-items:center;gap:5px;width:max-content;padding:4px 8px 4px 5px;border:1px solid rgba(79,57,34,.45);border-radius:999px;background:rgba(255,250,233,.94);box-shadow:0 4px 10px rgba(46,34,22,.24);color:#4d3828;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:800;line-height:1;transform:translate(-50%,-50%);white-space:nowrap}.current-forest-map .guide-map-pin img{width:25px;height:25px;object-fit:contain}.current-forest-map .guide-map-pin.library{left:27%;top:25%}.current-forest-map .guide-map-pin.post{left:67%;top:26%}.current-forest-map .guide-map-pin.cafe{left:45%;top:42%}.current-forest-map .guide-map-pin.shop{left:80%;top:56%}
.story-button.primary.forest-departure{position:relative;display:flex;align-items:center;gap:13px;width:min(390px,100%);min-height:76px;margin:0 auto;padding:10px 18px 10px 11px;border:3px solid #f1cb68;background:linear-gradient(135deg,#4d7b59,#244a34);box-shadow:0 0 0 5px rgba(255,250,225,.92),0 13px 28px rgba(35,65,43,.3);text-align:left}.forest-departure img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(0,0,0,.18))}.forest-departure span{display:grid;gap:2px;flex:1}.forest-departure small{font-size:10px;font-weight:700;letter-spacing:.12em;color:#f8e9b5}.forest-departure b{font-size:20px;letter-spacing:.08em}.forest-departure i{font-family:ui-sans-serif,system-ui,sans-serif;font-size:25px;font-style:normal}.forest-departure:hover,.forest-departure:focus-visible{box-shadow:0 0 0 5px #fff5ca,0 17px 34px rgba(35,65,43,.38);transform:translateY(-3px) scale(1.015)}
@media(max-width:620px){.current-forest-map .guide-map-pin{gap:3px;padding:3px 6px 3px 3px;font-size:8px}.current-forest-map .guide-map-pin img{width:20px;height:20px}.forest-departure{min-height:70px}.forest-departure img{width:48px;height:48px}.forest-departure b{font-size:18px}}

/* v54: the repayment bookmark is always open in the director's room */
.profile-repayment-glance{display:grid;gap:9px;margin:18px 0 20px;padding:13px 15px;border:1px solid rgba(116,80,44,.3);border-radius:17px 17px 5px 17px;background:linear-gradient(135deg,rgba(255,250,231,.86),rgba(229,236,211,.82));box-shadow:0 10px 25px rgba(67,45,25,.12);color:inherit;text-decoration:none;transition:.2s transform,.2s box-shadow}.profile-repayment-glance:hover,.profile-repayment-glance:focus-visible{transform:translateY(-2px);box-shadow:0 15px 30px rgba(67,45,25,.18)}.profile-repayment-title{display:flex;align-items:center;gap:10px}.profile-repayment-title>img{width:50px;height:46px;object-fit:contain}.profile-repayment-title>span{display:grid}.profile-repayment-title small{font-size:9px;font-weight:700;letter-spacing:.06em;color:#748064}.profile-repayment-title b{font-size:18px}.profile-repayment-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.profile-repayment-numbers>span{display:grid;padding:7px 9px;border-radius:9px;background:rgba(255,255,248,.65)}.profile-repayment-numbers small{font-size:8px;color:var(--muted)}.profile-repayment-numbers b{font-size:14px}.profile-repayment-line{position:relative;height:7px;border-radius:999px;background:#d5ccb6}.profile-repayment-line i{position:absolute;left:0;top:50%;width:17px;height:17px;border:4px solid #fff;border-radius:50%;background:#70835f;box-shadow:0 2px 7px rgba(0,0,0,.2);transform:translate(-2px,-50%)}.profile-repayment-foot{display:flex;justify-content:space-between;gap:12px;font-size:10px}.profile-repayment-foot em{font-style:normal;color:var(--muted)}.profile-repayment-foot strong{color:#45634b}
@media(max-width:520px){.profile-repayment-numbers{grid-template-columns:1fr 1fr 1fr}.profile-repayment-numbers>span{padding:6px}.profile-repayment-numbers b{font-size:12px}.profile-repayment-foot{display:grid;gap:4px}}

/* v55: one gentle recommended path for first-time readers */
.guided-map-link{border:2px solid #d9b64c;box-shadow:0 0 0 4px rgba(255,248,207,.88),0 12px 30px rgba(31,45,28,.28)}.guided-map-link small,.guided-next-note span,.guided-shelf-note span,.journey-arrival span{color:#6f865e;font-weight:800;letter-spacing:.08em}.guided-next-note{display:grid;gap:4px;margin:20px 0 10px;padding:11px 14px;border-left:5px solid #d8b34a;background:rgba(244,236,195,.48);font-size:12px;line-height:1.7}.guided-next-note span{font-size:9px}.guided-next-button{box-shadow:0 8px 18px rgba(48,75,53,.25),0 0 0 4px rgba(239,210,111,.28)}.guided-shelf-note{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin:18px 0 2px;padding:11px 15px;border:1px solid rgba(117,94,48,.2);border-radius:14px;background:rgba(250,242,211,.68)}.guided-shelf-note span{font-size:9px}.guided-shelf-note b{font-size:13px}.guided-shelf-note em{font-size:11px;font-style:normal;color:var(--muted)}.reader-path-step{margin:13px 0!important;padding:10px 12px;border-left:4px solid #d7ae49;background:rgba(248,235,190,.42);font-size:12px;line-height:1.7}.journey-arrival{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 13px;border:1px solid rgba(117,94,48,.22);border-radius:12px;background:rgba(250,242,211,.66);font-size:12px}.journey-arrival span{font-size:9px}
@media(max-width:620px){.guided-shelf-note,.journey-arrival{display:grid;gap:4px}.guided-map-link{width:calc(100% - 32px);margin-inline:auto}.guided-next-button{width:100%;text-align:center}}

/* v56: 公開中の本棚・迷った時の順路・いつでも聴ける森のピアノ */
.header-audio-toggle{display:flex;align-items:center;gap:6px;min-height:39px;padding:7px 12px;border:1px solid rgba(255,255,255,.58);border-radius:999px;background:rgba(39,64,48,.82);color:#fffaf0;box-shadow:0 6px 18px rgba(18,28,21,.2);font:inherit;font-size:11px;cursor:pointer;backdrop-filter:blur(8px);transition:.2s transform,.2s background}.header-audio-toggle span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#efd374;color:#3c2a1e;font-size:14px}.header-audio-toggle:hover,.header-audio-toggle:focus-visible{transform:translateY(-2px);outline:3px solid rgba(247,215,125,.68);outline-offset:2px}.header-audio-toggle[aria-pressed="true"]{background:#fff7d6;color:#304b35;text-shadow:none}.header-audio-toggle[aria-pressed="true"] span{animation:music-pulse 1.8s ease-in-out infinite}@keyframes music-pulse{50%{box-shadow:0 0 0 6px rgba(239,211,116,.2);transform:scale(1.06)}}
.shelf-music-hint{display:grid;grid-template-columns:34px auto 1fr;align-items:center;gap:5px 10px;margin:10px 0 5px;padding:10px 14px;border-radius:12px;background:rgba(47,76,55,.09);color:#48634d}.shelf-music-hint span{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#4f6f55;color:#fff;font-size:17px}.shelf-music-hint b{font-size:12px}.shelf-music-hint em{font-size:10px;font-style:normal;color:var(--muted)}
.journey-guide{display:grid;grid-template-columns:auto minmax(150px,1fr) auto;align-items:center;gap:12px;margin-top:24px;padding:13px 15px;border:1px solid rgba(101,119,77,.28);border-radius:5px 18px 5px 18px;background:linear-gradient(120deg,rgba(238,232,195,.72),rgba(255,252,239,.9));box-shadow:0 8px 20px rgba(55,39,24,.1)}.journey-count{align-self:start;padding:5px 8px;border-radius:999px;background:#627b5e;color:#fff;font-size:9px;font-weight:800;letter-spacing:.06em;white-space:nowrap}.journey-guide>div{display:grid;gap:2px}.journey-guide small{font-size:9px;color:var(--muted)}.journey-guide b{font-size:13px}.journey-guide>a{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#3f644a;color:#fff;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}.journey-guide>a:hover,.journey-guide>a:focus-visible{background:#2f513a;color:#fff;outline:3px solid rgba(236,205,104,.42);outline-offset:2px}.published-book .book-copy em:after{content:"　森の読書席へ →";color:#4f6f55;font-weight:800}.published-book:focus-visible{outline:4px solid #efcb62;outline-offset:5px}
@media(max-width:980px){.header-audio-toggle b{display:none}.header-audio-toggle{padding:6px}.header-audio-toggle span{width:25px;height:25px}}
@media(max-width:620px){.shelf-music-hint{grid-template-columns:34px 1fr}.shelf-music-hint em{grid-column:2}.journey-guide{grid-template-columns:1fr;gap:7px;padding:12px}.journey-count{justify-self:start}.journey-guide>a{justify-content:center;width:100%}.header-audio-toggle{min-height:34px}.header-audio-toggle span{width:22px;height:22px}.header-right{gap:5px}}

/* v58: 森の郵便局を「小道から星空まで」の一続きの物語にする */
.postal-story{min-height:300dvh;overflow:visible;background:#243323}.postal-chapter{position:relative;min-height:100dvh;overflow:hidden}.postal-chapter>.scene-background{position:absolute}.postal-shade{position:absolute;z-index:1;inset:0}.postal-shade.from-left{background:linear-gradient(90deg,rgba(255,251,238,.97) 0 33%,rgba(255,251,238,.68) 51%,rgba(255,251,238,.08) 75%)}.postal-shade.from-right{background:linear-gradient(270deg,rgba(255,251,238,.97) 0 34%,rgba(255,251,238,.68) 53%,rgba(255,251,238,.06) 76%)}.postal-copy{position:absolute;z-index:3;left:clamp(22px,7vw,110px);top:50%;width:min(560px,45vw);transform:translateY(-43%);padding:clamp(26px,4vw,48px);border:1px solid rgba(255,255,255,.64);border-radius:5px 34px 5px 34px;background:linear-gradient(rgba(255,250,238,.86),rgba(248,236,208,.82)),url("assets/ui/article-paper-v1.jpg") center/cover fixed;box-shadow:0 22px 58px rgba(50,36,22,.24);backdrop-filter:blur(3px)}.postal-copy.right{left:auto;right:clamp(22px,7vw,110px)}.postal-copy h1,.postal-copy h2{margin:.18em 0 .35em;font-size:clamp(36px,4.8vw,64px);font-weight:600;line-height:1.35;letter-spacing:.04em}.postal-copy h2{font-size:clamp(32px,4vw,52px)}.postal-copy>p:not(.eyebrow){margin:18px 0 24px;font-size:15px;line-height:2}.postal-step{display:inline-flex;margin-bottom:8px;padding:6px 11px;border-radius:999px;background:#637a5b;color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em}.postal-fumi{position:absolute;z-index:2;right:12%;top:24%;width:min(17vw,210px);filter:drop-shadow(0 14px 18px rgba(40,31,20,.25))}.postal-welcome{position:absolute;z-index:2;left:clamp(2%,7vw,10%);bottom:-2%;height:min(70vh,700px);max-width:43vw;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(49,34,20,.25))}.postal-desk-chapter .post-shade{background:linear-gradient(90deg,rgba(43,29,17,.08) 0 42%,rgba(42,28,16,.54) 72%,rgba(42,28,16,.7))}.postal-desk-chapter .post-desk{position:absolute;z-index:3;left:auto;right:clamp(18px,6vw,90px);top:50%;transform:translateY(-46%);width:min(700px,56vw);max-height:83vh;overflow:auto;padding:clamp(25px,3.4vw,44px)}.postal-desk-chapter .post-desk>h2{margin:0;font-size:clamp(34px,4vw,52px);font-weight:600}.post-featured-article h3{margin:4px 0;font-size:22px;line-height:1.45}.postal-continue{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:15px;border-top:1px dotted var(--line)}.postal-continue small{color:var(--muted);line-height:1.6}.postal-continue .story-button{flex:0 0 auto}.postal-story.scene-entering .postal-copy{animation:postal-paper-in .72s ease both}.postal-story.scene-entering .postal-fumi{animation:postal-fumi-in 1.15s .12s cubic-bezier(.2,.8,.25,1) both,resident-breathe 4.8s 1.3s ease-in-out infinite}.postal-story.scene-entering .postal-welcome{animation:resident-arrive .9s .15s cubic-bezier(.2,.8,.24,1) both,resident-breathe 4.8s 1s ease-in-out infinite}@keyframes postal-paper-in{from{opacity:0;transform:translateY(-40%) translateX(-18px)}to{opacity:1;transform:translateY(-43%)}}@keyframes postal-fumi-in{from{opacity:0;transform:translate(180px,-70px) rotate(8deg)}to{opacity:1;transform:none}}
.flying-letter{position:absolute;z-index:3;left:44%;bottom:12%;width:clamp(70px,8vw,120px);opacity:0;filter:drop-shadow(0 0 18px rgba(255,224,116,.95))}.letter-star{position:absolute;z-index:3;width:8px;height:8px;border-radius:50%;background:#fff1a6;box-shadow:0 0 14px 5px rgba(255,230,132,.76);opacity:.25}.star-one{left:58%;top:28%}.star-two{left:68%;top:17%}.star-three{left:78%;top:10%}.letterpath-scene.scene-entering .flying-letter{animation:letter-takes-flight 4.8s .35s cubic-bezier(.3,.05,.25,1) both}.letterpath-scene.scene-entering .letter-star{animation:letter-star-glow 1.6s 3.7s ease-in-out infinite alternate}.post-finale-tale{font-size:13px!important;color:#eee6ce}@keyframes letter-takes-flight{0%{opacity:0;transform:translate(-15vw,23vh) rotate(-10deg) scale(.72)}15%{opacity:1}55%{opacity:1;transform:translate(7vw,-8vh) rotate(9deg) scale(.62)}100%{opacity:.12;transform:translate(31vw,-48vh) rotate(-5deg) scale(.18)}}@keyframes letter-star-glow{from{opacity:.22;transform:scale(.65)}to{opacity:1;transform:scale(1.35)}}
@media(max-width:820px){.postal-story{min-height:300dvh}.postal-chapter{min-height:100dvh}.postal-shade.from-left,.postal-shade.from-right{background:linear-gradient(0deg,rgba(255,251,238,.97) 0 43%,rgba(255,251,238,.63) 66%,rgba(255,251,238,.05) 88%)}.postal-copy,.postal-copy.right{left:12px;right:12px;top:auto;bottom:76px;transform:none;width:auto;padding:22px}.postal-copy h1{font-size:38px}.postal-copy h2{font-size:32px}.postal-copy>p:not(.eyebrow){margin:13px 0 18px;font-size:13px;line-height:1.8}.postal-fumi{right:6%;top:13%;width:126px}.postal-welcome{left:-5%;bottom:43%;height:43vh;max-width:58vw}.postal-desk-chapter{min-height:1500px}.postal-desk-chapter .post-desk{left:12px;right:12px;top:86px;bottom:auto;transform:none;width:auto;max-height:none;padding:22px}.postal-desk-chapter .post-desk>h2{font-size:34px}.post-featured-article{grid-template-columns:82px 1fr}.post-featured-article>img{width:76px;height:76px}.post-featured-article h3{font-size:18px}.postal-continue{align-items:stretch;flex-direction:column}.postal-continue .story-button{width:100%}.flying-letter{left:38%;bottom:18%;width:76px}.letterpath-scene .post-finale{bottom:72px}.letterpath-scene .post-finale .button-row .story-button,.letterpath-scene .post-finale .button-row .text-button{flex-basis:100%;margin:0;text-align:center}}
@media(max-width:430px){.postal-copy,.postal-copy.right{bottom:64px}.postal-copy h1{font-size:34px}.postal-copy h2{font-size:29px}.postal-welcome{bottom:49%;height:35vh}.postal-desk-chapter{min-height:1640px}.post-featured-article{grid-template-columns:1fr}.post-featured-article>img{width:94px;height:76px}.post-featured-article .story-button{width:100%}}
@media(prefers-reduced-motion:reduce){.postal-story.scene-entering .postal-copy,.postal-story.scene-entering .postal-fumi,.postal-story.scene-entering .postal-welcome,.letterpath-scene.scene-entering .flying-letter,.letterpath-scene.scene-entering .letter-star{animation:none!important}.flying-letter{display:none}.letter-star{opacity:.75}}
.postal-story{min-height:400dvh}.postal-letterpath.letterpath-playing .flying-letter{animation:letter-takes-flight 4.8s .2s cubic-bezier(.3,.05,.25,1) both}.postal-letterpath.letterpath-playing .letter-star{animation:letter-star-glow 1.6s 3.55s ease-in-out infinite alternate}
@media(max-width:820px){.postal-story{min-height:400dvh}}
@media(prefers-reduced-motion:reduce){.postal-letterpath.letterpath-playing .flying-letter,.postal-letterpath.letterpath-playing .letter-star{animation:none!important}}

/* v59: open every published book inside the forest, wearing the normal article design */
.reader-scene{--reader-green:#668b51;--reader-green-deep:#3f6337;--reader-green-soft:#e2ecd8;padding:145px 4vw 130px;background:#27392c;overflow-y:auto}
.reader-landscape{filter:saturate(.9) brightness(.77);object-position:center}
.reader-scene:after{background:linear-gradient(90deg,rgba(25,39,28,.42),rgba(255,248,226,.04) 25%,rgba(255,248,226,.06) 75%,rgba(25,39,28,.4))}
.reader-paper,.reader-paper.letter-reading{max-width:1120px;padding:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.reader-cover-stage{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:34px;margin-bottom:58px}
.reader-cover-stage .article-head{position:relative;display:flex;min-height:410px;flex-direction:column;padding:48px 52px 44px;border:1px solid rgba(117,92,58,.22);border-left:15px solid var(--reader-green);border-radius:12px 34px 34px 12px;background:linear-gradient(rgba(255,249,228,.92),rgba(250,241,213,.94)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 22px 48px rgba(28,31,20,.28)}
.reader-cover-stage .article-head:before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:1px;background:rgba(69,100,53,.28)}
.reader-cover-stage .article-head h1{font-size:clamp(28px,3.35vw,44px);line-height:1.42;letter-spacing:.025em}
.reader-cover-stage .eyebrow{display:inline-flex;padding:6px 13px;border-radius:999px;background:var(--reader-green-soft);color:var(--reader-green-deep)}
.reader-cover-stage .reading-meta{position:relative;left:auto;right:auto;bottom:auto;justify-content:flex-start;gap:8px 14px;margin-top:auto;padding-top:28px;padding-right:145px;font-size:13.5px}
.reader-cover-stage .reading-meta span+span:before{content:"・";margin-right:14px;color:#9c8e7d}
.reader-library-stamp{position:absolute;right:20px;bottom:18px;width:82px;height:82px;object-fit:contain;opacity:.78;rotate:-8deg}
.reader-cover-stage .article-cover{position:relative;margin:0;overflow:visible}
.reader-cover-stage .article-cover>img:first-child{display:block;width:100%;aspect-ratio:3/2;max-height:none;object-fit:cover;border:8px solid rgba(255,249,228,.82);border-radius:24px;box-shadow:0 20px 44px rgba(28,31,20,.3)}
.reader-cover-stamp{position:absolute;right:-18px!important;bottom:-24px;width:88px!important;height:88px;object-fit:contain!important;border:0!important;box-shadow:none!important;opacity:.78;rotate:8deg}
.reader-book-page{position:relative;max-width:1040px;margin:0 auto;padding:clamp(38px,6vw,76px);border:1px solid rgba(255,252,238,.78);border-radius:30px;background:linear-gradient(rgba(255,247,218,.9),rgba(255,247,218,.92)),url("assets/ui/article-paper-v1.jpg") center top/100% auto repeat-y;box-shadow:0 28px 65px rgba(27,31,19,.3);backdrop-filter:blur(4px)}
.reader-book-page:before{content:"";position:absolute;left:22px;top:30px;bottom:30px;width:5px;border-radius:5px;background:linear-gradient(var(--reader-green),rgba(102,139,81,.18))}
.reader-book-page .toc{max-width:820px;margin:0 auto 42px;padding:24px 28px;border:1px solid rgba(79,108,59,.22);border-left:6px solid var(--reader-green);border-radius:0 18px 18px 0;background:linear-gradient(135deg,rgba(226,236,216,.94),rgba(255,249,226,.86))}
.reader-book-page .toc:before{content:"きょうのお話 ・ もくじのしおり";color:var(--reader-green-deep);font-size:13px;letter-spacing:.08em}
.reader-book-page .toc button{padding:9px 0;font-size:15px}
.reader-book-page .article-body{max-width:820px;font-size:18px;line-height:2.05;letter-spacing:.02em}
.reader-book-page .mori-project-card{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(170px,.34fr) minmax(0,1fr);gap:22px;align-items:center;margin:0 0 46px;padding:25px 28px;border:1px solid rgba(117,94,48,.28);border-left:8px solid var(--reader-green);border-radius:8px 24px 24px 8px;background:url("assets/ui/emblem.webp") right 18px bottom 14px/34px no-repeat,repeating-linear-gradient(0deg,transparent 0 30px,rgba(112,139,91,.075) 30px 31px),linear-gradient(125deg,rgba(238,231,210,.98),rgba(255,250,231,.98));box-shadow:0 16px 28px rgba(67,45,25,.15),inset 0 0 0 4px rgba(255,252,236,.44);font-family:"Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;line-height:1.75;overflow:visible}
.reader-book-page .mori-project-card:before{content:"";position:absolute;z-index:3;left:50%;top:-13px;width:86px;height:25px;background:repeating-linear-gradient(90deg,rgba(224,207,145,.8) 0 10px,rgba(239,224,166,.8) 10px 20px);border:1px solid rgba(126,97,53,.09);box-shadow:0 2px 4px rgba(74,54,31,.1);clip-path:polygon(2% 7%,98% 0,96% 94%,1% 100%);transform:translateX(-50%) rotate(-1.5deg)}
.reader-book-page .mori-project-card:after{content:"";position:absolute;z-index:-1;inset:7px -7px -7px 7px;border:1px solid rgba(101,75,45,.16);border-radius:8px 22px 22px 8px;background:#e6d8ba;box-shadow:0 7px 13px rgba(67,45,25,.1);rotate:.35deg}
.reader-book-page .mori-project-card__writer{display:flex;align-items:center;gap:12px;padding:12px 18px 12px 12px;border:1px dashed rgba(104,78,48,.23);border-radius:15px 6px 15px 6px;background:rgba(255,249,230,.68)}
.reader-book-page .article-body img.mori-project-card__portrait,.reader-book-page .mori-project-card__portrait-fallback{display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;margin:0;border:3px solid rgba(255,250,231,.95);border-radius:50%;background:#f7efd9;box-shadow:0 5px 12px rgba(67,45,25,.15);object-fit:cover}
.reader-book-page .mori-project-card__writer span{display:grid;gap:1px}.reader-book-page .mori-project-card__writer small{color:#758065;font-size:10px;font-weight:800;letter-spacing:.08em}.reader-book-page .mori-project-card__writer b{font-size:15px}.reader-book-page .mori-project-card__copy{display:grid;gap:5px;padding-right:28px}.reader-book-page .mori-project-card__copy>small{justify-self:start;padding:3px 9px;border-radius:999px;background:var(--reader-green);color:#fffaf0;font-size:9px;font-weight:800;letter-spacing:.1em}.reader-book-page .mori-project-card__copy strong{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:23px;line-height:1.5;letter-spacing:.04em}.reader-book-page .mori-project-card__copy p{margin:0 0 4px;font-size:14px;line-height:1.75}.reader-book-page .mori-project-card__copy a{justify-self:start;padding:6px 12px;border:1px solid rgba(69,99,75,.25);border-radius:999px;background:rgba(255,252,238,.72);color:#45634b;font-size:12px;font-weight:800;text-decoration:none;box-shadow:0 3px 8px rgba(67,45,25,.07)}.reader-book-page .mori-project-card__copy a:hover,.reader-book-page .mori-project-card__copy a:focus-visible{background:#fffdf3;color:#2f513a;box-shadow:0 5px 11px rgba(67,45,25,.11);transform:translateY(-1px)}
.reader-book-page .article-body h2{position:relative;margin:72px 0 28px;padding:18px 54px 15px 22px;border:0;border-left:6px solid var(--reader-green);border-radius:0 16px 16px 0;background:linear-gradient(90deg,var(--reader-green-soft),rgba(226,236,216,.14));color:#33251d;font-size:clamp(25px,3vw,31px);line-height:1.55}
.reader-book-page .article-body h2:after{content:"";position:absolute;right:17px;top:50%;width:24px;height:30px;translate:0 -50%;background:url("assets/ui/emblem.webp") center/contain no-repeat;opacity:.44}
.reader-book-page .article-body p{margin-bottom:1.55em}
.reader-book-page .article-body img{border:8px solid rgba(255,251,236,.9);border-radius:22px;box-shadow:0 13px 30px rgba(57,44,27,.16)}
.reader-book-page .article-body figure.wp-block-image{--photo-tilt:-.45deg;position:relative;width:calc(100% - 18px);margin:52px auto 56px;padding:11px;border:1px solid rgba(110,83,48,.14);border-radius:6px;background:#fffdf5;box-shadow:0 17px 30px rgba(57,44,27,.18),0 3px 7px rgba(57,44,27,.11);transform:rotate(var(--photo-tilt));isolation:isolate}
.reader-book-page .article-body figure.wp-block-image:nth-of-type(even){--photo-tilt:.4deg}
.reader-book-page .article-body figure.wp-block-image:before{content:"";position:absolute;z-index:2;left:50%;top:-15px;width:84px;height:30px;background:repeating-linear-gradient(90deg,rgba(223,205,137,.82) 0 10px,rgba(238,222,158,.82) 10px 20px);box-shadow:0 2px 4px rgba(74,54,31,.12);clip-path:polygon(3% 8%,98% 0,95% 94%,1% 100%);opacity:.9;pointer-events:none;transform:translateX(-50%) rotate(-2deg)}
.reader-book-page .article-body figure.wp-block-image:after{content:none}
.reader-book-page .article-body figure.wp-block-image>img{width:100%;border:0;border-radius:3px;box-shadow:none}
.reader-book-page .article-body figure.wp-block-image figcaption{margin:10px 5px 1px;color:#746454;font-size:.78em;line-height:1.7;text-align:center}
.reader-book-page .article-body strong,.reader-book-page .article-body b,.reader-book-page .article-body mark{background:linear-gradient(transparent 58%,rgba(255,226,110,.72) 58% 92%,transparent 92%);color:inherit;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.reader-book-page .mori-project-card strong,.reader-book-page .mori-project-card b{background:none;padding:0}
.reader-book-page .mori-project-card--image{display:block;width:100%;margin:0 0 46px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
.reader-book-page .mori-project-card--image:before,.reader-book-page .mori-project-card--image:after{content:none}
.reader-book-page .mori-project-card--image>a{display:block;border-radius:14px;color:inherit;line-height:0;text-decoration:none;box-shadow:0 14px 28px rgba(57,44,27,.16);transition:.18s transform,.18s box-shadow}
.reader-book-page .mori-project-card--image>a:hover,.reader-book-page .mori-project-card--image>a:focus-visible{transform:translateY(-2px);outline:3px solid rgba(247,211,93,.5);outline-offset:3px;box-shadow:0 18px 32px rgba(57,44,27,.2)}
.reader-book-page .article-body .mori-project-card--image img{display:block;width:100%;height:auto;aspect-ratio:2/1;margin:0;border:0;border-radius:14px;box-shadow:none;object-fit:contain}
.article-end{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:28px;max-width:1040px;margin:58px auto 0;padding:30px;border:1px solid rgba(255,252,238,.75);border-radius:30px;background:linear-gradient(rgba(247,239,211,.92),rgba(232,239,218,.92)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 24px 58px rgba(27,31,19,.26)}
.reader-checkout-card{position:relative;min-height:245px}
.reader-checkout-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.reader-checkout-card>div{position:relative;z-index:1;display:grid;gap:13px;padding:54px 44px 34px}
.reader-checkout-card b{padding-bottom:12px;border-bottom:1px solid rgba(96,73,45,.34);font-size:16px}
.reader-checkout-card span{justify-self:end;padding:8px 13px;border:3px solid #a45843;border-radius:7px;color:#a45843;font-weight:800;rotate:-7deg}
.reader-closing-copy{align-self:center}
.reader-closing-copy h2{margin:5px 0 11px;font-size:clamp(24px,3vw,32px)}
.reader-closing-copy>p:not(.eyebrow){font-size:15px;line-height:1.9}
.reader-related{max-width:1040px;margin:42px auto 0;padding:30px;border:1px solid rgba(255,252,238,.72);border-radius:30px;background:rgba(255,248,226,.9);box-shadow:0 22px 52px rgba(27,31,19,.24)}
.reader-related>h2{margin:4px 0 22px;font-size:28px}
.reader-related-books{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.reader-related-book{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:16px;min-height:120px;padding:10px;border:1px solid rgba(79,62,42,.2);border-radius:15px;background:#fffaf0;color:inherit;text-decoration:none;transition:.2s transform,.2s box-shadow}
.reader-related-book:hover,.reader-related-book:focus-visible{transform:translateY(-3px);box-shadow:0 12px 24px rgba(46,35,22,.16);outline:3px solid rgba(102,139,81,.36)}
.reader-related-book>img{width:140px;height:100px;object-fit:cover;border-radius:10px}
.reader-related-book>span{display:grid;gap:6px}
.reader-related-book small{color:var(--reader-green-deep);font-weight:800}
.reader-related-book b{font-size:16px;line-height:1.6}
@media(max-width:820px){
  .reader-scene{padding:132px 10px 110px}
  .reader-cover-stage{grid-template-columns:1fr;gap:22px;margin-bottom:34px}
  .reader-cover-stage .article-head{min-height:0;padding:30px 25px 28px;border-left-width:9px;border-radius:10px 22px 22px 10px}
  .reader-cover-stage .article-head h1{font-size:clamp(24px,6.8vw,32px)}
  .reader-cover-stage .reading-meta{left:auto;right:auto;bottom:auto;margin-top:0;padding-top:22px;padding-right:78px;font-size:12px}
  .reader-library-stamp{width:64px;height:64px;right:12px;bottom:12px}
  .reader-cover-stage .article-cover>img:first-child{border-width:5px;border-radius:17px}
  .reader-cover-stamp{right:-3px!important;bottom:-16px;width:65px!important;height:65px}
  .reader-book-page{padding:34px 19px 42px 27px;border-radius:20px}
  .reader-book-page:before{left:9px;top:22px;bottom:22px;width:3px}
  .reader-book-page .toc{padding:20px 18px 20px 22px;margin-bottom:32px}
  .reader-book-page .toc button{font-size:14px}
  .reader-book-page .article-body{font-size:16.5px;line-height:2.05}
  .reader-book-page .mori-project-card{grid-template-columns:1fr;gap:13px;margin-bottom:38px;padding:22px 17px 18px;border-left-width:5px;border-radius:7px 18px 18px 7px;background-position:right 12px bottom 10px,0 0,0 0;background-size:28px,auto,auto}
  .reader-book-page .mori-project-card:before{left:50%;right:auto;width:64px;height:20px;transform:translateX(-50%) rotate(-1.5deg)}
  .reader-book-page .mori-project-card:after{inset:5px -5px -5px 5px}
  .reader-book-page .mori-project-card__writer{padding:10px 12px}
  .reader-book-page .article-body img.mori-project-card__portrait,.reader-book-page .mori-project-card__portrait-fallback{flex-basis:56px;width:56px;height:56px;border-width:3px;border-radius:50%}
  .reader-book-page .mori-project-card__copy{padding-right:16px}
  .reader-book-page .mori-project-card__copy strong{font-size:20px}
  .reader-book-page .mori-project-card__copy p{font-size:13px;line-height:1.75}
  .reader-book-page .mori-project-card__copy a{font-size:12px}
  .reader-book-page .mori-project-card--image{margin-bottom:38px;padding:0;border:0;background:none}
  .reader-book-page .mori-project-card--image>a,.reader-book-page .article-body .mori-project-card--image img{border-radius:10px}
  .reader-book-page .article-body h2{margin-top:58px;padding:15px 44px 13px 15px;font-size:24px}
  .reader-book-page .article-body img{border-width:5px;border-radius:16px}
  .reader-book-page .article-body figure.wp-block-image{width:calc(100% - 8px);margin:44px auto 48px;padding:7px}
  .reader-book-page .article-body figure.wp-block-image:before{top:-11px;width:60px;height:23px}
  .reader-book-page .article-body figure.wp-block-image>img{border:0;border-radius:2px}
  .article-end{grid-template-columns:1fr;margin-top:28px;padding:18px;border-radius:20px}
  .reader-checkout-card>div{padding:48px 34px 30px}
  .reader-closing-copy .button-row{display:grid}
  .reader-related{margin-top:28px;padding:22px 17px;border-radius:20px}
  .reader-related-books{grid-template-columns:1fr}
  .reader-related-book{grid-template-columns:105px 1fr}
  .reader-related-book>img{width:105px;height:84px}
}

/* v61: 2階・たまごろう放送室 */
.map-pin.broadcast{left:29%;top:10%}.map-pin.broadcast>img,.current-forest-map .guide-map-pin.broadcast img,.satchel-actions a[href="#broadcast"] img{border-radius:50%;object-fit:cover}.current-forest-map .guide-map-pin.broadcast{left:38%;top:20%}
.broadcast-scene{display:block;min-height:100dvh;overflow-y:auto;background:#0f1b21;color:#f8f0d8}.broadcast-hero{position:relative;min-height:100dvh;overflow:hidden}.broadcast-hero>.scene-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.broadcast-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,18,22,.9) 0%,rgba(8,18,22,.58) 33%,rgba(8,18,22,.08) 64%,rgba(8,18,22,.2)),linear-gradient(0deg,rgba(9,20,23,.55),transparent 42%)}.broadcast-intro{position:absolute;z-index:2;left:clamp(20px,6vw,94px);top:50%;width:min(500px,40vw);transform:translateY(-44%);padding:clamp(28px,4vw,46px);color:#473226;background:linear-gradient(rgba(255,247,222,.91),rgba(236,220,181,.9)),url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,248,220,.65);border-radius:5px 32px 5px 32px;box-shadow:0 28px 76px rgba(0,0,0,.52),inset 0 0 44px rgba(128,83,30,.08);backdrop-filter:blur(4px)}.broadcast-intro:before{content:"";position:absolute;inset:12px;border:1px solid rgba(109,77,41,.19);border-radius:2px 22px 2px 22px;pointer-events:none}.broadcast-intro>*{position:relative}.broadcast-intro .eyebrow{color:#58705a}.broadcast-on-air{position:absolute;right:30px;top:28px;display:flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:#4b1f1d;color:#ffe9c0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:900;letter-spacing:.14em;box-shadow:0 5px 14px rgba(65,19,17,.25)}.broadcast-on-air i{width:7px;height:7px;border-radius:50%;background:#ef705c;box-shadow:0 0 10px #ef705c}.broadcast-intro h1{margin:6px 0 14px;font-size:clamp(40px,5vw,68px);font-weight:600;line-height:1.25;letter-spacing:.07em}.broadcast-intro>p:not(.eyebrow){margin:13px 0;line-height:1.9}.broadcast-lead{font-size:17px;font-weight:700}.broadcast-intro .story-button{margin-top:9px}.broadcast-archive{position:relative;z-index:2;min-height:70vh;padding:clamp(76px,9vw,124px) 5vw 120px;background:radial-gradient(circle at 15% 7%,rgba(113,139,105,.18),transparent 28%),linear-gradient(#172a2b,#0f1d22);box-shadow:0 -30px 70px rgba(5,14,18,.58)}.broadcast-archive:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.8%,rgba(255,232,174,.025) 50%,transparent 50.2%),radial-gradient(circle at 80% 25%,rgba(238,189,92,.08),transparent 22%);background-size:42px 42px,auto}.broadcast-archive>*{position:relative}.broadcast-archive-head{display:flex;align-items:end;justify-content:space-between;gap:28px;max-width:1120px;margin:0 auto 34px;padding-bottom:20px;border-bottom:1px solid rgba(244,223,174,.22)}.broadcast-archive-head .eyebrow{color:#aabf98}.broadcast-archive-head h2{margin:0;font-size:clamp(30px,4vw,48px);font-weight:600;letter-spacing:.07em}.broadcast-archive-head>p{max-width:430px;margin:0;color:#c9c2ae;line-height:1.8}.broadcast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1120px;margin:auto}.broadcast-card{display:grid;padding:0;overflow:hidden;border:1px solid rgba(232,210,158,.25);border-radius:8px 24px 8px 24px;background:rgba(245,234,204,.96);color:#463226;text-align:left;box-shadow:0 18px 45px rgba(0,0,0,.3);cursor:pointer;transition:.22s transform,.22s border-color,.22s box-shadow}.broadcast-card:hover,.broadcast-card:focus-visible{transform:translateY(-6px);border-color:rgba(255,220,133,.7);outline:3px solid rgba(246,197,91,.38);outline-offset:3px;box-shadow:0 24px 56px rgba(0,0,0,.42)}.broadcast-card-visual{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#152125}.broadcast-card-visual img{width:100%;height:100%;object-fit:cover;transition:.25s transform}.broadcast-card:hover .broadcast-card-visual img{transform:scale(1.035)}.broadcast-card-visual i{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:56px;height:56px;padding-left:4px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(64,28,24,.84);color:#fff4ce;font-style:normal;transform:translate(-50%,-50%);box-shadow:0 8px 24px rgba(0,0,0,.4)}.broadcast-card-copy{display:flex;flex-direction:column;min-height:160px;padding:18px 19px 17px}.broadcast-card-copy small{color:#687a5b;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.12em}.broadcast-card-copy b{margin:8px 0 18px;font-size:16px;line-height:1.65}.broadcast-card-copy em{margin-top:auto;color:#704137;font-size:12px;font-style:normal;font-weight:800}.broadcast-player{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.7fr);gap:0;max-width:1120px;margin:0 auto 36px;overflow:hidden;border:1px solid rgba(255,224,153,.35);border-radius:8px 30px 8px 30px;background:#efe3c4;color:#473226;box-shadow:0 25px 65px rgba(0,0,0,.42)}.broadcast-video{position:relative;aspect-ratio:16/9;background:#050809}.broadcast-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.broadcast-player-copy{display:flex;flex-direction:column;justify-content:center;padding:28px}.broadcast-player-copy small{color:#8a4c3d;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:900;letter-spacing:.16em}.broadcast-player-copy h2{margin:10px 0 22px;font-size:22px;line-height:1.6}.broadcast-player-copy button{align-self:start;padding:9px 15px;border:1px solid rgba(71,50,38,.25);border-radius:999px;background:#fff8e8;cursor:pointer}.broadcast-empty{max-width:720px;margin:40px auto;text-align:center}.broadcast-youtube-link{display:block;width:max-content;margin:34px auto 0;color:#f3d78f;font-weight:800;text-underline-offset:6px}.broadcast-room-links{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:42px}.broadcast-room-links .text-button{margin:0;color:#f8f0d8}.broadcast-archive .journey-guide{max-width:1120px;margin:46px auto 0;color:#473226}
@media(max-width:820px){.map-pin.broadcast{left:29%;top:8%}.current-forest-map .guide-map-pin.broadcast{left:40%;top:16%}.broadcast-hero{min-height:1060px}.broadcast-hero>.scene-background{height:58vh;object-position:62% center}.broadcast-shade{background:linear-gradient(0deg,rgba(7,17,21,.9) 0 48%,rgba(7,17,21,.08) 76%)}.broadcast-intro{left:12px;right:12px;top:calc(58vh - 34px);width:auto;transform:none;padding:28px 24px 30px}.broadcast-on-air{right:22px;top:23px}.broadcast-intro h1{font-size:42px}.broadcast-archive{padding:72px 12px 110px}.broadcast-archive-head{display:block;padding:0 8px 18px}.broadcast-archive-head>p{margin-top:12px}.broadcast-grid{grid-template-columns:1fr}.broadcast-card{grid-template-columns:128px 1fr;border-radius:7px 20px 7px 20px}.broadcast-card-visual{height:100%;min-height:156px;aspect-ratio:auto}.broadcast-card-copy{min-height:156px;padding:14px}.broadcast-card-copy b{margin:7px 0 10px;font-size:14px}.broadcast-card-visual i{width:44px;height:44px}.broadcast-player{grid-template-columns:1fr}.broadcast-player-copy{padding:20px}.broadcast-room-links{flex-direction:column}.broadcast-room-links .story-button,.broadcast-room-links .text-button{width:100%;text-align:center}}

/* v60: bring the warmth of the normal article back into the forest reader */
.reader-scene[data-reader-tod="day"] .reader-landscape{filter:saturate(.98) brightness(.94);object-position:center}
.reader-scene[data-reader-tod="night"] .reader-landscape{filter:saturate(.92) brightness(.68);object-position:center}
.reader-scene:after{background:linear-gradient(90deg,rgba(31,45,29,.26),rgba(255,245,214,.02) 24%,rgba(255,245,214,.02) 76%,rgba(31,45,29,.28))}
.reader-scene[data-reader-tod="night"]:after{background:linear-gradient(rgba(25,23,34,.18),rgba(25,23,34,.34))}
.reader-cover-stage .article-head{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(255,245,214,.76),rgba(255,241,204,.8));backdrop-filter:blur(3px) saturate(1.08)}
.reader-cover-stage .article-head:after,.reader-book-page:after,.article-end:after,.reader-related:after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background-image:radial-gradient(ellipse at 18% 12%,rgba(125,91,44,.12),transparent 34%),radial-gradient(ellipse at 82% 76%,rgba(139,103,56,.1),transparent 38%),repeating-linear-gradient(7deg,transparent 0 8px,rgba(109,79,39,.035) 9px,transparent 10px),url("assets/ui/article-paper-v1.jpg");background-position:center,center,center,center top;background-size:auto,auto,auto,680px auto;background-repeat:no-repeat,no-repeat,repeat,repeat;background-attachment:fixed;opacity:.52;mix-blend-mode:multiply;filter:contrast(1.22) saturate(.78)}
.reader-cover-stage .article-head>*:not(.reader-library-stamp),.reader-book-page>*:not(.reader-paper-pattern),.article-end>*,.reader-related>*{position:relative;z-index:1}
.reader-paper-pattern{position:absolute;z-index:0;inset:0;pointer-events:none;background-image:url("assets/ui/article-pocket-plant.webp"),url("assets/ui/article-pocket-plant.webp"),url("assets/ui/article-pocket-plant.webp"),url("assets/ui/library-stamp.webp");background-position:calc(50% - 430px) 26%,calc(50% + 360px) 58%,calc(50% - 410px) 83%,calc(50% + 300px) 84%;background-size:130px auto,162px auto,108px auto,238px auto;background-repeat:no-repeat;background-attachment:fixed;opacity:.135;filter:grayscale(.24) sepia(.18) saturate(.78);mix-blend-mode:multiply}
.reader-cover-stage .article-head>.reader-library-stamp{position:absolute;z-index:2;right:8px;bottom:5px;width:170px;height:170px;opacity:.88;rotate:12deg;filter:drop-shadow(0 5px 3px rgba(103,44,31,.13))}
.reader-cover-stage .reading-meta{right:auto}
.reader-cover-stamp{right:-22px!important;bottom:-28px;width:106px!important;height:106px!important;opacity:.82}
.reader-book-page{isolation:isolate;overflow:hidden;background:linear-gradient(rgba(255,245,214,.7),rgba(255,242,205,.75));backdrop-filter:blur(3px) saturate(1.08);box-shadow:0 22px 58px rgba(35,39,21,.25),0 0 0 1px rgba(150,120,60,.14)}
.reader-scene[data-reader-tod="night"] .reader-cover-stage .article-head{background:linear-gradient(rgba(255,245,214,.78),rgba(248,232,190,.82));box-shadow:0 24px 58px rgba(0,0,0,.42)}
.reader-scene[data-reader-tod="night"] .reader-book-page{background:linear-gradient(rgba(255,245,214,.74),rgba(246,230,190,.78));box-shadow:0 24px 64px rgba(0,0,0,.42),0 0 0 1px rgba(150,120,60,.14)}
.reader-book-page:before{top:-6px;left:clamp(22px,4vw,52px);bottom:auto;width:22px;height:64px;border-radius:0 0 4px 4px;background:#6f9a5b;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);filter:drop-shadow(0 4px 6px rgba(40,60,30,.25))}
.reader-ambience-switch{display:grid;grid-template-columns:minmax(170px,1fr) repeat(2,minmax(190px,.8fr));align-items:center;gap:10px;max-width:820px;margin:0 auto 34px;padding:12px;border:1px solid rgba(255,250,232,.82);border-radius:18px;background:rgba(255,250,232,.56);box-shadow:0 8px 20px rgba(55,42,23,.1)}
.reader-ambience-switch[hidden]{display:none}
.reader-ambience-switch>span{display:grid;padding:0 10px;color:var(--reader-green-deep)}
.reader-ambience-switch>span small{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.12em}
.reader-ambience-switch>span b{font-size:15px}
.reader-ambience-switch button{min-height:46px;padding:9px 14px;border:2px solid rgba(111,154,91,.32);border-radius:999px;background:rgba(255,253,245,.72);color:var(--reader-green-deep);font-weight:800;cursor:pointer;transition:.18s transform,.18s background,.18s box-shadow}
.reader-ambience-switch button i{margin-right:7px;font-size:17px;font-style:normal}
.reader-ambience-switch button:hover,.reader-ambience-switch button:focus-visible{transform:translateY(-2px);outline:3px solid rgba(246,207,88,.42);outline-offset:2px}
.reader-ambience-switch button[aria-pressed="true"]{border-color:var(--reader-green-deep);background:var(--reader-green-deep);color:#fffdf7;box-shadow:0 7px 16px rgba(49,80,43,.2)}
.reader-book-page .toc{position:relative;overflow:hidden;padding:0 26px 24px;border:1px solid rgba(63,99,55,.27);border-left:7px solid var(--reader-green);border-radius:22px;background:linear-gradient(145deg,rgba(246,239,208,.88),rgba(255,251,235,.72));box-shadow:0 13px 28px rgba(73,57,31,.1),inset 0 0 0 5px rgba(255,253,242,.35);backdrop-filter:blur(2px)}
.reader-book-page .toc:before{content:none}
.toc-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin:0 -26px 18px;padding:18px 24px 15px 34px;border-bottom:1px dashed rgba(86,67,42,.26);background:linear-gradient(90deg,rgba(216,231,202,.82),rgba(255,246,208,.68))}
.toc-head>span{display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:12px}
.toc-head small{grid-column:1/-1;color:var(--reader-green-deep);font-family:ui-sans-serif,system-ui,sans-serif;font-size:9px;font-weight:800;letter-spacing:.2em}
.toc-head b{color:#33482f;font-size:clamp(22px,3vw,30px);font-weight:600;letter-spacing:.05em}
.toc-head em{padding-bottom:3px;color:#78664e;font-size:12px;font-style:normal;letter-spacing:.08em}
.toc-head img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(56,68,39,.16))}
.toc-list{display:grid;grid-template-columns:1fr;gap:2px}
.reader-book-page .toc .toc-list button{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:10px;min-height:52px;padding:7px 6px;border:0;border-radius:8px;background:transparent;color:#49382b;text-align:left;box-shadow:none;transition:.18s background,.18s color}
.reader-book-page .toc .toc-list button:hover,.reader-book-page .toc .toc-list button:focus-visible{background:rgba(255,248,208,.72);color:var(--reader-green-deep);outline:3px solid rgba(247,211,93,.34);outline-offset:1px}
.toc-number{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:50% 50% 48% 52%;background:var(--reader-green);color:#fffdf2;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:800;letter-spacing:.04em;box-shadow:inset 0 -3px 0 rgba(29,61,30,.18)}
.toc-number:after{content:"";position:absolute;width:8px;height:5px;margin:-30px 0 0 24px;border-radius:8px 8px 0 8px;background:#8daf70;rotate:24deg}
.toc-title{font-size:14px;font-weight:600;line-height:1.55}
.toc-foot{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:18px 2px -16px auto;color:#6d5a43}
.toc-foot img{width:82px;height:auto;filter:drop-shadow(0 5px 7px rgba(70,53,29,.14))}
.toc-foot span{display:grid;padding:8px 13px;border-radius:14px 14px 14px 3px;background:rgba(255,247,203,.74)}
.toc-foot small{font-size:9px;color:var(--reader-green-deep)}
.toc-foot b{font-size:12px;font-weight:600}
.toc-empty{margin:18px 10px 2px;text-align:center}
.reader-book-page .article-body h2{padding:17px 54px 12px 20px;border-left:5px solid var(--reader-green);background:rgba(255,253,245,.38);box-shadow:0 8px 20px rgba(55,42,23,.06);scroll-margin-top:150px}
.reader-book-page .article-body h2 small{display:block;margin-bottom:2px;color:var(--reader-green-deep);font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:800;line-height:1.5;letter-spacing:.16em}
.reader-book-page .article-body h2:after{right:15px;width:31px;height:31px;background-image:url("assets/ui/article-pocket-plant.webp");opacity:.78}
.reader-book-page .reader-highlight,.reader-book-page .article-body strong,.reader-book-page .article-body b,.reader-book-page .article-body mark{background:linear-gradient(transparent 58%,rgba(255,226,110,.82) 58%,rgba(255,226,110,.82) 92%,transparent 92%);color:inherit;font-weight:700;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.reader-book-page .article-body h2 .reader-highlight{font-weight:inherit}
.reader-book-page .article-body p>.reader-highlight{font-weight:700}
.reader-book-page .article-body p{margin-bottom:1.1em}
.article-end,.reader-related{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(rgba(255,245,214,.78),rgba(232,239,218,.76));backdrop-filter:blur(3px)}
@media(max-width:820px){
  .reader-scene:after{background:linear-gradient(rgba(26,39,28,.16),rgba(26,39,28,.3))}
  .reader-book-page{padding-top:30px;background:linear-gradient(rgba(255,245,214,.76),rgba(255,242,205,.8))}
  .reader-book-page:before{left:22px;width:18px;height:52px}
  .reader-ambience-switch{grid-template-columns:1fr 1fr;margin-bottom:28px;padding:10px}
  .reader-ambience-switch>span{grid-column:1/-1;display:flex;align-items:baseline;gap:9px;padding:2px 7px}
  .reader-ambience-switch button{min-height:48px;padding:8px 9px;font-size:13px}
  .reader-book-page .article-body h2{padding:15px 44px 11px 15px}
  .reader-book-page .article-body h2:after{right:10px;width:28px;height:28px}
  .reader-cover-stage .article-head>.reader-library-stamp{right:3px;bottom:2px;width:116px;height:116px}
  .reader-cover-stage .reading-meta{right:auto}
  .reader-cover-stamp{right:-4px!important;bottom:-18px;width:80px!important;height:80px!important}
  .reader-book-page .toc{padding:0 14px 18px}
  .reader-paper-pattern{background-image:url("assets/ui/article-pocket-plant.webp"),url("assets/ui/article-pocket-plant.webp"),url("assets/ui/library-stamp.webp");background-position:4px 28%,calc(100% - 78px) 65%,calc(100% - 108px) 86%;background-size:84px auto,96px auto,154px auto;background-repeat:no-repeat;background-attachment:fixed;opacity:.095}
  .toc-head{margin:0 -14px 14px;padding:15px 14px 13px 24px}
  .toc-head img{width:46px;height:46px}
  .toc-list{grid-template-columns:1fr;gap:7px}
  .reader-book-page .toc .toc-list button{min-height:52px;padding:7px 9px}
  .toc-foot{margin-top:13px}
  .toc-foot img{width:68px}
}

.broadcast-player[hidden]{display:none}

/* 本文中の関連記事リンク: 紙面になじむ小さなしおりのように見せる */
.reader-book-page .article-body a:not(.wp-element-button){
  color:var(--reader-green-deep,#35583b);
  font-weight:700;
  text-decoration-color:rgba(78,112,76,.55);
  text-decoration-thickness:2px;
  text-underline-offset:5px;
  background:linear-gradient(transparent 72%,rgba(255,226,110,.48) 72% 96%,transparent 96%);
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
.reader-book-page .article-body a:not(.wp-element-button):hover,
.reader-book-page .article-body a:not(.wp-element-button):focus-visible{
  color:#24442d;
  background:linear-gradient(transparent 58%,rgba(255,226,110,.76) 58% 96%,transparent 96%);
}

/* v62: 文庫の奥に増えた「読んだ絵本の棚」 */
.map-pin.picturebooks{left:12%;top:43%}.map-pin.picturebooks>img{object-fit:contain}.picturebook-door{display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:15px;margin:4px 0 22px;padding:10px 18px 10px 10px;border:1px solid rgba(66,94,58,.3);border-radius:8px 24px 8px 24px;background:linear-gradient(120deg,rgba(221,235,202,.9),rgba(255,247,217,.92)),url("assets/ui/article-paper-v1.jpg") center/cover;color:inherit;text-decoration:none;box-shadow:0 10px 24px rgba(63,50,29,.11);transition:.2s transform,.2s box-shadow}.picturebook-door:hover,.picturebook-door:focus-visible{transform:translateY(-3px);box-shadow:0 16px 32px rgba(63,50,29,.18);outline:3px solid rgba(240,199,77,.42);outline-offset:2px}.picturebook-door img{width:82px;height:68px;object-fit:contain}.picturebook-door span{display:grid;gap:2px}.picturebook-door small,.picturebook-door em{color:#6f624f;font-size:11px;font-style:normal}.picturebook-door b{font-size:18px;color:#345138}.picturebook-door>i{font-size:24px;font-style:normal;color:#55775a}
.picturebook-scene{display:block;min-height:100dvh;overflow-y:auto;background:#263829;color:#403025;isolation:isolate}.picturebook-fixed-bg{position:fixed;z-index:-3;inset:0;background-image:linear-gradient(180deg,rgba(38,56,41,.12),rgba(40,34,21,.4)),url("assets/scenes/library-hall-v2.jpg");background-size:cover;background-position:center;filter:saturate(.92) brightness(.92);transform:scale(1.01)}.picturebook-scene:before{content:"";position:fixed;z-index:-2;inset:0;pointer-events:none;background:radial-gradient(circle at 60% 12%,rgba(255,236,159,.45),transparent 28%),linear-gradient(90deg,rgba(29,48,32,.68),rgba(36,45,27,.08) 48%,rgba(31,44,29,.38))}.picturebook-scene:after{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(6deg,transparent 0 8px,rgba(255,246,213,.22) 9px,transparent 10px);mix-blend-mode:soft-light}
.picturebook-hero{position:relative;min-height:100dvh;overflow:hidden}.picturebook-light{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,41,27,.74) 0%,rgba(22,41,27,.42) 37%,transparent 63%),linear-gradient(0deg,rgba(34,39,24,.55),transparent 38%)}.picturebook-intro{position:absolute;z-index:3;left:clamp(22px,6vw,96px);top:50%;width:min(570px,45vw);transform:translateY(-44%);padding:clamp(30px,4vw,52px);background:linear-gradient(140deg,rgba(255,250,229,.88),rgba(244,232,190,.76)),url("assets/ui/article-paper-v1.jpg") center/cover;border:1px solid rgba(255,251,226,.72);border-left:9px solid rgba(86,124,73,.88);border-radius:7px 34px 7px 34px;box-shadow:0 28px 75px rgba(18,28,17,.48),inset 0 0 55px rgba(133,93,34,.06);backdrop-filter:blur(5px)}.picturebook-intro:after{content:"";position:absolute;right:22px;bottom:17px;width:82px;height:82px;background:url("assets/ui/library-stamp.webp") center/contain no-repeat;opacity:.14;rotate:11deg;pointer-events:none}.picturebook-intro>*{position:relative;z-index:1}.picturebook-room-label{display:inline-block;margin:0 0 15px;padding:6px 13px;border-radius:999px;background:rgba(178,205,158,.72);color:#355039;font-size:12px;font-weight:800;letter-spacing:.08em}.picturebook-intro h1{margin:0 0 18px;font-size:clamp(38px,5vw,67px);font-weight:600;line-height:1.25;letter-spacing:.05em}.picturebook-intro>p:not(.eyebrow,.picturebook-room-label){margin:10px 0;line-height:2}.picturebook-intro .picturebook-lead{font-size:17px;font-weight:700}.picturebook-intro .story-button{margin-top:13px}.picturebook-keeper{position:absolute;z-index:2;right:clamp(3%,9vw,13%);bottom:4%;width:min(39vw,530px);max-height:72vh;object-fit:contain;filter:drop-shadow(0 24px 25px rgba(26,29,15,.35));animation:picturebook-breathe 4.6s ease-in-out infinite}.picturebook-whisper{position:absolute;z-index:3;right:clamp(3%,7vw,9%);top:22%;margin:0;padding:13px 18px;border:1px solid rgba(255,249,223,.72);border-radius:20px 20px 4px 20px;background:rgba(255,248,220,.88);font-size:13px;font-weight:700;line-height:1.7;box-shadow:0 12px 28px rgba(42,34,21,.2);backdrop-filter:blur(4px)}
.picturebook-shelf-room,.reading-card-room{position:relative;z-index:2;width:min(1160px,calc(100% - 40px));margin:0 auto 70px;padding:clamp(30px,5vw,62px);border:1px solid rgba(255,248,218,.7);border-radius:8px 44px 8px 44px;background:linear-gradient(145deg,rgba(255,249,224,.82),rgba(230,237,207,.76)),url("assets/ui/article-paper-v1.jpg") center/720px auto;box-shadow:0 30px 85px rgba(23,30,17,.44);backdrop-filter:blur(5px)}.picturebook-shelf-room{margin-top:-58px}.picturebook-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.picturebook-section-head h2{margin:0;font-size:clamp(32px,4vw,50px);font-weight:600;letter-spacing:.07em}.picturebook-section-head>p{display:grid;gap:4px;max-width:410px;margin:0;text-align:right;line-height:1.7}.picturebook-section-head>p b{font-size:20px;color:#4f704d}.picturebook-section-head>p span{font-size:13px;color:#74644e}
.growing-shelf{position:relative;max-width:940px;margin:20px auto 0;padding:54px 44px 40px;border:10px solid #704421;border-radius:13px 13px 6px 6px;background:linear-gradient(90deg,rgba(69,39,17,.2),transparent 12% 88%,rgba(69,39,17,.2)),linear-gradient(#9b6534,#b67e43 45%,#8c572c);box-shadow:inset 0 0 0 4px #c49152,inset 0 14px 28px rgba(56,31,13,.38),0 24px 46px rgba(60,38,20,.28)}.growing-shelf:before{content:"";position:absolute;inset:19px 20px 35px;border-radius:4px;background:linear-gradient(180deg,#754621,#9a6536);box-shadow:inset 0 20px 28px rgba(45,25,11,.38)}.shelf-top{position:absolute;z-index:2;left:32px;right:32px;top:-48px;display:flex;align-items:end;justify-content:space-between;pointer-events:none}.little-pot{position:relative;width:45px;height:32px;border-radius:5px 5px 14px 14px;background:#b87c3f;box-shadow:inset 0 -7px 0 rgba(95,55,23,.18)}.little-pot:before,.little-pot:after{content:"";position:absolute;bottom:23px;width:28px;height:17px;border-radius:80% 15% 80% 15%;background:#759966}.little-pot:before{left:17px;rotate:-27deg}.little-pot:after{left:2px;rotate:205deg}.little-pot i{position:absolute;left:21px;bottom:26px;width:3px;height:23px;background:#5e7f50}.shelf-emblem{display:grid;place-items:center;width:52px;height:52px;border:4px solid #9f6d35;border-radius:50% 50% 45% 55%;background:#d5a461;color:#55764d;font-size:30px;font-weight:900;box-shadow:0 8px 15px rgba(51,31,14,.2)}.shelf-row{position:relative;z-index:1;display:flex;align-items:end;gap:13px;min-height:300px}.picturebook-spine{position:relative;display:grid;align-content:center;justify-items:center;gap:10px;width:86px;height:250px;padding:16px 10px;border:1px solid rgba(55,42,26,.28);border-radius:8px 8px 3px 3px;color:#3f3024;box-shadow:inset 7px 0 12px rgba(255,255,255,.2),inset -8px 0 13px rgba(72,43,21,.12),7px 9px 13px rgba(39,24,12,.28);cursor:pointer;transform:translateY(46px);opacity:0;transition:.25s transform,.25s filter}.picturebook-spine:nth-child(2){height:275px}.picturebook-spine:nth-child(3){height:235px}.picturebook-shelf-room.is-visible .picturebook-spine{animation:book-on-shelf .7s cubic-bezier(.2,.8,.2,1) forwards}.picturebook-shelf-room.is-visible .picturebook-spine:nth-child(2){animation-delay:.16s}.picturebook-shelf-room.is-visible .picturebook-spine:nth-child(3){animation-delay:.32s}.picturebook-spine:hover,.picturebook-spine:focus-visible{transform:translateY(-8px)!important;filter:brightness(1.07);outline:3px solid rgba(255,221,113,.75);outline-offset:4px}.picturebook-spine small{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:900;letter-spacing:.18em}.picturebook-spine b{writing-mode:vertical-rl;font-size:15px;line-height:1.65;letter-spacing:.12em}.picturebook-spine.sage{background:linear-gradient(90deg,#819f72,#c0d3a8 48%,#78936c)}.picturebook-spine.honey{background:linear-gradient(90deg,#c9903d,#f0ce78 48%,#bd8034)}.picturebook-spine.rose{background:linear-gradient(90deg,#b77c6f,#e9b9a8 48%,#ab6d63)}.empty-book-place{display:grid;place-items:center;align-self:stretch;min-width:150px;margin-left:auto;border:2px dashed rgba(255,238,185,.36);border-radius:13px;color:#ead9aa;text-align:center}.empty-book-place i{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,242,198,.48);border-radius:50%;font-size:26px;font-style:normal}.empty-book-place small{font-size:11px;line-height:1.7}.shelf-board{position:absolute;z-index:2;left:-20px;right:-20px;bottom:18px;height:28px;border-radius:4px;background:linear-gradient(#ce9757,#895026);box-shadow:0 7px 0 #633817,0 13px 16px rgba(39,23,12,.38)}.picturebook-shelf-note{margin:28px 0 0;color:#75644d;font-size:12px;text-align:center}
.reading-card-room{padding-bottom:70px}.card-heading{padding-bottom:22px;border-bottom:1px dashed rgba(80,62,39,.25)}.card-heading>p{font-size:14px;color:#6e604d}.picturebook-filters{display:flex;justify-content:center;gap:9px;margin:26px 0 32px}.picturebook-filters button{padding:9px 16px;border:1px solid rgba(72,58,39,.24);border-radius:999px;background:rgba(255,252,239,.7);cursor:pointer}.picturebook-filters button.selected{border-color:#4f704d;background:#4f704d;color:#fff}.reading-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.reading-log-card{scroll-margin-top:110px;overflow:hidden;border:1px solid rgba(82,61,37,.23);border-radius:8px 28px 8px 28px;background:rgba(255,250,231,.9);box-shadow:0 16px 35px rgba(58,43,25,.16);transition:.24s transform,.24s box-shadow}.reading-log-card:hover,.reading-log-card:focus-within{transform:translateY(-5px);box-shadow:0 22px 42px rgba(58,43,25,.24)}.reading-log-card[hidden]{display:none}.reading-card-scene{position:relative;display:grid;place-items:center;min-height:230px;overflow:hidden}.reading-card-scene:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.54),transparent 43%),repeating-linear-gradient(0deg,transparent 0 18px,rgba(92,72,43,.04) 19px,transparent 20px)}.reading-card-scene.sage{background:linear-gradient(145deg,#dfe9cb,#f6e5bd)}.reading-card-scene.honey{background:linear-gradient(145deg,#f6dda1,#dce5c7)}.reading-card-scene.rose{background:linear-gradient(145deg,#edc8b7,#f1e7c8)}.reading-card-scene>img{position:absolute;right:13px;bottom:9px;width:86px;height:86px;object-fit:contain;opacity:.9;rotate:-9deg;filter:drop-shadow(0 5px 5px rgba(82,40,29,.12))}.book-mini{position:relative;display:grid;place-items:center;width:135px;height:165px;padding:22px;border:5px solid rgba(91,60,32,.7);border-radius:4px 13px 13px 4px;background:#fff7d9;color:#483426;text-align:center;box-shadow:9px 12px 20px rgba(67,44,23,.25),inset 8px 0 0 rgba(91,60,32,.12);rotate:-3deg}.book-mini:before{content:"";position:absolute;inset:11px;border:1px solid rgba(92,66,36,.28)}.book-mini i{width:28px;height:36px;margin-bottom:8px;border-radius:50% 50% 46% 54%;background:#f7e6b0;box-shadow:0 -10px 0 -5px #7ca06c}.book-mini b{position:relative;font-size:14px;line-height:1.6}.reading-card-paper{display:flex;flex-direction:column;min-height:315px;padding:21px}.reading-number{color:#6c795d;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em}.reading-card-paper h3{margin:8px 0 5px;font-size:20px;line-height:1.6}.reading-credit{margin:0 0 16px;color:#756856;font-size:12px;line-height:1.7}.reading-memo{margin:0 0 16px;padding:11px 13px;border-radius:13px;background:rgba(255,255,255,.68);font-size:13px;font-weight:700;line-height:1.65}.reading-memo small{display:block;margin-bottom:3px;color:#6c795d;font-size:9px;letter-spacing:.1em}.reading-memo.empty{color:#887867;font-weight:400}.reading-status{align-self:start;margin-top:auto;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:800}.reading-status.article{background:#f0c978;color:#674821}.reading-status.card{background:#ecc9bd;color:#764b43}.reading-status.soon{border:1px dashed rgba(98,74,44,.35);background:rgba(255,250,231,.55);color:#74624c}
.picturebook-afterword{position:relative;z-index:2;display:grid;grid-template-columns:250px minmax(0,1fr);align-items:center;gap:35px;width:min(960px,calc(100% - 40px));margin:0 auto 110px;padding:26px 42px 26px 24px;border:1px solid rgba(255,249,220,.7);border-radius:34px 8px 34px 8px;background:linear-gradient(120deg,rgba(238,243,218,.9),rgba(255,245,211,.82)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 26px 70px rgba(22,30,18,.4);backdrop-filter:blur(5px)}.picturebook-afterword>img{width:100%;max-height:230px;object-fit:contain;filter:drop-shadow(0 12px 13px rgba(57,45,27,.2))}.picturebook-afterword h2{margin:3px 0 10px;font-size:clamp(25px,3vw,36px);font-weight:600}.picturebook-afterword p:not(.eyebrow){line-height:1.9}.picturebook-afterword .text-button{color:inherit}
@keyframes book-on-shelf{to{transform:translateY(0);opacity:1}}@keyframes picturebook-breathe{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-7px) rotate(.5deg)}}
@media(max-width:820px){.map-pin.picturebooks{left:10%;top:40%}.picturebook-door{grid-template-columns:68px 1fr auto;padding-right:12px}.picturebook-door img{width:64px;height:58px}.picturebook-door b{font-size:15px}.picturebook-door em{display:none}.picturebook-hero{min-height:1060px}.picturebook-fixed-bg{background-position:58% center}.picturebook-light{background:linear-gradient(0deg,rgba(26,43,29,.94) 0 48%,rgba(25,40,27,.05) 78%)}.picturebook-intro{left:12px;right:12px;top:calc(53vh - 22px);width:auto;transform:none;padding:28px 23px 31px}.picturebook-intro h1{font-size:39px}.picturebook-intro>p:not(.eyebrow,.picturebook-room-label){line-height:1.85}.picturebook-intro .picturebook-lead{font-size:15px}.picturebook-keeper{right:-1%;bottom:auto;top:9%;width:52vw;max-height:42vh}.picturebook-whisper{right:auto;left:16px;top:24%;font-size:11px}.picturebook-shelf-room,.reading-card-room{width:calc(100% - 24px);margin-bottom:38px;padding:29px 16px;border-radius:7px 27px 7px 27px}.picturebook-shelf-room{margin-top:-36px}.picturebook-section-head{display:block;margin-bottom:24px}.picturebook-section-head>p{margin-top:12px;text-align:left}.growing-shelf{padding:43px 16px 31px;border-width:7px}.growing-shelf:before{inset:14px 12px 27px}.shelf-row{gap:7px;min-height:230px}.picturebook-spine{width:58px;height:190px;padding:10px 5px}.picturebook-spine:nth-child(2){height:210px}.picturebook-spine:nth-child(3){height:178px}.picturebook-spine b{font-size:11px;line-height:1.4}.empty-book-place{min-width:72px}.empty-book-place small{font-size:9px}.shelf-board{left:-12px;right:-12px;bottom:13px;height:21px}.picturebook-filters{justify-content:flex-start;overflow-x:auto;padding-bottom:4px}.picturebook-filters button{white-space:nowrap}.reading-card-grid{grid-template-columns:1fr}.reading-log-card{display:grid;grid-template-columns:118px minmax(0,1fr)}.reading-card-scene{min-height:100%}.reading-card-scene>img{width:62px;height:62px;right:3px}.book-mini{width:88px;height:116px;padding:14px 8px;border-width:3px}.book-mini:before{inset:7px}.book-mini i{width:19px;height:24px}.book-mini b{font-size:10px}.reading-card-paper{min-height:250px;padding:18px 15px}.reading-card-paper h3{font-size:17px}.picturebook-afterword{grid-template-columns:105px 1fr;gap:12px;width:calc(100% - 24px);margin-bottom:100px;padding:21px 17px}.picturebook-afterword>img{align-self:start}.picturebook-afterword .button-row{grid-column:1/-1}.picturebook-afterword .button-row>*{width:100%;margin:0}.picturebook-whisper{max-width:175px}}
@media(prefers-reduced-motion:reduce){.picturebook-keeper{animation:none}.picturebook-spine{transform:none;opacity:1}.picturebook-shelf-room.is-visible .picturebook-spine{animation:none}}
.reading-status{color:inherit;text-decoration:none}.reading-status.article{transition:.18s transform,.18s box-shadow}.reading-status.article:hover,.reading-status.article:focus-visible{transform:translateY(-2px);box-shadow:0 7px 15px rgba(103,72,33,.18);outline:3px solid rgba(79,112,77,.3);outline-offset:2px}
.reading-card-scene{display:block;min-height:0;aspect-ratio:3/2;background:#e7d7af}.reading-card-scene:before{z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.17),transparent 44%)}.reading-card-scene>img{position:relative;right:auto;bottom:auto;display:block;width:100%;height:100%;object-fit:cover;opacity:1;rotate:0deg;filter:none;transition:.28s transform}.reading-log-card:hover .reading-card-scene>img{transform:scale(1.025)}
@media(max-width:820px){.reading-log-card{display:block}.reading-card-scene{aspect-ratio:3/2}.reading-card-scene>img{width:100%;height:100%}.reading-card-paper{min-height:245px}}

/* v63: 「たまごからのやりなおし」の明るい絵本コーナー */
.picturebook-scene{background:#eef0cf;color:#403025}
.picturebook-fixed-bg{background-image:linear-gradient(180deg,rgba(255,252,220,.05),rgba(255,245,196,.18)),url("assets/scenes/library-beginning.jpg");background-position:center 48%;filter:saturate(1.05) brightness(1.09)}
.picturebook-scene:before{background:radial-gradient(circle at 16% 13%,rgba(255,244,155,.34),transparent 24%),radial-gradient(circle at 85% 20%,rgba(195,226,177,.2),transparent 28%),linear-gradient(180deg,rgba(255,252,225,.08),rgba(250,244,198,.28))}
.picturebook-scene:after{opacity:.13;background-image:radial-gradient(circle at 12px 12px,rgba(112,147,83,.35) 0 2px,transparent 2.5px);background-size:32px 32px;mix-blend-mode:multiply}
.picturebook-light{background:linear-gradient(90deg,rgba(255,251,218,.48) 0%,rgba(255,249,211,.18) 48%,transparent 76%),linear-gradient(0deg,rgba(255,244,198,.32),transparent 42%)}
.picturebook-intro{width:min(610px,48vw);background:linear-gradient(140deg,rgba(255,253,235,.94),rgba(255,244,196,.89)),url("assets/ui/article-paper-v1.jpg") center/cover;border-color:rgba(255,255,243,.9);border-left-color:#7da56c;box-shadow:0 25px 62px rgba(73,72,39,.22),inset 0 0 55px rgba(133,93,34,.045);backdrop-filter:blur(3px)}
.picturebook-room-label{background:#dbe8bd;color:#34543c;box-shadow:inset 0 -2px rgba(94,128,76,.12)}
.picturebook-intro h1{font-size:clamp(38px,4.8vw,64px)}
.picturebook-intro .picturebook-lead{font-size:18px;line-height:1.95}
.picturebook-keeper{right:clamp(2%,7vw,11%);width:min(35vw,470px);filter:drop-shadow(0 20px 22px rgba(76,74,39,.22))}
.picturebook-whisper{top:19%;right:clamp(2%,5vw,7%);background:rgba(255,253,228,.94);border-color:rgba(100,135,77,.3);box-shadow:0 10px 26px rgba(75,73,37,.16);color:#3e5137}
.picturebook-shelf-room,.reading-card-room{border-color:rgba(255,255,239,.9);background:linear-gradient(145deg,rgba(255,253,232,.94),rgba(238,246,211,.91)),url("assets/ui/article-paper-v1.jpg") center/720px auto;box-shadow:0 25px 62px rgba(72,70,36,.21);backdrop-filter:blur(3px)}
.picturebook-shelf-room:before,.reading-card-room:before{content:"";position:absolute;z-index:-1;inset:13px;border:1px dashed rgba(105,142,81,.2);border-radius:5px 34px 5px 34px;pointer-events:none}
.picturebook-section-head{align-items:center;margin-bottom:24px}
.picturebook-section-head>p{text-align:left}
.picturebook-wood-sign{position:relative;width:min(430px,48vw);aspect-ratio:1.52;display:grid;place-items:center;margin:-32px 0 -62px -18px}
.picturebook-wood-sign>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(77,49,21,.2))}
.picturebook-wood-sign>span{position:relative;display:grid;place-items:center;margin-top:26%;color:#57391f;text-align:center;text-shadow:0 1px rgba(255,239,186,.7)}
.picturebook-wood-sign small{font-family:ui-sans-serif,system-ui,sans-serif;font-size:9px;font-weight:900;letter-spacing:.16em}
.picturebook-wood-sign h2{font-size:clamp(24px,3.3vw,39px);letter-spacing:.08em}
.growing-shelf{position:relative;max-width:1030px;margin:-4px auto 0;padding:0;border:0;border-radius:18px;background:#fff9e8;box-shadow:0 20px 40px rgba(98,66,30,.14);overflow:hidden}
.growing-shelf:before{display:none}
.picturebook-shelf-art{display:block;width:100%;height:auto}
.shelf-row{position:absolute;z-index:2;left:6.7%;right:6.7%;top:34.5%;display:flex;align-items:end;gap:1.2%;min-height:0;height:23.5%}
.picturebook-spine{width:7.6%;min-width:44px;height:88%;padding:8px 4px;border-radius:5px 5px 2px 2px;gap:4px;box-shadow:inset 4px 0 7px rgba(255,255,255,.2),inset -5px 0 7px rgba(72,43,21,.1),4px 5px 7px rgba(39,24,12,.2)}
.picturebook-spine,.picturebook-shelf-room.is-visible .picturebook-spine{opacity:1;transform:none;animation:none}
.picturebook-spine:nth-child(2){height:100%;width:8.7%}.picturebook-spine:nth-child(3){height:82%}
.picturebook-spine b{font-size:clamp(9px,1.18vw,14px);line-height:1.45}.picturebook-spine small{font-size:8px}
.empty-book-place{align-self:stretch;min-width:120px;width:20%;margin-left:2%;border-color:rgba(255,247,209,.48);color:#fff3c5;background:rgba(86,52,25,.08)}
.empty-book-place i{width:36px;height:36px;border-color:rgba(255,244,203,.6);font-size:21px}
.shelf-top,.shelf-board{display:none}
.picturebook-shelf-note{margin-top:20px}
.card-heading{padding-bottom:0;border-bottom:0}
.reading-card-room{background:linear-gradient(145deg,rgba(255,253,233,.95),rgba(242,247,216,.93)),url("assets/ui/article-paper-v1.jpg") center/720px auto}
.picturebook-filters button{background:#fffbea;border-color:rgba(82,112,67,.28);box-shadow:0 3px 8px rgba(75,61,35,.06)}
.picturebook-filters button.selected{background:#63815b;border-color:#63815b}
.reading-log-card{background:#fffbed;box-shadow:0 14px 30px rgba(76,62,34,.13)}
.picturebook-afterword{background:linear-gradient(120deg,rgba(249,253,221,.95),rgba(255,248,211,.93)),url("assets/ui/article-paper-v1.jpg") center/cover;box-shadow:0 24px 58px rgba(72,70,36,.2)}
@media(max-width:820px){
  .picturebook-hero{min-height:1080px}
  .picturebook-fixed-bg{background-position:54% center}
  .picturebook-light{background:linear-gradient(0deg,rgba(255,249,213,.68) 0 55%,rgba(255,250,218,.08) 82%)}
  .picturebook-intro{top:calc(50vh + 18px);background:linear-gradient(140deg,rgba(255,253,235,.96),rgba(255,244,196,.93)),url("assets/ui/article-paper-v1.jpg") center/cover}
  .picturebook-intro h1{font-size:37px}
  .picturebook-intro .picturebook-lead{font-size:16px}
  .picturebook-keeper{top:8%;right:-2%;width:51vw}
  .picturebook-whisper{left:14px;right:auto;top:24%;max-width:190px}
  .picturebook-section-head{display:block;margin-bottom:18px}
  .picturebook-section-head>p{margin:56px 0 0;padding:0 8px;text-align:center}
  .picturebook-wood-sign{width:min(360px,92vw);margin:-28px auto -54px}
  .growing-shelf{margin-top:4px;border-radius:10px}
  .shelf-row{gap:1%;top:34%;height:24%}
  .picturebook-spine{min-width:0;width:10.2%;padding:5px 1px}
  .picturebook-spine:nth-child(2){width:11.8%}.picturebook-spine:nth-child(3){width:10.2%}
  .picturebook-spine b{font-size:7px;line-height:1.25;letter-spacing:.06em}.picturebook-spine small{display:none}
  .empty-book-place{min-width:0;width:25%;margin-left:1%}.empty-book-place i{width:25px;height:25px;font-size:15px}.empty-book-place small{font-size:7px;line-height:1.45}
}

/* v64: 絵本の見返しのように、ページ全体を児童コーナーへ */
.picturebook-fixed-bg{background-image:linear-gradient(180deg,rgba(232,246,238,.08),rgba(255,246,196,.16)),url("assets/scenes/picturebook-garden-v1.jpg");background-size:cover;background-position:center top;filter:saturate(1.03) brightness(1.03)}
.picturebook-scene:before{background:radial-gradient(circle at 12% 11%,rgba(181,220,239,.38),transparent 25%),radial-gradient(circle at 87% 23%,rgba(255,222,120,.25),transparent 23%),linear-gradient(180deg,rgba(239,250,245,.13),rgba(255,249,219,.12))}
.picturebook-scene:after{opacity:.12;background-image:radial-gradient(circle at 8px 8px,rgba(94,141,86,.34) 0 2px,transparent 2.5px),radial-gradient(circle at 22px 22px,rgba(236,185,78,.3) 0 1.5px,transparent 2px);background-size:30px 30px;mix-blend-mode:multiply}
.picturebook-hero{isolation:isolate}
.picturebook-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(255,251,218,.42),rgba(255,250,219,.03) 58%),linear-gradient(0deg,rgba(255,244,199,.12),transparent 42%),url("assets/scenes/picturebook-children-library-v1.jpg") center 48%/cover no-repeat}
.picturebook-hero:after{content:"";position:absolute;z-index:1;left:0;right:0;top:142px;height:18px;pointer-events:none;background:radial-gradient(circle at 9px 2px,#e6a66e 0 7px,transparent 7.5px) 0 0/54px 18px repeat-x,radial-gradient(circle at 9px 2px,#92b981 0 7px,transparent 7.5px) 27px 0/54px 18px repeat-x;opacity:.7}
.picturebook-shelf-room,.reading-card-room{border-radius:28px 54px 28px 54px;background:linear-gradient(145deg,rgba(255,253,234,.9),rgba(239,248,218,.87)),url("assets/ui/article-paper-v1.jpg") center/720px auto;box-shadow:0 22px 50px rgba(80,83,49,.16)}
.picturebook-shelf-room:after,.reading-card-room:after{content:"";position:absolute;right:24px;top:20px;width:78px;height:42px;pointer-events:none;background:radial-gradient(ellipse at 18% 72%,#a9c88f 0 15%,transparent 16%),radial-gradient(ellipse at 45% 38%,#d7e3a5 0 15%,transparent 16%),radial-gradient(ellipse at 72% 72%,#f0cf73 0 13%,transparent 14%);opacity:.42;rotate:7deg}
.picturebook-afterword{border-radius:50px 18px 50px 18px;background:linear-gradient(120deg,rgba(246,252,218,.92),rgba(255,247,209,.9)),url("assets/ui/article-paper-v1.jpg") center/cover}
.yarinaoshi-story{position:relative;z-index:2;width:min(1120px,calc(100% - 40px));margin:-54px auto 70px;padding:clamp(34px,5vw,64px);overflow:hidden;border:1px solid rgba(255,255,240,.92);border-radius:58px 24px 58px 24px;background:linear-gradient(145deg,rgba(255,254,239,.93),rgba(237,247,218,.9)),url("assets/ui/article-paper-v1.jpg") center/720px auto;box-shadow:0 25px 60px rgba(78,79,45,.18);backdrop-filter:blur(3px)}
.yarinaoshi-story:before{content:"";position:absolute;left:0;right:0;top:0;height:18px;background:radial-gradient(circle at 10px -1px,#92b981 0 9px,transparent 9.5px) 0 0/60px 18px repeat-x,radial-gradient(circle at 10px -1px,#efca6d 0 9px,transparent 9.5px) 30px 0/60px 18px repeat-x;opacity:.72}
.yarinaoshi-story:after{content:"";position:absolute;right:-25px;bottom:-34px;width:190px;height:150px;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 28% 80%,#9abd7e 0 10%,transparent 11%),radial-gradient(ellipse at 55% 61%,#bed39a 0 12%,transparent 13%),radial-gradient(ellipse at 78% 82%,#edca66 0 8%,transparent 9%);opacity:.25;pointer-events:none}
.yarinaoshi-story-head{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(320px,1.28fr);column-gap:52px;align-items:end;margin-bottom:31px;padding:0 8px}
.yarinaoshi-story-head .eyebrow{grid-column:1;margin:0 0 5px;color:#5e7f55}
.yarinaoshi-story-head h2{grid-column:1;margin:0;font-size:clamp(31px,4vw,48px);font-weight:600;line-height:1.42;letter-spacing:.06em;color:#3d5139}
.yarinaoshi-story-head>p:last-child{grid-column:2;grid-row:1/3;margin:0;padding:4px 0 3px 26px;border-left:4px solid #efcf70;font-size:16px;line-height:2;color:#564a3c}
.yarinaoshi-story-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.yarinaoshi-note{position:relative;min-height:285px;padding:30px 23px 25px;border:1px solid rgba(86,105,65,.14);border-radius:24px 10px 27px 12px;box-shadow:0 10px 22px rgba(83,69,40,.08);transform:rotate(-.35deg)}
.yarinaoshi-note:nth-child(2){transform:rotate(.45deg)}.yarinaoshi-note:nth-child(3){transform:rotate(-.2deg)}
.yarinaoshi-note.sky{background:rgba(224,241,243,.86)}.yarinaoshi-note.leaf{background:rgba(229,241,208,.88)}.yarinaoshi-note.sun{background:rgba(255,240,186,.86)}
.yarinaoshi-note>span{display:grid;place-items:center;width:45px;height:45px;margin-bottom:14px;border-radius:50% 48% 52% 46%;background:rgba(255,255,248,.78);color:#57734f;font-size:22px;font-weight:800;box-shadow:0 4px 10px rgba(86,70,38,.08)}
.yarinaoshi-note h3{margin:0 0 12px;font-size:20px;font-weight:700;line-height:1.6;color:#3d4d38}
.yarinaoshi-note p{margin:0;font-size:13.5px;line-height:1.95;color:#51483d}
.yarinaoshi-path{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:31px 4px 24px;padding:18px 22px;border:1px dashed rgba(78,111,68,.32);border-radius:999px;background:rgba(255,253,235,.72)}
.yarinaoshi-path span{display:grid;place-items:center;gap:2px;min-width:70px;color:#53684d;text-align:center}.yarinaoshi-path i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f4e7ad;font-style:normal;font-size:17px}.yarinaoshi-path b{font-size:11px}.yarinaoshi-path small{margin-bottom:-15px;padding:2px 7px;border-radius:999px;background:#66865e;color:#fff;font-size:8px}.yarinaoshi-path em{color:#9caf82;font-style:normal;letter-spacing:.2em}
.yarinaoshi-path .now i{background:#94b87f;box-shadow:0 0 0 5px rgba(148,184,127,.2)}
.yarinaoshi-story-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px;border-radius:20px 8px 20px 8px;background:rgba(255,250,218,.78);border-left:5px solid #efca68}
.yarinaoshi-story-foot p{margin:0;font-size:13px;line-height:1.85}.yarinaoshi-story-actions{display:flex;flex:0 0 auto;align-items:center;gap:14px}.yarinaoshi-story-actions .story-button{white-space:nowrap}.yarinaoshi-story-foot .text-button{color:#3e5f43}
.yarinaoshi-story+.picturebook-shelf-room{margin-top:0}
@media(max-width:820px){
  .picturebook-hero:after{top:130px;height:14px;background-size:44px 14px;background-position:0 0,22px 0}
  .yarinaoshi-story{width:calc(100% - 24px);margin:-24px auto 38px;padding:36px 17px 29px;border-radius:34px 14px 34px 14px}
  .yarinaoshi-story-head{display:block;margin-bottom:22px;padding:0 5px}.yarinaoshi-story-head h2{font-size:31px}.yarinaoshi-story-head>p:last-child{margin-top:18px;padding:2px 0 2px 15px;font-size:14px;line-height:1.9}
  .yarinaoshi-story-cards{grid-template-columns:1fr;gap:12px}.yarinaoshi-note{min-height:0;padding:22px 18px 20px;transform:none!important}.yarinaoshi-note>span{float:left;width:38px;height:38px;margin:0 12px 7px 0;font-size:18px}.yarinaoshi-note h3{padding-top:3px;font-size:17px}.yarinaoshi-note p{clear:both;font-size:13px}
  .yarinaoshi-path{justify-content:flex-start;gap:10px;margin:23px 0 19px;padding:15px 14px;overflow-x:auto;border-radius:22px}.yarinaoshi-path span{min-width:66px}.yarinaoshi-path em{letter-spacing:0}
  .yarinaoshi-story-foot{display:block;padding:17px 15px}.yarinaoshi-story-actions{display:grid;gap:5px;margin-top:14px}.yarinaoshi-story-actions .story-button{width:100%}.yarinaoshi-story-foot .text-button{display:inline-block;margin-top:8px;text-align:center}
  .picturebook-shelf-room,.reading-card-room{border-radius:22px 38px 22px 38px}
}

/* v65: 森の児童館らしい、遊びのある色と形 */
.picturebook-scene,.picturebook-scene button,.picturebook-scene a{font-family:"Hiragino Maru Gothic ProN","Hiragino Maru Gothic Pro","Yu Gothic",Meiryo,sans-serif}
.picturebook-intro h1,.picturebook-section-head h2,.yarinaoshi-story h2,.yarinaoshi-story h3,.picturebook-afterword h2{font-family:"Hiragino Maru Gothic ProN","Hiragino Maru Gothic Pro","Yu Gothic",Meiryo,sans-serif;font-weight:700}
.picturebook-intro{border-left-width:11px;border-radius:18px 48px 18px 48px}
.picturebook-intro:before{content:"";position:absolute;z-index:0;left:20px;right:112px;top:0;height:11px;background:linear-gradient(90deg,#e7a77f 0 20%,#efce72 20% 40%,#9ec592 40% 60%,#91c4d1 60% 80%,#d3a7c4 80%);border-radius:0 0 12px 12px;opacity:.75}
.picturebook-room-label{border:2px solid rgba(255,255,255,.7)}
.yarinaoshi-story{border-width:3px;border-color:rgba(255,255,244,.9);box-shadow:0 24px 0 rgba(145,180,118,.12),0 34px 65px rgba(75,79,42,.16)}
.yarinaoshi-story-head{position:relative}
.yarinaoshi-story-head:after{content:"";position:absolute;right:5px;top:-25px;width:116px;height:68px;background:radial-gradient(ellipse at 50% 100%,transparent 0 34%,#f4d273 35% 43%,transparent 44% 49%,#9dc8a0 50% 58%,transparent 59% 64%,#91c5d5 65% 73%,transparent 74%);opacity:.55;pointer-events:none}
.yarinaoshi-story-head>*{position:relative;z-index:1}
.yarinaoshi-note{border-width:2px;border-color:rgba(255,255,255,.84);box-shadow:0 9px 0 rgba(101,132,79,.08),0 16px 26px rgba(83,69,40,.08)}
.yarinaoshi-note:after{content:"";position:absolute;left:50%;top:-7px;width:58px;height:17px;translate:-50% 0;rotate:-2deg;background:rgba(255,252,225,.8);border:1px solid rgba(151,128,77,.12);box-shadow:0 2px 4px rgba(96,72,33,.08)}
.yarinaoshi-note:nth-child(2):after{rotate:2deg}.yarinaoshi-note:nth-child(3):after{rotate:-1deg}
.yarinaoshi-note>span{border:3px solid rgba(255,255,255,.86);font-size:24px}
.yarinaoshi-note h3{color:#38513d}
.yarinaoshi-path{border-width:2px;background:linear-gradient(90deg,rgba(225,241,243,.82),rgba(255,247,207,.84),rgba(229,241,209,.84));box-shadow:inset 0 0 0 5px rgba(255,255,255,.42)}
.yarinaoshi-path span{min-width:88px}.yarinaoshi-path i{width:44px;height:44px;border:3px solid rgba(255,255,255,.9);font-size:22px;box-shadow:0 5px 0 rgba(103,119,72,.11)}
.yarinaoshi-path span:nth-of-type(1) i{background:#f2d9b4}.yarinaoshi-path span:nth-of-type(2) i{background:#9cc69a}.yarinaoshi-path span:nth-of-type(3) i{background:#f4d375}.yarinaoshi-path span:nth-of-type(4) i{background:#a9cee0}.yarinaoshi-path span:nth-of-type(5) i{background:#d9bbd3}
.yarinaoshi-path b{font-size:12px}.yarinaoshi-path .now i{box-shadow:0 0 0 6px rgba(117,164,105,.2),0 5px 0 rgba(71,113,63,.14)}
.yarinaoshi-story-foot{border-left:0;border:2px dashed rgba(98,135,79,.28);background:rgba(255,252,225,.82)}
.yarinaoshi-story-actions .story-button{padding:12px 19px;border:3px solid rgba(255,255,255,.72);box-shadow:0 7px 0 #38583e,0 12px 20px rgba(55,78,49,.16);font-size:13px}
.yarinaoshi-story-actions .story-button:hover,.yarinaoshi-story-actions .story-button:focus-visible{transform:translateY(-2px);box-shadow:0 9px 0 #38583e,0 15px 24px rgba(55,78,49,.19)}
.picturebook-shelf-room,.reading-card-room{border-width:3px;border-color:rgba(255,255,246,.88);box-shadow:0 18px 0 rgba(239,202,104,.1),0 29px 55px rgba(74,79,42,.15)}
.growing-shelf{border:8px solid rgba(255,250,223,.9);box-shadow:0 0 0 3px rgba(142,184,115,.22),0 20px 40px rgba(98,66,30,.14)}
.reading-log-card:nth-child(1){border-top:7px solid #9fc6a0;transform:rotate(-.25deg)}.reading-log-card:nth-child(2){border-top:7px solid #f0cd70;transform:rotate(.35deg)}.reading-log-card:nth-child(3){border-top:7px solid #d8a8c4;transform:rotate(-.2deg)}
.reading-log-card:hover,.reading-log-card:focus-within{transform:translateY(-5px) rotate(0)}
.picturebook-filters button:nth-child(1){background:#e2efd5}.picturebook-filters button:nth-child(2){background:#fff0b8}.picturebook-filters button:nth-child(3){background:#e5d2df}.picturebook-filters button.selected{background:#4f704d;color:#fff}
.picturebook-afterword:before{content:"";position:absolute;left:18px;right:18px;top:-8px;height:17px;background:radial-gradient(circle at 9px 9px,#f0cc6d 0 7px,transparent 7.5px) 0 0/54px 17px repeat-x,radial-gradient(circle at 9px 9px,#9cc395 0 7px,transparent 7.5px) 27px 0/54px 17px repeat-x;opacity:.72}
@media(max-width:1050px) and (min-width:701px){
  .picturebook-intro{left:28px;width:54vw;padding:34px}.picturebook-intro h1{font-size:45px}.picturebook-keeper{right:1%;width:42vw}
  .yarinaoshi-story-head{display:block}.yarinaoshi-story-head>p:last-child{margin-top:20px;padding-left:20px}.yarinaoshi-story-head:after{top:-10px}
  .yarinaoshi-story-cards{grid-template-columns:1fr 1fr}.yarinaoshi-note{min-height:0}.yarinaoshi-note:nth-child(3){grid-column:1/-1}
  .yarinaoshi-story-foot{flex-wrap:wrap}.yarinaoshi-story-foot p{flex:1 1 380px}.yarinaoshi-story-actions{margin-left:auto}
  .yarinaoshi-path{overflow-x:auto;justify-content:flex-start}.yarinaoshi-path span{flex:0 0 82px}.yarinaoshi-path em{flex:0 0 auto}
  .picturebook-section-head{align-items:flex-end}.picturebook-wood-sign{width:390px}.picturebook-section-head>p{max-width:300px}
}
@media(max-width:700px){
  .picturebook-intro:before{right:86px}.yarinaoshi-story-head:after{right:-10px;top:-8px;width:86px;height:50px}.yarinaoshi-note p{font-size:14px;line-height:1.95}
  .yarinaoshi-path{scroll-snap-type:x proximity}.yarinaoshi-path span{scroll-snap-align:center;min-width:76px}.yarinaoshi-path i{width:40px;height:40px;font-size:20px}
  .reading-log-card{transform:none!important}
}

/* v66: 保育園の先生が色紙で作った「おしらせ掲示板」 */
.yarinaoshi-story{scroll-margin-top:165px;padding-top:118px;border:12px solid #bd844b;border-radius:22px;background:radial-gradient(circle at 18px 18px,rgba(125,91,45,.055) 0 2px,transparent 2.5px) 0 0/36px 36px,linear-gradient(135deg,rgba(255,246,206,.96),rgba(242,232,186,.94));box-shadow:inset 0 0 0 5px rgba(255,224,166,.75),inset 0 0 0 8px rgba(124,77,34,.12),0 25px 0 rgba(100,73,35,.12),0 38px 70px rgba(67,69,36,.18)}
.yarinaoshi-story:before{top:11px;left:11px;right:11px;height:16px;background:radial-gradient(circle at 9px -1px,#e89c82 0 8px,transparent 8.5px) 0 0/72px 16px repeat-x,radial-gradient(circle at 9px -1px,#efce6e 0 8px,transparent 8.5px) 18px 0/72px 16px repeat-x,radial-gradient(circle at 9px -1px,#91bd91 0 8px,transparent 8.5px) 36px 0/72px 16px repeat-x,radial-gradient(circle at 9px -1px,#91c5d4 0 8px,transparent 8.5px) 54px 0/72px 16px repeat-x;opacity:.92}
.kids-bunting{position:absolute;z-index:2;left:6%;right:6%;top:35px;display:flex;justify-content:space-around;height:37px;border-top:3px solid rgba(90,106,63,.55);transform:rotate(-.35deg);pointer-events:none}
.kids-bunting i{display:block;width:0;height:0;margin-top:-1px;border-left:17px solid transparent;border-right:17px solid transparent;border-top:31px solid #e79d82;filter:drop-shadow(0 3px 2px rgba(78,62,34,.12))}.kids-bunting i:nth-child(2),.kids-bunting i:nth-child(7){border-top-color:#efcf70}.kids-bunting i:nth-child(3),.kids-bunting i:nth-child(8){border-top-color:#93ba8b}.kids-bunting i:nth-child(4){border-top-color:#8fc3d2}.kids-bunting i:nth-child(5){border-top-color:#d8a8c6}.kids-bunting i:nth-child(6){border-top-color:#edae73}
.kids-board-label{position:absolute;z-index:4;left:50%;top:63px;display:flex;align-items:center;justify-content:center;gap:4px;width:max-content;max-width:76%;margin:0;translate:-50% 0;rotate:-1deg;font-family:"Hiragino Maru Gothic ProN","Yu Gothic",sans-serif}
.kids-board-label span{display:grid;place-items:center;width:35px;height:38px;border:2px solid rgba(255,255,255,.8);border-radius:8px 4px 9px 5px;background:#e89f83;color:#fff;font-size:21px;font-weight:900;text-shadow:0 2px rgba(111,72,47,.14);box-shadow:0 4px 0 rgba(114,78,42,.12)}.kids-board-label span:nth-child(2){background:#efc95f;rotate:2deg}.kids-board-label span:nth-child(3){background:#88b482;rotate:-2deg}.kids-board-label span:nth-child(4){background:#82bdcf;rotate:2deg}.kids-board-label span:nth-child(5){background:#cf9fc0;rotate:-1deg}
.kids-board-label b{padding:7px 12px;border:2px solid rgba(255,255,255,.8);border-radius:7px;background:#668960;color:#fff;font-size:16px;font-weight:900;box-shadow:0 4px 0 rgba(114,78,42,.1);rotate:1deg}
.kids-cutout{position:absolute;z-index:3;display:grid;place-items:center;pointer-events:none}.kids-cutout.cloud-one{right:7%;top:84px;width:72px;height:27px;border-radius:28px;background:#e8f4f0;box-shadow:-20px 7px 0 -1px #e8f4f0,18px 8px 0 -2px #e8f4f0;rotate:5deg}.kids-cutout.cloud-one:before{content:"";width:31px;height:31px;margin-top:-19px;border-radius:50%;background:#e8f4f0}.kids-cutout.flower-one{left:4%;top:107px;color:#e8a582;font-size:35px;rotate:-12deg;text-shadow:0 3px rgba(111,78,45,.1)}.kids-cutout.star-one{right:2.5%;bottom:32%;color:#efca65;font-size:32px;rotate:13deg;text-shadow:0 3px rgba(111,78,45,.1)}
.yarinaoshi-story-head{padding:28px 28px 22px;border:3px dashed rgba(102,137,79,.25);border-radius:24px 12px 24px 12px;background:rgba(255,253,231,.78)}
.yarinaoshi-story-head:before{content:"";position:absolute;left:28px;top:14px;width:14px;height:14px;border-radius:50%;background:#dc6f68;box-shadow:0 2px 0 #a84f4b;pointer-events:none}
.yarinaoshi-story-head:after{right:22px;top:-8px}
.yarinaoshi-story-cards{margin-top:22px}
.yarinaoshi-note{border-radius:8px 22px 10px 24px}.yarinaoshi-note:nth-child(2){border-radius:22px 8px 24px 10px}.yarinaoshi-note:nth-child(3){border-radius:10px 24px 8px 22px}
.yarinaoshi-note>span:after{content:"";position:absolute;width:8px;height:8px;margin:-39px -34px 0 0;border-radius:50%;background:#d96e65;box-shadow:0 2px 0 #a54f49}
.kids-room-label{position:relative;z-index:4;display:table;margin:-46px auto 17px;padding:10px 22px;border:4px solid rgba(255,255,255,.85);border-radius:12px 5px 12px 5px;background:#e9a37f;color:#fff;font-size:15px;font-weight:900;letter-spacing:.08em;box-shadow:0 7px 0 rgba(117,78,43,.13);rotate:-1deg}.kids-room-label span{margin-right:7px}.kids-room-label.card-label{background:#82aa7d;rotate:1deg}
.picturebook-shelf-room{margin-top:20px;padding-top:64px;background:radial-gradient(circle at 18px 18px,rgba(103,131,75,.035) 0 2px,transparent 2.5px) 0 0/34px 34px,linear-gradient(145deg,rgba(255,253,234,.93),rgba(232,245,211,.91))}
.reading-card-room{padding-top:64px;background:radial-gradient(circle at 18px 18px,rgba(214,158,99,.04) 0 2px,transparent 2.5px) 0 0/34px 34px,linear-gradient(145deg,rgba(255,250,226,.94),rgba(239,244,213,.92))}
.picturebook-wood-sign{margin-top:-34px}
.picturebook-filters{position:relative;padding:10px;border:2px dashed rgba(95,128,76,.22);border-radius:16px;background:rgba(255,255,243,.48)}
.reading-log-card:before{content:"";position:absolute;z-index:3;left:50%;top:-7px;width:54px;height:16px;translate:-50% 0;background:rgba(255,247,207,.82);border:1px solid rgba(135,103,57,.12);rotate:-2deg}.reading-log-card{position:relative}

/* 2026-10-24: 読んだ絵本の棚 04〜11 */
.picturebook-spine.sky{background:linear-gradient(90deg,#7195a2,#b9d9df 48%,#678b98)}
.picturebook-spine.lilac{background:linear-gradient(90deg,#8b789b,#cfbdd8 48%,#806e90)}
.picturebook-spine.moss{background:linear-gradient(90deg,#657d55,#a9bd91 48%,#5b714c)}
.picturebook-spine.coral{background:linear-gradient(90deg,#b96f62,#e9ac94 48%,#a96358)}
.picturebook-spine.mint{background:linear-gradient(90deg,#648f83,#a9cec0 48%,#5b8277)}
.picturebook-spine.amber{background:linear-gradient(90deg,#ae7837,#e0b866 48%,#9e6c31)}
.picturebook-spine.plum{background:linear-gradient(90deg,#80627d,#c6a9c2 48%,#745970)}
.picturebook-spine.leaf{background:linear-gradient(90deg,#6c8b4c,#b3cb7e 48%,#617e44)}
.shelf-row .picturebook-spine{width:7.6%;min-width:30px;padding-inline:2px}
.shelf-row .picturebook-spine:nth-child(2){width:8.5%;height:100%}
.shelf-row .picturebook-spine:nth-child(3){height:82%}
.shelf-row .picturebook-spine:nth-child(4){height:94%}
.shelf-row .picturebook-spine:nth-child(5){height:86%}
.shelf-row .picturebook-spine:nth-child(6){height:98%}
.shelf-row .picturebook-spine:nth-child(7){height:84%}
.shelf-row .picturebook-spine:nth-child(8){height:96%}
.shelf-row .picturebook-spine:nth-child(9){height:89%}
.shelf-row .picturebook-spine:nth-child(10){height:97%}
.shelf-row .picturebook-spine:nth-child(11){height:85%}
.reading-log-card:nth-child(4){border-top:7px solid #92bdca;transform:rotate(.2deg)}
.reading-log-card:nth-child(5){border-top:7px solid #b8a2c7;transform:rotate(-.3deg)}
.reading-log-card:nth-child(6){border-top:7px solid #9bb782;transform:rotate(.25deg)}
.reading-log-card:nth-child(7){border-top:7px solid #d89a84;transform:rotate(-.2deg)}
.reading-log-card:nth-child(8){border-top:7px solid #8ebbae;transform:rotate(.3deg)}
.reading-log-card:nth-child(9){border-top:7px solid #d4a555;transform:rotate(-.25deg)}
.reading-log-card:nth-child(10){border-top:7px solid #b899b5;transform:rotate(.2deg)}
.reading-log-card:nth-child(11){border-top:7px solid #9fbd70;transform:rotate(-.2deg)}
@media(max-width:820px){
  .shelf-row .picturebook-spine{width:7.8%;min-width:0;padding-inline:1px}
  .shelf-row .picturebook-spine:nth-child(2){width:8.7%}
  .shelf-row .picturebook-spine b{font-size:6px}
}
@media(max-width:1050px){.kids-board-label{max-width:82%}.kids-cutout.cloud-one{right:3%}.kids-cutout.flower-one{left:2%}}
@media(max-width:700px){
  .yarinaoshi-story{padding:108px 12px 24px;border-width:7px;border-radius:17px;box-shadow:inset 0 0 0 3px rgba(255,224,166,.75),0 18px 0 rgba(100,73,35,.1),0 28px 50px rgba(67,69,36,.14)}
  .kids-bunting{left:3%;right:3%;top:29px}.kids-bunting i{border-left-width:11px;border-right-width:11px;border-top-width:23px}
  .kids-board-label{top:57px;gap:2px;max-width:94%}.kids-board-label span{width:28px;height:31px;font-size:17px}.kids-board-label b{display:block;padding:5px 8px;font-size:12px;white-space:nowrap}
  .kids-cutout.cloud-one{display:none}.kids-cutout.flower-one{top:78px;font-size:25px}.kids-cutout.star-one{right:0;font-size:23px}
  .yarinaoshi-story-head{padding:23px 15px 18px}.yarinaoshi-story-head:before{left:19px;top:10px}.yarinaoshi-story-head:after{right:-5px;top:-3px}
  .kids-room-label{margin:-42px auto 13px;padding:8px 12px;border-width:3px;font-size:12px}.picturebook-shelf-room,.reading-card-room{padding-top:55px}
  .picturebook-wood-sign{margin-top:-25px}
}
