:root {
--canvas: #fff8ee;
--surface: #fffdf8;
--surface-2: #f4e9df;
--border: #ded0d6;
--border-strong: #9b7f91;
--ink: #34243b;
--muted: #6e586d;
--accent: #663a75;
--accent-hover: #51285f;
--accent-ink: #ffffff;
--accent-text: #663a75;
--accent-strong: #51285f;
--accent-soft: #eee0f1;
--accent-border: #ba9bc3;
--success: #28744e;
--success-ink: #ffffff;
--success-soft: #e4f1e8;
--success-strong: #1e5a3c;
--warning: #93540b;
--warning-ink: #ffffff;
--warning-soft: #fff0cc;
--warning-strong: #774509;
--danger: #b52c47;
--danger-ink: #ffffff;
--danger-soft: #fbe5e9;
--danger-strong: #922039;
--chart-1: #663a75;
--chart-2: #d09170;
--chart-3: #b58d43;
--chart-4: #648676;
--chart-5: #697db3;
--chart-6: #ad7198;
--font-display: "Instrument Serif", Georgia, serif;
--font-body: "Nunito Sans", system-ui, sans-serif;
--font-sans: "Nunito Sans", system-ui, sans-serif;
--font-mono: monospace;
--display-weight: 400;
--display-tracking: -0.03em;
--eyebrow-tracking: .1em;
--radius-btn: 999px;
--radius-card: 24px;
--radius-input: 12px;
--shadow-card: 0 10px 35px rgba(0,0,0,.05);
--shadow-raised: 0 25px 65px rgba(0,0,0,.16);
--x-peach: #f6dac6;
--x-gold: #e3bd6d;
}
html[data-theme="dark"] {
--canvas: #211b29;
--surface: #2c2435;
--surface-2: #382d40;
--border: #57465f;
--border-strong: #a58aaf;
--ink: #fff6ed;
--muted: #d0bbce;
--accent: #dfb3ed;
--accent-hover: #eacff4;
--accent-ink: #302039;
--accent-text: #e8bff2;
--accent-strong: #efd2f6;
--accent-soft: #473050;
--accent-border: #9670a3;
--success: #28744e;
--success-ink: #ffffff;
--success-soft: #213c31;
--success-strong: #a5e3bc;
--warning: #93540b;
--warning-ink: #ffffff;
--warning-soft: #49331f;
--warning-strong: #f6d09c;
--danger: #b52c47;
--danger-ink: #ffffff;
--danger-soft: #472637;
--danger-strong: #ffb8c8;
--chart-1: #dfb3ed;
--chart-2: #eeb08e;
--chart-3: #d9b96f;
--chart-4: #9cc7ac;
--chart-5: #b6c6ec;
--chart-6: #e0a3cb;
--font-display: "Instrument Serif", Georgia, serif;
--font-body: "Nunito Sans", system-ui, sans-serif;
--font-sans: "Nunito Sans", system-ui, sans-serif;
--font-mono: monospace;
--display-weight: 400;
--display-tracking: -0.03em;
--eyebrow-tracking: .1em;
--radius-btn: 999px;
--radius-card: 24px;
--radius-input: 12px;
--shadow-card: 0 10px 35px rgba(0,0,0,.05);
--shadow-raised: 0 25px 65px rgba(0,0,0,.16);
--x-peach: #5b3c35;
--x-gold: #c49e53;
}

