/* Shared subpages: quiet cream panels over the approved midnight-blue canvas. */
#main>section.journey-page::before,#main>section.journey-studio::before,#main>section.editor-page::before,#main>section.pdf-page::before{display:none}
.editor-page .manuscript{background:#fffaf3;padding:26px;border-radius:20px}
body:not(.is-home) #app:not(.book-is-open){color:#fff7ea}
body:not(.is-home) .site-header{background:#14214ee8;border-bottom:1px solid #bca7e32b;color:#fff7ea}
body:not(.is-home) .site-header .brand,body:not(.is-home) .site-header .brand span:last-child{color:#fff7ea}
body:not(.is-home) .site-header .draft-link{color:#f7dfa2;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
body:not(.is-home) footer{background:transparent;color:#dfd8ec;border-top:1px solid #ffffff20}
body:not(.is-home) footer .brand,body:not(.is-home) footer .brand span:last-child{color:#fff7ea}
.journey-page{padding-top:30px;padding-bottom:56px}
.journey-page>.back-link,.journey-studio>.back-link{color:#e1d2f0;min-height:44px;display:inline-flex;align-items:center;gap:8px}
.journey-heading{max-width:760px;margin:30px auto 40px;text-align:center}
.journey-heading h1{font:clamp(36px,4.5vw,58px)/1.12 Georgia,serif;letter-spacing:-1.2px;color:#fff7e9}
.journey-heading h2{font:36px/1.2 Georgia,serif;color:#fff7e9}
.journey-heading p{font-size:16px;line-height:1.65;color:#ded8eb;margin:20px 0 0}
.journey-heading.smaller{margin-top:48px;margin-bottom:25px}
.journey-card,.journey-offer,.story-detail{background:#fffaf3;border:1px solid #fff2dbcc;border-radius:25px;color:#302142;box-shadow:0 15px 35px #0713341a}
.journey-card{padding:36px}
.journey-card h2,.journey-offer h2{font:31px/1.2 Georgia,serif;margin:10px 0 16px;color:#302142}
.journey-card p,.journey-offer p{font-size:14px;line-height:1.8;color:#665772;margin:12px 0}
.journey-card .text-link{margin-top:16px}
.library-row{display:flex;gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a38ab9 transparent;padding:5px 3px 20px;scroll-snap-type:x proximity}
.generated-shelf{margin-top:12px}
.generated-shelf h3{font-size:15px;margin:18px 0 8px}
.generated-book-row{gap:12px;padding:4px 3px 12px}
.generated-book-card{flex:0 0 min(230px,85%);min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:15px;border:1px solid #e7d5ee;border-radius:14px;background:#fff;scroll-snap-align:start}
.generated-book-card strong{font:600 18px/1.25 Georgia,serif;overflow-wrap:anywhere}
.generated-book-card small{color:#665772}
.generated-book-card .button{margin-top:auto;min-height:44px;padding:8px 13px;font-size:12px}
.generated-drafts{margin-top:12px;border-top:1px solid #e7d5ee}
.generated-drafts summary{cursor:pointer;padding:12px 0;min-height:44px;font-weight:700}
.library-book{flex:0 0 290px;min-width:0;background:#fffaf3;border:1px solid #e7d5ee;border-radius:22px;overflow:hidden;color:#302142;scroll-snap-align:start;display:flex;flex-direction:column}
.library-cover{position:relative;display:block}.library-cover img{width:100%;height:auto;aspect-ratio:1.15;object-fit:cover}
.availability{font-size:10px;font-weight:800;border-radius:20px;padding:8px 13px;display:inline-flex;background:#f2e3ff;color:#63397d;border:1px solid #d9bce6}
.library-cover .availability,.story-cover .availability{position:absolute;left:15px;top:15px}.availability.free{background:#fff0b8;color:#6b491e;border-color:#e2be6e}
.library-book>div{padding:23px;display:flex;flex:1;flex-direction:column}.library-book .eyebrow{font-size:9px;letter-spacing:1.5px}
.library-book h2{font:26px/1.18 Georgia,serif;letter-spacing:-.3px;margin:11px 0 12px;color:#302142}.library-book h2 a:hover{text-decoration:underline}
.library-book p{font-size:13px;line-height:1.65;color:#70617b;margin-bottom:22px}.library-book .button{margin-top:auto;font-size:12px;min-height:46px;padding:11px 14px;align-self:flex-start}
.journey-offer{margin-top:30px;padding:30px 36px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(115deg,#fbf1e3,#f0e7fa)}
.journey-offer>div{max-width:650px}.journey-offer .button{flex-shrink:0}.journey-offer h2{margin:8px 0}.journey-offer .hint{font-size:12px}
.journey-crosslink{text-align:center;margin:30px 0 0;font-size:15px}.journey-crosslink .text-link{color:#f5d78e;justify-content:center;margin-top:10px}
.story-detail{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;padding:28px;margin-top:22px;align-items:center;background:linear-gradient(125deg,#fffbf3,#f8effb)}
.story-cover{position:relative}.story-cover img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:19px}
.story-detail-copy{padding:12px 20px 12px 0}.story-detail h1{font:clamp(35px,3.5vw,48px)/1.1 Georgia,serif;letter-spacing:-.9px;margin:20px 0;color:#352044}
.detail-description{font-size:17px;color:#6d5877;line-height:1.7}.story-facts{display:flex;gap:13px;flex-wrap:wrap;margin:24px 0;font-size:11px;color:#6a4d7c}.story-facts>span{display:flex;align-items:center;gap:6px}.story-facts svg{width:18px;height:18px}
.detail-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.detail-actions .button{font-size:13px}.detail-actions .text-link{font-size:12px}.story-detail .hint{font-size:11px;margin-top:17px}.coming-note{border-left:3px solid #cfa9df;padding:8px 18px;margin:24px 0;font-size:14px}.coming-note p{line-height:1.7;color:#73627d;margin-top:10px}
.episode-preview-row{display:flex;gap:22px;overflow-x:auto;scrollbar-width:thin;padding-bottom:12px}
.episode-preview{display:flex;min-width:0;flex:1 0 380px;background:#fff6e9;border-radius:20px;overflow:hidden;color:#302142}.episode-preview>img{width:40%;object-fit:cover}.episode-preview>div{padding:24px}.episode-preview h3{font:24px/1.2 Georgia,serif;margin:14px 0}.episode-preview p{font-size:12px;line-height:1.7;color:#70617b}.episode-preview .soft-label{font-size:9px;line-height:1.5}
.cast-card{margin-top:30px}.journey-cast{display:flex;gap:28px;overflow-x:auto;margin-top:24px;padding-bottom:8px}.journey-cast article{flex:1 0 240px;display:flex;align-items:flex-start;gap:14px}.cast-monogram{width:42px;height:42px;flex-shrink:0;border-radius:50%;background:#eadcf3;display:grid;place-items:center;font:21px Georgia;color:#6d4385}.journey-cast h3{font:23px Georgia}.journey-cast p{font-size:12px;margin:9px 0 0}.story-discovery{border-top:1px solid #e3d8df;margin-top:24px;padding-top:18px}.story-discovery summary{cursor:pointer;font-size:13px;font-weight:700;min-height:40px;display:list-item}
.journey-parent-grid{gap:24px}.journey-parent-grid .journey-card{border:1px solid #e7dcec}.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.offer-grid .journey-card{padding:40px;display:flex;flex-direction:column;align-items:flex-start}.offer-grid .button{margin-top:24px}.offer-grid .soft-label{margin-top:auto}.pink-plan{background:linear-gradient(130deg,#ffedf5,#f1e6ff)}.plan-price{font:42px/1.2 Georgia!important;color:#452557!important;margin:24px 0!important}.plan-price small{font:14px Arial;color:#786087}.offer-note{margin-top:26px}
.saved-book{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:center}.saved-book>img{width:100%;border-radius:14px}.empty-state{text-align:center;margin:35px auto;max-width:760px}.empty-state>svg{width:40px;height:40px;color:#9260a5}.empty-state .button{margin:18px 8px 0}.empty-state h1{font:40px/1.2 Georgia;color:#302142}
.journey-studio{max-width:1060px;padding-top:30px;padding-bottom:60px}.journey-studio .studio-top{margin-top:20px}.journey-studio .studio-top .eyebrow{color:#e1cdf2}.journey-studio .stepper{color:#ddd0ed;margin:25px 0}.journey-studio .stepper li.current{color:#ffe0a5}.journey-studio .studio-card{color:#302142;background:linear-gradient(120deg,#fffaf3,#fdf5fc);padding:42px}.journey-studio .studio-card h1{font:clamp(30px,3.5vw,43px)/1.15 Georgia;letter-spacing:-.6px}.journey-studio .lede{max-width:650px;line-height:1.7;font-size:15px;margin:17px 0 28px;color:#776680}
.character-choices{display:flex;gap:20px;overflow-x:auto;padding:4px 2px 16px}.character-choice{position:relative;flex:1 0 240px;min-width:0;background:#fff9f4;border:1px solid #dbc7e3;border-radius:19px;padding:0;overflow:hidden;text-align:left}.character-choice>img{width:100%;height:225px;object-fit:cover;object-position:50% 40%}.character-choice>span{display:block;padding:17px 18px}.character-choice strong{font:24px Georgia;color:#432552;display:block}.character-choice small{display:block;font-size:12px;color:#796583;line-height:1.6;margin-top:7px}.character-choice>svg{display:none;position:absolute;top:12px;right:12px;width:31px;height:31px;border-radius:50%;background:#fff2b9;padding:7px;color:#5b326c}.character-choice.selected{border:2px solid #9960b3;box-shadow:0 0 0 3px #cda3dd33}.character-choice.selected>svg{display:block}
.studio-name{max-width:570px;margin-top:20px}.photo-coming{display:flex;gap:15px;align-items:center;padding:20px;background:#eee8f6;border-radius:16px;margin-top:26px;font-size:13px}.photo-coming>svg{width:28px;height:28px;flex-shrink:0}.photo-coming p{font-size:12px;margin:7px 0 0;color:#766783;line-height:1.6}.photo-coming .soft-label{flex-shrink:0;font-size:10px}
.age-choice{max-width:440px;margin-bottom:26px}.topic-row{display:flex;gap:14px;overflow-x:auto;padding:4px 3px 16px;scrollbar-width:thin;scroll-snap-type:x proximity}.topic-choice{flex:0 0 155px;border:1px solid #d9c7e1;border-radius:16px;overflow:hidden;padding:0;background:#fff;scroll-snap-align:start}.topic-choice img{width:100%;aspect-ratio:1.35;object-fit:cover}.topic-choice strong{font-size:12px;display:block;padding:13px 8px;color:#563365}.topic-choice.selected{border:2px solid #9a64b0;box-shadow:0 0 0 2px #d7b7e64d}.brief-summary{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:26px}.brief-summary>span{border:1px solid #d8c5df;border-radius:24px;padding:7px 13px;font-size:11px;background:#f3eaf7;color:#75528a}.studio-demo-note{background:#f2eafa;border-left:3px solid #b78ad0;padding:20px 23px;border-radius:0 14px 14px 0;margin:26px 0;font-size:13px;color:#523864}.studio-demo-note p{font-size:12px;line-height:1.7;margin:11px 0 0}
body:not(.is-home) .editor-page,body:not(.is-home) .pdf-page{color:#fff5e4}body:not(.is-home) .editor-page h1,body:not(.is-home) .pdf-page h1{color:#fff5e4}.editor-sidebar,.manuscript{color:#302142}.editor-page .manuscript label,.editor-page .manuscript h2,.editor-page .manuscript input,.editor-page .manuscript textarea{color:#302142}.editor-page .editor-heading>div>p{color:#ded1e9}.pdf-page .back-link{color:#e5d5f0}.pdf-page .hint{color:#e5d9ec}.pdf-page .text-link{color:#f7da95}
.reader-demo-note{max-width:1100px;margin:20px auto 0;padding:16px 22px;border:1px solid #b9a2da4d;border-radius:15px;background:#3c315c55;color:#eee2fa;font-size:12px}.reader-demo-note p{font-size:11px;line-height:1.6;margin:7px 0}.reader-demo-note a{color:#ffe3a5;display:inline-flex;align-items:center;gap:7px;min-height:36px}.reader-demo-note svg{width:17px}.book-link-button{border:0;background:none;padding:0;font:inherit;cursor:pointer}.book-review.book-link-button{font-size:12px;color:#ffe0a3}
#journey-dialog{max-width:520px;border:1px solid #d6b5e1;border-radius:23px;padding:30px;background:#fff8ed;color:#372043}#journey-dialog::backdrop{background:#0d153acf}#journey-dialog h2{font:30px/1.2 Georgia}#journey-dialog p{font-size:14px;line-height:1.8;margin:20px 0}
@media(max-width:1000px){.story-detail{gap:25px;padding:24px}.story-detail-copy{padding:5px}.story-detail h1{font-size:35px}.journey-offer{padding:28px}.episode-preview{flex-basis:380px}.journey-studio .studio-card{padding:30px}.character-choice>img{height:210px}}
@media(max-width:700px){.journey-page{padding-top:18px;padding-bottom:35px}.journey-heading{margin:24px auto 30px}.journey-heading h1{font-size:37px;letter-spacing:-.8px}.journey-heading h2{font-size:30px}.journey-heading p{font-size:14px;margin-top:15px}.journey-card{padding:24px}.journey-card h2,.journey-offer h2{font-size:27px}.library-book{flex-basis:260px}.journey-offer{padding:25px;flex-direction:column;align-items:flex-start;gap:15px}.story-detail{grid-template-columns:1fr;padding:20px;gap:22px}.story-cover{max-width:430px;width:100%;margin:auto}.story-cover img{aspect-ratio:1.2}.story-detail h1{font-size:36px;margin:15px 0}.detail-description{font-size:15px}.story-facts{font-size:10px;gap:11px;margin:20px 0}.detail-actions{gap:14px}.episode-preview{flex:0 0 285px;display:block}.episode-preview>img{width:100%;height:170px}.episode-preview>div{padding:23px}.journey-cast article{flex-basis:235px}.offer-grid{grid-template-columns:1fr}.offer-grid .journey-card{padding:28px}.saved-book{grid-template-columns:1fr;gap:22px}.saved-book>img{max-width:220px;margin:auto}.journey-studio{padding-top:18px}.journey-studio .studio-card{padding:25px 18px}.journey-studio .stepper li{font-size:10px;line-height:1.5}.journey-studio .stepper li>span{flex-shrink:0}.journey-studio .lede{font-size:13px}.character-choice{flex-basis:225px}.character-choice>img{height:185px}.character-choice strong{font-size:22px}.character-choice small{font-size:11px}.photo-coming{align-items:flex-start;flex-wrap:wrap;padding:18px}.photo-coming>div{flex:1;min-width:170px}.photo-coming .soft-label{margin-left:43px}.topic-choice{flex-basis:145px}.reader-demo-note{margin:12px 16px 0;padding:14px 17px}.book-bottom{flex-wrap:wrap;gap:12px 22px}.book-review.book-link-button{min-height:44px}.journey-parent-grid{gap:18px}.empty-state h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){.character-choice,.topic-choice{transition:none}}

/* Long story briefs must not trap save controls below a sticky sidebar. */
.editor-page .editor-sidebar{position:static;align-self:start}

.pdf-page .eyebrow{color:#edce91}.pdf-page .pdf-actions p{color:#ded5ed}
@media(max-width:700px){body:not(.is-home) .site-header .nav-inner{height:auto;min-height:110px;gap:8px 14px;padding-top:12px;padding-bottom:8px}body:not(.is-home) .site-header nav{gap:16px}body:not(.is-home) .site-header nav a,body:not(.is-home) .site-header .draft-link{font-size:12px;min-height:44px;display:inline-flex;align-items:center}body:not(.is-home) .site-header .button.small{font-size:11px;min-height:44px;padding:11px 15px}.journey-page.container,.journey-studio.container,.editor-page.container,.pdf-page.container{width:calc(100% - 32px)}.journey-studio .studio-top{gap:12px;align-items:flex-start}.journey-studio .studio-top .eyebrow{font-size:9px;line-height:1.6}.editor-page .manuscript{padding:16px 12px}.editor-page .manuscript .scene-editor{padding:18px 12px}}
@media(max-width:370px){body:not(.is-home) .site-header:not(.reader-header) .nav-inner{grid-template-areas:'brand brand' 'links draft';grid-template-columns:minmax(0,1fr) auto}body:not(.is-home) .site-header:not(.reader-header) .nav-actions>.button{display:none}body:not(.is-home) .site-header:not(.reader-header) nav{gap:10px}body:not(.is-home) .site-header:not(.reader-header) nav a,body:not(.is-home) .site-header:not(.reader-header) .draft-link{font-size:11px}}

.pdf-page .section-heading>div>p{color:#ded5ed;margin-top:18px}.pdf-page-previews{display:flex;flex-direction:column;align-items:center;gap:26px;max-height:78vh;overflow:auto;padding:22px;background:#101b3e80;border:1px solid #bba5d24a;border-radius:18px}.pdf-page-previews figure{margin:0;width:min(100%,1050px)}.pdf-page-previews img{width:100%;height:auto;box-shadow:0 5px 20px #0003;background:white}.pdf-page-previews figcaption{text-align:center;color:#e5daed;font-size:12px;padding-top:12px}.pdf-preview-fallback{padding:18px;background:#fff4dd;color:#493452;border-radius:14px;margin-bottom:20px}

/* Family studio: original portrait choices, compact appearance controls and clear next steps. */
.avatar-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:8px 0 22px}.avatar-toolbar p{flex:1 1 160px;font-size:14px;color:#75617f}.avatar-toolbar .button{font-size:12px;min-height:44px}
.avatar-library{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:4px 3px 18px;scrollbar-width:thin;scrollbar-color:#b194c6 transparent}
.avatar-card{position:relative;flex:1 0 180px;min-width:0;max-width:230px;padding:0;border:2px solid #e5d7e9;border-radius:18px;background:#fff9f1;overflow:hidden;text-align:left;scroll-snap-align:start;color:#432552}
.avatar-card>.avatar-portrait{border-radius:0}.avatar-card>span:not(.avatar-portrait){padding:15px 17px;display:block}.avatar-card strong{display:block;font:23px/1.25 Georgia;overflow-wrap:anywhere}.avatar-card small{display:block;font-size:11px;color:#7c6686;margin-top:5px}.avatar-card>svg{display:none;position:absolute;top:10px;right:10px;background:#ffe8a8;color:#57306a;border-radius:50%;padding:6px;width:29px;height:29px}.avatar-card.selected{border-color:#9b66ad;box-shadow:0 0 0 2px #cda3dd40}.avatar-card.selected>svg{display:block}
.avatar-portrait{display:block;position:relative;aspect-ratio:1;overflow:hidden;background:#f6ecdf;border-radius:14px;flex-shrink:0}.avatar-portrait img,.avatar-portrait picture{display:block;width:100%;height:100%;object-fit:cover}.avatar-portrait.portrait-mama img,.avatar-portrait.portrait-papa img{position:absolute;inset:0;width:200%;height:100%;max-width:none;object-fit:cover}.portrait-papa img{transform:translateX(-50%)}
.avatar-portrait.avatar-sprite>.avatar-sheet{position:absolute;inset:0;max-width:none;width:400%;height:400%;object-fit:fill;transform:translate(calc(-25% * var(--avatar-col)),calc(-25% * var(--avatar-row)))}
.avatar-builder{margin:25px 0 30px;padding:26px;border:1px solid #d9c4e5;border-radius:20px;background:linear-gradient(135deg,#f4eafa,#fff6ed)}.builder-heading,.cast-heading,.topic-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.builder-heading h2,.cast-heading h2,.topic-heading h2{font:27px/1.2 Georgia;margin:7px 0;color:#492c5a}.builder-heading .text-link{font-size:12px;min-height:44px}.builder-heading .eyebrow{font-size:9px}.avatar-builder>p{font-size:13px;line-height:1.7;color:#766280;margin:12px 0 22px}.avatar-builder-body{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:30px;align-items:start}.builder-preview-wrap{position:sticky;top:25px}.builder-preview{width:100%;border:4px solid #fffaf3;box-shadow:0 12px 25px #7b518321;border-radius:22px}.builder-preview-wrap>span{display:block;text-align:center;font-size:11px;color:#826c8d;margin-top:12px}.builder-options{min-width:0}
.portrait-picker{display:flex;gap:8px;overflow-x:auto;padding:3px 2px 10px;scrollbar-width:thin}.portrait-picker button{flex:1 0 85px;min-width:0;max-width:120px;border:2px solid #e0cde7;background:#fffaf6;padding:5px;border-radius:12px;color:#684878}.portrait-picker button.selected{border-color:#9160ac;background:#eee0f6}.portrait-picker button>span:last-child{display:block;font-size:10px;line-height:1.5;margin:5px 0 2px}.portrait-picker .avatar-portrait{border-radius:8px}
.appearance-choice{margin:15px 0 20px}.appearance-choice>strong{display:block;font-size:12px;color:#60446f;margin-bottom:10px}.appearance-choice>div{display:flex;gap:10px;flex-wrap:wrap}.appearance-swatch{display:flex;flex-direction:column;align-items:center;gap:5px;border:1px solid transparent;border-radius:12px;padding:7px;min-width:62px;background:transparent;color:#70557c}.appearance-swatch i{width:27px;height:27px;box-shadow:inset 0 0 0 1px #0002;border-radius:50%;display:block}.appearance-swatch span{font-size:10px}.appearance-swatch.selected{border-color:#9e71b2;background:#fffaf7;box-shadow:0 2px 6px #734b8914}.builder-options>.button{margin-top:22px;font-size:13px}.avatar-builder #avatar-error{color:#942e50;margin-bottom:0}.avatar-builder .hint{margin:20px 0 0;font-size:11px}
.selected-cast{margin-top:22px;padding-top:22px;border-top:1px solid #e8dbea}.cast-heading>span,.topic-heading>span{font-size:11px;color:#876394;flex-shrink:0}.cast-name-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:20px}.studio-card .cast-name-fields label{display:flex;gap:13px;align-items:center;margin:0}.cast-name-fields .avatar-portrait{width:66px}.cast-name-fields label>span:last-child{flex:1;min-width:0;font-size:11px;color:#7d6489}.cast-name-fields input{margin-top:6px}.selected-cast>.hint{font-size:11px;margin:16px 0 0}.studio-card input,.studio-card textarea{min-width:0}.studio-card input:focus,.studio-card textarea:focus,.studio-card select:focus{outline:2px solid #a278bc;outline-offset:2px}
.topic-library{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}.topic-family{margin:0;min-width:0;padding:20px;border:1px solid #e3d4e7;border-radius:17px;background:#fffaf7}.topic-family legend{font:21px Georgia;color:#654274;padding:0 8px}.topic-family>div{display:flex;flex-wrap:wrap;gap:9px}.topic-pill{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:44px;border-radius:24px;border:1px solid #ddcbe5;background:#fff;color:#6c4b7e;padding:10px 15px;font-size:12px;line-height:1.5;text-align:left}.topic-pill svg{width:15px;height:15px;flex-shrink:0}.topic-pill.selected{background:#eee1f6;border-color:#9b6db2;color:#4e2c63;font-weight:700}.topic-heading+.hint{font-size:12px;margin-top:8px}
.story-brief-cast,.ready-cast{display:flex;gap:16px;overflow-x:auto;scrollbar-width:thin;padding-bottom:16px;margin:15px 0 10px}.story-brief-cast>span,.ready-cast>span{flex:0 0 76px;text-align:center;min-width:0}.story-brief-cast .avatar-portrait,.ready-cast .avatar-portrait{width:76px}.story-brief-cast strong,.ready-cast strong{font-size:11px;display:block;margin-top:8px;overflow-wrap:anywhere;color:#71527f}.book-next-steps{display:flex;flex-wrap:wrap;gap:18px 24px;background:#f0e6f5;border-radius:16px;padding:22px;margin:28px 0 18px;color:#6d4a80;font-size:12px}.book-next-steps>strong{flex-basis:100%;font:22px Georgia;color:#4e2e61}.book-next-steps>span{display:flex;align-items:center;gap:8px}.book-next-steps svg{width:20px;height:20px}.generation-status{font-size:11px;line-height:1.7;color:#796782}.journey-studio #form-error{margin-top:18px}.journey-studio .form-actions{padding-top:24px;border-top:1px solid #e5d7e8;margin-top:28px}
.ready-book-card{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:35px;align-items:center}.ready-book-cover{max-width:285px;transform:rotate(-3deg);margin:10px}.ready-book-cover img{width:100%;aspect-ratio:.8;object-fit:cover;border-radius:10px;box-shadow:8px 10px 0 #d4beca,15px 18px 22px #3c225524}.ready-book-card h2{font-size:34px}.ready-book-card>div{min-width:0}.ready-book-card .hint{font-size:11px}.ready-book-card p{overflow-wrap:anywhere}.ready-book-card .brief-summary{margin:14px 0}.ready-book-card .soft-label{font-size:10px}.book-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.book-destinations>a{display:flex;flex-direction:column;align-items:flex-start;padding:28px;transition:transform .2s,border-color .2s}.book-destinations>a:hover{transform:translateY(-3px);border-color:#d5b6e5}.book-destinations>a>svg{color:#9865ae;width:30px;height:30px;margin-bottom:25px}.book-destinations .eyebrow{font-size:8px;line-height:1.6}.book-destinations h2{font-size:29px}.book-destinations p{margin:0 0 24px;font-size:13px}.book-destinations .button{margin-top:auto;font-size:11px;min-height:44px;padding:12px 17px}.result-save-note{color:#d7cae7;font-size:12px;text-align:center;line-height:1.7;margin-top:26px}
@media(max-width:850px){.avatar-card{flex-basis:170px}.avatar-builder-body{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:22px}.avatar-builder{padding:22px}.portrait-picker button{flex-basis:75px}.book-destinations{gap:15px}.book-destinations>a{padding:22px}.book-destinations h2{font-size:25px}.book-destinations .button{font-size:10px;padding:11px 13px}}
@media(max-width:600px){.avatar-toolbar{gap:10px}.avatar-toolbar p{flex-basis:100%;font-size:13px}.avatar-toolbar .button{font-size:11px;padding:11px 13px}.avatar-card{flex:0 0 165px}.avatar-card strong{font-size:22px}.avatar-builder{padding:20px 14px}.builder-heading{align-items:flex-start}.builder-heading h2{font-size:25px}.avatar-builder-body{display:flex;flex-direction:column;gap:24px}.builder-preview-wrap{position:static;width:min(100%,230px);align-self:center}.builder-options{width:100%}.portrait-picker button{flex:0 0 85px}.appearance-choice>div{gap:6px}.appearance-swatch{min-width:49px;padding:6px}.appearance-swatch span{font-size:10px}.cast-name-fields{grid-template-columns:1fr;gap:15px}.cast-heading h2,.topic-heading h2{font-size:24px}.topic-heading{align-items:flex-start}.topic-heading>span{padding-top:8px}.topic-library{grid-template-columns:1fr;gap:22px}.topic-family{padding:16px 12px}.topic-pill{font-size:12px;padding:9px 12px}.topic-family legend{font-size:21px}.journey-studio .form-actions{align-items:stretch}.journey-studio .form-actions>.button{flex:1 1 auto;justify-content:center}.journey-studio .form-actions>.hint{flex-basis:100%;max-width:none}.ready-book-card{grid-template-columns:1fr;gap:27px;padding:25px}.ready-book-cover{max-width:210px;margin:4px auto 14px}.ready-book-card h2{font-size:29px}.book-destinations{grid-template-columns:1fr;gap:18px}.book-destinations>a{padding:25px}.book-destinations h2{font-size:29px}.book-destinations .button{font-size:12px}.book-destinations>a>svg{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.book-destinations>a{transition:none}.book-destinations>a:hover{transform:none}}

/* Haircuts preserve the chosen character; clear lenses remain a separate accessory. */
.haircut-choice{margin:20px 0 24px}.haircut-choice>strong{display:block;font-size:12px;color:#60446f;margin-bottom:10px}.haircut-choice>div{display:flex;gap:8px;flex-wrap:wrap}.haircut-choice button{border:1px solid #dac7e3;border-radius:20px;padding:10px 15px;min-height:44px;font-size:12px;line-height:1.4;background:#fffaf7;color:#70557c}.haircut-choice button.selected{border-color:#9966af;background:#ecdef4;color:#4e2c63;font-weight:700;box-shadow:0 2px 6px #734b8914}.avatar-builder .haircut-choice .hint{margin:10px 0 0;font-size:11px;line-height:1.6}.glasses-choice{padding-top:17px;border-top:1px solid #dfcee7}
.avatar-face-child-long{--glasses-left:27%;--glasses-top:33%;--glasses-width:55%;--glasses-angle:-10deg}.avatar-face-child-short{--glasses-left:27%;--glasses-top:32%;--glasses-width:54%;--glasses-angle:5deg}.avatar-face-parent-long{--glasses-left:32%;--glasses-top:30%;--glasses-width:48%;--glasses-angle:-9deg}.avatar-face-parent-short{--glasses-left:33%;--glasses-top:29%;--glasses-width:44%;--glasses-angle:-5deg}
.avatar-portrait>.avatar-glasses{position:absolute;inset:auto;width:var(--glasses-width);height:auto;left:var(--glasses-left);top:var(--glasses-top);max-width:none;object-fit:contain;transform:rotate(var(--glasses-angle));transform-origin:center;pointer-events:none}
@media(max-width:370px){.appearance-choice>div{gap:4px}.appearance-swatch{min-width:44px;padding:6px 4px}.haircut-choice button{font-size:11px;padding:10px 12px}}
/* Pricing follows the illustrated desktop and phone reference. */
.plan-page.container{padding-top:18px}
.plan-hero{
 position:relative;isolation:isolate;display:grid;place-items:center;
 min-height:clamp(255px,25vw,350px);padding:42px 20px 40px;
 overflow:hidden;border-radius:26px 26px 0 0;background:#121d49;
}
.plan-hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:22% center}
.plan-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 20%,#11193f48 35%,#11193f70 64%,transparent 95%)}
.plan-hero .plan-back{
 position:absolute;top:10px;left:14px;display:inline-flex;align-items:center;gap:6px;
 margin:0;min-height:42px;padding:6px 11px;border-radius:30px;background:#131b42df;color:#fff4d7;
}
.plan-back svg{width:16px;height:16px}
.plan-hero-copy{width:min(54%,620px);margin:0 auto;transform:translateX(10%);text-align:center;color:#fff2cf;text-shadow:0 2px 8px #111538}
.plan-hero-copy .eyebrow{color:#ffdf91;margin-bottom:10px}
.plan-hero-copy h1{font:700 clamp(37px,5vw,69px)/1.06 Georgia,serif;letter-spacing:-.02em;margin:0}
.plan-hero-copy p{font-size:clamp(14px,1.55vw,18px);line-height:1.55;margin:13px 0 0;color:#fff9ec}
.plan-page .plan-surface{
 position:relative;margin-top:-23px;padding:clamp(23px,3.1vw,38px) clamp(15px,3.9vw,48px);
 border:1px solid #f5ddbd;border-radius:54% 54% 24px 24px / 28px 28px 24px 24px;
 background:linear-gradient(145deg,#fffaf2,#fff3e2);box-shadow:0 16px 32px #101b4933;
}
.plan-page .plan-surface,.plan-block{color:#302142;scroll-margin-top:24px}
.plan-block{
 margin-block-start:clamp(34px,5vw,68px);border:1px solid #f5ddbd;border-radius:24px;
 background:#fffaf2;box-shadow:0 12px 30px #101b4929;
}
.plan-heading{text-align:center;margin:0 auto 12px}
.plan-heading h2,.plan-faq h2,.plan-magic h2{margin:0;font:700 clamp(27px,3.25vw,40px)/1.18 Georgia,serif;color:#361b57}
.plan-heading h2 svg{width:.9em;height:.9em;margin-inline-end:10px;vertical-align:-.09em;color:#ad741d}
.plan-heading p{margin:10px 0 0;color:#574765;font-size:16px;line-height:1.55}
.plan-preview-note{max-width:69ch;margin:0 auto 20px;text-align:center;color:#5e4d68;font-size:15px;line-height:1.55}
.plan-grid{display:grid;gap:clamp(16px,2vw,24px)}
.plan-grid-reading{grid-template-columns:repeat(2,minmax(0,1fr))}
.plan-grid-creator{grid-template-columns:repeat(3,minmax(0,1fr))}
.plan-creator-heading{margin-top:clamp(36px,4.1vw,54px);margin-bottom:23px}
.plan-card{
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto minmax(0,1fr) repeat(4,auto);
 align-items:start;column-gap:16px;min-width:0;position:relative;
 padding:clamp(20px,2.15vw,29px);border:1px solid #dfc4a3;border-radius:21px;
 background:linear-gradient(145deg,#fffdf8,#fff4e4);box-shadow:0 5px 16px #4b2c1815;
}
.plan-card>*{grid-column:1/-1}
.plan-grid-reading .plan-card{grid-template-columns:minmax(70px,28%) minmax(0,1fr)}
.plan-grid-reading .plan-card :is(h3,.plan-cost,.plan-summary){grid-column:2}
.plan-free{background:#fffdf8}
.plan-library{border-color:#a77ab8;background:linear-gradient(145deg,#fffcff,#f1e4f8);box-shadow:0 5px 16px #6038781c}
.plan-art{
 display:block;align-self:center;aspect-ratio:1;width:100%;background-image:url('/assets/pricing-books.webp');
 background-size:350% 116.67%;background-repeat:no-repeat;
}
.plan-grid-reading .plan-art{grid-row:1/4;grid-column:1}
.plan-art-free{background-position:4% 50%}
.plan-art-library{background-position:50% 50%}
.plan-art-annual{grid-row:3;grid-column:2;margin-block:-12px;background-position:96% 50%}
.plan-featured{grid-template-columns:minmax(0,1fr) clamp(50px,5vw,68px);border-color:#d59422;background:linear-gradient(145deg,#fffcf4,#ffedcd);box-shadow:0 0 0 1px #d59422,0 6px 19px #b1701925}
.plan-featured .plan-summary{grid-column:1}
.plan-card h3{grid-row:1;display:flex;align-items:center;gap:8px;font:700 clamp(23px,2.15vw,29px)/1.17 Georgia,serif;color:#3d2358}
.plan-card h3 svg{width:22px;height:22px;flex:none;color:#a26a1b}
.plan-badge{display:inline-block;border-radius:100px;padding:6px 12px;background:#74448d;color:#fff;font-size:12px;font-weight:700}
.plan-card .plan-badge{position:absolute;right:18px;top:0;transform:translateY(-50%)}
.plan-cost{
 grid-row:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 8px;
 margin:8px 0 clamp(16px,1.55vw,23px);font:700 clamp(43px,4.55vw,63px)/1.03 Georgia,serif;
 letter-spacing:-.045em;color:#35165b;font-variant-numeric:lining-nums tabular-nums;
}
.plan-cost small{display:inline-block;letter-spacing:normal;font:700 15px/1.2 system-ui,sans-serif;color:#3e2554}
.plan-summary{grid-row:3;margin:0;color:#594266;font-size:15px;line-height:1.45;font-weight:700}
.plan-alternate{color:#502b6e}
.plan-card ul{grid-row:4/8;display:grid;gap:8px;padding:0;margin:16px 0 19px;list-style:none;font-size:16px;line-height:1.52}
.plan-card li{display:flex;align-items:flex-start;gap:8px}
.plan-card li svg{width:17px;height:17px;flex:none;margin-top:3px;color:#996214}
.plan-card .plan-action{
 grid-row:8;justify-self:start;justify-content:center;min-height:46px;max-width:100%;padding:11px 17px;
 background:#70438b;border-color:#70438b;color:white;text-align:center;font-size:14px;
}
.plan-card .plan-action:hover{background:#5a336f}
.plan-grid-reading .plan-action{width:100%}
.plan-free .plan-action,.plan-grid-creator .plan-card:not(.plan-featured) .plan-action{background:#fffbf6;color:#603478}
.plan-free .plan-action:hover,.plan-grid-creator .plan-card:not(.plan-featured) .plan-action:hover{background:#f3e5f8}
.plan-library .plan-action{background:#603478;border-color:#603478}
.plan-library .plan-action:hover{background:#4e2864}
@supports(grid-template-rows:subgrid){
 @media(min-width:701px){
  .plan-grid-reading{row-gap:0}
  .plan-grid-reading .plan-card{grid-row:span 8;grid-template-rows:subgrid}
  .plan-grid-reading .plan-card ul{grid-template-rows:subgrid}
 }
 @media(min-width:961px){
  .plan-grid-creator{row-gap:0}
  .plan-grid-creator .plan-card{grid-row:span 8;grid-template-rows:subgrid}
  .plan-grid-creator .plan-card ul{grid-template-rows:subgrid}
 }
}
.plan-feature-section{padding:clamp(23px,3.5vw,44px) clamp(15px,3.9vw,48px)}
.plan-feature-section .plan-heading{margin-bottom:24px}
.plan-table-scroll-note{display:none;margin:0 0 9px;color:#5e4d68;font-size:14px}
.plan-table-scroll{
 overflow-x:auto;overscroll-behavior-x:contain;border:1px solid #e4cdb1;border-radius:16px;
 background:#fffdfa;scrollbar-width:thin;scrollbar-color:#a985b3 #f8edf1;
}
.plan-feature-table{
 width:100%;min-width:850px;table-layout:fixed;border-collapse:separate;border-spacing:0;
 font-size:14px;line-height:1.5;
}
.plan-feature-table th,.plan-feature-table td{padding:13px 10px;border-bottom:1px solid #eaddd7;text-align:center}
.plan-feature-table thead th{background:#eee1f2;color:#452565;vertical-align:top;font-size:15px}
.plan-feature-table thead th.plan-table-featured{background:#f8e5bb}
.plan-feature-table th:first-child{position:sticky;left:0;z-index:1;width:21%;padding-inline:15px;text-align:left}
.plan-feature-table tbody th{background:#fcf3e7;color:#412a53;font-weight:650}
.plan-feature-table tbody tr:nth-child(even) td{background:#fcf7f3}
.plan-feature-table tbody tr:last-child>*{border-bottom:0}
.plan-table-price{display:block;margin-top:4px;font:700 23px/1.2 Georgia,serif;color:#35165b}
.plan-table-price small,.plan-table-term{font:600 12px/1.4 system-ui,sans-serif}
.plan-table-term{display:block;margin-top:3px}
.plan-feature-yes{display:inline-flex;align-items:center;gap:4px;color:#4c315f;font-weight:650}
.plan-feature-yes svg{width:16px;height:16px;flex:none;color:#95611a}
.plan-feature-no{color:#665c6c}
.plan-faq{padding:clamp(23px,3.6vw,44px);background:#fcf3f9;border-color:#e6d5e8}
.plan-faq h2{margin-bottom:19px;font-size:clamp(25px,2.7vw,34px)}
.plan-faq summary{cursor:pointer;font-weight:700;color:#48275e;font-size:16px;line-height:1.45}
.plan-faq details p{margin:7px 0 0;color:#574765;font-size:16px;line-height:1.58}
.plan-faq details{padding:13px 0;border-top:1px solid #dfcce3}
.plan-magic{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;overflow:hidden;background:linear-gradient(145deg,#fff7ec,#f3e6f5)}
.plan-magic img{display:block;width:100%;height:auto}
.plan-magic-copy{padding:clamp(24px,4.4vw,62px)}
.plan-magic p{max-width:33ch;margin:15px 0 0;color:#574765;font-size:clamp(16px,1.5vw,19px);line-height:1.6}
.plan-magic .button{margin-top:22px}
@media(max-width:960px) and (min-width:701px){
 .plan-grid-creator{grid-template-columns:repeat(2,minmax(0,1fr))}
 .plan-grid-creator .plan-featured{grid-column:1/-1}
}
@media(max-width:960px){.plan-table-scroll-note{display:block}}
@media(max-width:700px){
 .plan-page.container{padding-top:10px}
 .plan-hero{min-height:228px;padding:47px 11px 37px;place-items:center end;border-radius:20px 20px 0 0}
 .plan-hero-art{inset:auto auto 0 0;width:135%;height:auto;max-width:none;mask-image:linear-gradient(180deg,transparent,#000 16%)}
 .plan-hero::after{background:linear-gradient(90deg,transparent 26%,#121c4560 47%,#121c45c9 100%)}
 .plan-hero-copy{width:56%;margin:0;transform:none;text-align:center}
 .plan-hero-copy h1{font-size:clamp(18px,5.4vw,40px)}
 .plan-hero-copy .eyebrow{font-size:9px;letter-spacing:1px}
 .plan-hero-copy p{font-size:14px;margin-top:8px}
 .plan-page .plan-surface{border-radius:53% 53% 19px 19px / 18px 18px 19px 19px}
 .plan-grid-reading,.plan-grid-creator,.plan-magic{grid-template-columns:minmax(0,1fr)}
 .plan-grid-reading .plan-card{grid-template-columns:minmax(58px,27%) minmax(0,1fr);column-gap:10px}
 .plan-card .plan-action{width:100%}
 .plan-featured{margin-top:5px}
 .plan-feature-table th:first-child{width:150px;padding-inline:11px}
 .plan-feature-table th,.plan-feature-table td{padding-block:11px}
}
@media(max-width:395px){
 .plan-card{padding:16px}
 .plan-grid-reading .plan-card{grid-template-columns:60px minmax(0,1fr)}
 .plan-cost{font-size:41px}
 .plan-cost small{font-size:13px}
}

.picture-review{min-width:0}
.picture-review legend{padding-inline:8px;color:var(--ink);font-weight:700}
.picture-review-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-block:20px}
.picture-review-grid figure{min-width:0;margin:0;border:1px solid #e5d9e9;border-radius:15px;overflow:hidden;background:#fffaf4}
.picture-review-grid img,.picture-review-missing{display:block;width:100%;aspect-ratio:3/2;object-fit:contain;background:#efe7f3}
.picture-review-missing{display:grid;place-items:center;margin:0;color:#5d4b69}
.picture-review-grid figcaption{display:grid;gap:4px;padding:12px}
.picture-review-grid figcaption p{margin:0}
.picture-review-grid .check{margin-block:5px 0}
@media(min-width:550px){.picture-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:920px){.picture-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.picture-review-art{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.picture-review-art:focus-visible{outline:3px solid #6e4386;outline-offset:-3px}
.picture-review-grid details{font-size:13px}
.picture-review-grid details p{margin-block:6px 0}

.pdf-name-options{margin-block:0 22px}
.pdf-name-options summary{cursor:pointer;color:#4d315f;font-weight:750}
.pdf-name-options fieldset{min-width:0;margin:14px 0 0;padding:0;border:0}
.pdf-name-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:12px;margin-block:12px}
.pdf-name-grid label{display:block;margin-bottom:5px;color:#4d315f;font-weight:650}
.pdf-name-grid small{font-weight:400}
.pdf-name-grid input{width:100%;min-width:0;border:1px solid #d8c8de;border-radius:10px;padding:10px;color:#302142;background:#fff}
.pdf-name-options #export-error{color:#8c2d29}
.pdf-actions[hidden],#pdf-name-pending[hidden]{display:none}

.premium-reading{margin:22px 0;background:linear-gradient(115deg,#fbf1e3,#f0e7fa);min-width:0}
.premium-reading-intro{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 22px}
.premium-reading-intro h2{margin:8px 0}
.premium-reading-intro p{margin:6px 0}
.premium-reading-intro .hint{font-size:12px}
.premium-reading-row{gap:16px;margin-top:16px;padding-bottom:10px}
.premium-preview{flex-basis:min(236px,84%)}
.premium-preview>div.library-cover{display:block;padding:0;flex:none}
.premium-preview .library-cover img{display:block;aspect-ratio:16/10}
.premium-preview>div:not(.library-cover){padding:16px}
.premium-preview h3{font:22px/1.2 Georgia,serif;margin:8px 0;color:#302142}
.premium-preview p{margin:0}

/* Parent account pages share the cream panels and dark blue frame. */
.account-page{max-width:1050px}
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.account-card{margin-bottom:20px;padding:clamp(20px,4vw,42px)}
.account-grid .account-card{margin:0;min-width:0}
.account-card h2{margin-top:0}
.account-card form{display:grid;justify-items:start;gap:12px}
.account-card form>label:not(.check){font-weight:700}
.account-card form>input:not([type=hidden]),.account-card select{width:100%;max-width:420px}
.account-card .check{align-items:flex-start}
.account-card .check input{flex:none}
.account-feedback{color:#8b2549;margin:0}
.account-feedback:empty{display:none}
.account-status{background:#fff7e4;color:#492e58;padding:14px 18px;border-radius:14px;margin:0 0 18px}
.account-books,.account-offers{padding-left:1.2em;display:grid;gap:14px}
.account-books li,.account-card p{overflow-wrap:anywhere}
.account-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.account-price{font-size:clamp(24px,4vw,42px);font-weight:750;color:#4c2862}
.account-footer-link .text-link{color:#fff1d0}
@media(max-width:680px){.account-grid{grid-template-columns:1fr}}
