.night-sky-svg-container[data-astro-cid-tnpxmdvf]{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none}.night-sky-svg[data-astro-cid-tnpxmdvf]{width:100%;height:100%;pointer-events:none}.svg-sky-bg[data-astro-cid-tnpxmdvf]{animation:svgSkyShift 90s ease-in-out infinite alternate}@keyframes svgSkyShift{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.svg-stars-layer-1[data-astro-cid-tnpxmdvf]{animation:svgParallaxSlow 300s linear infinite}.svg-stars-layer-2[data-astro-cid-tnpxmdvf]{animation:svgParallaxMedium 180s linear infinite}.svg-stars-layer-3[data-astro-cid-tnpxmdvf]{animation:svgParallaxFast 240s linear infinite}@keyframes svgParallaxSlow{0%{transform:translate(0)}to{transform:translate(-100px)}}@keyframes svgParallaxMedium{0%{transform:translate(0)}to{transform:translate(-200px)}}@keyframes svgParallaxFast{0%{transform:translate(0)}to{transform:translate(-300px)}}.svg-star-tiny[data-astro-cid-tnpxmdvf],.svg-star-small[data-astro-cid-tnpxmdvf]{animation:svgTwinkle 6s ease-in-out infinite}.svg-star-medium[data-astro-cid-tnpxmdvf],.svg-star-large[data-astro-cid-tnpxmdvf]{animation:svgTwinkleBright 8s ease-in-out infinite}.svg-star-warm[data-astro-cid-tnpxmdvf]{animation:svgTwinkleDreamy 10s ease-in-out infinite!important}.svg-star-tiny[data-astro-cid-tnpxmdvf]:nth-child(2n){animation-delay:2s}.svg-star-tiny[data-astro-cid-tnpxmdvf]:nth-child(3n){animation-delay:4s}.svg-star-tiny[data-astro-cid-tnpxmdvf]:nth-child(5n){animation-delay:6s}.svg-star-small[data-astro-cid-tnpxmdvf]:nth-child(2n){animation-delay:1.5s}.svg-star-small[data-astro-cid-tnpxmdvf]:nth-child(3n){animation-delay:3s}.svg-star-small[data-astro-cid-tnpxmdvf]:nth-child(4n){animation-delay:4.5s}.svg-star-medium[data-astro-cid-tnpxmdvf]:nth-child(2n),.svg-star-large[data-astro-cid-tnpxmdvf]:nth-child(2n){animation-delay:2s}.svg-star-medium[data-astro-cid-tnpxmdvf]:nth-child(3n),.svg-star-large[data-astro-cid-tnpxmdvf]:nth-child(3n){animation-delay:4s}@keyframes svgTwinkle{0%,to{opacity:1}50%{opacity:.4}}@keyframes svgTwinkleBright{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.15)}}@keyframes svgTwinkleDreamy{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.svg-moon[data-astro-cid-tnpxmdvf]{animation:svgMoonGlow 12s ease-in-out infinite}@keyframes svgMoonGlow{0%,to{filter:drop-shadow(0 0 20px rgba(255,229,180,.4))}50%{filter:drop-shadow(0 0 30px rgba(255,229,180,.6))}}.svg-cloud-1[data-astro-cid-tnpxmdvf]{animation:svgCloudDrift 180s linear infinite}.svg-cloud-2[data-astro-cid-tnpxmdvf]{animation:svgCloudDrift 200s linear infinite;animation-delay:30s}@keyframes svgCloudDrift{0%{transform:translate(0)}to{transform:translate(1300px)}}@media (prefers-reduced-motion: reduce){.svg-sky-bg[data-astro-cid-tnpxmdvf],.svg-stars-layer[data-astro-cid-tnpxmdvf],.svg-star[data-astro-cid-tnpxmdvf],.svg-moon[data-astro-cid-tnpxmdvf],.svg-cloud[data-astro-cid-tnpxmdvf]{animation:none!important}}@media (max-width: 768px){.svg-moon[data-astro-cid-tnpxmdvf]{transform:scale(.8);transform-origin:150px 280px}}@font-face{font-family:Caveat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/caveat-400.woff2) format("woff2")}@font-face{font-family:Advent Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/adventpro-400.woff2) format("woff2")}:root{--color-primary-50: #e8ecf0;--color-primary-100: #d9e2ec;--color-primary-300: #a0aec0;--color-primary-500: #4a5568;--color-primary-700: #2d3748;--color-primary-900: #1a202c;--color-accent-50: #fff5f5;--color-accent-200: #fed7d7;--color-accent-500: #f56565;--color-accent-700: #c53030;--color-night-50: #e2e8f0;--color-night-300: #cbd5e0;--color-night-500: #718096;--color-night-700: #4a5568;--color-night-900: #1a202c;--color-moon: var(--color-primary-50);--color-twilight: var(--color-primary-300);--color-midnight: var(--color-primary-700);--color-dream: var(--color-accent-200);--color-story: var(--color-accent-500);--text-primary: #2d3748;--text-secondary: #4a5568;--text-muted: #718096;--text-inverse: #ffffff;--bg-primary: #fafbfc;--bg-secondary: #f7fafc;--bg-surface: #fafbfc;--bg-night: #1a202c;--border-primary: #e2e8f0;--border-secondary: #edf2f7;--border-focus: var(--color-accent-500);--font-family-system: "Caveat", cursive, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-display: "Caveat", cursive;--font-size-xs: 16px;--font-size-sm: 18px;--font-size-base: 22px;--font-size-lg: 24px;--font-size-xl: 28px;--font-size-2xl: 32px;--font-size-3xl: 38px;--font-size-4xl: 44px;--font-size-5xl: 56px;--font-size-6xl: 72px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--radius-none: 0;--radius-sm: 8px;--radius-base: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 50%;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--shadow-focus: 0 0 0 3px rgba(245, 101, 101, .1);--shadow-glow: 0 0 20px rgba(245, 101, 101, .3);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--container-max-width: 1200px;--content-max-width: 768px;--sidebar-width: 280px;--header-height: 64px;--z-base: 0;--z-dropdown: 50;--z-sticky: 100;--z-overlay: 200;--z-modal: 300;--z-popover: 400;--z-toast: 1000}:root{--color-success: #10b981;--color-success-bg: #ecfdf5;--color-error: #ef4444;--color-error-bg: #fef2f2;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--color-info: #3b82f6;--color-info-bg: #ebf8ff}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-extrabold{font-weight:var(--font-weight-extrabold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-inverse{color:var(--text-inverse)}.text-story{color:var(--color-story)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.p-0{padding:0}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-surface{background-color:var(--bg-surface)}.bg-night{background-color:var(--bg-night)}.bg-moon{background-color:var(--color-moon)}.bg-dream{background-color:var(--color-dream)}.bg-story{background-color:var(--color-story)}.bg-success{background-color:var(--color-success-bg)}.bg-error{background-color:var(--color-error-bg)}.bg-warning{background-color:var(--color-warning-bg)}.bg-info{background-color:var(--color-info-bg)}.border{border:1px solid var(--border-primary)}.border-0{border:0}.border-2{border:2px solid var(--border-primary)}.border-secondary{border-color:var(--border-secondary)}.border-focus{border-color:var(--border-focus)}.border-story{border-color:var(--color-story)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-focus{box-shadow:var(--shadow-focus)}.shadow-glow{box-shadow:var(--shadow-glow)}.container{max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.flex{display:flex}.inline-flex{display:inline-flex}.block{display:block}.inline-block{display:inline-block}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.z-0{z-index:var(--z-base)}.z-10{z-index:var(--z-dropdown)}.z-20{z-index:var(--z-sticky)}.z-30{z-index:var(--z-overlay)}.z-40{z-index:var(--z-modal)}.z-50{z-index:var(--z-toast)}.transition{transition:var(--transition-base)}.transition-fast{transition:var(--transition-fast)}.transition-slow{transition:var(--transition-slow)}.hover\:shadow-md:hover{box-shadow:var(--shadow-md)}.hover\:shadow-lg:hover{box-shadow:var(--shadow-lg)}.hover\:bg-secondary:hover{background-color:var(--bg-secondary)}.focus\:shadow-focus:focus{box-shadow:var(--shadow-focus)}.focus\:border-focus:focus{border-color:var(--border-focus)}.card{background:var(--color-night-50);padding:var(--space-6);border-radius:var(--radius-lg);display:grid;gap:var(--space-4)}.input-field{min-height:38px;padding:var(--space-2) var(--space-3);border:2px solid var(--border-primary);border-radius:var(--radius-base);font-size:var(--font-size-base);background:var(--bg-surface);transition:var(--transition-base)}.input-field:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--shadow-focus)}.grid{display:grid}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.btn-base{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);min-height:44px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;white-space:nowrap;width:auto;max-width:fit-content}.btn-base:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s}.btn-base:hover:not(:disabled):before{transform:translate(100%)}.btn-base:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #6366f14d}.btn-base:active:not(:disabled){transform:translateY(0)}.btn-base:disabled{background:var(--color-night-50);color:var(--text-secondary);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.btn-generate{background:linear-gradient(135deg,#3b82f6,#06b6d4);color:#fff;box-shadow:0 4px 14px #3b82f640;letter-spacing:.025em}.btn-generate:disabled{background:linear-gradient(135deg,#3b82f6,#06b6d4);color:#fff;cursor:not-allowed;opacity:.6}.btn-generate:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#0891b2)}.btn-icon{font-size:var(--font-size-xl);line-height:1}.btn-small{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border:none;border-radius:var(--radius-base);cursor:pointer;transition:var(--transition-base);background:var(--color-night-50);color:var(--text-primary)}.btn-small:hover{background:var(--border-primary)}.btn-read,.btn-read-story{background:#667eea;color:var(--text-inverse)}.btn-read:hover,.btn-read-story:hover{background:#5a67d8}.btn-publish{background:var(--color-night-50);color:var(--text-primary)}.btn-publish:hover{background:var(--border-primary)}.btn-read-story{width:100%}.btn-load-more{padding:var(--space-3) var(--space-8)}.btn-expand{background:var(--bg-tertiary);color:var(--text-primary);font-weight:var(--font-weight-medium);transition:all .2s ease-in-out}.btn-expand:hover{background:var(--color-night-100);transform:translateY(-1px)}.btn-expand:active{transform:translateY(0)}.btn-like{background:none;border:none;cursor:pointer;font-size:var(--font-size-lg);padding:var(--space-1) var(--space-2);display:inline-flex;align-items:center;gap:var(--space-1);transition:transform .2s ease;color:var(--text-primary)}.btn-like:hover:not(:disabled){transform:scale(1.1)}.btn-like:active:not(:disabled){transform:scale(.95)}.btn-like:disabled{opacity:.6;cursor:not-allowed}.btn-like.liked{animation:heartbeat .3s ease;color:#dc2626}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.like-count{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}@media (max-width: 640px){.btn-base{width:100%;max-width:100%;min-height:48px}.btn-generate{width:100%;max-width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base)}.btn-icon{font-size:var(--font-size-lg);flex-shrink:0}}.story-card,.public-story-card{background:var(--color-moon);border-radius:var(--radius-xl);box-shadow:var(--shadow-base);transition:var(--transition-base)}.story-card{padding:var(--space-6);position:relative;display:flex;flex-direction:column;min-height:200px}.public-story-card{overflow:hidden;cursor:pointer;position:relative;z-index:1;display:flex;flex-direction:column}.story-card:hover,.public-story-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.story-card-header{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.story-thumbnail{width:80px;height:80px;object-fit:cover;border-radius:var(--radius-lg)}.story-thumbnail-placeholder{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#4a5568;border-radius:var(--radius-lg);font-size:var(--font-size-3xl);position:relative}.story-thumbnail-placeholder:after{content:"✨";position:absolute;top:8px;right:12px;font-size:var(--font-size-lg)}.story-card-info{flex:1}.story-title,.public-story-title{font-size:var(--font-size-xl);margin:0 0 var(--space-2) 0;color:var(--text-primary)}.story-meta,.public-story-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);align-items:center;font-size:var(--font-size-sm);color:var(--text-muted)}.story-meta{padding-bottom:var(--space-3)}.public-story-meta{margin-top:auto;margin-bottom:0;gap:var(--space-3)}.meta-item{display:flex;align-items:center;gap:var(--space-1)}.story-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.badge-public{background:var(--color-success-bg);color:var(--color-success)}.badge-private{background:var(--color-error-bg);color:var(--color-error)}.btn-delete-icon{position:absolute;top:var(--space-2);right:var(--space-2);background:none;border:none;cursor:pointer;font-size:var(--font-size-base);color:var(--text-tertiary);opacity:.3;transition:opacity .2s ease;z-index:10;padding:var(--space-1);line-height:1}.btn-delete-icon:hover{opacity:.6}.story-card-actions{display:flex;flex-wrap:nowrap;gap:var(--space-2);padding-top:var(--space-2);margin-top:auto}.story-card-actions .btn-small{flex:1 1 0;min-width:0;padding:var(--space-3) var(--space-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-content-expanded{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border-primary);animation:slideDown .3s ease-out;transform-origin:top}@keyframes slideDown{0%{opacity:0;max-height:0;padding-top:0;margin-top:0}to{opacity:1;max-height:2000px;padding-top:var(--space-6);margin-top:var(--space-6)}}.story-full-content{line-height:var(--line-height-relaxed);color:var(--text-secondary);white-space:pre-wrap;margin-bottom:var(--space-4)}.story-full-image,.story-modal-image{width:100%;border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.story-modal-image{max-width:400px;margin-left:auto;margin-right:auto;display:block}.story-full-image{max-width:400px;margin-top:var(--space-4)}.public-story-image-wrapper{width:100%;height:200px;overflow:hidden}.public-story-image{width:100%;height:100%;object-fit:cover}.public-story-image-placeholder{width:100%;height:200px;display:flex;align-items:center;justify-content:center;background:#4a5568;position:relative}.public-story-image-placeholder:after{content:"✨";position:absolute;top:24px;right:40%;font-size:var(--font-size-3xl)}.placeholder-icon{font-size:var(--font-size-6xl)}.public-story-content{padding:var(--space-6);background:var(--color-moon);display:flex;flex-direction:column;flex:1}.public-story-excerpt{color:var(--text-secondary);line-height:var(--line-height-normal);margin-bottom:var(--space-4);min-height:3.2em}.empty-state,.error-state{text-align:center;padding:var(--space-16) var(--space-8)}.empty-state h2,.error-state h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-4);color:#fff}.empty-state p,.error-state p{font-size:var(--font-size-lg);color:#fff;margin-bottom:var(--space-8)}.modal-overlay{position:fixed;inset:0;background:#14141ef2;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);backdrop-filter:blur(10px);animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-close{position:absolute;top:-20px;right:0;background:#fffffff2;border:none;font-size:var(--font-size-3xl);cursor:pointer;color:var(--text-primary);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:var(--transition-base);z-index:100;box-shadow:0 4px 12px #0000004d}.modal-close:hover{background:#fff;transform:scale(1.1) rotate(90deg);box-shadow:0 6px 20px #0006}.modal-close:focus{outline:3px solid var(--color-accent-500);outline-offset:3px}@media (max-width: 768px){.modal-overlay{padding:0}.modal-close{position:fixed;top:var(--space-3);right:var(--space-3);width:40px;height:40px;z-index:1000;background:#fffffff2}}@media (max-width: 480px){.modal-close{top:env(safe-area-inset-top,var(--space-2));right:env(safe-area-inset-right,var(--space-2));width:36px;height:36px;font-size:var(--font-size-2xl)}}.book-reader{position:relative;width:100%;max-width:1200px;height:90vh;max-height:800px;display:flex;flex-direction:column;align-items:center;gap:var(--space-6)}.book-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6)}.book{position:relative;width:100%;max-width:1000px;aspect-ratio:16 / 10;max-height:650px;perspective:2500px;perspective-origin:center;transition:all .6s ease}.book-cover-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform-style:preserve-3d;transition:all 1s cubic-bezier(.68,-.55,.265,1.55);pointer-events:all;z-index:10}.book-closed .book-cover-wrapper{opacity:1;transform:rotateY(0) translateZ(0)}.book-open .book-cover-wrapper{opacity:0;transform:rotateY(-120deg) translateZ(-200px);pointer-events:none}.book-cover-front{width:50%;max-width:500px;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-xl);box-shadow:0 30px 60px #00000080,0 0 0 2px #ffffff1a,inset 0 0 100px #ffffff0d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8);cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.book-cover-front:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 50%,rgba(0,0,0,.1) 100%);pointer-events:none}.book-cover-front:hover{transform:scale(1.02);box-shadow:0 35px 70px #0009,0 0 0 2px #fff3,inset 0 0 100px #ffffff14}.book-cover-front:focus{outline:3px solid rgba(255,255,255,.8);outline-offset:5px}.book-cover-image{width:100%;max-width:300px;max-height:45%;object-fit:contain;border-radius:var(--radius-lg);box-shadow:0 10px 30px #0006;position:relative;z-index:1}.book-cover-placeholder{width:200px;height:200px;background:#ffffff26;border-radius:var(--radius-lg);position:relative;z-index:1}.book-cover-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:#fff;text-align:center;text-shadow:0 3px 15px rgba(0,0,0,.4);line-height:var(--line-height-tight);margin:0;padding:0 var(--space-4);position:relative;z-index:1}.book-open-prompt{font-size:var(--font-size-sm);color:#fffc;text-transform:uppercase;letter-spacing:2px;padding:var(--space-3) var(--space-6);border:2px solid rgba(255,255,255,.3);border-radius:var(--radius-full);animation:pulse 2s ease-in-out infinite;position:relative;z-index:1}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.book-open-container{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform-style:preserve-3d;transition:opacity .6s ease}.book-open .book-open-container{opacity:1;pointer-events:all}.book.opening .book-open-container{animation:bookOpening 1s cubic-bezier(.68,-.55,.265,1.55)}@keyframes bookOpening{0%{opacity:0;transform:scale(.8) rotateX(-15deg)}to{opacity:1;transform:scale(1) rotateX(0)}}.book-page{position:relative;width:48%;height:100%;background:#fdfcf9;box-shadow:0 2px 10px #0000001a,inset 0 0 50px #8b776508;display:flex;flex-direction:column;transform-style:preserve-3d;overflow:hidden}.book-page-left{border-radius:var(--radius-xl) 0 0 var(--radius-xl);background:linear-gradient(to right,#fdfcf9 85%,#f5f3f0)}.book-page-right{border-radius:0 var(--radius-xl) var(--radius-xl) 0;background:linear-gradient(to left,#fdfcf9 85%,#f5f3f0)}.page-shadow{position:absolute;top:0;bottom:0;width:30px;pointer-events:none;z-index:1}.page-shadow-left{right:0;background:linear-gradient(to left,rgba(0,0,0,.08),transparent)}.page-shadow-right{left:0;background:linear-gradient(to right,rgba(0,0,0,.08),transparent)}.page-content{flex:1;padding:var(--space-10) var(--space-8);display:flex;flex-direction:column;position:relative;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.page-inner{flex:1;color:var(--text-primary);line-height:var(--line-height-relaxed);font-size:var(--font-size-base)}.page-number{position:absolute;bottom:var(--space-4);font-size:var(--font-size-sm);color:var(--text-muted);font-weight:var(--font-weight-medium)}.page-number-left{left:var(--space-8)}.page-number-right{right:var(--space-8)}.story-text{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;font-family:var(--font-family-display);font-size:var(--font-size-lg);line-height:1.8;color:#2d2d2d}.title-page{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-6);text-align:center}.title-page-image{max-width:80%;max-height:200px;object-fit:contain;border-radius:var(--radius-lg);box-shadow:0 4px 20px #00000026}.title-page-heading{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0;line-height:var(--line-height-tight)}.title-page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.title-page-divider{width:100px;height:2px;background:linear-gradient(to right,transparent,var(--color-accent-500),transparent)}.title-page-subtitle{font-size:var(--font-size-lg);color:var(--text-muted);font-style:italic;margin:0}.end-page{display:flex;align-items:center;justify-content:center;height:100%;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-muted);font-style:italic}.book-spine{position:absolute;left:50%;top:0;bottom:0;width:20px;background:linear-gradient(to right,#00000026,#00000040 20%,#0000004d,#00000040 80%,#00000026);transform:translate(-50%);z-index:5;pointer-events:none;box-shadow:inset 0 0 5px #0000004d,0 0 10px #0003}.turning-page{position:absolute;top:0;right:2%;width:48%;height:100%;transform-style:preserve-3d;transform-origin:left center;pointer-events:none;z-index:20;opacity:0}.turning-page.flipping-forward,.turning-page.flipping-backward{opacity:1}.turning-page-front,.turning-page-back{position:absolute;inset:0;background:#fdfcf9;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:0 var(--radius-xl) var(--radius-xl) 0;box-shadow:-5px 0 15px #0003,0 2px 10px #0000001a}.turning-page-front{transform:rotateY(0);z-index:2}.turning-page-back{transform:rotateY(180deg);background:linear-gradient(to right,#f5f3f0,#fdfcf9 15% 100%);border-radius:var(--radius-xl) 0 0 var(--radius-xl)}.turning-page.flipping-forward{animation:pageFlipForward .8s cubic-bezier(.645,.045,.355,1);transform-origin:left center}@keyframes pageFlipForward{0%{transform:rotateY(0) translateZ(0)}25%{transform:rotateY(-45deg) translateZ(50px)}50%{transform:rotateY(-90deg) translateZ(80px)}75%{transform:rotateY(-135deg) translateZ(50px)}to{transform:rotateY(-180deg) translateZ(0)}}.turning-page.flipping-backward{animation:pageFlipBackward .8s cubic-bezier(.645,.045,.355,1);transform-origin:right center;right:auto;left:2%}@keyframes pageFlipBackward{0%{transform:rotateY(0) translateZ(0)}25%{transform:rotateY(45deg) translateZ(50px)}50%{transform:rotateY(90deg) translateZ(80px)}75%{transform:rotateY(135deg) translateZ(50px)}to{transform:rotateY(180deg) translateZ(0)}}.click-zone{position:absolute;top:0;bottom:0;width:30%;cursor:pointer;z-index:8;transition:background-color .2s ease}.click-zone-left{left:0;border-radius:var(--radius-xl) 0 0 var(--radius-xl)}.click-zone-right{right:0;border-radius:0 var(--radius-xl) var(--radius-xl) 0}.click-zone:hover{background:#ffffff08}.book-nav{position:absolute;top:50%;transform:translateY(-50%);background:#fffffff2;border:none;width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);transition:all .3s ease;z-index:50;box-shadow:0 4px 12px #0003;opacity:.7}.book:hover .book-nav:not(:disabled){opacity:1}.book-nav:hover:not(:disabled){background:#fff;transform:translateY(-50%) scale(1.15);box-shadow:0 6px 20px #0000004d}.book-nav:active:not(:disabled){transform:translateY(-50%) scale(1.05)}.book-nav:disabled{opacity:.2;cursor:not-allowed}.book-nav-prev{left:-60px}.book-nav-next{right:-60px}.book-nav:focus{outline:3px solid var(--color-accent-500);outline-offset:3px}.page-content::-webkit-scrollbar{width:6px}.page-content::-webkit-scrollbar-track{background:#00000008;border-radius:var(--radius-base)}.page-content::-webkit-scrollbar-thumb{background:#00000026;border-radius:var(--radius-base)}.page-content::-webkit-scrollbar-thumb:hover{background:#00000040}@media (max-width: 1024px){.book-nav-prev{left:var(--space-2)}.book-nav-next{right:var(--space-2)}}@media (max-width: 768px){.book-reader{max-height:100dvh;height:100dvh}.book{max-width:100%;max-height:100dvh;height:100dvh}.book-cover-front{width:75%;max-width:450px}.book-open .book-page-left,.book-open .book-spine{display:none}.book-open .book-page-right{width:100%;height:100%;border-radius:var(--radius-xl);background:#fdfcf9}.book-open .page-shadow-left{display:none}.page-content{padding:var(--space-6) var(--space-4);padding-bottom:var(--space-20);height:100%;justify-content:flex-start}.page-inner{display:flex;flex-direction:column;justify-content:center;min-height:60vh}.story-text{font-size:var(--font-size-base);line-height:1.7}.book-cover-title,.title-page-heading{font-size:var(--font-size-3xl)}.title-page-title{font-size:var(--font-size-2xl)}.book-nav{position:fixed;top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-4));width:44px;height:44px;opacity:.9}.book-nav-prev{left:var(--space-3)}.book-nav-next{right:var(--space-3)}.book-nav:hover:not(:disabled),.book-nav:active:not(:disabled){transform:none}.page-number{bottom:var(--space-16)}.page-number-right{right:50%;transform:translate(50%)}.book-spine{width:15px}.click-zone{width:45%}.turning-page.flipping-forward{width:100%;right:0}.turning-page.flipping-backward{width:100%;left:0}}@media (max-width: 480px){.book-cover-front{padding:var(--space-6);width:80%;max-width:400px}.book-cover-title,.title-page-heading{font-size:var(--font-size-2xl)}.title-page-title{font-size:var(--font-size-xl)}.book-cover-image,.title-page-image{max-width:200px;max-height:150px}.page-content{padding:var(--space-4) var(--space-3);padding-bottom:var(--space-16)}.story-text{font-size:var(--font-size-sm);line-height:1.65}.book-nav{bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-3))}.book-nav-prev{left:var(--space-2)}.book-nav-next{right:var(--space-2)}.book-spine{width:12px}.page-shadow{width:20px}.end-page{font-size:var(--font-size-2xl)}.book-open-prompt{font-size:var(--font-size-xs);padding:var(--space-2) var(--space-4)}}@media (max-width: 360px){.page-content{padding:var(--space-3) var(--space-2);padding-bottom:var(--space-14)}.story-text{font-size:var(--font-size-xs)}.book-page-left,.book-page-right{border-radius:var(--radius-lg)}}@media (prefers-reduced-motion: reduce){.turning-page.flipping-forward,.turning-page.flipping-backward{animation-duration:.3s}.book.opening .book-open-container{animation-duration:.4s}.book-cover-wrapper{transition-duration:.4s}.book-open-prompt{animation:none}}.modal-share{position:absolute;top:-20px;right:60px;background:#fffffff2;border:none;cursor:pointer;color:var(--text-primary);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all .3s ease;z-index:100;box-shadow:0 4px 12px #0000004d}.modal-share svg{stroke:currentColor}.modal-share:hover{background:#fff;transform:scale(1.1);box-shadow:0 6px 20px #0006}.modal-share:focus{outline:3px solid var(--color-accent-500);outline-offset:3px}@media (max-width: 768px){.modal-share{position:fixed;top:var(--space-3);right:calc(var(--space-3) + 48px);width:40px;height:40px;z-index:1000}}@media (max-width: 480px){.modal-share{right:calc(env(safe-area-inset-right,var(--space-2)) + 44px);width:36px;height:36px}.modal-share svg{width:16px;height:16px}}@media print{.modal-close,.modal-share,.book-nav,.click-zone,.book-cover-wrapper,.book-spine{display:none}.book-open-container{opacity:1;position:relative}.book-page{page-break-after:always}.page-shadow{display:none}}.share-menu-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:10001;opacity:0;transition:opacity .3s ease}.share-menu-overlay.show{opacity:1}.share-menu-overlay.show .share-menu-content{transform:translateY(0)}.share-menu-content{background:#fff;border-radius:20px 20px 0 0;padding:2rem;width:100%;max-width:500px;transform:translateY(100%);transition:transform .3s ease}.share-menu-content h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;text-align:center;color:#1a202c}.share-buttons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.share-social-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.25rem;border:2px solid #e2e8f0;border-radius:12px;background:#fff;color:#1a202c;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s ease;cursor:pointer}.share-social-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.share-social-btn:active{transform:translateY(0)}.share-facebook{border-color:#1877f2;color:#1877f2}.share-facebook:hover{background:#1877f2;color:#fff}.share-twitter{border-color:#1da1f2;color:#1da1f2}.share-twitter:hover{background:#1da1f2;color:#fff}.share-instagram{border-color:#e4405f;color:#e4405f}.share-instagram:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff;border-color:transparent}.share-tiktok{border-color:#000;color:#000}.share-tiktok:hover{background:#000;color:#00f2ea}.share-pinterest{border-color:#e60023;color:#e60023}.share-pinterest:hover{background:#e60023;color:#fff}.share-copy{border-color:#718096;color:#718096}.share-copy:hover{background:#718096;color:#fff}.share-menu-cancel{width:100%;padding:1rem;border:none;border-radius:12px;background:#f7fafc;color:#1a202c;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s ease}.share-menu-cancel:hover{background:#e2e8f0}@media (min-width: 769px){.share-menu-overlay{align-items:center}.share-menu-content{border-radius:20px;max-width:450px;transform:scale(.9);opacity:0}.share-menu-overlay.show .share-menu-content{transform:scale(1);opacity:1}.share-buttons-grid{grid-template-columns:repeat(3,1fr)}}header{background:#e8ecf066;backdrop-filter:blur(10px);position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky)}header nav{padding:var(--space-4) var(--space-4)}header .nav-container{max-width:var(--container-max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--space-6)}header .branding{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}header .branding:link,header .branding:visited,header .branding:hover,header .branding:active,header .branding:focus{text-decoration:none}header .branding-logo{width:40px;height:40px}header .branding-name{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-shadow:0 0 10px rgba(255,255,255,.9),0 0 20px rgba(232,236,240,.8),1px 1px 2px rgba(255,255,255,.7),-1px -1px 2px rgba(255,255,255,.7);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-content{display:flex;align-items:center}.nav-links{display:flex;gap:var(--space-8);margin-right:var(--space-6)}.nav-links a{text-decoration:none;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);text-shadow:0 0 8px rgba(255,255,255,.8),1px 1px 2px rgba(232,236,240,.6)}.nav-links a:link,.nav-links a:visited,.nav-links a:hover,.nav-links a:active,.nav-links a:focus{color:var(--text-primary);text-decoration:none}.auth-section{display:flex;align-items:center;gap:var(--space-2)}.user-info{display:flex;flex-direction:column;align-items:end;gap:2px;margin-right:var(--space-2);max-width:150px}.user-info [data-user=name]{color:var(--text-primary);font-size:var(--font-size-xs);text-shadow:0 0 6px rgba(255,255,255,.7),1px 1px 1px rgba(232,236,240,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:right;font-weight:var(--font-weight-medium)}.user-info [data-user=email]{font-size:var(--font-size-xs);color:var(--text-primary);text-shadow:0 0 6px rgba(255,255,255,.7),1px 1px 1px rgba(232,236,240,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:right;font-weight:var(--font-weight-semibold)}header .btn-primary{background:var(--color-story);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:var(--transition-fast)}header .btn-primary:hover{background:var(--color-accent-700);box-shadow:var(--shadow-md)}header .btn-secondary{background:var(--color-error);color:#fff;border:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:var(--transition-fast)}header .btn-secondary:hover{background:var(--color-accent-700);box-shadow:var(--shadow-md)}.mobile-menu-toggle{display:none;background:var(--color-night-50);border:none;border-radius:var(--radius-base);cursor:pointer;width:40px;height:40px;flex-direction:column;justify-content:center;align-items:center;gap:4px}.burger-line{width:20px;height:2px;background:var(--text-primary);transition:.3s}.mobile-menu-toggle.is-active .burger-line:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle.is-active .burger-line:nth-child(2){opacity:0}.mobile-menu-toggle.is-active .burger-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media (max-width: 768px){header nav{padding:var(--space-3) var(--space-2)}header .nav-container{gap:var(--space-2)}header .branding{flex:1;min-width:0}.mobile-menu-toggle{display:flex;flex-shrink:0}header .branding-name{font-size:var(--font-size-lg);text-shadow:0 0 6px rgba(255,255,255,.8),1px 1px 1px rgba(232,236,240,.6)}.nav-content{position:absolute;top:100%;left:0;right:0;background:var(--bg-secondary);flex-direction:column;padding:0 var(--space-4) var(--space-4) var(--space-4);transform:translateY(-100vh);opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}.nav-content.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-links{flex-direction:column;gap:0;margin-bottom:var(--space-1)}.nav-links a{padding:var(--space-3);color:var(--text-primary)}.nav-links a:link,.nav-links a:visited,.nav-links a:hover,.nav-links a:active,.nav-links a:focus{color:var(--text-primary);text-decoration:none}.auth-section{flex-direction:column;width:100%;gap:var(--space-3);padding-bottom:var(--space-5)}[data-auth=user]{display:flex;flex-direction:column;gap:var(--space-2)}.user-info{align-items:center;margin-right:0}.auth-section button{width:100%}}.auth-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.auth-modal-backdrop{position:absolute;inset:0;background:#00000080;backdrop-filter:blur(4px)}.auth-modal-content{background:#fff;color:#000;border-radius:var(--radius-lg, 12px);padding:var(--space-8, 2rem);max-width:400px;width:90%;position:relative;z-index:1001;box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1))}.auth-modal-content h3{color:#000;margin-bottom:var(--space-6, 1.5rem)}.close-btn{position:absolute;top:var(--space-4, 1rem);right:var(--space-4, 1rem);background:none;border:none;font-size:2rem;cursor:pointer;color:#666}.btn-google{display:flex;align-items:center;gap:var(--space-2, .5rem);justify-content:center;width:100%;margin:var(--space-4, 1rem) 0;background:#fff;color:#000;border:1px solid #ddd;padding:var(--space-3, .75rem);border-radius:var(--radius-base, 8px);cursor:pointer;font-size:var(--font-size-base, 1rem)}.btn-google:hover{background:#f5f5f5}#toggle-email-auth{background:#fff;color:#000;border:1px solid #ddd;font-size:var(--font-size-base, 1rem);padding:.7rem 1.4rem;margin:0 auto;display:block;width:fit-content;border-radius:var(--radius-base, 8px);cursor:pointer}#toggle-email-auth:hover{background:#f5f5f5}.divider{text-align:center;margin:var(--space-6, 1.5rem) 0;position:relative;color:#000}.divider span{background:#fff;padding:0 var(--space-4, 1rem);position:relative;z-index:1}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#ddd}.tabs{display:flex;gap:var(--space-2, .5rem);margin:var(--space-4, 1rem) 0}.tab{flex:1;padding:.65rem;background:none;border:1px solid #ddd;cursor:pointer;border-radius:var(--radius-base, 8px);color:#000;font-size:.95rem}.tab.active{background:var(--color-story, #4a90e2);color:#fff;border-color:var(--color-story, #4a90e2)}.auth-form{display:none}.auth-form.active{display:flex;flex-direction:column;gap:var(--space-4, 1rem)}.auth-form input{padding:var(--space-3, .75rem);border:1px solid #ddd;border-radius:var(--radius-base, 8px);font-size:var(--font-size-base, 1rem);color:#000;background:#fff}.auth-form button[type=submit]{background:var(--color-story, #4a90e2);color:#fff;border:none;padding:.6rem;border-radius:var(--radius-base, 8px);cursor:pointer;font-size:.9rem;font-weight:500}.auth-form button[type=submit]:hover{background:var(--color-accent-700, #3a7bc8)}.error{color:#dc2626;font-size:var(--font-size-sm, .875rem);padding:var(--space-2, .5rem);background:#fee2e2;border-radius:var(--radius-base, 8px)}.story-creator{padding:var(--space-16) var(--space-4);margin-bottom:var(--space-12)}.story-creator-container{max-width:var(--container-max-width);margin:0 auto;background:var(--color-moon);padding:var(--space-12);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl)}.creator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-secondary)}.creator-header h2{margin:0}.wizard-progress{margin-bottom:var(--space-6);text-align:center}.progress-bar{width:100%;height:8px;background:var(--border-secondary);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-3)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-story),var(--color-dream));transition:width .4s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-full)}.progress-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin:0}.form-step{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-navigation{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-6)}.btn-next,.btn-back,.btn-generate{min-width:260px;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease}.btn-generate{min-height:60px;white-space:normal;line-height:1.4}.btn-next,.btn-generate{background:linear-gradient(135deg,var(--color-story),var(--color-dream));color:#fff;box-shadow:0 4px 14px #6366f140}.btn-next:hover:not(:disabled),.btn-generate:hover:not(:disabled){filter:brightness(1.1)}.btn-back{background:transparent;color:var(--text-secondary);border:2px solid var(--border-secondary)}.btn-back:hover:not(:disabled){background:var(--color-night-50)}.btn-next:disabled,.btn-back:disabled,.btn-generate:disabled{opacity:.5;cursor:not-allowed}.stories-counter{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-dream);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.child-info{background:var(--color-moon);padding:var(--space-6);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.child-info h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-midnight);margin:0 0 var(--space-4) 0;padding:0}.child-info-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.input-group{min-width:0}.input-field{width:100%;box-sizing:border-box}.story-preview{background:var(--color-moon);padding:var(--space-4);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2);border-left:4px solid var(--color-dream);margin-bottom:var(--space-6)}.input-group label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.selection-group h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:var(--space-4)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.card-option{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-height:80px;padding:var(--space-4);background:var(--color-moon);border:2px solid var(--border-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-base);text-align:center}.card-option:hover{background:#e8ecf0b3;border-color:var(--color-twilight);box-shadow:var(--shadow-sm)}.card-option:focus{outline:none;box-shadow:var(--shadow-focus);border-color:var(--border-focus)}.card-option.selected{background:var(--color-dream);border-color:var(--color-story);box-shadow:var(--shadow-md)}.card-icon{font-size:var(--font-size-2xl)}.card-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.preview-content{min-height:80px}.preview-text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-secondary);font-style:italic}.error-text{color:var(--color-error);font-style:normal;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.preview-action{display:flex;justify-content:center;padding-top:0}@media (max-width: 640px){.story-creator{padding:var(--space-4)}.story-creator-container{padding:var(--space-6)}.creator-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.creator-header h2{font-size:var(--font-size-xl)}.card-grid{grid-template-columns:repeat(2,1fr)}.child-info,.story-preview{padding:var(--space-4)}.child-info-inputs{grid-template-columns:1fr}.step-navigation{flex-direction:column-reverse;gap:var(--space-3)}.btn-next,.btn-back,.btn-generate{width:100%;min-width:unset;min-height:48px;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base)}}@media (max-width: 480px){.card-grid{grid-template-columns:1fr;max-width:300px;margin:0 auto}}.hidden{display:none}.image-generation-section{margin-top:var(--space-6);text-align:center}.story-image-container{margin-bottom:var(--space-4)}.story-image{max-width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.image-generation-status{margin-bottom:var(--space-4);font-weight:var(--font-weight-medium)}.image-generation-status.loading{color:var(--text-secondary)}.image-generation-status.error{color:var(--color-error)}.my-stories-container{min-height:60vh}.stories-container,.public-stories-container{max-width:var(--container-max-width);margin:0 auto;padding:var(--space-8)}.public-stories-container{min-height:60vh}.stories-container h1,.public-stories-header h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-8);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3)}.public-stories-header{text-align:center;margin-bottom:var(--space-12);background:var(--color-moon);padding:var(--space-12);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);position:relative;z-index:0}.public-stories-header h1{color:var(--color-midnight);text-shadow:none}.public-stories-header p{font-size:var(--font-size-lg);color:var(--text-secondary)}.stories-section{margin-bottom:var(--space-12)}.stories-section h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-6);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3)}.stories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-6)}.stories-grid-public{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-8);margin-bottom:var(--space-8)}.load-more-container{text-align:center;margin-top:var(--space-12)}@media (max-width: 768px){.stories-container,.public-stories-container{padding:var(--space-4)}.public-stories-header{padding:var(--space-8)}.stories-grid,.stories-grid-public{grid-template-columns:1fr}}.story-actions{display:flex;flex-wrap:nowrap;gap:.5rem;margin-top:0;padding-top:var(--space-4)}.story-actions .btn-small{flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pricing-page{padding:0}.pricing-hero{padding-top:calc(var(--header-height) + var(--space-4))}.section-header{background:var(--color-moon);padding:var(--space-12);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);max-width:800px;margin:var(--space-16) auto;text-align:center}.section-header h1{font-size:var(--font-size-5xl);color:var(--color-midnight);margin-bottom:var(--space-4)}.section-header p{font-size:var(--font-size-lg);color:var(--text-secondary);max-width:600px;margin:0 auto}.pricing-tiers{padding:var(--space-16) var(--space-8)}.page-container{max-width:var(--container-max-width);margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-12)}.pricing-card{background:var(--color-moon);border:2px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-6);position:relative;transition:var(--transition-base)}.pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.pricing-card.featured{border-color:var(--color-story);transform:scale(1.05)}.pricing-card.featured:hover{transform:scale(1.05) translateY(-4px)}.pricing-badge{position:absolute;right:0;background:var(--color-story);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.card-header{text-align:center}.card-header h3{font-size:var(--font-size-2xl);color:var(--color-midnight);margin-bottom:var(--space-4)}.price{display:flex;align-items:baseline;justify-content:center;margin:var(--space-4) 0}.amount{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);color:var(--color-midnight)}.currency,.period{color:var(--text-secondary);font-size:var(--font-size-xl)}.price-description{color:var(--text-muted);font-size:var(--font-size-sm)}.feature-list{list-style:none;margin-bottom:var(--space-6)}.feature-list li{padding:var(--space-2) 0;border-bottom:1px solid var(--border-secondary);color:var(--text-secondary)}.feature-list li:before{content:"✓";color:var(--color-success);margin-right:var(--space-2);font-weight:var(--font-weight-bold)}.pricing-page .btn{padding:var(--space-3) var(--space-6);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-decoration:none;transition:var(--transition-fast);display:inline-block;text-align:center;cursor:pointer;border:none}.pricing-page .btn-full{width:100%}.pricing-page .btn-large{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg)}.pricing-page .btn-cta{background:var(--color-story);color:#fff}.pricing-page .btn-cta:hover{background:var(--color-accent-700);box-shadow:var(--shadow-md);text-decoration:none}.pricing-page .btn-secondary{background:var(--bg-secondary);color:var(--color-midnight);border:2px solid var(--border-primary)}.pricing-page .btn-secondary:hover{background:var(--bg-primary);border-color:var(--color-story);text-decoration:none}.pricing-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-top:var(--space-8)}.benefit-item{text-align:center;padding:var(--space-6);background:var(--color-moon);border-radius:var(--radius-lg);box-shadow:var(--shadow-base)}.benefit-item h4{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.benefit-item p{color:var(--text-secondary);font-size:var(--font-size-sm)}.comparison-section{background:var(--bg-secondary);padding:var(--space-16) var(--space-8);border-radius:var(--radius-2xl)}.comparison-section h2{text-align:center;margin-bottom:var(--space-8);font-size:var(--font-size-4xl)}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);max-width:900px;margin:0 auto}.comparison-item{display:flex;flex-direction:column;align-items:center}.comparison-item h4{font-size:var(--font-size-xl);margin-bottom:var(--space-4);text-align:center}.comparison-list{list-style:none;text-align:left}.comparison-list li{padding:var(--space-2) 0 var(--space-2) var(--space-5);position:relative;color:var(--text-secondary)}.comparison-list.negative li:before{content:"✗";position:absolute;left:0;color:var(--color-error);font-weight:var(--font-weight-bold)}.comparison-list.positive li:before{content:"✓";position:absolute;left:0;color:var(--color-success);font-weight:var(--font-weight-bold)}.cta-section{padding:var(--space-20) var(--space-8)}.cta-container{max-width:var(--container-max-width);margin:0 auto;background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-story) 100%);border-radius:var(--radius-xl);padding:var(--space-12) var(--space-8)}.cta-content{text-align:center;color:#fff}.cta-content h2{font-size:var(--font-size-4xl);margin-bottom:var(--space-4);color:#fff}.cta-content p{font-size:var(--font-size-lg);margin-bottom:var(--space-8);opacity:.9}.cta-buttons{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.pricing-page .cta-section .btn-secondary{background:#fff;color:var(--color-midnight);border:none}.pricing-page .cta-section .btn-secondary:hover{background:var(--bg-secondary)}@media (max-width: 768px){.pricing-hero{padding-top:calc(var(--header-height) + var(--space-3))}.pricing-grid,.comparison-grid,.pricing-benefits{grid-template-columns:1fr}.pricing-card.featured{transform:none}.pricing-card.featured:hover{transform:translateY(-4px)}.section-header{padding:var(--space-8);margin:var(--space-12) auto}.section-header h1{font-size:var(--font-size-3xl)}.cta-content h2{font-size:var(--font-size-2xl)}.cta-buttons{flex-direction:column;align-items:center}.btn-large{width:100%;max-width:300px}}.card{background:var(--color-moon);border-radius:var(--radius-xl);box-shadow:var(--shadow-base)}.card-body{padding:var(--space-6)}*{margin:0;padding:0;box-sizing:border-box}html{overscroll-behavior-y:none}.caveat-regular{font-family:Caveat,cursive;font-optical-sizing:auto;font-weight:400;font-style:normal}.advent-pro-regular{font-family:Advent Pro,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-variation-settings:"wdth" 100}body{font-family:Caveat,cursive;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;position:relative;overscroll-behavior-y:none}html[lang=gr] body{font-family:Advent Pro,sans-serif;font-optical-sizing:auto;font-variation-settings:"wdth" 100;font-size:20px}.global-night-sky{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}main{flex:1;max-width:var(--container-max-width);margin:0 auto;width:100%;padding-top:80px}h1,h2,h3{margin-bottom:var(--space-4);color:var(--color-midnight)}p{margin-bottom:var(--space-4)}button{padding:var(--space-3) var(--space-6);background:var(--color-story);color:var(--text-inverse);border:none;border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:var(--transition-fast);box-shadow:var(--shadow-sm)}button:hover:not(:disabled){background:var(--color-accent-700);box-shadow:var(--shadow-md)}button:focus{outline:none;box-shadow:var(--shadow-focus)}button:disabled{background:var(--text-muted);cursor:not-allowed}a{color:var(--color-story);text-decoration:none;transition:var(--transition-fast)}a:visited{color:var(--color-story)}a:hover{text-decoration:underline}.language-switcher{position:relative}.flag-icon{width:1.2em;height:1.2em;vertical-align:middle;display:inline-block;object-fit:contain;flex-shrink:0}.lang-toggle{display:inline-flex;align-items:center;gap:.25em;padding:var(--space-2) var(--space-3);background:none;border:1px solid var(--border-primary);border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-size-s);transition:var(--transition-fast)}.lang-toggle .arrow{font-size:.6em;color:var(--text-primary);transition:transform .2s}.lang-toggle[aria-expanded=true] .arrow{transform:rotate(-90deg)}.lang-toggle:hover{border-color:var(--color-story)}footer .lang-toggle{border-color:var(--text-inverse)}footer .lang-toggle .arrow{color:var(--text-inverse)}.lang-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:140px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-base);box-shadow:var(--shadow-md);z-index:100;overflow:hidden}.lang-dropdown[hidden]{display:none}footer .lang-dropdown{top:auto;bottom:calc(100% + 4px)}.lang-dropdown a{display:flex;align-items:center;gap:.5em;padding:var(--space-2) var(--space-3);text-decoration:none;color:var(--text-primary);text-align:left;font-size:var(--font-size-s)}.lang-dropdown a:hover,.lang-dropdown a.active{background:var(--bg-secondary);font-weight:var(--font-weight-medium)}footer{background:var(--color-moon);color:var(--text-secondary);text-align:center;margin-top:auto}footer .footer-container{padding:var(--space-6);max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4);align-items:center}footer .footer-row{display:flex;gap:var(--space-6);align-items:center}footer p{margin:var(--space-2) 0;font-size:var(--font-size-sm)}footer .footer-links{display:flex;gap:var(--space-4);align-items:center}footer .footer-links a{color:var(--text-muted);text-decoration:none;font-weight:var(--font-weight-medium);transition:var(--transition-fast)}footer .footer-links a:visited{color:var(--text-muted)}footer .footer-links a:hover{color:var(--text-muted)}@media (max-width: 640px){footer .footer-row{flex-direction:column;gap:var(--space-4)}footer .footer-links{flex-wrap:wrap;justify-content:center;gap:var(--space-3)}}
