/* Reading Buddy — functional pass. Design tokens reconciled with the ui-ux-pro-max
   spec (playful orange / trust blue / cream, Baloo 2 + Comic Neue). Full design +
   anti-slop pass before Kyle sees it as finished. Kid UI: no smooth scroll. */
:root{--bg:#FFF7ED;--ink:#3b2f22;--muted:#9a6b3f;--primary:#F97316;--accent:#2563EB;--card:#fff;--green:#2e9e5b;--border:#FED7AA;}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:"Comic Neue",system-ui,sans-serif;min-height:100vh}
#app{max-width:760px;margin:0 auto;padding:24px 20px}
h1,h2,.big-btn{font-family:"Baloo 2",system-ui,sans-serif}
.screen{display:none}.screen.active{display:block}
.logo{font-size:44px;text-align:left;color:var(--primary)}
.tag{font-size:18px;color:var(--muted);margin:2px 0 22px}
.pick-block h2{font-size:22px;margin:14px 0 8px}
.chip-row{display:flex;gap:10px;flex-wrap:wrap}
.kid-chip{font-family:"Baloo 2";font-size:20px;padding:10px 22px;border-radius:999px;border:3px solid var(--border);background:var(--card);cursor:pointer}
.kid-chip.sel{border-color:var(--primary);background:#FFEDD5}
.card-col{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.p-card{display:flex;justify-content:space-between;align-items:center;background:var(--card);border:3px solid var(--border);border-radius:18px;padding:14px 18px;cursor:pointer;font-size:18px}
.p-card.sel{border-color:var(--accent);background:#EFF6FF}
.p-card .band{font-size:13px;color:var(--muted);font-weight:700}
.big-btn{width:100%;font-size:24px;padding:16px;border:none;border-radius:18px;background:var(--primary);color:#fff;cursor:pointer}
.big-btn:disabled{opacity:.4;cursor:default}
.quiet-btn{font-family:"Baloo 2";font-size:16px;padding:8px 18px;border-radius:999px;border:2px solid var(--border);background:var(--card);cursor:pointer}
.note{margin-top:10px;font-size:14px;color:var(--muted)}
.read-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
#meter-wrap{flex:1;height:34px;border:3px solid var(--border);border-radius:999px;background:var(--card);position:relative;overflow:hidden}
#meter-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--green),#7cc47c);transition:width .6s ease}
#meter-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
#read-title{font-size:26px;margin-bottom:12px}
#passage{font-size:clamp(24px,4.2vw,34px);line-height:1.75;background:var(--card);border:3px solid var(--border);border-radius:22px;padding:26px 28px}
#passage .sent{opacity:.42;transition:opacity .5s ease, background .5s ease;border-radius:8px;padding:1px 4px}
#passage .sent.read{opacity:.8}
#passage .sent.now{opacity:1;background:#FFF3C4}
#coach{margin-top:14px;background:#EFF6FF;border:3px solid #BFDBFE;border-radius:16px;padding:12px 18px;font-size:19px}
.done-card{text-align:center;background:var(--card);border:3px solid var(--border);border-radius:24px;padding:44px 30px;margin-top:60px}
.done-emoji{font-size:64px}
.done-card p{font-size:19px;margin:12px 0 22px}
@media (prefers-reduced-motion: reduce){#meter-fill,#passage .sent{transition:none}}
