:root{--bg:#17172c;--peach:#edbea7;--text:#f5eee9;--muted:#b8b2c5;--ink:#373141;--paper:#fcf8f3;font-family:Arial,'Noto Sans CJK JP','Hiragino Kaku Gothic ProN','Hiragino Sans','Yu Gothic',Meiryo,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #d69275;outline-offset:5px}[hidden]{display:none!important}::selection{background:#d69f89;color:#17172c}.site-shell{overflow:hidden;background:radial-gradient(ellipse at 80% 5%,#393049 0%,transparent 31%),var(--bg)}.wrap{width:min(1180px,100% - 80px);margin-inline:auto}.skip-link{position:fixed;z-index:10;top:10px;left:10px;transform:translateY(-150%);padding:14px;background:var(--paper);color:var(--ink);border-radius:4px}.skip-link:focus{transform:translateY(0)}
.site-header{height:100px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:12px;align-items:center;font-size:18px;font-weight:700;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border:1px solid #bea099;border-radius:50%;color:var(--peach);font-size:19px;font-weight:400}.brand-label{margin-left:10px;padding-left:18px;border-left:1px solid #716277;font-size:10px;font-weight:400;letter-spacing:.12em;color:#bfb2c0}.site-header nav{display:flex;align-items:center;gap:32px;font-size:12px;letter-spacing:.04em}.site-header nav a:first-child{color:#c4bbcd}.site-header nav a:hover,.site-footer a:hover{color:var(--peach)}.nav-pill{border:1px solid #86788d;padding:12px 18px;border-radius:999px}.nav-pill span{margin-left:15px;color:var(--peach)}
.hero{padding:75px 0 72px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:24px;min-height:615px;position:relative}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.2em;color:#ddaf9b}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 24px}.hero-copy .eyebrow span{height:1px;background:#bd968d;width:28px}.feature-name{font-size:13px;letter-spacing:.14em;color:#c9bacb;margin:0 0 14px}.hero h1{font-size:clamp(43px,4.8vw,67px);font-weight:500;line-height:1.5;letter-spacing:.045em;margin:0;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--peach)}.hero-lead{font-size:14px;line-height:2.2;color:#c6bdce;margin:22px 0 30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:54px;padding:15px 23px;border:0;border-radius:4px;font-size:13px;font-weight:600;letter-spacing:.05em;line-height:1.5;transition:background .2s,transform .2s}.button:hover:not(:disabled){transform:translateY(-2px)}.button-peach{background:var(--peach);color:#31283b}.button-peach:hover{background:#f8d0bb}.button-dark{background:#2d2941;color:#fff}.button-dark:hover{background:#48415b}.button-outline{color:#e5d8e5;border:1px solid #88788f;background:transparent}.button-outline:hover{background:#ffffff0a}.hero-note{font-size:10px;letter-spacing:.05em;color:#a99eb7;margin:17px 0 0}.hero-note span{padding:0 7px}
.book-art{position:relative;height:430px;isolation:isolate;display:grid;place-items:center}.book-orbit{position:absolute;width:440px;height:440px;border:1px solid #a47c8050;border-radius:50%;transform:rotate(-18deg) scaleY(.9)}.book-orbit:after{content:'';position:absolute;inset:24px;border:1px dashed #ac7c802e;border-radius:50%}.storybook{display:flex;position:relative;width:430px;height:270px;transform:rotate(-9deg);filter:drop-shadow(0 22px 18px #07081160)}.book-page{width:50%;position:relative;padding:26px 25px 18px;background:#e9d8c8;color:#5a4553;border-top:4px solid #d2a88f;border-bottom:6px double #c8ad9d;box-shadow:0 5px 0 #8c696c,0 9px 0 #5e4358}.page-left{border-radius:9px 0 0 6px;background:linear-gradient(90deg,#e8d9c9 75%,#c8b7ac);transform:skewY(-4deg);border-left:4px solid #bd8b7b}.page-right{border-radius:0 9px 6px 0;background:linear-gradient(90deg,#cfbcb0,#f6e8d8 15%);transform:skewY(4deg);border-right:4px solid #bd8b7b}.page-kicker{font-size:7px;letter-spacing:.13em;color:#876d73}.page-left p{position:absolute;bottom:40px;left:28px;font-family:'Yu Mincho','Noto Serif CJK JP',serif;font-size:16px;line-height:1.9;letter-spacing:.12em}.page-moon{position:absolute;width:56px;height:56px;border:1px solid #aa7b76;border-radius:50%;left:76px;top:61px;background:linear-gradient(130deg,#d2a38b,#af778166);box-shadow:0 0 30px #b7897240}.page-moon:after{content:'✧';position:absolute;top:45px;left:-23px;color:#a37877;font-size:21px}.page-right h2{font-family:'Yu Mincho','Noto Serif CJK JP',serif;line-height:2;font-weight:500;font-size:16px;letter-spacing:.04em;margin:22px 0 21px}.book-lines{height:3px;background:#9c818355;margin:10px 0;border-radius:1px}.book-lines.short{width:73%}.page-star{display:block;text-align:center;font-size:25px;color:#a57b7b;margin-top:18px}.page-number{position:absolute;bottom:13px;left:50%;font-size:8px;color:#9b7d7d}.book-ribbon{position:absolute;top:4px;left:53%;width:18px;height:80px;background:#9f5968;clip-path:polygon(0 0,100% 0,100% 100%,50% 88%,0 100%);z-index:2;opacity:.85}.book-shadow{position:absolute;width:360px;height:45px;border-radius:50%;background:#0b0b1c70;filter:blur(15px);bottom:40px;left:12%;transform:rotate(-8deg)}.art-star{position:absolute;color:#e9bea6}.star-one{top:12px;right:52px;font-size:32px}.star-two{bottom:42px;left:3px;font-size:24px}.star-three{top:55px;left:48px;font-size:15px}.floating-note{position:absolute;bottom:13px;right:8px;padding:13px 20px;background:#4d3c5055;border:1px solid #c49f9555;border-radius:3px;font-size:11px;letter-spacing:.1em;transform:rotate(3deg);color:#e3c8c4}.floating-note span{color:var(--peach);margin-right:10px}.journey{display:flex;align-items:center;justify-content:center;gap:34px;padding:28px 20px;border-block:1px solid #72607555}.journey p{font-size:12px;letter-spacing:.05em;color:#c8bacd;margin:0}.journey p span{font-family:Georgia,serif;font-size:18px;color:var(--peach);margin-right:14px}.journey i{color:#75657b;font-style:normal}
.create-section{padding:88px 0 90px;scroll-margin-top:20px}.section-intro{text-align:center;margin-bottom:33px}.section-intro h2{font-size:29px;letter-spacing:.06em;font-weight:500;line-height:1.6;margin:14px 0}.section-intro p{font-size:13px;line-height:2;color:var(--muted);margin:0}.mobile-break{display:none}.form-card{max-width:900px;margin:auto;padding:43px 49px 28px;border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 26px 60px #09091630}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.field{display:flex;flex-direction:column;min-width:0}.field label,.period-field legend{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;margin-bottom:13px}.field-number{font-family:Georgia,serif;color:#a57770;font-size:16px;font-weight:400;margin-right:2px}.required{font-size:9px;color:#9c5e50;border-radius:2px;padding:2px 5px;background:#f1e1d9;font-weight:500;margin-left:auto}.field input,.field select{width:100%;height:53px;border:1px solid #d8ceca;border-radius:3px;background:#fffdfa;color:#494050;padding:0 13px;font-size:13px}.field input::placeholder{color:#9d9099}.field-hint{font-size:11px;color:#8b7b85;margin:12px 0 0}.period-field{padding:0;border:0;margin:32px 0 0;min-width:0}.period-field legend{padding:0;float:left;width:100%}.period-options{clear:both;display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.period-options label{position:relative;display:flex;cursor:pointer}.period-options input{position:absolute;top:18px;left:15px;margin:0;accent-color:#9d6b69;width:14px;height:14px}.period-options label>span{display:flex;flex-direction:column;gap:8px;width:100%;border:1px solid #ddd1cb;border-radius:4px;padding:15px 12px 15px 39px;background:#fffdfa;transition:background .2s,border-color .2s}.period-options input:checked+span{border-color:#b17a71;background:#f5e7df;box-shadow:inset 0 0 0 1px #b17a71}.period-options input:focus-visible+span{outline:2px solid #ad7667;outline-offset:3px}.period-options strong{font-size:13px;font-weight:600;letter-spacing:.04em}.period-options small{font-size:10px;line-height:1.6;color:#85727c}.name-details{margin-top:26px;border-top:1px solid #e4d9d2;padding-top:23px}.name-details summary{font-size:12px;color:#74616e;cursor:pointer;width:fit-content}.name-details summary span{font-size:10px;color:#9b8a93;margin-left:9px}.name-details[open] .form-grid{margin-top:22px}.form-footer{border-top:1px solid #e4d9d2;margin-top:25px;padding-top:26px;display:flex;align-items:center;justify-content:space-between;gap:24px}.form-footer p{font-size:11px;color:#81727e;line-height:1.8;margin:0}.form-footer p span{color:#b17a71;margin-right:5px}.fiction-note{font-size:10px;line-height:1.8;color:#8b7e87;text-align:center;margin:22px 0 0}.form-error{background:#ffebe6;color:#9b382f;padding:12px;border-radius:3px;font-size:12px}
.result-section{padding:0 0 100px;scroll-margin-top:20px}.result-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}.story-paper{background:var(--paper);color:#52454f;border-radius:5px;padding:35px 48px 34px;box-shadow:0 22px 60px #0002}.paper-header{border-bottom:1px solid #dcd0c8;padding-bottom:17px;display:flex;justify-content:space-between;align-items:center;color:#9c7b76;font-size:10px;letter-spacing:.07em}.paper-header>span:last-child{font-size:22px}.story-context{color:#9b7e7a;font-size:10px;letter-spacing:.04em;line-height:1.8;margin:26px 0 10px}.story-paper>h2{font-family:'Noto Serif CJK JP','Yu Mincho',serif;font-size:29px;font-weight:500;letter-spacing:.12em;margin:0}.story-divider{color:#b29286;text-align:center;font-size:25px;margin:22px 0}.story-body{font-family:'Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',serif;font-size:15px;line-height:2.4;letter-spacing:.045em;overflow-wrap:anywhere}.story-body p{margin:0 0 22px}.title-reveal{position:relative;margin-top:32px;padding:27px 20px 25px;border-block:1px solid #c6a698;text-align:center;background:linear-gradient(90deg,transparent,#f4e8df,transparent)}.title-reveal>span{font-size:10px;letter-spacing:.15em;color:#a07168}.title-reveal h3{font-family:'Noto Serif CJK JP','Yu Mincho',serif;font-size:24px;font-weight:500;line-height:1.8;letter-spacing:.08em;color:#654856;margin:17px 0}.title-reveal p{font-size:12px;color:#8c6c70;line-height:1.9;margin:0}.story-footnote{font-size:10px;color:#98858c;line-height:2;margin:23px 0 0}.share-panel{position:sticky;top:25px;padding:27px 22px;background:#2b263c;border:1px solid #78637466;border-radius:6px}.share-panel h3{font-size:17px;letter-spacing:.04em;font-weight:500;line-height:1.8;margin:11px 0}.share-panel>p{font-size:11px;color:#baacbf;line-height:1.8;margin:0 0 21px}.share-image-wrap{background:#1c1b30;aspect-ratio:4/5;display:grid;place-items:center;border:1px solid #ae8d8455;border-radius:3px;overflow:hidden}.share-image-wrap img{display:block;width:100%;height:auto}.checkbox-label{display:flex;align-items:center;gap:7px;font-size:10px;line-height:1.8;color:#cdbfcd;margin:18px 0}.checkbox-label input{accent-color:#d7a694;width:15px;height:15px;flex-shrink:0;margin:0}.share-buttons{display:flex;flex-direction:column;gap:10px}.share-buttons .button{min-height:46px;font-size:11px;gap:18px}.share-buttons .text-link{text-align:center;font-size:11px;margin-top:6px}.text-link{color:#e1b39f;display:inline-block;font-size:12px;line-height:1.8;text-underline-offset:5px}.text-link:hover{text-decoration:underline}.share-panel .share-status{min-height:36px;font-size:10px;margin:17px 0 0}.share-panel .share-footnote{font-size:9px;color:#a493ac;margin:11px 0 0}.result-actions{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:35px}.result-actions .button{font-size:12px}
.about-section{border-top:1px solid #72607555;padding:75px 0 80px;display:grid;grid-template-columns:80px 1fr 210px;gap:28px;align-items:center}.about-symbol{align-self:start;line-height:1;font-size:64px;color:var(--peach)}.about-section h2{font-size:27px;font-weight:500;letter-spacing:.04em;line-height:1.7;margin:14px 0 22px}.about-section p{font-size:13px;line-height:2.2;color:#baafc3;margin:0 0 15px}.about-section .text-link{margin-top:10px}.about-aside{margin-left:12px;border-left:1px solid #8a6d7d;padding-left:25px}.about-aside>span{font-size:27px;color:var(--peach)}.about-aside p{color:#dfc8ce;font-size:12px;margin:15px 0 0}.faq-section{padding:35px 0 85px}.faq-list{max-width:850px;margin:auto}.faq-list details{border-bottom:1px solid #7c657c55;padding:23px 4px}.faq-list summary{cursor:pointer;font-size:13px;letter-spacing:.03em;line-height:1.9;color:#e1d7e3}.faq-list p{color:#bcaec7;font-size:12px;line-height:2.2;margin:18px 0 0;max-width:740px}.site-footer{border-top:1px solid #72607555;padding:35px 0 42px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;color:#aa9db7}.site-footer .brand{font-size:14px;color:var(--text)}.site-footer nav{display:flex;gap:22px}.site-footer p{margin:0}.reading-page{max-width:800px;padding:65px 0 100px;margin:auto}.reading-page h1{font-size:34px;font-weight:500;line-height:1.8;letter-spacing:.04em;margin:16px 0 28px}.reading-page .reading-lead{font-size:15px;color:#c4b4c8;line-height:2.2;margin-bottom:35px}.reading-paper{background:var(--paper);color:#594c58;padding:36px 45px 45px;border-radius:5px;font-size:14px;line-height:2.3}.reading-paper h2{font-size:19px;font-weight:600;line-height:1.9;letter-spacing:.02em;color:#704d5c;margin:30px 0 17px}.reading-paper h2:first-child{margin-top:0}.reading-paper p{margin:0 0 20px}.reading-paper a{color:#885d65;text-decoration:underline;text-underline-offset:4px}.reading-page>.button{margin-top:30px}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.brand-label{display:none}.hero{grid-template-columns:1.1fr .9fr;gap:0;padding-top:55px;min-height:550px}.hero h1{font-size:50px}.book-art{transform:scale(.8);transform-origin:center right;margin-left:-50px}.hero-lead{font-size:12px}.result-grid{grid-template-columns:minmax(0,1fr) 265px;gap:22px}.story-paper{padding:30px}.share-panel{padding:23px 17px}.about-section{grid-template-columns:60px 1fr 170px;gap:20px}.about-section h2{font-size:24px}.about-symbol{font-size:50px}.journey{gap:22px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:80px}.site-header nav>a:first-child{display:none}.site-header nav{gap:0}.hero{grid-template-columns:1fr;padding:30px 0 50px;min-height:0}.hero-copy{text-align:center}.hero-copy .eyebrow{justify-content:center;margin-bottom:20px}.hero h1{font-size:clamp(38px,8vw,58px)}.hero-lead{font-size:13px;margin:18px auto 26px;max-width:440px}.hero-note{font-size:10px}.book-art{transform:scale(.88);transform-origin:center;height:330px;margin:20px 0 0}.storybook{width:410px;height:260px}.book-orbit{width:380px;height:380px}.book-shadow{bottom:0;left:15%}.floating-note{bottom:-5px;right:8%}.star-one{right:12%;top:0}.star-two{left:8%;bottom:16px}.star-three{left:15%;top:25px}.journey{gap:15px;padding:22px 0}.journey p{font-size:10px}.journey p span{font-size:14px;margin-right:7px}.journey i{font-size:10px}.create-section{padding:65px 0}.form-card{padding:32px 28px 25px}.section-intro h2{font-size:25px}.result-grid{grid-template-columns:1fr}.share-panel{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding:30px}.share-panel>.eyebrow,.share-panel>h3,.share-panel>p:not(.share-status):not(.share-footnote){grid-column:1}.share-image-wrap{grid-column:2;grid-row:1/8;align-self:center;width:100%;max-width:230px;justify-self:center}.checkbox-label,.share-buttons,.share-status,.share-footnote{grid-column:1}.share-panel>p{margin-bottom:10px}.share-panel h3{font-size:18px}.share-panel .checkbox-label{margin:12px 0 17px}.about-section{grid-template-columns:50px 1fr;padding:55px 0}.about-aside{grid-column:2;margin:0}.about-section h2{font-size:24px}.result-section{padding-bottom:70px}.faq-section{padding:25px 0 60px}.site-footer{flex-wrap:wrap}.site-footer p{width:100%}.reading-page{padding:40px 0 65px}.reading-page h1{font-size:28px}.reading-paper{padding:28px}}
@media(max-width:500px){.brand{font-size:16px;gap:9px}.brand-mark{width:28px;height:28px;font-size:17px}.nav-pill{font-size:10px;padding:10px 12px}.nav-pill span{margin-left:8px}.hero h1{font-size:clamp(35px,9vw,45px)}.hero-copy .eyebrow{font-size:9px}.feature-name{font-size:12px}.hero-lead{font-size:12px}.desktop-break{display:none}.book-art{transform:scale(.75);margin-inline:-30px;height:310px}.floating-note{right:0;bottom:0}.journey{gap:10px;justify-content:space-between}.journey p{font-size:9px;text-align:center;line-height:1.8}.journey p span{display:block;font-size:17px;margin:0 0 2px}.journey i{font-size:11px}.section-intro h2{font-size:23px}.section-intro p{font-size:12px}.mobile-break{display:block}.form-card{padding:28px 20px 23px}.form-grid{grid-template-columns:1fr;gap:24px}.period-field{margin-top:26px}.period-options{gap:8px}.period-options label>span{padding:34px 5px 12px;text-align:center;gap:7px}.period-options input{left:calc(50% - 7px);top:13px}.period-options strong{font-size:13px}.period-options small{font-size:9px;letter-spacing:0}.form-footer{flex-direction:column;align-items:stretch;gap:17px;padding-top:23px}.form-footer p{text-align:center}.fiction-note{font-size:9px;margin-top:17px}.story-paper{padding:25px 22px}.story-paper>h2{font-size:26px}.story-body{font-size:14px;line-height:2.35}.story-context{font-size:9px}.title-reveal{padding-inline:0}.title-reveal h3{font-size:21px}.title-reveal p{font-size:11px}.share-panel{display:flex;flex-direction:column;padding:28px 23px;align-items:stretch}.share-image-wrap{max-width:260px;align-self:center;margin-top:10px}.share-panel>p br{display:none}.share-panel>.eyebrow,.share-panel>h3,.share-panel>p:not(.share-status):not(.share-footnote){text-align:center}.share-panel .checkbox-label{align-self:center;margin:20px 0}.share-panel .share-status{font-size:11px}.result-actions{flex-direction:column;gap:20px}.about-section{grid-template-columns:1fr;gap:20px}.about-symbol{font-size:43px}.about-aside{grid-column:1}.about-section h2{font-size:23px;margin-top:13px}.about-section p{font-size:12px}.site-footer{gap:22px}.site-footer nav{font-size:9px;gap:15px}.reading-page h1{font-size:24px}.reading-paper{font-size:13px;padding:25px 21px}.reading-paper h2{font-size:17px}.reading-page .reading-lead{font-size:13px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="on"]){scroll-behavior:auto}html:not([data-motion="on"]) *,html:not([data-motion="on"]) *:before,html:not([data-motion="on"]) *:after{transition:none!important;animation:none!important}}
