@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");:root{color-scheme:light;--ink:#15191f;--ink-soft:#303841;--cream:#111d3d;--sky-gradient:linear-gradient(145deg,#111d3d,#173b70 56%,#2b83b5);--paper:#ffffff;--coral:#ed5c7b;--coral-dark:#b92f50;--primary:#202124;--primary-dark:#050505;--teal:#0a8f83;--sun:#f5b942;--sage:#d9f1e9;--line:#dedbd5;--muted:#5c626a;--blue-wash:#f0edff}*{box-sizing:border-box}html{background:#173b70;scroll-behavior:smooth}body{margin:0;color:#fff;background:var(--sky-gradient);font-family:Manrope,Avenir Next,sans-serif;font-size:16px;line-height:1.55}button,input,textarea{font:inherit}a{color:inherit;text-underline-offset:.22em}::selection{color:#fff;background:var(--primary)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#d6d9df}::-webkit-scrollbar-thumb{border:2px solid #d6d9df;border-radius:8px;background:#858c98}:focus-visible{outline:3px solid var(--sun);outline-offset:4px}h1,h2,p{margin-top:0}h1,h2{font-family:Manrope,Avenir Next,sans-serif;font-weight:800;letter-spacing:-.04em;line-height:1.05}.welcome-screen{min-height:100svh;display:flex;flex-direction:column;padding:0 clamp(22px,6vw,92px);background:var(--sky-gradient)}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:94px;border-bottom:1px solid #ffffff2e}.welcome-topbar{border-bottom:0}.topbar-actions{min-height:42px;display:flex;align-items:center;justify-content:flex-end;gap:18px}.topbar-actions>*{flex:0 0 auto}.topbar-actions form{display:flex;margin:0}.topbar-actions form,.topbar-link{min-height:42px;align-items:center}.topbar-link{display:inline-flex;justify-content:center;padding:7px 2px;color:#fff;background:transparent;border:0;font:inherit;font-size:.82rem;font-weight:800;line-height:1.2;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;cursor:pointer}.topbar-link:hover{color:#ffb4c4}.profile-link{min-height:42px;display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:.82rem;font-weight:800;text-decoration:none}.profile-link:hover{color:#ffb4c4}.profile-avatar{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--teal);border:2px solid #fff;border-radius:50%;font-size:.8rem;font-weight:800}.profile-avatar img{width:100%;height:100%;display:block;object-fit:cover}.google-sign-in-form{display:inline-flex;margin:0}.google-sign-in{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 12px;color:#1f1f1f;background:#fff;border:1px solid #747775;border-radius:4px;font-family:Roboto,Arial,sans-serif;font-size:14px;font-weight:500;letter-spacing:.25px;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.google-sign-in:hover{background:#f8faff;border-color:#6f7377;box-shadow:0 1px 2px #3c404333}.google-sign-in:active{background:#eef3fe;box-shadow:none}.google-sign-in svg{width:18px;height:18px;flex:0 0 18px}.fullscreen-button{min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:.82rem;font-weight:800;cursor:pointer;transition:color .16s ease,background-color .16s ease,border-color .16s ease}.fullscreen-button:hover{color:#fff;background:var(--primary);border-color:var(--primary)}.fullscreen-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:#fff;font-weight:800;font-size:1.1rem;letter-spacing:-.03em}.brand img{display:block;border-radius:50%;object-fit:cover}.top-note,.welcome-footer{color:#cbd3e5;font-size:.88rem}.welcome-content{width:min(1080px,100%);margin:auto;padding:clamp(46px,9vh,96px) 0 88px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.8fr);grid-gap:clamp(48px,9vw,136px);gap:clamp(48px,9vw,136px);align-items:center}.welcome-copy h1{font-size:clamp(3.35rem,6.5vw,5.8rem);max-width:9ch;margin-bottom:24px}.welcome-copy p{max-width:29ch;color:#d7ddeb;font-size:clamp(1.1rem,1.7vw,1.32rem);line-height:1.6}.entry-content{width:min(1180px,100%);margin:auto;padding:clamp(48px,10vh,108px) 0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);grid-gap:clamp(54px,10vw,150px);gap:clamp(54px,10vw,150px);align-items:center}.entry-copy h1{max-width:13ch;margin-bottom:24px;font-size:clamp(3.2rem,6.4vw,6rem)}.entry-copy>p{max-width:54ch;color:#d7ddeb;font-size:clamp(1.05rem,1.6vw,1.3rem)}.entry-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.entry-actions form{margin:0}.entry-copy .account-note{margin:13px 0 0;color:#aeb9d0;font-size:.8rem}.entry-copy .entry-error{margin:20px 0 0;padding:12px 14px;color:#7a2035;background:#ffe2e7;border-radius:8px;font-size:.9rem}.entry-book{aspect-ratio:4/5;display:grid;place-items:center;overflow:hidden;background:#fff;border-radius:28px 8px 8px 28px;box-shadow:0 28px 70px #050b1e73;transform:rotate(3deg)}.entry-book img{width:78%;height:78%;object-fit:contain}.age-card{position:relative;overflow:hidden;padding:38px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:0 24px 60px #050b1e4d}.age-card-art{position:absolute;right:-22px;top:-27px;width:116px;height:116px;opacity:.17;transform:rotate(10deg)}.age-card-art img{width:100%;height:100%;object-fit:cover;border-radius:50%}.age-card-text{position:relative}.age-card h2{margin-bottom:7px;font-size:2rem}.age-card-text p{max-width:30ch;margin-bottom:30px;color:var(--muted)}.age-picker{position:relative}.age-value{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.age-value span{font-size:.92rem;font-weight:600}.age-value output{color:var(--coral-dark);font-family:Manrope,sans-serif;font-size:3rem;font-weight:800;line-height:1}input[type=range]{width:100%;height:30px;margin:0;accent-color:var(--primary);cursor:pointer}.range-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem}.age-submit{width:100%;margin-top:26px}.age-picker>p{margin:14px 0 0;color:var(--muted);font-size:.81rem;text-align:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:11px 20px;border:0;border-radius:999px;text-decoration:none;font-weight:800;cursor:pointer;transition:background-color .16s ease,color .16s ease,transform .16s ease}.button:hover{transform:translateY(-1px)}.button-ink{color:#fff;background:var(--primary)}.button-ink:hover{background:var(--primary-dark)}.button-coral{color:#fff;background:var(--coral)}.button-coral:hover{background:var(--coral-dark)}.button-quiet{color:var(--ink);background:var(--blue-wash)}.button-quiet:hover{background:#cbd9fb}.welcome-footer{display:flex;justify-content:space-between;gap:18px;padding:20px 0 26px;border-top:1px solid #ffffff2e}.shell{width:min(100%,1440px);min-height:100svh;margin:0 auto;padding:0 clamp(20px,5.4vw,78px) 30px}.library-shell,.reader-shell,.settings-shell{background:var(--sky-gradient)}.custom-app-background{background-position:50%;background-size:cover;background-attachment:fixed}.library-shell .topbar,.reader-shell .topbar{min-height:84px}.reader-age{min-height:42px;display:flex;align-items:center;gap:12px;color:#cbd3e5;font-size:.85rem;line-height:1.2}.reader-age strong{color:#fff;font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:800}.reader-age a{color:#ff9bb1;font-weight:800}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:58px 0 40px}.library-heading h1{margin-bottom:8px;font-size:clamp(2.55rem,5vw,4.4rem)}.library-heading p{margin-bottom:0;color:#cbd3e5}.library-search{margin:0 0 34px}.library-search>label{display:block;margin-bottom:8px;color:#fff;font-size:.86rem;font-weight:800}.library-search-row{display:flex;align-items:center;gap:10px}.library-search input[type=search]{width:min(620px,100%);min-height:48px;padding:11px 16px;color:var(--ink);background:#fff;border:1px solid #d5d1ca;border-radius:999px}.library-search input[type=search]::placeholder{color:#626a75}.search-clear{min-height:48px;display:inline-flex;align-items:center;padding:8px 4px;color:#fff;font-size:.84rem;font-weight:800}.search-empty{max-width:720px;padding:34px;color:var(--ink);background:#fff;border-radius:18px;box-shadow:0 18px 42px #050b1e38}.search-empty h2{margin-bottom:8px;font-size:2rem}.search-empty p{color:var(--muted)}.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,230px));grid-gap:clamp(22px,3vw,36px);gap:clamp(22px,3vw,36px);align-items:start}.saved-shelf{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);grid-gap:26px;gap:26px;align-items:center;margin:0 0 36px;padding:24px 26px;color:var(--ink);background:#fff;border-radius:16px}.saved-shelf h2{margin-bottom:4px;font-size:1.45rem}.saved-shelf p{margin-bottom:0;color:var(--muted);font-size:.84rem}.saved-links{display:flex;flex-wrap:wrap;gap:9px}.saved-links a{padding:8px 12px;color:#fff;background:var(--teal);border-radius:999px;font-size:.8rem;font-weight:800;text-decoration:none}.saved-links a:hover{background:#07675f}.saved-empty{padding:12px 14px;background:var(--blue-wash);border-radius:8px}.story-tile{aspect-ratio:3/5;min-height:0;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;border:1px solid #d5d1ca;border-radius:20px;box-shadow:0 14px 30px #20212414;transition:transform .18s ease,box-shadow .18s ease}.story-tile:hover{transform:translateY(-6px);box-shadow:0 22px 40px #20212422}.cover-0{background:#c7d8ff}.cover-1{background:#ffc9c0}.cover-2{background:#bfeadd}.cover-3{background:#ffe08a}.cover-content{min-height:100%;display:flex;flex-direction:column;align-items:flex-start;padding:25px 22px 21px}.story-tile.has-cover-image{background:#fff}.story-tile.has-cover-image .cover-content{min-height:48%;padding:14px 16px 15px}.story-tile.has-cover-image .cover-title{font-size:1.2rem}.story-cover-image{width:100%;height:52%;display:block;object-fit:cover}.cover-mark{width:42px;height:42px;display:grid;place-items:center;margin-bottom:20px;border:1px solid;border-radius:50%}.cover-mark span{width:13px;height:17px;border:1.5px solid;border-radius:9px 9px 2px 2px}.cover-title{max-width:18ch;margin-bottom:7px;font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:800;letter-spacing:-.035em;line-height:1.12}.cover-genre{color:#563871;background:#f0e4ff}.cover-genre,.cover-visibility{margin:2px 0 6px;padding:3px 7px;border-radius:999px;font-size:.68rem;font-weight:800}.cover-visibility{color:#713047;background:#ffe4eb}.cover-meta{color:var(--muted);font-size:.78rem}.cover-preview{display:-webkit-box;overflow:hidden;margin-top:14px;color:#374b5f;font-size:.88rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.cover-link{margin-top:auto;padding-top:10px;color:var(--ink);font-size:.82rem;font-weight:800}.empty-library{min-height:300px;display:grid;grid-template-columns:126px minmax(0,1fr) auto;grid-gap:28px;gap:28px;align-items:center;padding:46px clamp(22px,5vw,76px);background:var(--blue-wash);border-radius:14px}.empty-book{position:relative;height:112px;width:112px;display:flex;justify-content:center;align-items:flex-end;gap:3px;padding-bottom:8px}.empty-book span{width:42px;height:78px;border:2px solid var(--ink);border-radius:5px 12px 3px 3px;transform:skewY(7deg)}.empty-book span+span{height:86px;border-radius:12px 5px 3px 3px;transform:skewY(-7deg)}.empty-library h2{margin-bottom:8px;font-size:2.25rem}.empty-library p{max-width:48ch;margin-bottom:0;color:var(--muted)}.text-link{color:var(--primary-dark);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.reader-shell .topbar .text-link{color:#fff}.privacy-note{margin:28px 0 0;padding:13px 16px;color:#15514d;background:var(--sage);border-radius:8px;font-size:.82rem}.library-footer{display:flex;justify-content:space-between;gap:16px;padding-top:28px;color:#cbd3e5;font-size:.82rem}.notice{margin:0 0 20px;padding:12px 15px;border-radius:3px;font-size:.9rem}.notice.success{color:#15514d;background:var(--sage)}.notice.error{color:#7a2035;background:#ffe2e7}.composer-backdrop{position:fixed;inset:0;z-index:10;display:flex;justify-content:flex-end;padding:14px;background:#162e4d6b;overflow-y:auto}body:has(.composer-backdrop){overflow:hidden}.composer-workspace{width:min(1040px,100%);max-height:100%;display:flex;justify-content:flex-end;margin-left:auto}.composer{width:min(620px,100%);max-height:100%;overflow-y:auto;flex:1 1 620px;padding:clamp(24px,4vw,42px);background:var(--paper);border-radius:26px 0 0 26px;box-shadow:0 24px 70px #15191f33;color:var(--ink);scrollbar-color:#858c98 #eceef1}.composer::-webkit-scrollbar-track{background:#eceef1}.composer::-webkit-scrollbar-thumb{border-color:#eceef1;background:#858c98}.composer-top{display:flex;justify-content:space-between;gap:16px}.small-label{margin-bottom:8px;color:var(--coral-dark);font-size:.75rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.composer h2{margin-bottom:6px;font-size:2.7rem}.close-button{width:40px;height:40px;display:grid;place-items:center;color:var(--ink);background:var(--blue-wash);border-radius:50%;font-size:1.55rem;text-decoration:none}.composer-intro{max-width:45ch;margin:10px 0 22px;color:var(--muted)}.story-form{display:flex;flex-direction:column}.story-form label{margin-bottom:7px;font-size:.88rem;font-weight:700}.story-form .description-label,.story-form .genre-label{margin-top:20px}.story-form input:not([type=hidden]),.story-form select,.story-form textarea{width:100%;padding:12px 13px;border:1px solid #aaa99f;border-radius:3px;color:var(--ink);background:#fffefa}.story-form textarea{min-height:180px;resize:vertical;line-height:1.65}.story-form input::placeholder,.story-form textarea::placeholder{color:#627386;opacity:1}.prompt-row{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 18px}.prompt-row span{padding:5px 9px;color:#26426f;background:var(--blue-wash);border-radius:6px;font-size:.74rem}.prompt-row span:first-child{padding-left:0;color:var(--muted);background:transparent}.story-help-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 18px}.story-help-row .prompt-row{margin:0}.ai-open-button{flex:0 0 auto;min-height:42px;padding:8px 14px;color:#fff;background:var(--teal);border:0;border-radius:999px;font:inherit;font-size:.79rem;font-weight:800;cursor:pointer}.ai-open-button:hover{background:#07675f}.ai-helper{width:min(390px,100%);max-height:100%;overflow-y:auto;flex:0 0 390px;padding:32px 28px;color:var(--ink);background:#f0edff;border-left:1px solid #d6d0e7;border-radius:0 26px 26px 0;box-shadow:0 24px 70px #15191f33;scrollbar-color:#858c98 #eceef1}.ai-helper-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ai-helper-top h2{margin-bottom:7px;font-size:2rem}.ai-helper-top p{margin-bottom:24px;color:var(--muted);font-size:.88rem}.ai-helper-form,.ai-result{display:flex;flex-direction:column}.ai-helper label,.ai-result label{margin-bottom:7px;font-size:.84rem;font-weight:800}.ai-helper textarea{width:100%;padding:12px 13px;color:var(--ink);background:#fff;border:1px solid #aaa99f;border-radius:5px;resize:vertical;line-height:1.55}.ai-helper textarea::placeholder{color:#627386;opacity:1}.ai-helper-form .button{align-self:flex-start;margin-top:16px}.ai-helper .button:disabled{color:#68707d;background:#d9dce3;cursor:wait;transform:none}.ai-helper-status{min-height:24px;margin:14px 0;color:#5b2841;font-size:.82rem}.ai-result{gap:8px;padding-top:18px;border-top:1px solid #d4cee3}.ai-result label:not(:first-child){margin-top:10px}.ai-result .button{align-self:flex-start;margin-top:12px}.field-hint{margin:7px 0 0;color:var(--muted);font-size:.79rem}.visibility-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:24px 0 0;padding:0;border:0}.visibility-picker legend{margin-bottom:9px;font-size:.88rem;font-weight:800}.visibility-picker label{position:relative;display:block;margin:0;cursor:pointer}.visibility-picker input{position:absolute;width:1px!important;height:1px;opacity:0}.visibility-picker span{min-height:82px;display:flex;flex-direction:column;justify-content:center;padding:12px 14px;border:1px solid #aaa99f;border-radius:10px;background:#fffefa}.visibility-picker strong{font-size:.9rem}.visibility-picker small{margin-top:3px;color:var(--muted);font-size:.75rem;line-height:1.4}.visibility-picker input:checked+span{border-color:var(--teal);background:var(--sage);box-shadow:inset 0 0 0 1px var(--teal)}.visibility-picker input:focus-visible+span{outline:3px solid var(--sun);outline-offset:3px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.color-picker{margin:20px 0 2px;padding:0;border:0}.color-picker legend{margin-bottom:9px;font-size:.88rem;font-weight:800}.color-options{display:flex;flex-wrap:wrap;gap:10px}.color-options label{position:relative;display:grid;place-items:center;margin:0;cursor:pointer}.color-options input{position:absolute;width:1px!important;height:1px;opacity:0}.color-options label>span:not(.sr-only){width:34px;height:34px;display:block;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #aaa49c}.color-options input:checked+span{box-shadow:0 0 0 3px var(--sun)}.color-options input:focus-visible+span{outline:3px solid var(--sun);outline-offset:4px}.cover-upload{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:16px;background:#f6f3ee;border-radius:16px}.cover-upload label{margin:0}.cover-upload label span{color:var(--muted);font-weight:500}.cover-upload p{margin:3px 0 0;color:var(--muted);font-size:.77rem}.cover-upload input[type=file]{position:absolute;width:1px!important;height:1px;opacity:0}.upload-button{flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;padding:8px 14px;color:#fff;background:var(--ink);border-radius:999px;font-size:.78rem!important;font-weight:800!important;cursor:pointer}.cover-upload-preview{display:flex;align-items:center;gap:14px;margin-top:12px}.cover-upload-preview img{width:64px;aspect-ratio:2/3;object-fit:cover;border-radius:9px}.cover-upload-preview button,.delete-button{min-height:42px;padding:8px 14px;color:#92213b;background:#fff0f2;border:0;border-radius:999px;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.reading-page{max-width:780px;margin:64px auto 36px;padding:clamp(28px,5vw,64px);color:var(--ink);background:#fff;border-radius:30px;box-shadow:0 24px 60px #050b1e4d}.reading-page.preview-with-cover{max-width:1120px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);grid-gap:clamp(42px,7vw,88px);gap:clamp(42px,7vw,88px);align-items:start}.story-preview-cover{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:24px;box-shadow:0 22px 45px #20212422}.reading-copy h1{margin-bottom:12px;font-size:clamp(2.8rem,5vw,4.5rem)}.reading-byline,.story-author{color:var(--muted);font-size:.9rem}.story-author{display:flex;align-items:center;gap:9px}.story-author .profile-avatar{color:#fff;border-color:#fff}.story-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.story-age-label,.story-genre-label{display:inline-flex;margin:0;padding:5px 9px;border-radius:5px;font-size:.78rem;font-weight:700}.story-age-label{color:#15514d;background:var(--sage)}.story-genre-label{color:#563871;background:#f0e4ff}.story-prose{max-width:68ch;margin:30px 0;color:#293d51;font-family:"DM Serif Display",Georgia,serif;font-size:1.17rem;line-height:1.85;white-space:normal}.story-prose p{margin-bottom:1.2em}.text-size-small{font-size:1rem}.text-size-standard{font-size:1.17rem}.text-size-large{font-size:1.35rem}.text-size-extra-large{font-size:1.55rem}.read-button{margin-bottom:18px}.save-book-form{display:inline-flex;margin:0 0 18px 8px;vertical-align:top}.paged-reader{margin-top:30px}.reader-opening{margin-bottom:24px}.reader-opening h1{margin-bottom:12px;font-size:clamp(2.5rem,5vw,4.1rem)}.reading-size-control{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;padding:12px 14px;color:var(--ink);background:#f6f3ee;border:1px solid #e7e0d6;border-radius:14px}.reader-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:start;margin-bottom:24px}.reader-tools .reading-size-control{margin-bottom:0}.reader-tools>.fullscreen-button{min-height:70px;border-radius:14px}.reading-page:-webkit-full-screen{width:100%;max-width:none;height:100%;margin:0;overflow-y:auto;border-radius:0}.reading-page:fullscreen{width:100%;max-width:none;height:100%;margin:0;overflow-y:auto;border-radius:0}.comments-panel{max-width:780px;margin:0 auto 28px;padding:clamp(24px,4vw,38px);color:var(--ink);background:#fff;border-radius:22px;box-shadow:0 18px 46px #050b1e38}.comments-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.comments-heading h2{margin-bottom:3px;font-size:1.8rem}.comments-heading p{margin-bottom:0;color:var(--muted);font-size:.82rem}.comment-list{display:grid;grid-gap:12px;gap:12px;margin-bottom:22px}.comment{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid var(--line)}.comment:last-child{border-bottom:0}.comment-copy strong{display:block;margin:1px 0 4px;font-size:.85rem}.comment-copy p{margin-bottom:0;color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere}.comment-delete{min-height:38px;padding:7px 9px;color:#92213b;background:#fff0f2;border:0;border-radius:999px;font:inherit;font-size:.74rem;font-weight:800;cursor:pointer}.comments-empty{margin-bottom:22px;padding:16px;color:var(--muted);background:#f6f3ee;border-radius:10px}.comment-form{display:grid;grid-gap:8px;gap:8px;padding-top:20px;border-top:1px solid var(--line)}.comment-form label{font-size:.86rem;font-weight:800}.comment-form textarea{width:100%;padding:12px 13px;color:var(--ink);background:#fffefa;border:1px solid #aaa99f;border-radius:8px;resize:vertical}.comment-form>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.comment-form>div>span{color:var(--muted);font-size:.76rem}.comment-sign-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--line)}.comment-sign-in p{margin-bottom:0;color:var(--muted)}.reading-size-control>span{font-size:.84rem;font-weight:800}.reading-size-buttons{display:flex;align-items:center;gap:8px}.reading-size-buttons button{width:44px;height:44px;display:grid;place-items:center;padding:0;color:#fff;background:var(--primary);border:0;border-radius:50%;font:inherit;font-size:1.45rem;font-weight:800;line-height:1;cursor:pointer}.reading-size-buttons button:hover:not(:disabled){background:var(--coral-dark)}.reading-size-buttons button:disabled{color:#777f8d;background:#dfe3e9;cursor:not-allowed}.reading-size-buttons output{min-width:46px;color:var(--ink-soft);font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800;text-align:center}.story-page-copy{min-height:19rem;margin:0;white-space:pre-line}.story-page-copy:focus{outline:none}.page-progress{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 10px}.page-progress p,.page-status{margin:0;color:var(--muted);font-size:.82rem}.page-status{flex:0 0 auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.page-progress p{max-width:25ch;text-align:right}.page-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line)}.page-controls .button:disabled{color:#6f7888;background:#e4e8ef;cursor:not-allowed;transform:none}.owner-actions{display:flex;align-items:center;gap:10px;margin-top:16px}.owner-actions form{margin:0}.settings-heading{padding:58px 0 34px}.settings-heading h1{margin-bottom:8px;font-size:clamp(2.55rem,5vw,4.4rem)}.settings-heading p{margin-bottom:0;color:#d7ddeb}.profile-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px;padding-bottom:50px;color:var(--ink)}.settings-section{display:flex;flex-direction:column;padding:clamp(24px,4vw,38px);background:#fff;border-radius:24px;box-shadow:0 20px 48px #050b1e42}.settings-section h2{margin-bottom:5px;font-size:1.8rem}.settings-section>div:first-child>p{margin-bottom:24px;color:var(--muted);font-size:.86rem}.background-color-picker>label,.settings-section>label{margin:18px 0 7px;font-size:.86rem;font-weight:800}.settings-section input:not([type=file]):not([type=radio]),.settings-section select{width:100%;padding:12px 13px;color:var(--ink);background:#fffefa;border:1px solid #aaa99f;border-radius:6px}.profile-picture-row{display:flex;align-items:center;gap:18px}.profile-avatar-large{width:78px;height:78px;flex-basis:78px;font-size:1.45rem}.profile-picture-row>div{display:flex;flex-wrap:wrap;gap:8px}.profile-remove{min-height:42px;padding:8px 12px;color:#92213b;background:#fff0f2;border:0;border-radius:999px;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.background-color-picker{margin-top:20px}.background-color-picker>p{margin:3px 0 12px;color:var(--muted);font-size:.79rem}.background-color-row{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:stretch}.background-color-row input[type=color]{width:64px!important;min-height:64px;padding:4px!important;cursor:pointer}.gradient-preview{min-height:64px;display:flex;align-items:flex-end;padding:10px 12px;color:#fff;background-image:linear-gradient(135deg,color-mix(in srgb,var(--preview-color) 48%,black) 0,var(--preview-color) 52%,color-mix(in srgb,var(--preview-color) 25%,transparent) 100%);background-color:#fff;background-position:50%;background-size:cover;border-radius:10px;font-size:.76rem;font-weight:800;text-shadow:0 1px 3px #000b}.background-upload-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.settings-age-picker{display:grid;grid-template-columns:minmax(0,1fr) 54px;grid-gap:14px;gap:14px;align-items:center}.settings-age-picker output{display:grid;place-items:center;min-height:48px;color:#fff;background:var(--teal);border-radius:12px;font-size:1.05rem;font-weight:800}.settings-save{grid-column:1/-1;justify-self:end}@media (min-width:1180px){.story-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width:980px){.entry-content{grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);gap:42px}.entry-copy h1{font-size:clamp(3rem,7vw,4.4rem);overflow-wrap:anywhere}.library-shell .topbar{flex-wrap:wrap;gap:8px;padding:10px 0}.library-shell .topbar-actions{width:100%;justify-content:flex-end;gap:10px}.library-shell .topbar-link{max-width:112px;font-size:.72rem;line-height:1.2}.library-heading{align-items:flex-start;flex-direction:column;gap:20px;padding:40px 0 28px}}@media (max-width:760px){.entry-content{grid-template-columns:1fr;gap:32px;padding:34px 0 46px}.entry-copy h1{max-width:12ch;margin-bottom:16px;font-size:clamp(2.45rem,10vw,3.4rem);overflow-wrap:normal}.entry-book{width:min(66vw,250px);justify-self:center}.entry-actions{align-items:stretch;flex-direction:column}.entry-actions .button,.entry-actions button,.entry-actions form{width:100%}.welcome-content{grid-template-columns:1fr;gap:20px;padding:20px 0 38px}.welcome-copy h1{max-width:13ch;margin-bottom:12px;font-size:clamp(2rem,8vw,2.65rem)}.welcome-copy p{max-width:32ch;font-size:1rem}.age-card{padding:22px 20px;border-radius:10px}.age-card-text p{margin-bottom:18px}.age-value output{font-size:2.55rem}.age-submit{margin-top:19px}.topbar{min-height:74px}.reader-shell .topbar,.settings-shell .topbar,.welcome-topbar{flex-wrap:wrap;gap:8px;padding:10px 0}.reader-shell .topbar-actions,.settings-shell .topbar-actions,.welcome-topbar .topbar-actions{width:100%;justify-content:flex-end;gap:10px}.top-note,.welcome-footer span+span{display:none}.fullscreen-button{min-width:40px;padding-inline:10px}.fullscreen-button span{display:none}.welcome-footer{justify-content:center}.visibility-picker{grid-template-columns:1fr}.profile-link>span:last-child{display:none}.profile-settings-form{grid-template-columns:1fr}.settings-heading{padding:36px 0 24px}.settings-heading h1{font-size:2.45rem}.settings-save{width:100%;justify-self:stretch}.library-shell,.reader-shell{padding-inline:18px}.library-shell .topbar{flex-wrap:wrap;gap:8px;padding:10px 0}.library-shell .topbar-actions{gap:9px}.library-shell .topbar-link{max-width:92px;font-size:.7rem;line-height:1.15}.library-heading{align-items:flex-start;flex-direction:column;gap:20px;padding:36px 0 25px}.library-heading h1{font-size:2.9rem}.library-search-row{align-items:stretch;flex-direction:column}.library-search .button,.library-search input[type=search]{width:100%}.search-clear{justify-content:center}.story-grid{gap:12px}.saved-shelf,.story-grid{grid-template-columns:1fr}.saved-shelf{gap:14px;padding:20px}.story-tile{min-height:246px}.empty-library{grid-template-columns:1fr;gap:16px;padding:30px 22px}.empty-book{width:86px;height:82px}.empty-book span{height:58px;width:34px}.empty-book span+span{height:64px}.empty-library h2{font-size:1.9rem}.library-footer{flex-direction:column;gap:5px}.reader-age{gap:7px;font-size:.76rem}.reader-age strong{font-size:1.2rem}.brand{gap:7px;font-size:1rem}.brand img{width:36px;height:36px}.composer-backdrop{padding:0}.composer-workspace{display:block;max-height:100svh}.composer{width:100%;max-height:100svh;padding:24px 20px}.composer h2{font-size:2.25rem}.reading-page{margin:30px auto}.reading-page.preview-with-cover{display:flex;flex-direction:column-reverse;gap:26px}.story-preview-cover{width:min(78%,280px);align-self:center}.reading-copy h1{font-size:3rem}.story-page-copy{min-height:22rem}.page-controls{align-items:stretch;flex-direction:column-reverse}.page-controls .button{width:100%}.page-progress{align-items:flex-start;flex-direction:column;gap:4px}.page-progress p{text-align:left}.reader-tools{grid-template-columns:1fr}.reader-tools>.fullscreen-button{min-height:48px}.comments-panel{border-radius:14px}.comment{grid-template-columns:36px minmax(0,1fr)}.comment form{grid-column:2}.comment-form>div,.comment-sign-in{align-items:stretch;flex-direction:column}.comment-form .button,.comment-sign-in button,.comment-sign-in form{width:100%}.cover-upload{align-items:flex-start;flex-direction:column}.owner-actions{align-items:stretch;flex-direction:column}.owner-actions .button,.owner-actions button,.owner-actions form{width:100%}.save-book-form{display:flex;margin:0 0 18px}.save-book-form .button{width:100%}.story-help-row{align-items:stretch;flex-direction:column}.ai-open-button{width:100%}.ai-helper{position:fixed;inset:0;z-index:2;width:100%;max-height:100svh;padding:24px 20px;border:0;border-radius:0}}.landing-page{position:relative;min-height:100svh;display:flex;flex-direction:column;overflow:hidden;padding:0 clamp(22px,5vw,76px);background:var(--sky-gradient);isolation:isolate}.landing-footer,.landing-hero,.landing-nav{position:relative;z-index:3}.landing-nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff2e}.landing-nav>span{color:#cbd3e5;font-size:.84rem}.landing-hero{width:min(1380px,100%);margin:auto;padding:clamp(44px,7vh,84px) 0 clamp(54px,8vh,96px);display:grid;grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);grid-gap:clamp(48px,7vw,112px);gap:clamp(48px,7vw,112px);align-items:center}.landing-copy h1{max-width:11ch;margin-bottom:24px;font-size:clamp(3.45rem,5.25vw,5.35rem)}.landing-copy p{max-width:48ch;margin-bottom:32px;color:#d7ddeb;font-size:clamp(1.05rem,1.45vw,1.24rem);line-height:1.65}.landing-cta{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;color:#fff;background:var(--coral);border-radius:999px;font-weight:800;text-decoration:none;box-shadow:0 12px 26px #050b1e52;transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease}.landing-cta:hover{background:var(--coral-dark);transform:translateY(-2px);box-shadow:0 17px 30px #050b1e66}.product-spotlight{min-height:580px;padding:clamp(22px,3vw,38px);color:#fff;background:#17264e;border:1px solid #ffffff42;border-radius:30px;box-shadow:0 32px 80px #050b1e91;transform:rotate(1deg)}.spotlight-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #ffffff29;color:#d7ddeb;font-size:.76rem}.spotlight-toolbar strong{margin-left:4px;color:#fff;font-size:1.1rem}.spotlight-brand{display:inline-flex;align-items:center;gap:9px;color:#fff;font-size:.95rem;font-weight:800}.spotlight-brand img{border-radius:50%}.spotlight-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 0 28px}.spotlight-heading h2{margin-bottom:7px;font-size:clamp(2rem,3.4vw,3.5rem)}.spotlight-heading p{margin-bottom:0;color:#cbd3e5;font-size:.86rem}.spotlight-write{flex:0 0 auto;padding:9px 14px;color:#fff;background:var(--coral);border-radius:999px;font-size:.72rem;font-weight:800}.spotlight-book{width:min(225px,42%);min-width:185px;overflow:hidden;color:var(--ink);background:#fff;border:1px solid #d5d1ca;border-radius:18px;box-shadow:0 16px 34px #050b1e66}.spotlight-book>img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover;object-position:center 30%}.spotlight-book>div{min-height:155px;display:flex;flex-direction:column;align-items:flex-start;padding:17px}.spotlight-book h3{max-width:15ch;margin:0 0 7px;font-size:1.2rem;line-height:1.08;letter-spacing:-.03em}.spotlight-book p{margin-bottom:0;color:var(--muted);font-size:.74rem}.spotlight-book span{margin-top:auto;font-size:.75rem;font-weight:800}.spotlight-note{margin:28px 0 0;padding:12px 14px;color:#15514d;background:var(--sage);border-radius:8px;font-size:.76rem}.landing-footer{display:flex;justify-content:space-between;gap:20px;padding:20px 0 26px;color:#cbd3e5;border-top:1px solid #ffffff2e;font-size:.8rem}@media (max-width:1080px){.landing-hero{grid-template-columns:1fr;gap:44px}.landing-copy h1{max-width:12ch}.product-spotlight{min-height:540px;transform:none}}@media (max-width:560px){.landing-page{padding-inline:20px}.landing-nav{min-height:78px}.landing-nav>span{display:none}.landing-hero{padding:38px 0 56px;gap:38px}.landing-copy h1{max-width:11ch;margin-bottom:18px;font-size:clamp(2.8rem,13vw,4rem)}.landing-copy p{margin-bottom:24px;font-size:1rem}.landing-cta{width:100%;text-align:center}.product-spotlight{min-height:510px;padding:18px;border-radius:20px}.spotlight-heading{align-items:flex-start;flex-direction:column;gap:16px;padding:26px 0 22px}.spotlight-heading h2{font-size:2.3rem}.spotlight-book{width:195px}.spotlight-note{margin-top:22px}.landing-footer span+span{display:none}}