:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--pad-page-x:clamp(1rem, 4vw, 2.5rem);--pad-page-y:var(--space-7);--pad-card:var(--space-5);--gap:var(--space-4);--gap-sm:var(--space-3);--gap-lg:var(--space-5);--radius-sm:12px;--radius-md:18px;--radius-lg:28px;--radius-pill:999px;--page-max:1040px;--content-max:880px;--ink:#252d27;--ink-soft:#4c574f;--muted:#747f76;--accent:#617a65;--accent-deep:#405847;--accent-soft:#617a6526;--sky:#b8c6b1;--fog:#e5e9df;--sand:#f4f1e8;--glass:#fffdf766;--glass-strong:#fffdf79e;--glass-border:#fffdf7b8;--glass-border-soft:#252d2717;--glass-shine:inset 0 1px 0 #fffdf7cc;--blur:20px;--shadow:0 12px 40px #31413517;--shadow-lg:0 24px 60px #31413524;--font-ui:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-read:"Atkinson Hyperlegible", Arial, sans-serif;--text-xs:.8rem;--text-sm:.92rem;--text-md:1rem;--text-lg:1.0625rem;--text-xl:clamp(1.25rem, 2vw, 1.5rem);--text-display:clamp(2.15rem, 5vw, 3.25rem);--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-md);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100dvh}body{background:var(--sand);margin:0}button,input,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell{min-height:100dvh;padding-left:var(--safe-left);padding-right:var(--safe-right);position:relative;overflow-x:hidden}.atmosphere{pointer-events:none;z-index:0;background:radial-gradient(980px 560px at 8% -8%,#b8c6b18c,#0000 58%),radial-gradient(760px 520px at 92% 4%,#617a6538,#0000 55%),radial-gradient(640px 420px at 50% 110%,#b8c6b14d,#0000 55%),linear-gradient(165deg,#faf8f1 0%,#f1eee4 48%,#e7eadf 100%);position:fixed;inset:0}.atmosphere:after{content:"";opacity:.35;background-image:radial-gradient(#ffffff59 .6px,#0000 .7px);background-size:3px 3px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000008c,#0000 80%);mask-image:linear-gradient(#0000008c,#0000 80%)}.topbar,.main{z-index:1;position:relative}.topbar{z-index:20;left:50%;bottom:calc(var(--space-4) + var(--safe-bottom));width:max-content;box-shadow:none;background:0 0;border:0;align-items:center;margin:0;padding:0;display:flex;position:fixed;transform:translate(-50%)}.is-reader .topbar,.is-complete .topbar,.topbar-lead{display:none}.nav-back{appearance:none;border:1px solid var(--glass-border);width:2.25rem;height:2.25rem;color:var(--ink);cursor:pointer;background:#ffffff8c;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,background .2s;display:inline-flex}.nav-back:hover{background:#ffffffc7;transform:translate(-1px)}.nav-back svg{stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.page-settings{z-index:25;top:calc(var(--space-4) + var(--safe-top));right:var(--pad-page-x);display:block;position:absolute}.settings-menu{position:relative}.settings-trigger{appearance:none;border:1px solid var(--glass-border);width:2.4rem;height:2.4rem;color:var(--ink);cursor:pointer;box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(12px);background:#ffffffb8;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.settings-trigger svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.settings-panel{gap:var(--space-3);width:min(16.5rem,100vw - 2rem);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--glass-shine), 0 16px 40px #3141352e;-webkit-backdrop-filter:blur(16px);background:#faf8f1f5;display:grid;position:absolute;top:calc(100% + .45rem);right:0}.settings-panel-title{color:var(--ink);margin:0;font-weight:700}.settings-row{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);font-weight:560;display:flex}.settings-row input{width:1.15rem;height:1.15rem;accent-color:var(--accent)}.settings-hint{color:var(--muted);font-size:var(--text-xs);margin:0;line-height:1.4}.brand{align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);min-width:0;transition:transform .2s;display:inline-flex}.brand:hover{transform:scale(1.02)}.brand-logo{align-items:center;gap:var(--space-3);min-width:0;color:var(--accent);display:inline-flex}.brand-mark-svg{border-radius:.7rem;flex-shrink:0;width:2.15rem;height:2.15rem;box-shadow:0 8px 20px #617a6547}.brand-mark-bg{color:inherit;fill:currentColor}.brand-name{letter-spacing:-.03em;white-space:nowrap;color:var(--ink);font-size:1rem;font-weight:700}.hero-brand-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.hero-logo .brand-mark-svg{border-radius:.9rem;width:2.75rem;height:2.75rem}.hero-brand{letter-spacing:-.05em;background:linear-gradient(120deg, var(--accent-deep), #82967d 55%, var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(1.85rem,4.5vw,2.6rem);font-weight:700;line-height:1}.onboarding-logo .brand-mark-svg{width:2.35rem;height:2.35rem}.nav{border:1px solid var(--glass-border);box-shadow:var(--glass-shine), 0 12px 30px #31413529;-webkit-backdrop-filter:blur(16px)saturate(1.2);background:#faf8f1db;border-radius:999px;flex-wrap:nowrap;justify-content:center;gap:.2rem;padding:.3rem;display:flex}.nav a{min-height:2.5rem;color:var(--ink-soft);font-weight:600;font-size:var(--text-sm);border-radius:999px;padding:.58rem .9rem;transition:background .22s,color .22s,transform .22s,box-shadow .22s}.nav a:hover{color:var(--accent-deep);background:#617a651c;transform:scale(1.04)}.nav a.active{background:linear-gradient(145deg, var(--accent), var(--accent-deep));color:#fffdf7;transform:scale(1.05);box-shadow:0 10px 22px #617a6545}.main{padding:var(--space-5) var(--pad-page-x) calc(6.5rem + var(--safe-bottom));animation:.34s cubic-bezier(.22,1,.36,1) both route-enter}.page{width:min(var(--page-max), 100%);margin:0 auto}.reader-page,.create-page,.progress-page,.complete-page{width:min(var(--content-max), 100%)}.reader-page{animation:none;transform:none}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes route-enter{0%{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur();transform:translateY(0)}}.glass-panel{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--glass-shine), var(--shadow);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2)}.hero{padding:clamp(2rem, 6vh, 3.5rem) 0 var(--space-6);max-width:40rem}.hero h1{font-family:var(--font-ui);font-weight:650;font-size:var(--text-xl);letter-spacing:-.035em;margin:0;line-height:1.3}.hero-lead{margin:var(--space-4) 0 var(--space-5);color:var(--ink-soft);max-width:34rem;font-size:1rem;line-height:1.6}.hero-actions,.reader-actions,.action-row{gap:var(--gap-sm);flex-wrap:wrap;display:flex}.complete-next{margin-top:var(--space-5)}.btn{appearance:none;cursor:pointer;letter-spacing:-.01em;border:0;border-radius:999px;min-height:2.75rem;padding:.72rem 1.15rem;font-weight:650;transition:transform .22s,background .22s,box-shadow .22s,border-color .22s}.btn:hover:not(:disabled){transform:translateY(-1px)scale(1.03)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(145deg, var(--accent), var(--accent-deep));color:#fffdf7;box-shadow:0 12px 28px #617a6547}.btn-primary:hover:not(:disabled){box-shadow:0 18px 36px #617a655c}.btn-ghost{background:var(--glass-strong);color:var(--accent-deep);border:1px solid var(--glass-border);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(12px)}.btn-ghost:hover:not(:disabled){border-color:#617a6559}.btn-lg{min-height:3rem;padding:.82rem 1.3rem;font-size:1rem}.section{margin-top:var(--space-6)}.section-heading h1,.section-heading h2,.section h2{margin:0 0 var(--space-2);font-family:var(--font-ui);letter-spacing:-.035em;font-weight:700;font-size:var(--text-xl)}.section-heading p,.section>p{color:var(--ink-soft);margin:0;line-height:1.55}.row-between{justify-content:space-between;gap:var(--gap);flex-wrap:wrap;align-items:flex-start;display:flex}.duration-row{gap:var(--gap-sm);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.chip{border:1px solid var(--glass-border);background:var(--glass);color:var(--ink-soft);border-radius:var(--radius-pill);cursor:pointer;-webkit-backdrop-filter:blur(12px);min-height:2.75rem;box-shadow:var(--glass-shine);padding:.62rem .9rem;font-weight:500;transition:background .2s,color .2s,border-color .2s}.chip.is-active{background:var(--accent-soft);color:var(--accent-deep);border-color:#617a6559}.custom-minutes{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);display:inline-flex}.field,.custom-minutes input,.create-form input,.create-form textarea,.create-meta input{border:1px solid var(--glass-border-soft);background:var(--glass-strong);color:var(--ink);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(10px);border-radius:18px;width:100%;padding:.8rem 1rem}.custom-minutes input,.create-meta input{width:5rem}.field:focus,.custom-minutes input:focus,.create-form input:focus,.create-form textarea:focus,.create-meta input:focus{box-shadow:var(--glass-shine), 0 0 0 3px var(--accent-soft);border-color:#617a6573;outline:none}.story-list{gap:var(--gap);margin-top:var(--space-4);display:grid}.story-row{justify-content:space-between;gap:var(--gap-lg);padding:var(--pad-card);border-radius:var(--radius-md);background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--glass-shine), var(--shadow);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2);align-items:center;min-width:0;animation:.55s both rise;display:flex}.story-row>div{min-width:0}.story-choice{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative}.story-choice>div{padding-right:4rem}.story-choice:hover{box-shadow:var(--glass-shine), var(--shadow-lg);border-color:#617a6547;transform:translateY(-2px)}.story-redirect{top:var(--space-4);right:var(--space-4);width:2rem;height:2rem;color:var(--accent-deep);background:#ffffff75;border:1px solid #617a6533;border-radius:50%;place-items:center;transition:transform .2s,background .2s,box-shadow .2s;display:grid;position:absolute}.story-redirect svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1rem;height:1rem}.story-choice:hover .story-redirect{background:var(--accent-soft);transform:translate(2px,-2px);box-shadow:0 6px 16px #617a652e}.story-row:nth-child(2){animation-delay:40ms}.story-row:nth-child(3){animation-delay:80ms}.story-row:nth-child(4){animation-delay:.12s}.story-row h3{margin:var(--space-2) 0;font-family:var(--font-ui);overflow-wrap:anywhere;font-size:1.3rem;font-weight:700}.story-row p{color:var(--ink-soft);margin:0;line-height:1.5}.story-meta{gap:var(--space-2);font-size:var(--text-xs);color:var(--muted);text-transform:capitalize;flex-wrap:wrap;display:flex}.story-quiz-note{text-transform:none;font-weight:600;margin-top:var(--space-2)!important;color:var(--accent-deep)!important;font-size:var(--text-xs)!important}.theme{color:var(--accent-deep);border-radius:var(--radius-pill);background:var(--accent-soft);padding:.15rem .55rem;font-weight:600}.story-stats{font-size:var(--text-sm);margin-top:var(--space-3)!important}.reader-top{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.reader-backbar{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--glass-border);border-radius:var(--radius-pill);min-height:3rem;box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(16px);color:var(--muted);font-size:var(--text-sm);background:#ffffff75;padding:.45rem .55rem;display:flex}.reader-backbar-actions{align-items:center;gap:var(--space-2);white-space:nowrap;padding-right:.15rem;display:inline-flex}.reader-backbar-actions .settings-trigger{background:#fffc;width:2.15rem;height:2.15rem}.reader-back-action{border-radius:var(--radius-pill);min-height:2.1rem;color:var(--accent-deep);align-items:center;padding:.35rem .75rem;font-weight:700;display:inline-flex}.reader-back-action:hover{background:var(--accent-soft);color:var(--accent-deep)}.reader-backbar-actions>span{white-space:nowrap;padding-right:.15rem}.reader-title-block h1{font-family:var(--font-ui);font-weight:700;font-size:var(--text-xl);overflow-wrap:anywhere;margin:0}.reader-title-block p{margin:var(--space-2) 0 0;color:var(--muted);font-size:var(--text-sm)}.teleprompter{border-radius:var(--radius-lg);background:var(--glass-strong);border:1px solid var(--glass-border);height:min(48vh,440px);box-shadow:var(--glass-shine), var(--shadow-lg);-webkit-backdrop-filter:blur(24px)saturate(1.25);position:relative;overflow:hidden}.teleprompter-body{height:100%;font-family:var(--font-read);letter-spacing:.01em;color:var(--ink);scroll-behavior:auto;padding:18% 8%;line-height:1.78;overflow:auto}.teleprompter-empty{height:100%;padding:var(--space-6);text-align:center;color:var(--muted);font-family:var(--font-ui);place-items:center;display:grid}.tp-word{transition:color .2s,background .2s}.tp-word.is-past{color:#252d2757}.tp-word.is-active{color:var(--accent-deep);background:var(--accent-soft);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.3rem}.teleprompter-fade{pointer-events:none;z-index:1;height:18%;position:absolute;left:0;right:0}.teleprompter-fade-top{background:linear-gradient(#faf8f1f0,#0000);top:0}.teleprompter-fade-bottom{background:linear-gradient(#0000,#faf8f1f0);bottom:0}.reader-dock{margin-top:var(--space-5);gap:var(--space-4);padding:var(--pad-card);border-radius:var(--radius-lg);background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--glass-shine), var(--shadow);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.2);display:grid}.reader-finish-panel{gap:var(--space-4);text-align:center;display:grid}.reader-finish-note{color:var(--ink-soft);font-size:var(--text-sm);margin:0}.sheet-finish-wrap{padding:0 var(--space-1) var(--space-2)}.reader-control-grid{gap:var(--space-6);grid-template-columns:minmax(240px,1fr) minmax(260px,1fr);align-items:center;display:grid}.reader-mobile-sheet{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reading-progress-meta,.pace-labels{margin-bottom:var(--space-2);color:var(--ink-soft);font-size:var(--text-sm);justify-content:space-between;font-weight:500;display:flex}.pace-hints{margin-top:var(--space-2);color:var(--muted);font-size:var(--text-xs);justify-content:space-between;display:flex}.range-control{--range-progress:0%;appearance:none;border-radius:var(--radius-pill);background:linear-gradient(to right, var(--accent) 0, var(--accent) var(--range-progress), #4c574f24 var(--range-progress), #4c574f24 100%);cursor:pointer;border:0;outline:none;width:100%;height:.4rem}.range-control::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:0 0;height:.4rem}.range-control::-webkit-slider-thumb{appearance:none;background:var(--accent);border:3px solid #ffffffd1;border-radius:50%;width:1.25rem;height:1.25rem;margin-top:-.425rem;box-shadow:0 4px 12px #617a654d}.range-control::-moz-range-track{border-radius:var(--radius-pill);background:0 0;border:0;height:.4rem}.range-control::-moz-range-thumb{background:var(--accent);border:3px solid #ffffffd1;border-radius:50%;width:1rem;height:1rem;box-shadow:0 4px 12px #617a654d}.reader-tools{gap:var(--gap) var(--gap-lg);color:var(--ink-soft);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;display:flex}.tool-toggle,.tool-font{align-items:center;gap:var(--space-2);display:inline-flex}.tool-font input{width:7.5rem}.create-panel{gap:var(--space-4);display:grid}.create-prompt-row{flex-wrap:wrap;gap:.55rem;display:flex}.create-chip{appearance:none;border:1px solid var(--glass-border);color:var(--ink-soft);min-height:2.75rem;font-weight:600;font-size:var(--text-sm);cursor:pointer;box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(12px);background:#ffffff73;border-radius:999px;padding:.62rem .9rem;transition:transform .2s,background .2s,color .2s,box-shadow .2s,border-color .2s}.create-chip:hover{color:var(--accent-deep);border-color:#617a6547;transform:scale(1.04)}.create-chip.is-active{background:linear-gradient(145deg, var(--accent), var(--accent-deep));color:#fffdf7;border-color:#0000;transform:scale(1.05);box-shadow:0 10px 22px #617a6545}.create-generate{width:fit-content}.create-form{gap:var(--space-4);padding:var(--pad-card);border:1px solid var(--glass-border);box-shadow:var(--glass-shine), var(--shadow);-webkit-backdrop-filter:blur(var(--blur));background:#ffffff80;border-radius:28px;display:grid}.create-form label,.create-meta label{gap:var(--space-2);color:var(--ink-soft);font-weight:600;font-size:var(--text-sm);display:grid}.create-form .field,.create-form textarea,.create-form input,.create-meta input{border-radius:18px}.create-form textarea{resize:vertical;min-height:220px;line-height:1.55;font-family:var(--font-read);border-radius:22px;font-size:1.05rem}.create-meta{gap:var(--gap);flex-wrap:wrap;justify-content:space-between;align-items:end;display:flex}.create-meta input{text-align:center;border-radius:999px;width:5.5rem}.create-start{width:100%;margin-top:var(--space-1)}.helper-text{color:var(--muted);font-size:var(--text-sm);margin:0}.helper-text.is-error{color:#9a4a3c}.stats-row{gap:var(--gap);margin:var(--space-5) 0;grid-template-columns:repeat(3,1fr);display:grid}.stat{padding:var(--space-5) var(--space-4);border-radius:var(--radius-md);background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--glass-shine), var(--shadow);-webkit-backdrop-filter:blur(var(--blur));text-align:center}.stat strong{letter-spacing:-.04em;color:var(--accent-deep);font-size:clamp(1.6rem,4vw,2.2rem);display:block}.stat span{color:var(--muted);font-size:var(--text-sm)}.session-list{margin:var(--space-4) 0 0;gap:var(--gap-sm);padding:0;list-style:none;display:grid}.session-list li{justify-content:space-between;gap:var(--gap);padding:var(--space-4);border-radius:var(--radius-md);background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(14px);align-items:center;min-width:0;display:flex}.session-list strong{margin-bottom:var(--space-1);overflow-wrap:anywhere;display:block}.session-list span{color:var(--muted);font-size:var(--text-sm)}.pill{white-space:nowrap;border-radius:var(--radius-pill);background:#ffffff73;padding:.3rem .65rem;font-size:var(--text-xs)!important;color:var(--ink-soft)!important}.pill.ok{background:var(--accent-soft);color:var(--accent-deep)!important}.empty-state{margin-top:var(--space-4);padding:var(--space-6);border-radius:var(--radius-md);background:var(--glass);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(14px);gap:var(--space-4);border:1px dashed #617a6559;justify-items:start;display:grid}.questions{gap:var(--space-4);display:grid}.question{border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--glass);gap:var(--space-3);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(14px);display:grid}.question legend{padding:0 var(--space-1);font-family:var(--font-ui);font-weight:700}.question-prompt{color:var(--ink);margin:0;font-weight:560}.question label{gap:var(--space-3);color:var(--ink-soft);align-items:flex-start;display:flex}.complete-story,.score-line{color:var(--ink-soft)}.banner{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-strong);box-shadow:var(--glass-shine);-webkit-backdrop-filter:blur(14px)}.banner-warn{background:#b8c6b147;border-color:#617a6547}.banner-soft{background:#ffffff6b;border-color:#617a6538}.banner-error{background:#f6d6ce73;border-color:#9a4a3c47}.banner p{margin:var(--space-1) 0;color:var(--ink-soft)}.loading-block{margin-top:var(--space-4);gap:var(--space-3);display:grid}.loading-hint{color:var(--ink-soft);font-size:var(--text-sm);margin:0}.loading-block .banner{margin-top:0}.loading-grid{gap:var(--gap);display:grid}.skeleton-row{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:linear-gradient(90deg,#ffffff47,#b8c6b147,#ffffff47) 0 0/200% 100%;height:7.5rem;animation:1.2s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.linkish{appearance:none;color:var(--accent-deep);cursor:pointer;text-underline-offset:.22em;background:0 0;border:0;padding:0;font-weight:560;text-decoration:underline}.offline-note{align-items:center;gap:var(--space-2);margin-top:var(--space-3);border-radius:var(--radius-pill);color:#8a4538;font-size:var(--text-xs);background:#9a4a3c1a;padding:.35rem .75rem;font-weight:560;display:inline-flex}@media (width<=900px){.page-settings{z-index:25;top:calc(var(--space-3) + var(--safe-top));right:max(.75rem, env(safe-area-inset-right,0px));display:block;position:absolute}.topbar-settings{display:none}.topbar{z-index:20;top:auto;left:max(.75rem, env(safe-area-inset-left,0px));right:max(.75rem, env(safe-area-inset-right,0px));bottom:calc(.75rem + var(--safe-bottom));width:auto;box-shadow:var(--glass-shine), 0 18px 50px #31413533;background:#faf8f1e6;border-radius:999px;margin:0;padding:.35rem;position:fixed;transform:none}.topbar-lead,.brand{display:none}.nav{background:0 0;flex-wrap:nowrap;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:.3rem;width:100%;padding:0;display:grid}.nav a{text-align:center;flex:none;justify-content:center;align-items:center;width:100%;min-height:2.75rem;padding:.68rem .35rem;display:inline-flex}.nav a.active{background:linear-gradient(145deg, var(--accent), var(--accent-deep));color:#fffdf7;transform:none;box-shadow:0 10px 22px #617a6545}.main{padding-top:calc(var(--space-4) + var(--safe-top));padding-bottom:calc(7rem + var(--safe-bottom))}.create-form{padding:var(--space-4);border-radius:24px}.create-start,.create-generate{width:100%}.create-prompt-row{gap:.45rem}.create-chip{text-align:center;flex:calc(50% - .45rem)}.is-reader .topbar,.is-complete .topbar{display:none}.is-reader .main{padding:calc(var(--space-3) + var(--safe-top)) var(--space-3) calc(8.5rem + var(--safe-bottom))}.is-reader .reader-page{width:100%}.hero{padding-top:var(--space-5)}.hero-brand{font-size:clamp(1.75rem,8vw,2.35rem)}.story-row,.session-list li{flex-direction:column;align-items:stretch}.stats-row{grid-template-columns:1fr}.is-reader .teleprompter{height:clamp(260px, calc(100dvh - 15rem - var(--safe-top) - var(--safe-bottom)), 560px);border-radius:var(--radius-md)}.is-reader .teleprompter-body{padding:24% 7%}.reader-controls-desktop{display:none}.reader-mobile-sheet{z-index:30;width:min(100%,680px);max-height:min(82dvh,620px);padding:0 var(--space-4) calc(var(--space-3) + var(--safe-bottom));border:1px solid var(--glass-border);box-shadow:var(--glass-shine), 0 -18px 50px #3141352b;-webkit-backdrop-filter:blur(28px)saturate(1.3);background:#faf8f1e6;border-bottom:0;border-radius:26px 26px 0 0;gap:.65rem;transition:background .25s,box-shadow .25s;display:grid;position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%)}.reader-mobile-sheet.is-expanded{box-shadow:var(--glass-shine), 0 -24px 60px #31413533;background:#faf8f1f5}.reader-mobile-sheet .reading-progress-meta{margin-bottom:var(--space-1);font-size:var(--text-xs)}.reader-mobile-sheet .range-control{margin:.35rem 0;display:block}.reader-mobile-sheet .reading-progress.is-compact{padding:0 var(--space-1) var(--space-1)}.sheet-handle{cursor:pointer;background:0 0;border:0;place-items:center;width:100%;min-height:20px;padding:.4rem 0 0;display:grid}.sheet-handle>span:first-child{border-radius:var(--radius-pill);background:#4c574f47;width:2.5rem;height:4px}.sheet-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.sheet-header>div{gap:.1rem;display:grid}.sheet-header strong{color:var(--ink);font-size:.95rem}.sheet-header span{color:var(--muted);font-size:var(--text-xs)}.sheet-toggle,.sheet-end{border:1px solid var(--glass-border-soft);border-radius:var(--radius-pill);min-height:2.4rem;color:var(--accent-deep);font-weight:700;font-size:var(--text-sm);cursor:pointer;background:#ffffff85;padding:.55rem .9rem}.sheet-settings{padding-top:var(--space-1);gap:.65rem;animation:.24s cubic-bezier(.22,1,.36,1) both sheet-reveal;display:grid}.sheet-setting-card{padding:var(--space-3);box-shadow:var(--glass-shine);background:#ffffff61;border:1px solid #ffffff9e;border-radius:18px}.sheet-settings .reader-tools{gap:var(--space-4);grid-template-columns:1fr;display:grid}.sheet-settings .tool-font{align-items:center;gap:var(--space-3);grid-template-columns:auto 1fr;display:grid}.sheet-settings .tool-font input{width:100%}.sheet-settings input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--accent)}.sheet-footer{gap:var(--space-3);padding-top:var(--space-1);grid-template-columns:minmax(0,1fr) auto;display:grid}.sheet-footer .btn{width:100%;min-height:3rem;padding:.78rem 1rem}.sheet-end{min-height:3rem;padding-inline:1rem;animation:.24s cubic-bezier(.22,1,.36,1) both sheet-reveal}.hero-actions .btn,.reader-actions .btn,.story-row .btn{text-align:center;justify-content:center;width:100%}}@keyframes sheet-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.onboarding{z-index:1;min-height:100dvh;padding:calc(var(--space-5) + var(--safe-top)) var(--pad-page-x) calc(var(--space-5) + var(--safe-bottom));background:radial-gradient(900px 520px at 12% -8%,#b8c6b180,#0000 58%),radial-gradient(720px 480px at 90% 8%,#617a6533,#0000 55%),linear-gradient(165deg,#faf8f1 0%,#f1eee4 48%,#e7eadf 100%);position:relative}.onboarding-canvas{width:min(960px,100%);min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 3rem);gap:var(--space-6);grid-template-rows:auto 1fr auto;margin:0 auto;animation:.4s cubic-bezier(.22,1,.36,1) both route-enter;display:grid}.onboarding-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.onboarding-logo .brand-name{color:var(--accent-deep)}.onboarding-stage{grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);align-items:center;gap:clamp(2rem,8vw,7rem);animation:.28s cubic-bezier(.22,1,.36,1) both sheet-reveal;display:grid}.onboarding-visual{aspect-ratio:4/3;width:min(22rem,36vw);box-shadow:var(--glass-shine), 0 24px 60px #3141351a;background:radial-gradient(circle at 30% 20%,#fffdf7e0,#0000 46%),#b8c6b15c;border:1px solid #fffdf7b8;border-radius:32px;place-items:center;display:grid;position:relative;overflow:hidden}.onboarding-visual:after{content:"";filter:blur(2px);background:#617a651a;border-radius:50%;height:70%;position:absolute;inset:auto -12% -28% 30%}.onboarding-step{z-index:3;top:var(--space-4);right:var(--space-4);color:var(--accent-deep);font-size:var(--text-sm);letter-spacing:.08em;font-weight:700;position:absolute}.visual-welcome{z-index:2;place-items:center;width:100%;height:100%;display:grid;position:relative}.visual-logo .brand-mark-svg{border-radius:1.75rem;width:7rem;height:7rem;box-shadow:0 24px 50px #31413533}.visual-chip{border-radius:var(--radius-pill);color:var(--accent-deep);font-size:var(--text-xs);box-shadow:var(--shadow);background:#fffdf7ad;border:1px solid #fffdf7d1;padding:.5rem .8rem;font-weight:700;position:absolute}.visual-chip-read{top:24%;left:12%;transform:rotate(-5deg)}.visual-chip-speak{bottom:22%;right:10%;transform:rotate(5deg)}.visual-reader{z-index:2;width:74%;padding:var(--space-4);background:#fffdf7b3;border:1px solid #fffdf7d9;border-radius:22px;position:relative;box-shadow:0 20px 45px #3141351f}.visual-reader-top{justify-content:space-between;gap:var(--space-2);color:var(--muted);font-size:.68rem;font-weight:700;display:flex}.visual-reading-lines{margin:var(--space-4) 0;gap:.65rem;display:grid}.visual-reading-lines span{border-radius:var(--radius-pill);background:#4c574f24;width:86%;height:.55rem}.visual-reading-lines span:nth-child(2){width:100%}.visual-reading-lines span:nth-child(3){width:70%}.visual-reading-lines .is-active{background:#617a6580}.visual-progress{border-radius:var(--radius-pill);background:#4c574f1f;height:.3rem;overflow:hidden}.visual-progress span{border-radius:inherit;background:var(--accent);width:58%;height:100%;display:block}.visual-growth{z-index:2;align-items:end;gap:var(--space-5);width:76%;min-height:9rem;padding:var(--space-4);background:#fffdf7ad;border:1px solid #fffdf7d9;border-radius:22px;grid-template-columns:auto 1fr;display:grid;position:relative;box-shadow:0 20px 45px #3141351f}.visual-streak{display:grid}.visual-streak strong{color:var(--accent-deep);font-size:2.4rem;line-height:1}.visual-streak span{color:var(--muted);white-space:nowrap;margin-top:.35rem;font-size:.68rem}.visual-bars{align-items:end;gap:.35rem;height:5.5rem;display:flex}.visual-bars span{border-radius:var(--radius-pill) var(--radius-pill) .2rem .2rem;background:#617a6557;flex:1;min-width:.35rem}.visual-bars span:last-child{background:var(--accent)}.onboarding-copy{gap:var(--space-3);max-width:34rem;display:grid}.onboarding-eyebrow{color:var(--muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:700}.onboarding-copy h1{font-family:var(--font-ui);letter-spacing:-.03em;margin:0;font-size:clamp(1.7rem,4vw,2.6rem);font-weight:700;line-height:1.25}.onboarding-copy p:last-child{color:var(--ink-soft);margin:0;line-height:1.55}.onboarding-dots{gap:.45rem;display:flex}.onboarding-dot{background:#4c574f33;border-radius:999px;width:.5rem;height:.5rem;transition:width .22s,background .22s}.onboarding-dot.is-active{background:var(--accent);width:1.35rem}.onboarding-footer{justify-content:space-between;align-items:center;gap:var(--space-5);padding-top:var(--space-4);border-top:1px solid #252d271a;display:flex}.onboarding-actions{align-items:center;gap:var(--space-2);display:flex}.onboarding-back,.onboarding-next{border-radius:var(--radius-pill);min-height:2.5rem;font-weight:700;font-size:var(--text-sm);cursor:pointer;padding:.55rem .95rem}.onboarding-back{color:var(--muted);background:0 0;border:0}.onboarding-next{background:var(--accent-soft);color:var(--accent-deep);border:1px solid #617a6533}.onboarding-back:hover,.onboarding-next:hover{background:#617a6533}@media (width<=720px){.onboarding{padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) calc(var(--space-4) + var(--safe-bottom))}.onboarding-canvas{min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 2rem);gap:var(--space-4)}.onboarding-stage{align-content:center;gap:var(--space-5);grid-template-columns:1fr}.onboarding-visual{aspect-ratio:16/9;border-radius:24px;width:min(100%,22rem)}.visual-logo .brand-mark-svg{border-radius:1.35rem;width:5.5rem;height:5.5rem}.visual-reader,.visual-growth{width:82%;padding:var(--space-3)}.visual-growth{min-height:7.5rem}.visual-bars{height:4rem}.onboarding-copy h1{font-size:clamp(1.55rem,7vw,2rem)}.onboarding-footer{gap:var(--space-3)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
