@font-face{font-family:Lexend;src:url('/assets/Lexend-Regular.ttf') format('truetype');font-display:swap}
:root{--warm-white:#faf8f2;--white:#fff;--charcoal:#29312f;--mulberry:#684f66;--sage:#81907d;--soft-oat:#eee8dc;--secondary-ink:#5e6662;--hairline:#d9d5cb;--soft-mulberry:#f0e9ef;--soft-sage:#e7ebe5;--ember:#a34f43;--font-learner:'Comic Sans MS','Comic Sans','Chalkboard SE','Arial Rounded MT Bold',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--warm-white);color:var(--charcoal);font-family:var(--font-learner);font-size:18px;line-height:1.6}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer;min-height:52px;border:1px solid var(--hairline);border-radius:8px;background:white;padding:12px 22px;display:inline-flex;align-items:center;justify-content:center;gap:12px;line-height:1.3}button:hover:not(:disabled){background:var(--soft-oat)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--charcoal);color:white;border-color:var(--charcoal)}button.primary:hover:not(:disabled){background:#404b47}button.danger{color:var(--ember);border-color:var(--ember)}:focus-visible{outline:3px solid var(--mulberry);outline-offset:4px}a{color:var(--charcoal)}header{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:24px 5%;border-bottom:1px solid var(--hairline);background:white}.identity{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:22px;line-height:1.4}.identity img{width:44px;height:44px}.identity small{display:block;font-family:Arial,sans-serif;font-size:12px;color:var(--secondary-ink);margin-top:4px}.brand-dot{color:var(--mulberry)}.header-actions{display:flex;align-items:center;gap:22px}.audience{font-size:13px;color:var(--secondary-ink)}.teacher-toggle{font:14px Arial,sans-serif;min-height:44px;padding:10px 15px;background:transparent}main{max-width:1120px;margin:auto;padding:40px 36px 70px;min-height:calc(100vh - 190px)}h1{font-size:36px;line-height:1.3;font-weight:600;margin:8px 0 16px}h2{font-size:25px;font-weight:600;margin:8px 0 18px}p{margin:12px 0}.eyebrow{font:12px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary-ink)}.intro{text-align:center;margin:28px auto 45px}.muted{color:var(--secondary-ink);font-size:15px}.row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.between{justify-content:space-between}.symbol{width:48px;height:48px;object-fit:contain}.small-symbol{width:28px;height:28px;object-fit:contain}.large-symbol{width:82px;height:82px;object-fit:contain}.choices{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;max-width:900px;margin:25px auto 40px}.author-choice{display:flex;flex-direction:column;gap:14px;width:170px;padding:28px 20px 22px;font-size:21px;background:white;min-height:205px;border-radius:12px}.portrait{width:100px;height:100px;object-fit:cover;border-radius:12px}.avatar{font-size:62px;line-height:100px;text-align:center;display:block;width:100px;height:100px;background:var(--warm-white);border-radius:12px}.create-area{text-align:center}.create-area button{border:0;background:transparent;font-size:15px}.collection{margin-top:32px;display:flex;flex-wrap:wrap;gap:28px}.book-choice{width:225px;display:block;padding:0;background:transparent;border:none;min-height:0;text-align:left}.cover{height:285px;overflow:hidden;border:1px solid var(--hairline);border-left:7px solid var(--mulberry);border-radius:3px 10px 10px 3px;background:white;display:flex;flex-direction:column;box-shadow:2px 3px 0 var(--soft-oat)}.cover-art{height:170px;width:100%;object-fit:cover}.cover-blank{height:170px;display:flex;align-items:center;justify-content:center;background:var(--soft-oat)}.cover-title{font-size:20px;line-height:1.4;padding:16px 18px;overflow-wrap:anywhere}.book-date{font-size:13px;padding:9px 4px;color:var(--secondary-ink)}.book-choice:hover .cover{border-color:var(--mulberry)}.empty{margin:70px auto;text-align:center;max-width:500px}.empty img{display:block;margin:0 auto 25px;width:110px;height:110px}.workspace-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.back{border:0;background:transparent;padding:10px 0;min-width:95px;font-size:16px}.back span{font-size:30px}.save-status{font:13px Arial,sans-serif;display:flex;align-items:center;gap:8px}.save-status:before{content:'○';font-size:18px}.save-status.saved:before{content:'✓';color:var(--charcoal)}.save-status.saved{background:var(--soft-sage);padding:7px 12px;border-radius:5px}.page-meta{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:20px 0 12px}.page-meta .eyebrow{color:var(--mulberry)}.spread{background:white;border:1px solid var(--hairline);border-radius:10px;min-height:410px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.illustration{padding:24px;border-right:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;min-height:360px}.illustration img{width:100%;max-height:430px;object-fit:contain;border-radius:5px}.picture-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;color:var(--secondary-ink);text-align:center;font-size:15px;min-height:300px}.picture-empty img{width:80px;height:80px}.words{padding:36px;align-self:center;font-size:25px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}.words.empty-words{font-size:18px;color:var(--secondary-ink);text-align:center}.stage{margin:28px auto 20px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;min-height:100px}.next-action{min-height:84px;min-width:250px;font-size:23px;padding:16px 30px}.secondary-action{font-size:17px;min-height:66px}.listening{background:var(--soft-mulberry);border:2px solid var(--mulberry);color:var(--charcoal);min-width:290px}.listening img{width:44px}.recording-status{text-align:center;color:var(--mulberry);font-size:20px}.page-nav{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--hairline);padding-top:22px;margin-top:26px;gap:18px}.page-nav button{min-width:64px;min-height:60px}.page-nav button span{font-size:32px}.page-count{font-size:15px;color:var(--secondary-ink)}.reading-actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:30px 0}.reading-title{text-align:center;margin-bottom:30px}.reading-cover{max-width:560px;margin:20px auto;padding:35px;background:white;border:1px solid var(--hairline);border-left:9px solid var(--mulberry);border-radius:4px 12px 12px 4px;text-align:center}.reading-cover img{width:100%;border-radius:5px;margin:15px 0}footer{border-top:1px solid var(--hairline);padding:16px 5%;display:flex;align-items:center;justify-content:space-between;font:12px Arial,sans-serif;color:var(--secondary-ink)}footer button{border:0;background:transparent;font:12px Arial,sans-serif;min-height:44px;padding:8px}#notice{max-width:1048px;margin:22px auto 0;background:var(--soft-oat);border-left:3px solid var(--mulberry);padding:16px 22px;font-size:17px}#notice.error{border-left-color:var(--ember)}#example-banner{font:14px Arial,sans-serif;text-align:center;padding:12px;background:var(--soft-oat)}[hidden]{display:none!important}.skip{position:absolute;top:-60px;left:20px;padding:10px;background:white;z-index:5}.skip:focus{top:15px}dialog{border:1px solid var(--hairline);border-radius:10px;background:var(--warm-white);color:var(--charcoal);width:min(720px,calc(100vw - 32px));max-height:90dvh;padding:0;box-shadow:0 20px 70px #29312f30}dialog::backdrop{background:#29312f66}#dialog-body{padding:30px}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.dialog-header h2{margin:0}.close{min-width:48px;padding:8px}.adult{font:16px/1.6 Arial,sans-serif}.adult h2,.adult h3{font-family:Georgia,serif}.adult label{display:block;margin:20px 0 7px}.adult input,.adult textarea,.adult select{width:100%;padding:12px;border:1px solid var(--hairline);background:white;border-radius:6px;min-height:48px}.adult textarea{min-height:150px;resize:vertical}.adult button{font-family:Arial,sans-serif}.adult .row{margin-top:18px}.adult details{border-top:1px solid var(--hairline);padding-top:15px;margin-top:22px}.adult summary{cursor:pointer;padding:8px 0}.adult aside{background:var(--charcoal);color:white;padding:18px;margin:-30px -30px 22px}.adult aside img{width:28px;vertical-align:middle;margin-right:12px;filter:brightness(0) invert(1)}.adult audio{width:100%;margin-top:12px}.passage{border-top:1px solid var(--hairline);padding:15px 0}.photo-preview{width:100px;height:100px;object-fit:cover}.busy{font-size:19px;padding:25px;text-align:center;background:var(--soft-sage);border-radius:8px;min-width:280px}.setup{max-width:640px;margin:65px auto;text-align:center}.setup>img{width:110px;margin-bottom:24px}.setup h1{font-size:32px}.conflict-words{max-height:200px;overflow:auto;background:white;border:1px solid var(--hairline);padding:14px;white-space:pre-wrap}.mic-meter{height:12px;width:100%;background:var(--soft-oat);border-radius:5px;overflow:hidden}.mic-meter span{height:100%;display:block;background:var(--mulberry);width:0}.download-ready{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin:24px 0}.download-ready a{border:1px solid var(--hairline);background:white;border-radius:8px;padding:16px 24px;text-decoration:none}.title-row{gap:20px}.title-row h1{margin:0}.small-help{font-size:15px}.recovery{display:flex;justify-content:center;gap:16px;margin-top:20px;flex-wrap:wrap}
@media(max-width:760px){header{padding:18px 22px}.identity{font-size:17px;gap:10px}.identity img{width:36px;height:36px}.identity small{font-size:10px;max-width:180px}.audience{display:none}.header-actions{gap:8px}.teacher-toggle{padding:10px;font-size:12px}main{padding:24px 20px 50px}h1{font-size:29px}.spread{grid-template-columns:1fr}.illustration{min-height:200px;border-right:0;border-bottom:1px solid var(--hairline);padding:18px}.illustration img{max-height:290px}.words{padding:24px;font-size:23px}.picture-empty{min-height:170px}.stage{margin-top:20px}.next-action{min-width:230px}.intro{margin:20px auto 30px}.choices{gap:18px}.author-choice{width:140px;min-height:180px;padding:18px 15px}.portrait,.avatar{width:85px;height:85px;line-height:85px}.collection{gap:20px;justify-content:center}.book-choice{width:190px}.cover{height:260px}.cover-art,.cover-blank{height:150px}.cover-title{font-size:18px}.title-row h1{font-size:28px}.save-status{font-size:12px}#notice{margin:16px 20px 0}.page-nav{gap:10px}.page-count{font-size:13px}.page-meta .row{gap:10px}.page-meta button{font-size:15px;padding:10px 14px}.reading-cover{padding:22px}.adult aside{margin:-25px -25px 20px}#dialog-body{padding:25px}.header-actions .teacher-toggle{min-width:75px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.back span,.page-nav button span{font-size:16px}.back .arrow{width:25px;height:25px}.page-nav .arrow{width:30px;height:30px}.editor .workspace-context{margin-bottom:12px}.editor .page-meta{margin-top:14px}.editor .spread{min-height:320px}.editor .illustration{min-height:300px}.editor .stage{position:sticky;bottom:12px;background:var(--warm-white);padding:12px 0;z-index:1;margin-top:14px;margin-bottom:10px}.editor .page-nav{margin-top:12px;padding-top:16px}.editor .reading-actions{margin:14px 0}.editor .words{font-size:24px}.editor .illustration img{max-height:340px}
@media(max-width:760px){.editor .illustration{min-height:190px}.editor .illustration img{max-height:260px}.editor .stage{bottom:0;margin-left:-8px;margin-right:-8px}.editor .stage .next-action{font-size:20px;min-height:72px}.editor .words{font-size:22px}}
