/* Bright, playful colors with readable text and quiet backgrounds. */
:root{--paper:#f5fbff;--white:#fff;--ink:#28365f;--muted:#57647d;--green:#6350cc;--green-dark:#4b38af;--line:#dbe6f4}
body{background:radial-gradient(ellipse at 8% 2%,#fff3ca88,transparent 35%),radial-gradient(ellipse at 96% 12%,#e4daff88,transparent 34%),var(--paper)}
button:focus-visible,a:focus-visible{outline-color:#235bb7}
.site-header{position:relative}.brand{color:#334079}.brand-flower{color:#ff9066}.brand-dot{color:#ee527b}
.library-link{color:#526484}.parent-nav{border-color:#c7c8ef;background:#fff9;color:#494c83}.parent-nav:hover{background:#eae5ff}
.eyebrow{color:#516482}.eyebrow-dot{background:#fb6b83}.hero-copy h1{color:#334574}.hero-copy h1 span{color:#7b48bf}
.hero-copy>p{color:#59667d}.hero-trust{color:#5d6981}.hero-trust span:before{color:#159776}
.hero-halo{background:linear-gradient(145deg,#c9f3e5 15%,#d0e8ff 64%,#e5d9ff);border:4px solid #fff;box-shadow:0 0 0 10px #dcf2ff66}
.float-card{background:#fff;border-color:#b6d7fa;box-shadow:0 6px 0 #bbd4f340}
.numbers-card{background:#fff4be;border-color:#f6d46a}.numbers-card>span:first-child{color:#119a73}.numbers-card>span:nth-child(2){color:#ed6b37}.numbers-card>span:nth-child(3){color:#8552cc}.numbers-card small{color:#8a672b}
.shapes-card{background:#ffe3ee;border-color:#f6adc8}.mini-triangle{border-bottom-color:#ff9d3e}.mini-circle{background:#2dbd8e}.mini-square{background:#9b6ce4}
.letter-card{background:#e0f2ff;border-color:#99d3f6;color:#348ac8}.letter-card span{color:#ec6a53}.hero-flower.f-one{color:#ffad42}.hero-flower.f-two{color:#b16ae0}.hero-spark{color:#f4b623}.hero-cloud{background:#fff}
.age-selector{border-color:#d6e4f2}.age-button{background:#fff;border-color:#d4dff2;color:#5b6383;box-shadow:0 3px 0 #e5ecf5}
.age-button[data-age="1-2"] strong{color:#c45a22}.age-button[data-age="3-4"] strong{color:#148465}.age-button[data-age="5-7"] strong{color:#7550ba}
.age-button[data-age="1-2"][aria-pressed=true]{background:#fff0d3;border-color:#e8ac54;color:#814b19;box-shadow:0 3px 0 #f4d496}
.age-button[data-age="3-4"][aria-pressed=true]{background:#d5f6e9;border-color:#66c7a8;color:#246e59;box-shadow:0 3px 0 #ade4d2}
.age-button[data-age="5-7"][aria-pressed=true]{background:#e9ddff;border-color:#b08be5;color:#614392;box-shadow:0 3px 0 #d4bdf3}
.age-note{background:#fff2d3;border-color:#efcd87}.age-note p{color:#805b29}
.journey-strip{background:linear-gradient(100deg,#d7f6ea,#e3edff 70%,#ece1ff);border-color:#afdacc}.journey-symbol{background:#fff;color:#a45ad2}.journey-strip .eyebrow{color:#5b6186}.journey-strip p{color:#526b79}.journey-strip h3{color:#344574}
.button.primary{box-shadow:0 4px 0 #49379325}.button.primary:disabled{background:#e7e8f4;border-color:#d8dcef;color:#7680a1;box-shadow:none}
.button.soft{background:#fff;color:#5a48ad;border-color:#bcb4e7}.button.soft:hover{background:#eee8ff}.button.outlined{color:#5a48ad;border-color:#aaa2da}.button.outlined:hover{background:#f0ecff}
.section-heading>p{color:#66738b}.filter-button{background:#fff;border-color:#d2dded;color:#5d6785}.filter-button[aria-pressed=true]{background:#6350cc;border-color:#6350cc;color:#fff}.filter-button:hover:not([aria-pressed=true]){background:#e8edff}
.activity-card{border:2px solid #d9e5f4;background:#fff;box-shadow:0 5px 0 #cbd7ea38}.card-art{border-bottom:1px solid #fff9}
.sage{background:#bff1d9;color:#207b5a}.peach{background:#ffdaa8;color:#9b511e}.lavender{background:#e0caff;color:#7045a5}.blue{background:#c0e5ff;color:#2d719d}.butter{background:#ffe9a0;color:#8a6314}.rose{background:#ffcddc;color:#ac3e69}
.card-tag{opacity:1}.card-art-decoration{opacity:.7}.played-badge{color:#385c68;background:#ffffffe0}.card-kicker{color:#67718d}.card-content h3{color:#334574}.card-content>p{color:#5b667e}.card-meta{color:#69758b}.card-actions{border-color:#e2e8f4}.card-play{color:#5e43bd}.card-play:hover{color:#3f2b91}.card-details{background:#f0ebff;border-color:#d5c9f3;color:#624aa6}.card-details:hover{background:#e5d9ff}
.parent-banner{background:linear-gradient(110deg,#fff1cb,#ffe4ed);border-color:#edcc96}.parent-banner-icon{color:#e77791}.parent-banner p{color:#75616a}.site-footer>span,.site-footer button{color:#60738a}
.back-link,.play-meta,.play-footer,.play-footer button{color:#61718c}.voice-button{background:#e4f4ff;border-color:#afd8f5;color:#3b719b}.voice-button[aria-pressed=false]{background:#f1edf8;border-color:#d7cee6;color:#756984}
.session-panel{border-color:#c8d9ee;box-shadow:0 8px 28px #436b9e0b}.session-heading{background:linear-gradient(110deg,#eff7ff,#f4efff);border-color:#dce7f5}.session-heading .eyebrow{color:#64749b}.session-heading h1{color:#43529a}.session-progress>span{color:#667590}.progress-dot{background:#eaf0ff;border-color:#c9d3ec}.progress-dot.current{background:#ffbc43;border-color:#e9a92e;box-shadow:0 0 0 3px #ffedc3}.progress-dot.done{background:#46b793;border-color:#46b793}
.question-title h2{color:#354574}.repeat-button{background:#e9e0ff;color:#7b52bb}.repeat-button:hover{background:#ddceff}
.choice-tile{background:#f5f8ff;border-color:#cfdbf1;border-bottom-color:#b5c4e5;color:#354574}.choice-tile:nth-child(2n){background:#fff8e7;border-color:#efdcaa}.choice-tile:nth-child(3n){background:#fff0f4;border-color:#efc4d1}.choice-tile:hover:not(:disabled){background:#e8edff}.choice-label{color:#50617e}.number-choice{color:#5862b7}.choice-tile.chosen{background:#dcf7e8;border-color:#6ecb9e;box-shadow:0 0 0 2px #b0e9cc}.choice-tile.chosen .choice-label{color:#22734c}.choice-tile.tried:not(.chosen){background:#fff0db;border-color:#eab56b}.feedback{color:#946126}.feedback.success{color:#258063}
.snack-scene{background:#d9f4e6}.snack-scene.bear{background:#fff0ce}.snack-scene.owl{background:#e8ddff}.snack-mascot>span:last-child{color:#5b6584}.snack-basket{background:#fffdf3;border-color:#e7bb67}.basket-label{color:#957437}.tray-count{color:#6c4abb;border-color:#c1aae5;background:#fff}.snack-spark{color:#e0a925}.small-instruction{color:#5c6c87}.feed-item{background:#fff9e9;border-color:#eddda9}.feed-item:hover:not(:disabled){background:#ffefbc}.feed-item.collected{background:#daf2e3;border-color:#99d4b3}.undo-button{color:#7362a7}
.memory-card{background:linear-gradient(145deg,#8a72e0,#b39af5);border-color:#8063c9;border-bottom-color:#6c50b5}.memory-card:nth-child(2n){background:linear-gradient(145deg,#66b8e5,#92d5f3);border-color:#4fa0ce;border-bottom-color:#3d8ab7}.memory-card:hover:not(:disabled){background:#c3b0f8}.card-back svg{color:#fff}.memory-card.face-up{background:#fff4cf;border-color:#e7c76d}.memory-card.matched{background:#def5e6;border-color:#8ac9a6}.memory-card.matched:after{color:#278861}
.pattern-car{background:#eaf1ff;border-color:#b9d3f5;border-bottom-color:#8fb9e9}.pattern-car:after,.pattern-car:before{background:#6b6199}.missing{color:#a37628;background:#fff2cc;border-color:#e6bf6c}.trail-number{background:#dcf5e9;color:#278467;border-color:#9cddc4}.trail-number:nth-child(2n){background:#ffe9bf;color:#b56c1d;border-color:#f0cd8d}.trail-number.missing{background:#eee4ff;border-color:#b498de;color:#7958ac}
.subject-icon{background:#fff0c9}.subject-display strong{color:#657092}.sorting-options .choice-tile{background:#eaf2ff}.letter-slot{background:#f4efff;border-color:#c9b7e9;color:#7852b3}.letter-slot i{color:#c6b5e3}.letter-slot.filled{background:#e2f6e8;border-color:#92cbaa;color:#297a57}.letter-button{background:#ffe6a4;border-color:#eac771;border-bottom-color:#d9ae4b;color:#906220}.letter-button:hover:not(:disabled){background:#ffdc7a}
.math-equation>span{color:#7255b6}.math-equation>b,.apple-plus{color:#e89a45}.math-equation .math-question{background:#fff0c9;border-color:#e8c275;color:#ac7a22}.listening-steps>span{background:#eae2ff;border-color:#cbb6ef;color:#8063b4}.listening-steps>span.done{background:#745bc6;border-color:#745bc6;color:#fff}
.parent-play-body{color:#5d6b88}.real-world-note{background:#fff0cf;border-color:#e8cd91}.real-world-note>span{color:#e37991}.real-world-note p{color:#806638}.parent-play-area .eyebrow{color:#8063a6}.completion-flower{color:#f5ad40}.completion .eyebrow{color:#7e6aa1}.completion>p{color:#66738c}.completion-skill{background:#def4e9}.completion-skill>span{color:#5f8d78}.completion-skill>strong{color:#33785b}.offscreen-card{background:#fff0cf}.offscreen-card strong{color:#936a26}.offscreen-card p{color:#806b47}.finish-link{color:#6a7193}
dialog{background:#fff;border-color:#ccd6f0}.close-dialog{background:#eee7ff;color:#785cb0}.skill-note{background:#e4f5ec}.skill-note strong{color:#648a76}.skill-note span{color:#44765f}.level-option{background:#f1ecff;border-color:#d3c4ee;color:#654b9b}.level-option:hover{background:#e7ddfc;border-color:#baa0df}.level-option>span{color:#78668e}.parent-tabs button{border-color:#d7cdef;color:#77628f}.parent-tabs button[aria-pressed=true]{background:#e8dfff;border-color:#b9a1df;color:#69489b}.parent-stats>div{background:#e5f4ff}.parent-stats>div:nth-child(2){background:#fff0c9}.parent-stats>div:nth-child(3){background:#eee3ff}.parent-stats strong{color:#5d55a9}.parent-stats span,.parent-storage-note,.parent-prose p,.practice-row span{color:#62728b}.practice-row strong{color:#43537b}.age-guide{background:#f1edff}.age-guide strong{color:#705597}.clear-button{color:#726b92}
.card-art.peach .activity-illustration{color:#ec648c}

/* Parent voice controls. */
.voice-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}
.voice-settings-link{border:0;background:transparent;color:#65529f;font:inherit;font-size:10px;min-height:40px;text-decoration:underline;text-underline-offset:4px;padding:7px 0}
.voice-panel label{display:block;color:#4c5680;font-weight:650;font-size:12px;margin:20px 0 8px}
.voice-panel select{display:block;width:100%;max-width:100%;border:1px solid #cdbde9;border-radius:12px;padding:13px 35px 13px 12px;font:inherit;font-size:13px;background:#f6f1ff;color:#504274;min-height:46px}
.voice-panel select:focus-visible{outline:3px solid #235bb7;outline-offset:3px}
.voice-panel select:disabled{opacity:.65}.voice-panel #preview-voice{margin-top:22px}
.voice-panel .voice-availability{background:#e7f5ef;color:#3d755d;border-radius:12px;padding:13px 15px;font-size:12px;line-height:1.6}
@media(max-width:440px){.voice-controls{margin-left:auto;gap:10px}.voice-settings-link{font-size:10px}.voice-panel label{font-size:13px}.voice-panel select{font-size:14px}.voice-panel #preview-voice{font-size:13px}}