body{font-family:var(--font-body);background:var(--canvas);color:var(--ink)}
h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking)}h3{font-size:1.3rem;font-weight:750}p{line-height:1.75;color:var(--muted)}a{transition:color .2s}button,a,input,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--accent-border);outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:16px;background:var(--surface);padding:12px;z-index:50}.skip:focus{top:10px}
.site-nav{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 48px;border-bottom:1px solid var(--border);gap:24px}.wordmark{display:flex;align-items:center;gap:12px;font-weight:850;letter-spacing:.08em;font-size:1rem}.wordmark small{display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:0}.brand-mark{width:44px;height:48px;border-radius:40% 40% 12px 12px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}.site-nav nav{display:flex;align-items:center;gap:24px;font-size:.85rem;font-weight:700}.nav-create{white-space:nowrap}.eyebrow{font-size:.65rem;font-weight:800;letter-spacing:.16em;color:var(--accent-text);display:block;margin-bottom:24px}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding:72px 80px 88px;gap:40px}.hero h1{font-size:clamp(4rem,6.5vw,7rem);line-height:1;letter-spacing:-.045em;margin-bottom:28px}.hero h1 em{color:var(--accent-text);font-weight:400}.hero-copy>p{max-width:440px;font-size:1.05rem;margin-bottom:28px}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.hero-note{display:flex;align-items:center;gap:8px;font-size:.7rem;margin-top:32px;color:var(--muted)}.hero-visual{position:relative;display:grid;place-items:center;min-height:600px;background:radial-gradient(ellipse,var(--x-peach),transparent 68%)}.book-mockup{width:min(80%,370px);position:relative;transform:rotate(7deg);border-left:12px solid var(--accent-text);border-radius:8px 18px 18px 8px;box-shadow:var(--shadow-raised);background:var(--accent-soft);overflow:hidden}.storybook-art{width:100%;height:auto;display:block}.book-cover-copy{background:var(--surface);padding:20px;text-align:center}.book-cover-copy small{font-size:.5rem;letter-spacing:.12em;color:var(--muted)}.book-cover-copy h2{font-size:2.4rem;line-height:1.05;margin:10px 0}.book-cover-copy span{font-size:.65rem;color:var(--muted)}.orbit-label{position:absolute;top:5%;left:0;font-family:var(--font-display);font-style:italic;font-size:1.5rem;transform:rotate(-12deg);z-index:1}.keepsake-note{font-size:.75rem;position:absolute;bottom:0;right:5%;font-style:italic}.intro-band{background:var(--accent-soft);display:flex;justify-content:space-between;align-items:center;padding:40px max(6%,24px);gap:24px}.intro-band p{font-family:var(--font-display);font-size:2rem;margin:0;color:var(--ink);line-height:1.3}.intro-band strong{font-weight:400;color:var(--accent-strong)}.intro-band>span{font-size:.8rem;line-height:1.6;color:var(--accent-strong)}.section{max-width:1320px;margin:0 auto;padding:88px 48px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px}.section h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.section-head h2{margin-bottom:0}.section-head p{font-size:.9rem;max-width:360px;margin:0}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.theme-tile{border:1px solid var(--border);border-radius:24px;overflow:hidden;background:var(--surface);transition:transform .2s}.theme-tile:hover{transform:translateY(-5px)}.theme-picture{height:180px;display:grid;place-items:center;background:var(--accent-soft)}.theme-tile:nth-child(3n+2) .theme-picture{background:var(--x-peach)}.theme-tile:nth-child(3n+3) .theme-picture{background:var(--surface-2)}.theme-symbol{width:64px;height:64px;stroke:currentColor;stroke-width:1.3;fill:none;color:var(--accent-text)}.theme-copy{padding:24px}.theme-copy h3{margin:0 0 12px}.theme-copy p{font-size:.8rem;line-height:1.6;min-height:80px}.theme-copy small{display:block;font-size:.65rem;color:var(--muted);line-height:1.6;margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent-text);font-weight:750;font-size:.85rem;text-decoration:underline;text-underline-offset:5px}.text-link .icon{width:16px;height:16px}.process-band{background:var(--surface-2);max-width:none;padding-left:max(calc((100vw - 1224px)/2),48px);padding-right:max(calc((100vw - 1224px)/2),48px)}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin:48px 0}.step-number{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--accent-border);border-radius:50%;font-family:var(--font-display);font-size:1.6rem;margin-bottom:24px}.process-grid p{font-size:.9rem}.editions{display:grid;grid-template-columns:1fr 1fr;gap:96px}.editions p{max-width:500px}.page-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:32px 0}.page-chips span{border:1px solid var(--border);border-radius:12px;padding:18px 8px;text-align:center;font-weight:800}.editions dl{margin:24px 0}.editions dt{font-weight:800}.editions dd{margin:0 0 20px;color:var(--muted);font-size:.85rem}.edition-stack{display:grid;align-content:center;gap:16px}.edition-stack article{display:flex;align-items:center;gap:24px;padding:24px;border-radius:20px;background:var(--surface);border:1px solid var(--border)}.edition-stack article>span{display:grid;place-items:center;width:60px;height:72px;background:var(--accent-soft);border-radius:8px;color:var(--accent-strong);flex-shrink:0}.edition-stack article:nth-child(2)>span{background:var(--x-peach)}.edition-stack h3{margin-bottom:8px}.edition-stack p{font-size:.8rem;margin:0}.edition-stack small{color:var(--muted);font-size:.7rem}.dark-statement{background:var(--ink);color:var(--canvas);text-align:center;padding:88px 24px}.dark-statement .eyebrow{color:var(--canvas)}.dark-statement h2{font-size:clamp(3rem,6vw,6rem);line-height:1.05}.dark-statement .btn{background:var(--canvas);color:var(--ink)}.faq-section{max-width:960px}details{border-bottom:1px solid var(--border);padding:20px 0}summary{cursor:pointer;font-weight:750;line-height:1.5}details p{margin-top:16px;font-size:.9rem}.faq-section>.text-link{margin-top:24px}.site-footer{padding:48px;max-width:1320px;margin:0 auto;border-top:1px solid var(--border)}.site-footer p{font-size:.8rem}.site-footer small{font-size:.65rem;color:var(--muted)}.footer-links{display:grid;grid-template-columns:repeat(6,max-content);gap:24px;font-size:.75rem;margin:24px 0}.page-title{font-size:clamp(2.8rem,5vw,4.75rem);line-height:1.1;margin:16px 0 24px}.lead{font-size:1.1rem;max-width:750px}.narrow{max-width:850px}.auth-panel{max-width:540px;padding:72px 24px;margin:auto}.auth-panel h1{font-size:3rem;line-height:1.1}.auth-panel>p{font-size:.85rem}.story-field{display:flex;flex-direction:column;gap:8px;margin:20px 0}.story-field>span{font-size:.8rem;font-weight:750}.story-field input,.story-field textarea,.story-field select{width:100%}.story-field textarea{resize:vertical}.story-field+.btn{margin-top:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.info-note{border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--accent-strong);border-radius:16px;padding:24px;margin:24px 0;font-size:.85rem;line-height:1.7}.info-note form{margin-top:16px}.consent{display:flex;align-items:flex-start;gap:12px;font-size:.8rem;line-height:1.65;margin:24px 0}.consent input{margin-top:5px;width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}.wizard-wrap{max-width:1100px;margin:auto;padding:64px 32px}.wizard-heading{max-width:750px;margin-bottom:40px}#autosave-status{font-size:.75rem;color:var(--muted)}.wizard-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;border-bottom:1px solid var(--border);padding-bottom:24px;margin-bottom:32px}.wizard-tab{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:8px;background:none;border:0;text-align:left}.wizard-tab span{width:26px;height:26px;border:1px solid var(--border-strong);border-radius:50%;display:grid;place-items:center;flex-shrink:0}.wizard-tab.current{color:var(--accent-text);font-weight:800}.wizard-tab.current span{background:var(--accent);color:var(--accent-ink)}#book-wizard fieldset{padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:24px;min-width:0}#book-wizard legend{font-family:var(--font-display);font-size:2rem;padding:0 12px}.wizard-bottom{display:flex;justify-content:space-between;gap:16px;margin-top:24px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.option-grid.two{grid-template-columns:repeat(2,1fr)}.choice-card{border:1px solid var(--border-strong);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:12px;cursor:pointer}.choice-card:has(input:checked){background:var(--accent-soft);border-color:var(--accent-text)}.choice-card input{align-self:flex-start;accent-color:var(--accent)}.choice-card strong{font-size:1.2rem}.choice-card span{font-size:.75rem;color:var(--muted)}#wizard-review, .story-panel dl{display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:12px;font-size:.85rem;overflow-wrap:anywhere}dt{font-weight:750}dd{margin:0}.books-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.shelf-book{border:1px solid var(--border);border-radius:24px;overflow:hidden;background:var(--surface)}.shelf-cover{height:260px;background:var(--accent-soft);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;gap:24px}.shelf-cover h2{font-size:2rem;margin:0}.shelf-book>div:last-child{padding:24px}.shelf-book p{font-size:.8rem}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:32px 0}.story-panel{padding:32px;border:1px solid var(--border);border-radius:24px;background:var(--surface);margin:24px 0;min-width:0}.story-panel h2{font-size:2rem}.story-panel h3{margin-top:28px}.story-panel p{font-size:.85rem}.photo-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.photo-list img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:12px}[data-photo-canvas]{display:block;max-width:100%;height:auto;background:var(--surface-2);border-radius:16px}.reader-heading{text-align:center;margin:40px 0}.reader-heading h2{margin-bottom:16px}.page-reader{max-width:820px;margin:0 auto;background:var(--surface-2);padding:32px;border-radius:24px}.reader-stage{max-width:520px;margin:auto}.reader-page{background:var(--surface);aspect-ratio:148/210;box-shadow:var(--shadow-card);display:flex;flex-direction:column;overflow:hidden}.reader-page>img{width:100%;height:65%;object-fit:contain;min-height:0}.page-text{padding:24px;flex:1;overflow:auto}.page-text p{font-size:clamp(.75rem,1.3vw,1rem);color:var(--ink);white-space:pre-line;margin:0}.reader-page>small{display:block;text-align:center;font-size:.6rem;color:var(--muted);padding:8px}.locked-page{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;padding:32px;color:var(--muted)}.locked-page .icon{width:32px;height:32px;margin-bottom:24px}.locked-page p{font-size:.8rem}.reader-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0;font-size:.8rem}.reader-thumbnails{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.thumb{border:1px solid var(--border-strong);background:var(--surface);border-radius:6px;font-size:.6rem;padding:8px 2px;min-width:0}.thumb.active{background:var(--accent);color:var(--accent-ink)}.unlock-panel{padding:48px 24px;text-align:center;border-radius:24px;background:var(--accent-soft);margin:48px 0}.unlock-panel h2{margin-bottom:20px}.privacy-controls{margin-top:48px}.checkout-wrap{max-width:800px}.example-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:48px 0}.example-page{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;overflow:hidden}.example-page>div{padding:20px}.example-page h2{font-size:1.8rem}.example-page p{font-size:.8rem}.example-page small{font-size:.55rem;letter-spacing:.1em;color:var(--muted)}.theme-detail{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px;margin-top:48px}.theme-detail>svg{max-height:560px}.policy-copy{white-space:pre-wrap}.admin-wrap section{margin-top:64px;scroll-margin-top:32px}.admin-links{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:32px 0;font-size:.8rem;color:var(--accent-text)}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.admin-metrics article{padding:24px;background:var(--accent-soft);border-radius:16px}.admin-metrics strong{font-size:2rem;display:block}.admin-metrics span{font-size:.75rem;color:var(--muted)}.admin-wrap td{max-width:260px;overflow-wrap:anywhere;font-size:.75rem;white-space:normal}.admin-wrap section>form{max-width:650px}.print-row{border-top:1px solid var(--border);padding:20px 0}
@media(max-width:1050px){.site-nav{padding:20px 24px}.site-nav nav{gap:14px}.nav-create{display:none}.hero{padding:56px 40px;gap:24px}.hero-visual{min-height:510px}.hero h1{font-size:5rem}.theme-grid{grid-template-columns:repeat(3,1fr)}.editions{gap:40px}.example-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.site-nav{display:block;padding:20px}.site-nav .wordmark{justify-content:center}.site-nav nav{margin-top:20px;display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:14px;font-size:.75rem}.site-nav nav>.theme-toggle{justify-self:center}.hero{display:block;padding:48px 24px}.hero h1{font-size:4.7rem}.hero-copy>p{font-size:.95rem}.hero-visual{margin-top:48px;min-height:560px}.book-mockup{width:76%;max-width:300px}.orbit-label{font-size:1.2rem;top:0}.hero-actions{align-items:stretch;text-align:center}.hero-actions .text-link{justify-content:center}.hero-note{font-size:.65rem}.intro-band{display:block;padding:32px 24px}.intro-band p{font-size:1.8rem}.intro-band>span{display:block;margin-top:24px}.section{padding:56px 24px}.section-head{display:block}.section-head>p,.section-head>.btn{margin-top:24px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.theme-picture{height:130px}.theme-copy{padding:16px}.theme-copy p{font-size:.73rem;min-height:125px}.theme-copy h3{font-size:1.1rem}.theme-copy small{font-size:.6rem}.theme-copy .text-link{font-size:.7rem}.theme-symbol{width:48px;height:48px}.process-grid{display:block;margin:32px 0}.process-grid>div{margin-bottom:32px}.step-number{margin-bottom:16px}.editions{display:block}.edition-stack{margin-top:40px}.dark-statement{padding:64px 24px}.dark-statement h2{font-size:3.4rem}.site-footer{padding:32px 24px}.footer-links{grid-template-columns:repeat(2,1fr);gap:16px}.wizard-wrap{padding:40px 20px}.wizard-steps{gap:4px}.wizard-tab{flex-direction:column;font-size:.6rem;text-align:center}.wizard-tab span{width:24px;height:24px}#book-wizard fieldset{padding:20px 16px}#book-wizard legend{font-size:1.5rem}.form-grid,.review-grid,.books-grid,.theme-detail{grid-template-columns:1fr}.option-grid{gap:8px}.choice-card{padding:16px 8px}.choice-card strong{font-size:.85rem}.choice-card span{font-size:.65rem}.story-panel{padding:24px 20px}.page-reader{padding:16px}.reader-thumbnails{grid-template-columns:repeat(7,1fr)}.page-text{padding:16px}.reader-page>img{height:60%}.page-text p{font-size:.75rem}.reader-controls{font-size:.7rem}.example-grid{gap:12px}.example-page>div{padding:12px}.example-page h2{font-size:1.3rem}.example-page p{font-size:.7rem}.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-links{grid-template-columns:repeat(2,1fr)}.theme-detail{gap:32px}.info-note{padding:20px}.page-title{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.release-banner{padding:12px 24px;text-align:center;font-size:.75rem;background:var(--warning-soft);color:var(--warning-strong);line-height:1.6}

.sample-catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:48px}
.sample-catalogue-card{border:1px solid var(--border);border-radius:24px;background:var(--surface);overflow:hidden}
.sample-cover{aspect-ratio:4/3;overflow:hidden;display:grid;place-items:center;background:var(--accent-soft)}
.sample-cover img{width:100%;height:100%;object-fit:contain}.sample-cover>.storybook-art{height:100%;width:100%;object-fit:cover}
.sample-catalogue-copy{padding:32px}.sample-catalogue-copy h2{font-size:2.4rem}.sample-catalogue-copy .eyebrow{margin-bottom:16px}
.sample-book-dialog{width:min(1120px,94vw);max-width:94vw;height:90dvh;max-height:90dvh;border:1px solid var(--border);border-radius:24px;background:var(--surface);color:var(--ink);padding:24px;margin:auto;box-shadow:var(--shadow-raised)}
.sample-book-dialog::backdrop{background:rgba(0,0,0,.65)}
.sample-book-dialog[open]{display:flex;flex-direction:column;gap:16px}.sample-popup-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.sample-popup-header h2{font-size:2rem;margin:0}.sample-popup-tabs{display:flex;gap:12px}.sample-book-dialog p{font-size:.75rem;margin:0}
.sample-html-frame{width:100%;flex:1;min-height:200px;border:1px solid var(--border);border-radius:12px;background:var(--canvas)}
.sample-html-source{width:100%;flex:1;min-height:200px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--canvas);font-family:var(--font-mono);font-size:.75rem}
.sample-admin-cover{max-width:200px;margin-bottom:24px}.sample-admin-cover img{display:block;width:100%;height:auto;border-radius:12px}.sample-code-editor{font-family:var(--font-mono);font-size:.8rem}
@media(max-width:700px){.sample-catalogue{grid-template-columns:1fr}.sample-catalogue-copy{padding:24px}.sample-book-dialog{padding:16px;border-radius:16px}.sample-popup-header h2{font-size:1.5rem}.sample-popup-tabs{display:grid;grid-template-columns:1fr 1fr}}
