/* Grade is a presentation choice, never an age gate or an assessment. */
body{--age-ink:#174f40;--age-accent:#236b51;--age-tint:#edf5df;--age-border:#bfd2b7;--age-paper:#fffef9}
body[data-age-band=explore]{--age-ink:#183f60;--age-accent:#225e89;--age-tint:#edf5fa;--age-border:#bed2df;--age-paper:#fffefa}
body[data-age-band=studio]{--age-ink:#23364d;--age-accent:#3d527d;--age-tint:#eff2f8;--age-border:#ccd5e1;--age-paper:#fff;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f6f7fa}
.grade-chooser{margin:0 0 22px;padding:18px 0;border-bottom:1px solid var(--age-border)}.grade-chooser-label{display:block;font-weight:800;color:var(--age-ink);font-size:16px;margin-bottom:10px}.grade-chooser .grade-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:0}.grade-chooser button{flex:1 1 88px;min-height:56px;border:1px solid var(--age-border);border-radius:14px;background:white;color:var(--age-ink);font:750 16px/1.3 var(--font);padding:12px;box-shadow:none}.grade-chooser button[aria-pressed=true]{color:white;background:var(--age-accent);border-color:var(--age-accent);box-shadow:inset 0 -4px 0 #0002}.grade-status{margin:0;font-size:14px}.grade-status:not(:empty){margin-top:10px}
#child-home .home-welcome{background:var(--age-tint);border-color:var(--age-border);margin:0 0 28px;padding:30px 34px;min-height:220px}#child-home .home-welcome h1{color:var(--age-ink);font-size:clamp(30px,4.5vw,46px);max-width:600px}#child-home .welcome-intro{color:var(--age-ink);font-size:18px;max-width:520px}#child-home .welcome-eyebrow{color:var(--age-ink)}#child-home .home-welcome .primary-button{background:var(--age-accent);border-color:var(--age-accent);min-width:220px}#child-home .welcome-note{color:var(--age-ink)}.age-subject-section{margin:0 0 30px!important;padding:0!important;border:0!important;background:none!important}.age-subject-section h2{font-size:28px;color:var(--age-ink);margin:8px 0}.age-subject-section>p{color:var(--age-ink);line-height:1.6}.age-subject-section .g1-subject-grid{margin:20px 0}.age-subject-section .g1-subject-tile{position:relative;border:1px solid var(--age-border);border-bottom:4px solid var(--age-border);border-radius:20px;box-shadow:0 4px 12px #253b4a05;color:var(--age-ink);gap:8px}.age-subject-section .g1-subject-tile small{color:#526373;font-size:14px;font-variant-numeric:tabular-nums}.subject-description{font-size:14px;line-height:1.45;display:none}.family-guide{border-top:1px solid var(--age-border);margin-top:26px;padding-top:12px}.family-guide>summary{cursor:pointer;color:var(--age-ink);font-weight:750;padding:18px 4px}.family-guide>.classroom-note{margin-top:25px}#child-home .reward-hub{margin:28px 0 20px}.age-subject-section .g1-legacy{border-top:1px solid var(--age-border);font-size:16px}.age-subject-section .g1-legacy summary{padding:15px 0}
body[data-age-band=explore] .welcome-pip{transform:rotate(-3deg)}body[data-age-band=explore] .g1-subject-tile .subject-picture{width:86px;height:86px}body[data-age-band=explore] .subject-description{display:block}body[data-age-band=explore] .play-card{background:#f4f8fc;border-color:var(--age-border)}
body[data-age-band=studio] .home-welcome{grid-template-columns:minmax(0,1fr) 140px;border-radius:18px}body[data-age-band=studio] .welcome-pip img{width:110px;height:110px}body[data-age-band=studio] .welcome-spark,body[data-age-band=studio] .pip-hello{display:none}body[data-age-band=studio] .home-welcome h1{font-weight:800;letter-spacing:-1.5px}body[data-age-band=studio] .g1-subject-grid{gap:14px}body[data-age-band=studio] .g1-subject-tile{align-items:flex-start;text-align:left;border-radius:16px;min-height:186px;padding:20px;gap:10px}body[data-age-band=studio] .g1-subject-tile .subject-picture{width:56px;height:56px;border-radius:10px}body[data-age-band=studio] .g1-subject-tile strong{font-size:20px}body[data-age-band=studio] .subject-description{display:block;color:#526373}body[data-age-band=studio] .g1-subject-tile small{margin-top:auto}body[data-age-band=studio] .g1-subject-tile:hover{background:#f5f7fc;border-color:#7285a0}body[data-age-band=studio] .reward-hub{border-radius:18px}body[data-age-band=studio] .welcome-pip{opacity:.92}
/* One question gets the visual emphasis; repeated level labels are quiet. */
body[data-view=play] #grade-context{display:none}body[data-view=play] .play-top{background:transparent;border-bottom:1px solid var(--age-border);margin:0 18px 12px;padding:13px 0;gap:10px}body[data-view=play] .play-top .round-label{display:none}body[data-view=play] .play-card{border-color:var(--age-border);box-shadow:0 6px 24px #253b4a08}body[data-view=play] .page-heading h1{color:var(--age-ink)}body[data-view=play] .kquest-progress{font-size:14px;font-weight:700;order:0;margin:3px 0 8px;color:#526373}body[data-view=play] .kquest-levels{gap:8px;margin-bottom:8px}body[data-view=play] .kquest-levels span{padding:6px 12px;font-size:13px}body[data-view=play] .question-controls{margin:12px 0 2px}body[data-view=play] .kquest-next-level{font-size:14px;margin:5px 0 12px;font-weight:600}body[data-view=play] .kquest-content .question-controls h2{font-size:clamp(23px,3vw,29px);line-height:1.4;text-wrap:pretty}body[data-view=play] .kquest-story p{line-height:1.9;max-width:65ch;margin:18px auto}body[data-view=play] .pip-demonstration{background:white;border:1px solid var(--age-border);box-shadow:none}body[data-view=play] .kquest-actions{gap:12px}body[data-view=play] .g1-writing-label textarea{min-height:180px;background:#fffefb;color:#203b3c}body[data-view=play] .kquest-story summary{padding:12px 0}
body[data-age-band=play] .pip-demonstration{border-radius:24px}body[data-age-band=play] .kquest-content .question-controls h2{font-weight:900}body[data-age-band=play] .kquest-choices button{font-size:20px!important}body[data-age-band=play] .kquest-content .kquest-choices button{min-height:88px!important}body[data-age-band=play] .g1-writing-label textarea{font-size:21px;line-height:1.9}
body[data-age-band=studio] .adventure-layout{max-width:940px}body[data-age-band=studio] .play-card{background:#fff;border-radius:18px}body[data-age-band=studio] .chapter-pill{background:var(--age-tint);color:var(--age-ink);font-weight:700}body[data-age-band=studio] .game-content{padding:12px 32px 26px;color:var(--age-ink)}body[data-age-band=studio] .game-content p{color:#40526a;font-size:18px;line-height:1.75}body[data-age-band=studio] .kquest-content .question-controls h2{text-align:left;font-size:26px;color:var(--age-ink);font-weight:750;letter-spacing:-.4px}body[data-age-band=studio] .question-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;align-items:start;gap:18px}body[data-age-band=studio] .question-controls .question-listen{min-width:120px;background:#f4f6fa;border:1px solid var(--age-border);border-radius:12px;color:var(--age-ink)}body[data-age-band=studio] .kquest-content .kquest-progress,body[data-age-band=studio] .kquest-content .kquest-next-level{font-size:14px;line-height:1.5}body[data-age-band=studio] .kquest-levels .unlocked{background:#e6ecf8;color:#304975}body[data-age-band=studio] .buddy-card .pip-stage{width:48px}body[data-age-band=studio] .buddy-card .buddy-image{width:48px!important;height:52px!important}body[data-age-band=studio] .buddy-card #pip-task{font-size:15px;font-weight:500;max-width:620px;color:#40526a}body[data-age-band=studio] .buddy-card #pip-show{border:1px solid var(--age-border);color:var(--age-ink);font-weight:700}body[data-age-band=studio] .buddy-card{padding:0 25px 8px!important}body[data-age-band=studio] .pip-demonstration{text-align:left;border-radius:14px;padding:24px}body[data-age-band=studio] .pip-demonstration h3{font-size:19px}body[data-age-band=studio] .demo-picture{font-size:32px;letter-spacing:normal}body[data-age-band=studio] .kquest-choices{grid-template-columns:1fr;gap:12px}body[data-age-band=studio] .kquest-choices button{font-weight:600;font-size:18px;text-align:left;border:1px solid var(--age-border);border-radius:12px;padding:18px 22px;color:var(--age-ink);min-height:72px!important;background:#fafbfe}body[data-age-band=studio] .kquest-choices button:hover:not(:disabled){background:#edf2fb;border-color:#637fa7}body[data-age-band=studio] .g1-writing-label{text-align:left;font-size:17px}body[data-age-band=studio] .g1-writing-label textarea{min-height:260px;font-size:19px;line-height:1.8;border-color:#9eaec3;border-radius:12px}body[data-age-band=studio] .g1-investigation,body[data-age-band=studio] .g2-discussion,body[data-age-band=studio] .kquest-story{background:#f7f9fc;border-color:var(--age-border);border-radius:14px;text-align:left}body[data-age-band=studio] .primary-button{background:var(--age-accent);border-color:var(--age-accent)}body[data-age-band=studio] .secondary-button{border-color:var(--age-border);color:var(--age-ink)}
/* Keep controls roomy on phones; adapt typography instead of shrinking targets. */
@media(max-width:720px){.grade-chooser{margin:0 0 16px;padding-top:0}.grade-chooser .grade-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.grade-chooser button{font-size:14px;padding:10px 3px;min-width:0}.grade-chooser button:first-child{grid-column:span 2}.grade-chooser button:last-child{grid-column:span 2}#child-home .home-welcome{padding:22px 20px;min-height:0;grid-template-columns:minmax(0,1fr);gap:0}#child-home .welcome-pip{display:none}#child-home .home-welcome h1{font-size:32px}#child-home .welcome-intro{font-size:17px;line-height:1.6}#child-home .home-welcome .primary-button{font-size:20px;min-width:0;width:100%;white-space:normal}#child-home .welcome-note{font-size:13px}.age-subject-section h2{font-size:24px}.age-subject-section .g1-subject-grid{gap:12px}.age-subject-section .g1-subject-tile{padding:14px 10px}.age-subject-section .g1-subject-tile strong{font-size:20px}.subject-description{font-size:13px}body[data-age-band=studio] .g1-subject-tile{min-height:184px;padding:16px 12px}body[data-age-band=studio] .g1-subject-tile .subject-picture{width:44px;height:44px}body[data-age-band=studio] .g1-subject-tile strong{font-size:18px}body[data-age-band=studio] .game-content{padding:5px 16px 20px}body[data-age-band=studio] .kquest-content .question-controls{display:flex;flex-direction:column;align-items:stretch;gap:12px}body[data-age-band=studio] .kquest-content .question-controls h2{font-size:23px;line-height:1.45}body[data-age-band=studio] .buddy-card{padding:0 14px 8px!important}body[data-age-band=studio] .buddy-card #pip-task{font-size:14px}body[data-age-band=studio] .game-content p{font-size:17px}body[data-age-band=studio] .kquest-choices button{font-size:17px;padding:16px}body[data-age-band=studio] .pip-demonstration{padding:18px}body[data-age-band=studio] .g1-writing-label textarea{min-height:240px}body[data-view=play] .play-top{margin:0 14px 10px}.site-header{gap:6px}body[data-view=home] .site-header .brand{font-size:23px}.site-header .header-right{gap:6px}}
@media(prefers-reduced-motion:reduce){.age-subject-section button,.grade-chooser button{transition:none!important;transform:none!important}}
.game-content .draft-count{font-size:14px!important;line-height:1.5!important;text-align:left;margin:0 0 18px;color:#526373}.optional-sketch{border:1px solid var(--age-border);border-radius:12px;margin:18px 0;padding:0 16px;text-align:left}.optional-sketch summary{cursor:pointer;padding:17px 0;font-weight:700;color:var(--age-ink)}.optional-sketch[open]{padding-bottom:16px}body[data-age-band=studio] .pip-demonstration p{margin-left:0;max-width:65ch;text-align:left}body[data-age-band=studio] .pip-demonstration .primary-button,body[data-age-band=studio] .pip-demonstration .secondary-button{margin:8px 8px 0 0}body[data-age-band=studio] .game-content .g1-private-note{font-size:14px;line-height:1.6;text-align:left}
@media(max-width:720px){.grade-chooser button:last-child{grid-column:auto}body[data-age-band=studio][data-view=play] .site-header .header-right{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-age-band=studio][data-view=play] .site-header button{font-size:13px;padding:8px 5px}}

@media(max-width:720px){body[data-view=play] .site-header .header-right:has(#games-button[hidden]){grid-template-columns:repeat(3,minmax(0,1fr))}body[data-view=play] .site-header .header-right:has(#games-button[hidden]) button{font-size:13px;padding:8px 5px}html:has(body[data-view=play] #games-button[hidden]){scroll-padding-top:98px}}
/* The Games dialog exposes these same controls without crowding the question. */
#play-view nav{display:none!important}
@media(max-width:720px){#child-home .home-welcome{padding:20px;margin-bottom:22px}#child-home .home-welcome h1{font-size:29px;margin-bottom:12px}#child-home .welcome-intro{font-size:16px;margin-bottom:16px}#child-home .welcome-note{display:none}.grade-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.grade-chooser{padding-bottom:16px}}
body[data-view=play] .kquest-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:360px}body[data-view=play] .kquest-levels span{font-size:12px;padding:7px 3px;white-space:nowrap}.play-rewards{max-width:940px;margin:22px auto 0}
@media(min-width:721px) and (max-width:900px){body[data-view=play] .site-header .header-right:has(#games-button[hidden]){grid-template-columns:repeat(3,minmax(0,1fr))}html:has(body[data-view=play] #games-button[hidden]){scroll-padding-top:100px}}

/* A quiet home: resume first, subjects on request, rewards together. */
.grade-chooser>summary{cursor:pointer;min-height:56px;align-content:center;padding:12px 4px;margin:0;font-size:16px}.grade-chooser[open]>summary{margin-bottom:12px}.grade-chooser>summary:focus-visible,.home-extras>summary:focus-visible{outline:3px solid #bc8626;outline-offset:4px;border-radius:8px}
#child-home .home-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin-top:22px}#child-home .home-actions button{flex:1 1 230px;min-width:0;min-height:64px;width:auto;font-size:19px;line-height:1.35;padding:16px 18px;white-space:normal}#child-home .home-actions .secondary-button{background:var(--age-paper);color:var(--age-ink);border:2px solid var(--age-border);box-shadow:none}#child-home .home-welcome{grid-template-columns:minmax(0,1fr) 170px}#child-home .welcome-pip img{width:160px;height:160px}#child-home .welcome-pip .pip-hello{display:none}
#home-subjects{scroll-margin-top:110px}#home-subjects h2{scroll-margin-top:110px}.home-extras{border:1px solid var(--age-border);border-radius:18px;margin:0 0 20px;background:var(--age-paper);padding:0 20px}.home-extras>summary{cursor:pointer;min-height:64px;padding:18px 0;color:var(--age-ink);font-size:17px;font-weight:750;line-height:1.6}.home-extras>summary #reward-total{display:block;font-size:14px;font-weight:500;margin:4px 0 0 20px}.home-extras[open]{padding-bottom:16px}#child-home .home-extras .reward-hub{margin:8px 0 20px}.home-extras .reading-garden{margin-bottom:0}.grade-chooser:not([open]) .grade-status{display:none}
@media(max-width:720px){#child-home .home-welcome{grid-template-columns:minmax(0,1fr)}#child-home .home-actions{gap:12px;margin-top:18px}#child-home .home-actions button{flex-basis:100%;font-size:18px;min-height:64px}.grade-chooser{margin-bottom:14px;padding-bottom:8px}.home-extras{padding-left:16px;padding-right:16px}.home-extras>summary{font-size:16px}}

#child-home .home-actions{align-items:flex-start}#child-home .home-continue{flex:1 1 230px;min-width:0}#child-home .home-continue #lets-play{width:100%}.continue-destination{display:grid;gap:5px;margin:12px 4px 0;color:var(--age-ink,#254c40);font-size:1rem;line-height:1.5;overflow-wrap:anywhere}.continue-destination strong{font-weight:800}.continue-destination small{font-size:.9rem}.journey-resume-detail{color:#254c40;font-size:1rem;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:720px){#child-home .home-continue{flex-basis:100%;width:100%}.continue-destination{margin-bottom:4px}}

/* First play: one clear action, with optional tools after it. */
#child-home>.learner-switch-row{margin:0 0 20px;max-width:none;justify-content:flex-start;padding:0}
#child-home #butterfly-entry{margin:18px 0 24px}
#child-home #butterfly-entry button{min-height:64px;width:100%;white-space:normal}
@media(max-width:720px){
 body[data-view=home] main{padding-top:14px}
 #child-home .grade-chooser{margin-bottom:12px;padding:0;border:0}
 #child-home .grade-chooser>summary{display:list-item;min-height:56px;line-height:32px;padding:12px 4px;margin:0}
 #child-home .home-welcome{padding:18px;margin-bottom:16px}
 #child-home .home-welcome h1{font-size:27px;line-height:1.25;margin:8px 0 10px}
 #child-home .welcome-intro{margin:0 0 12px;line-height:1.5}
 #child-home .home-actions{margin-top:14px;gap:12px}
 #child-home .home-actions #lets-play{min-height:64px;font-size:20px}
 #child-home .welcome-note{display:block;font-size:14px;margin:12px 0 0;line-height:1.4}
 #child-home .continue-destination{font-size:15px;line-height:1.4;gap:3px;margin:10px 0 2px}
 #child-home>.learner-switch-row{gap:8px}
 #child-home>.learner-switch-row button{min-height:56px;flex:1 1 140px;width:auto;font-size:14px;padding:10px}
 body[data-view=play] .page-heading{margin:14px 0 12px}
 body[data-view=play] .play-top{padding-block:10px;margin-bottom:0}
 body[data-view=play] .buddy-card{padding-top:8px!important;padding-bottom:8px!important}
 body[data-view=play] .game-content:not(.activity-focused) .question-controls h2{margin:8px 0 12px}
 body[data-view=play] .game-content:not(.activity-focused) .question-controls{margin-top:0}
}
