:root{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;color:#263153;background:#e9f1fc;font-synthesis:none}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;min-width:320px}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible{outline:4px solid #ffb02d;outline-offset:3px}.app-shell{min-height:100vh;background:radial-gradient(circle at 92% 6%,#fff7d5 0,transparent 30%),radial-gradient(circle at 3% 32%,#e6e3ff 0,transparent 27%),#eaf2ff}.topbar{height:78px;max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:10px}.brand{border:0;background:none;color:#2b3564;font-weight:900;font-size:1.21rem;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;padding:9px}.brand-icon{font-size:2rem;filter:drop-shadow(0 3px 2px #eedf9d)}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:45px;height:45px;border-radius:14px;border:1px solid #d7e2ff;background:#fff;box-shadow:0 4px 10px #a3b3cf20}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:9px 14px;background:#fff;color:#42537d;font-weight:800;box-shadow:0 4px 14px #7285a315;white-space:nowrap}.level-pill{color:#aa6b10;background:#fff1cb}main{max-width:1120px;margin:0 auto;padding:8px 20px 28px}.hero{background:linear-gradient(119deg,#454bb6,#6173d7 51%,#9c8bea);color:#fff;border-radius:28px;min-height:262px;display:flex;align-items:center;position:relative;overflow:hidden;padding:34px 40px;box-shadow:0 14px 35px #5c75a12f}.hero:after{content:"";position:absolute;width:360px;height:360px;right:-170px;top:-180px;border:50px solid #ffffff13;border-radius:50%}.hero-content{position:relative;z-index:2}.eyebrow{letter-spacing:.13em;text-transform:uppercase;font-weight:900;font-size:.81rem;opacity:.85}.hero h1{font-size:clamp(1.7rem,5vw,3rem);line-height:1.27;margin:8px 0 12px;font-weight:900;text-shadow:0 2px 1px #2c3c8245}.hero h1 span{color:#fff3a7}.hero p{line-height:1.7;margin:0}.hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hero-stats span{display:inline-block;padding:9px 14px;border-radius:999px;background:#ffffff2a;border:1px solid #ffffff35;font-weight:800}.hero-mascot{font-size:8.5rem;position:absolute;right:90px;bottom:24px;transform:rotate(-9deg);filter:drop-shadow(6px 10px 0 #1e246430);animation:bob 3s ease-in-out infinite}.hero-mascot span{position:absolute;font-size:3.4rem;top:-10px;right:-50px;animation:twinkle 2s ease-in-out infinite}.select-profile{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:24px 2px 10px;font-size:.94rem}.profile-row{display:flex;flex-wrap:wrap;gap:8px}.profile-chip{border:2px solid #dde4f4;background:#fff;color:#40547a;border-radius:999px;padding:9px 14px;min-height:45px;font-size:.9rem;font-weight:800}.profile-chip.chosen{background:#4b5bba;color:#fff;border-color:#4b5bba;box-shadow:0 5px 12px #4d5dba35}.section-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px;margin:25px 0 18px}.section-header h2{font-size:1.46rem;margin:0;color:#263360}.section-header p{margin:0;color:#607096;font-size:.92rem;font-weight:700}.quest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.quest-card{position:relative;display:flex;text-align:left;flex-direction:column;align-items:flex-start;min-height:210px;padding:19px 22px;border:2px solid #ffffff;border-radius:22px;background:#fff;color:#27335f;box-shadow:0 7px #d9e2f3,0 12px 20px #a8bcda1a;transition:transform .15s ease,box-shadow .15s ease}.quest-card:hover{transform:translateY(-3px);box-shadow:0 10px #d9e2f3,0 14px 25px #a8bcda30}.quest-card:active{transform:translateY(3px);box-shadow:0 3px #d9e2f3}.quest-card:before{content:"";position:absolute;top:0;bottom:0;left:0;width:9px;background:var(--accent);border-radius:22px 0 0 22px}.quest-number{font-size:.68rem;letter-spacing:.12em;color:var(--accent);font-weight:900}.quest-icon{font-size:2.5rem;margin:7px 0 4px;filter:drop-shadow(0 3px 0 #0000000c)}.quest-title{font-size:1.24rem;font-weight:900;line-height:1.35}.quest-description{margin:5px 0 14px;font-size:.91rem;color:#5f6d90;line-height:1.5}.quest-meta{margin-top:auto;font-size:.78rem;color:#50628d;font-weight:800;background:#f3f6fd;border-radius:999px;padding:7px 11px}.home-bottom{margin:26px auto 4px;text-align:center;color:#5e6e8b;font-size:.87rem;font-weight:700}.footer{max-width:1120px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:25px 22px 32px;color:#6b7997;font-size:.8rem}.footer button{background:transparent;border:0;color:#5060af;text-decoration:underline;font-weight:800;padding:10px}.play-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px auto 16px;max-width:760px}.back-btn{background:#fff;border:2px solid #d7e1f3;color:#435578;border-radius:12px;padding:10px 14px;font-weight:800;min-height:45px}.progress{height:15px;max-width:760px;margin:0 auto 20px;background:#d4deef;border-radius:999px;overflow:hidden}.progress div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#48c8b6,#f2bf58);transition:width .2s ease}.challenge{max-width:760px;margin:0 auto;background:#fff;border:2px solid #e5ebfa;border-radius:27px;padding:25px clamp(13px,5vw,39px) 29px;box-shadow:0 12px #dbe5f6,0 20px 36px #98acd42b;text-align:center}.challenge-tag{display:inline-block;padding:8px 17px;background:color-mix(in srgb,var(--accent) 14%,white);color:#334674;border-radius:999px;font-weight:900;letter-spacing:.05em}.challenge h1{font-size:clamp(1.35rem,4.5vw,2rem);margin:18px 0 5px;color:#293564;font-weight:900;line-height:1.6}.visual-stage{min-height:205px;display:flex;align-items:center;justify-content:center;margin:7px auto 10px;padding:15px 5px}.visual-group{display:flex;flex-direction:column;gap:12px;align-items:center}.floating-symbol{font-size:3.8rem;animation:bob 3s ease-in-out infinite}.dot-row{display:flex;flex-wrap:wrap;max-width:335px;gap:9px;align-items:center;justify-content:center}.dot{height:33px;width:33px;background:#ffbe4f;border-radius:50%;box-shadow:inset -5px -5px #e3a03a,0 3px #f4e3c4;border:2px solid white}.dot-faded{opacity:.2;position:relative}.visual-math{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.visual-math .dot-row{max-width:180px}.visual-math b{font-size:2rem;color:#7482ac}.visual-group small{color:#64749d;font-weight:700}.math-line{font-size:clamp(1.65rem,6vw,2.7rem);color:#28386d;font-weight:900;letter-spacing:.05em}.track{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.track span{display:flex;align-items:center;justify-content:center;width:clamp(62px,14vw,100px);height:90px;border:4px solid #8cbbf0;border-radius:15px;background:#e4f2ff;box-shadow:0 7px #bccfe7;font-weight:900;color:#3a5297;font-size:2.1rem}.track span:nth-child(3){background:#fff1c7;border-color:#ecaf55}.compare{display:flex;align-items:center;justify-content:center;gap:17px;width:100%;flex-wrap:wrap}.compare>div{display:flex;align-items:center;flex-direction:column;gap:6px;padding:10px;min-width:120px;flex:1;max-width:250px;background:#f5f7ff;border-radius:18px}.compare small{font-size:.86rem;font-weight:900;color:#7081a5}.compare strong{font-size:3.5rem;font-weight:900;color:#4b61bd}.compare>b{font-weight:900;color:#dc8c8c}.compare .dot{width:18px;height:18px;box-shadow:none}.compare .dot-row{gap:5px}.big-emoji{font-size:clamp(6rem,28vw,11rem);filter:drop-shadow(0 10px 3px #8494b52e)}.big-shape{font-size:clamp(7rem,29vw,12rem);color:#6f8ee9;filter:drop-shadow(7px 8px 0 #c5d8ff)}.clock{height:225px;width:225px;max-width:100%}.clock text{font-size:16px;font-weight:900;fill:#39466a}.memory-preview{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.memory-preview span{font-size:clamp(3.9rem,16vw,6rem);display:inline-flex;background:#f1f6ff;border:2px solid #e0e9f8;min-width:91px;min-height:105px;align-items:center;justify-content:center;border-radius:17px}.memory-hidden{font-size:5rem;color:#485fba;font-weight:900;display:flex;flex-direction:column}.memory-hidden small{font-size:.94rem;color:#7b8bac}.memory-note{margin:0 auto 20px;color:#64708e;line-height:1.6}.read-btn{font-weight:900;color:#46588e;padding:9px 15px;background:#f5f7fc;border:1px solid #dbe4f5;border-radius:10px;min-height:45px;margin:0 0 14px}.answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 10px}.answer-btn{min-width:0;min-height:80px;border:3px solid #d7e3fb;border-bottom-width:7px;border-radius:18px;background:#f9fbff;color:#293d71;display:flex;align-items:center;justify-content:center;gap:8px;font-size:clamp(1.35rem,4.7vw,2.4rem);font-weight:900;transition:background .13s,transform .13s}.answer-btn:hover{background:#e9f5ff;border-color:#9bcdff}.answer-btn:active{transform:translateY(3px)}.answer-btn:disabled{opacity:.62}.answer-letter{font-size:.8rem;color:#7281a7;align-self:flex-start;margin-top:4px}.primary-btn,.secondary-btn{min-height:60px;border:0;border-radius:16px;padding:14px 26px;font-weight:900;font-size:1.1rem;display:block;margin:16px auto 0;max-width:100%}.primary-btn{background:#ffbb48;color:#573c12;border-bottom:6px solid #db922e;box-shadow:0 9px 19px #e8b65135}.primary-btn:active{transform:translateY(3px);border-bottom-width:3px}.secondary-btn{background:#e8eeff;border:2px solid #c8d6f5;color:#4760a3}.hint-btn{min-height:48px;border:0;background:transparent;color:#5264a4;font-weight:900;text-decoration:underline;padding:10px 17px;margin:0 auto}.feedback{border-radius:15px;margin:15px auto;padding:13px 18px;font-weight:800;line-height:1.65;text-align:left}.feedback-good{background:#dff7ee;color:#24604d}.feedback-try{background:#fff1d9;color:#82552b}.play-note{text-align:center;color:#667594;font-size:.9rem;margin:30px auto}.result-card{max-width:710px;text-align:center;background:#fff;border:2px solid #e3eaf8;border-radius:25px;padding:38px 25px;margin:30px auto;box-shadow:0 12px #d5e2f3}.result-emoji{font-size:7rem;animation:bob 3s ease-in-out infinite}.result-card .eyebrow{color:#bf7e22}.result-card h1{font-size:clamp(1.8rem,6vw,2.8rem);color:#304580;margin:5px 0}.result-card>p{line-height:1.75;color:#6d7795}.result-scores,.parent-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.result-scores>div,.parent-stats>div{background:#f1f5ff;border-radius:15px;padding:18px 8px}.result-scores strong,.parent-stats strong{display:block;font-size:2.4rem;font-weight:900;color:#4959b7}.result-scores small,.parent-stats span{display:block;font-size:.8rem;color:#69789a;font-weight:700}.result-explain{font-size:.97rem}.parent{background:#fff;border-radius:25px;padding:24px clamp(15px,4vw,36px);max-width:800px;margin:12px auto;border:2px solid #e1e9fa}.parent h1{font-size:1.55rem;color:#303d70}.parent h2{font-size:1.12rem;color:#303d70;margin-top:32px}.parent>p{line-height:1.7;color:#66728f}.parent-stats{grid-template-columns:repeat(4,1fr)}.parent-stats strong{font-size:1.9rem}.footnote{font-size:.86rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:.94rem}th,td{border-bottom:1px solid #e3eaf6;padding:12px 10px}th{font-weight:800}thead{background:#f4f7fd}.parent-actions{border-top:1px solid #e5eaf6;margin-top:25px;padding-top:12px}.parent-actions p{color:#697794;line-height:1.6;font-size:.88rem}.warning{background:#fff1d9;color:#725124;border-radius:14px;padding:15px 20px;max-width:750px;margin:auto;font-weight:800}.quiet .hero-mascot,.quiet .hero-mascot span,.quiet .floating-symbol,.quiet .result-emoji{animation:none}@keyframes bob{50%{transform:translateY(-9px) rotate(1deg)}}@keyframes twinkle{50%{opacity:.6;transform:scale(.85)}}@media (min-width:740px){.quest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quest-card{min-height:225px}}@media (min-width:1050px){.quest-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.quest-card{padding:19px 18px;min-height:265px}}@media (max-width:630px){.topbar{padding:0 12px;height:65px}.brand{font-size:1rem}.brand-icon{font-size:1.5rem}.top-actions{gap:4px}.icon-btn{width:42px;height:42px}.pill{padding:8px 10px;font-size:.82rem}main{padding:7px 12px 20px}.hero{padding:25px 18px;min-height:210px;border-radius:20px}.hero h1{font-size:1.65rem;max-width:290px}.hero-content>p:not(.eyebrow){font-size:.82rem;max-width:245px}.hero-mascot{font-size:5.1rem;right:10px;bottom:30px}.hero-mascot span{font-size:1.9rem;right:-8px;top:-10px}.hero-stats{gap:6px;margin-top:16px}.hero-stats span{font-size:.75rem;padding:7px 9px}.quest-grid{gap:10px}.quest-card{padding:14px 11px 13px 16px;min-height:207px;border-radius:17px}.quest-title{font-size:1.05rem}.quest-description{font-size:.78rem}.quest-meta{padding:7px;font-size:.66rem}.quest-icon{font-size:2.15rem}.section-header h2{font-size:1.28rem}.select-profile{padding-top:22px}.profile-row{gap:5px}.profile-chip{font-size:.75rem;padding:8px}.challenge{padding:20px 12px 25px;border-radius:20px}.visual-stage{min-height:185px}.dot{width:28px;height:28px}.answer-grid{gap:6px}.answer-btn{min-height:72px;border-radius:12px;font-size:1.4rem;flex-direction:column;gap:0}.answer-letter{align-self:center;margin:0}.compare{gap:5px}.compare>div{min-width:100px}.compare strong{font-size:2.6rem}.track span{height:67px;width:clamp(58px,19vw,77px);font-size:1.6rem}.memory-preview span{min-width:70px;min-height:82px;font-size:3.2rem}.play-head{gap:6px}.parent-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:360px){.quest-grid{grid-template-columns:1fr}.quest-card{min-height:155px}.quest-description{margin-bottom:6px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.profile-avatar{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:108px;min-height:98px;border:3px solid transparent;border-radius:18px;background:var(--profile-color);color:#35466f;padding:9px 14px;box-shadow:0 6px #bac6d9;text-align:center;transition:transform .17s ease,box-shadow .17s ease}.profile-avatar span{font-size:2.4rem;line-height:1.1;filter:drop-shadow(0 3px 0 #ffffffad)}.profile-avatar strong{font-size:.9rem;letter-spacing:.02em}.profile-avatar:hover{transform:translateY(-3px)}.profile-avatar.chosen{background:var(--profile-color);border-color:#5567d4;color:#28356c;box-shadow:0 4px #5262a4,0 0 0 4px #fff}.profile-avatar:active{transform:translateY(2px)}.quest-card{overflow:hidden}.quest-card:after{content:"✦";position:absolute;top:8px;right:14px;font-size:1.5rem;color:var(--accent);opacity:.18;transition:transform .18s ease,opacity .18s ease}.quest-card:hover:after,.quest-card:focus-visible:after{transform:rotate(35deg) scale(1.5);opacity:.8}.quest-card:focus-visible{z-index:1}.pattern-line,.odd-line{display:flex;align-items:center;justify-content:center;gap:11px;flex-wrap:wrap}.pattern-line>span{display:flex;align-items:center;justify-content:center;width:72px;height:86px;background:#eff3ff;border:3px solid #cfdcff;border-radius:16px;font-size:2.8rem}.pattern-line>.pattern-missing{border-style:dashed;background:#fff6d7;border-color:#edbf75}.odd-item{display:flex;flex-direction:column;align-items:center;justify-content:center;width:90px;min-height:110px;border-radius:14px;background:#eff4ff;border:2px solid #d9e5fc;gap:2px}.odd-item span{font-size:3.3rem}.odd-item strong{font-size:1.03rem;color:#6a75a2}.color-swatch{height:180px;width:180px;max-width:100%;border-radius:50%;background:var(--swatch);border:10px solid white;box-shadow:0 8px #ccd7e8,0 0 0 4px #cbd7ec}.reward-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;overflow:hidden}.reward-particle{position:absolute;display:block;line-height:1;font-size:1.9rem;filter:drop-shadow(1px 3px 2px #293d6b20);animation:reward-pop .95s cubic-bezier(.15,.65,.3,1) forwards}.reward-toast{position:absolute;left:50%;top:19%;transform:translate(-50%,-50%);font-size:clamp(1.25rem,6vw,2.4rem);font-weight:900;color:#fff;white-space:nowrap;-webkit-text-stroke:1px #5861b1;text-shadow:0 3px #5368b5,0 7px 18px #192b6a55;animation:reward-float .95s ease-out forwards}@keyframes reward-pop{0%{opacity:0;transform:translateY(8px) scale(.25) rotate(0)}16%{opacity:1;transform:translate(0) scale(1.1)}to{opacity:0;transform:translate(var(--fly-x),var(--fly-y)) scale(.6) rotate(var(--twist))}}@keyframes reward-float{0%{opacity:0;transform:translate(-50%,8px) scale(.6)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}70%{opacity:1;transform:translate(-50%,-70%)}to{opacity:0;transform:translate(-50%,-100%)}}@media (max-width:630px){.topbar{height:auto;min-height:69px}.top-actions{gap:3px}.top-actions .icon-btn{width:40px;height:44px;padding:2px}.top-actions .level-pill{font-size:.71rem;padding:7px}.select-profile{gap:9px}.profile-row{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.profile-avatar{min-width:0;min-height:81px;padding:9px 2px;border-radius:14px}.profile-avatar span{font-size:1.95rem}.profile-avatar strong{font-size:.73rem}.pattern-line{gap:5px}.pattern-line>span{width:58px;height:67px;font-size:2.2rem}.odd-line{gap:5px}.odd-item{width:65px;min-height:87px}.odd-item span{font-size:2.3rem}.color-swatch{width:160px;height:160px}}@media (max-width:375px){.brand span:last-child{font-size:.83rem}.top-actions .level-pill{display:none}.odd-item{width:60px}}@media (prefers-reduced-motion:reduce){.reward-overlay{display:none}.profile-avatar,.quest-card:after{transition:none}}.quiet-mode .reward-overlay{display:none}.quiet .profile-avatar,.quiet .quest-card:after{transition:none}.answer-instruction{font-size:.98rem;color:#536484;font-weight:900;margin:2px 0 10px}.answer-grid{margin-top:0}.answer-btn{min-height:92px;background:#faffff;border-color:#c9dcf8;box-shadow:inset 0 2px #fff}.answer-btn .answer-choice{display:block;font-size:clamp(1.85rem,5vw,2.8rem);font-weight:900;line-height:1.3;overflow-wrap:anywhere}.answer-btn:focus-visible{outline:4px solid #ffb02d;outline-offset:4px}.answer-btn:disabled{opacity:.78}.options-panel{max-width:760px;margin:8px auto 24px;padding:clamp(18px,5vw,38px);border-radius:26px;border:2px solid #e0e9fa;background:#fff;box-shadow:0 10px #d8e3f5}.options-panel>.eyebrow{color:#6983d7}.options-panel h1{font-size:clamp(1.5rem,5vw,2.05rem);color:#2d3a70;margin:8px 0}.options-lead{font-weight:700;color:#677692;line-height:1.7;margin:0 0 26px}.options-group{border:2px solid #e2ebfa;background:#f6f9ff;border-radius:19px;padding:20px;margin:16px 0}.options-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.options-heading>div{display:flex;flex-direction:column;gap:5px}.options-heading strong{font-size:1.13rem;color:#303c6b}.options-heading small{font-size:.88rem;color:#637598;line-height:1.5}.toggle-btn{flex-shrink:0;min-width:89px;min-height:48px;padding:11px 13px;background:#e2e9fb;color:#344675;border:2px solid #cfdaf1;border-radius:13px;font-weight:900}.toggle-btn[aria-pressed=true]{background:#dff6ee;color:#205d47;border-color:#9fe0c8}.volume-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:23px 0 4px;font-size:1rem;color:#445581;font-weight:900}.volume-heading output{font-size:1.2rem;color:#2b5fa8;min-width:57px;text-align:right;font-variant-numeric:tabular-nums}.volume-slider{display:block;width:100%;height:52px;margin:5px 0 0;background:transparent;accent-color:#4e73c3;cursor:pointer;touch-action:pan-y}.volume-slider::-webkit-slider-runnable-track{height:12px;border-radius:999px;background:#d0ddf7}.volume-slider::-moz-range-track{height:12px;border-radius:999px;background:#d0ddf7}.volume-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#5076c9;width:30px;height:30px;border:5px solid white;border-radius:50%;box-shadow:0 2px 8px #788bad66;margin-top:-9px}.volume-slider::-moz-range-thumb{background:#5076c9;width:22px;height:22px;border:5px solid #fff;border-radius:50%;box-shadow:0 2px 8px #788bad66}.volume-slider:focus-visible{outline:3px solid #ffb02d;outline-offset:3px;border-radius:8px}.volume-ends{display:flex;justify-content:space-between;color:#7181a0;font-size:.78rem;font-weight:700}.sample-sound{border:2px solid #d1dff8;background:#fff;color:#435e9f;border-radius:13px;min-height:49px;margin-top:16px;padding:10px 18px;font-weight:900}.sample-sound:active{transform:translateY(2px)}.options-footnote{color:#6b7a99;font-size:.86rem;line-height:1.8;text-align:center;margin:20px auto}.options-back{width:min(100%,360px)}@media (max-width:630px){.options-group{padding:15px;margin:12px 0}.options-panel{padding:18px 12px;border-radius:20px}.options-heading strong{font-size:1.03rem}.options-heading small{font-size:.78rem}.answer-btn{min-height:82px;flex-direction:row}.answer-choice{font-size:clamp(1.8rem,7vw,2.5rem)!important}}.category-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 19px}.category-chip{min-height:48px;display:inline-flex;gap:7px;align-items:center;background:#fff;border:2px solid #d8e4f6;border-radius:999px;padding:8px 14px;color:#43577d;font-size:.91rem;font-weight:900;box-shadow:0 3px #d0dced}.category-chip span{background:#ebf2ff;border-radius:999px;padding:2px 8px;font-size:.8rem;color:#657cac}.category-chip.chosen{background:#5167c1;border-color:#4255aa;color:#fff;box-shadow:0 3px #374993}.category-chip.chosen span{background:#fff3;color:#fff}.quest-level{font-size:.98rem;line-height:1.6;font-weight:900;color:#4653a1;margin-top:auto}.level-progress{width:100%;height:11px;background:#dde7f8;border-radius:999px;overflow:hidden;margin:7px 0 8px}.level-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#51c4b1,#f5c65b);transition:width .18s ease}.quest-card .quest-meta{margin-top:0;white-space:normal;font-size:.74rem}.dot-row.dot-groups{display:flex;flex-direction:column;align-items:center;gap:9px;max-width:none}.dot-pack{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;background:#f3f6ff;border:2px solid #dce7fb;padding:8px;border-radius:15px;max-width:100%}.dot-pack .dot{flex-shrink:0}.visual-math .dot-pack{gap:4px;padding:5px;border-radius:10px}.visual-math .dot-pack .dot{width:25px;height:25px}.compare .dot-pack{gap:3px;padding:4px;border-width:1px}.compare .dot-pack .dot{width:17px;height:17px}.compare .dot-row{gap:4px}.auto-next{margin:14px auto 3px;padding:11px 13px;border-radius:12px;background:#f1f7ff;font-weight:900;color:#4563aa;line-height:1.5}.next-btn{margin-top:10px}.unlock-result{display:inline-block;padding:11px 16px;border-radius:16px;background:#fff4cf;border:2px solid #f6d990;color:#88551f;font-size:1.04rem;font-weight:900}.reset-open,.danger-btn{border-radius:13px;min-height:49px;padding:12px 16px;font-weight:900}.reset-open{border:2px solid #edc5c9;background:#fff5f5;color:#8c4652}.reset-confirm{margin:16px auto;padding:18px;border:2px solid #e8c0c6;background:#fff7f7;border-radius:17px;color:#783a49;line-height:1.7}.reset-confirm p{color:#955666}.reset-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-start}.reset-actions .secondary-btn{margin:0}.danger-btn{background:#c5435c;border:2px solid #9e2940;color:#fff}@media (max-width:630px){.category-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:9px;overscroll-behavior-x:contain}.category-chip{flex-shrink:0;min-height:46px;padding:8px 11px}.quest-level{font-size:.89rem}.dot-row.dot-groups{gap:7px}.dot-pack{gap:5px;padding:7px}.dot-pack .dot{width:29px;height:29px}.visual-math{gap:6px}.visual-math .dot-pack .dot{width:20px;height:20px}.visual-math .dot-pack{padding:4px;gap:3px}.reset-actions{flex-direction:column}.reset-actions>*{width:100%}}@media (max-width:360px){.dot-pack{gap:4px;padding:6px}.dot-pack .dot{width:26px;height:26px}}@media (prefers-reduced-motion:reduce){.level-progress span{transition:none}}html{font-size:var(--learning-font-percent,100%)}.text-size-options{border-color:#c4d6f5;background:#eef4ff}.text-size-preview{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:14px 0 4px;padding:18px;border:2px solid #ccdaf7;border-radius:16px;background:#fff;color:#303f77;line-height:1.55;overflow-wrap:break-word}.text-size-preview span{font-size:1.12rem;font-weight:800}.text-size-preview strong{font-size:1.4rem;line-height:1.5;word-break:keep-all}.text-size-preview small{font-size:1rem;color:#556a9b;font-weight:700}.text-size-slider{accent-color:#5268bc}.answer-grid.long-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}.answer-grid.long-choices .answer-btn{min-height:75px;padding:13px 12px}.answer-grid.long-choices .answer-choice{font-size:clamp(1.45rem,5.8vw,2.25rem)!important;line-height:1.45;word-break:keep-all;overflow-wrap:break-word}.options-heading>div{min-width:0}.play-head{flex-wrap:wrap}.play-head>.pill{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}.challenge h1,.feedback{overflow-wrap:break-word}@media (max-width:630px){.topbar{min-height:70px;height:auto;flex-wrap:wrap;row-gap:4px;padding-block:8px}.top-actions{margin-left:auto}.brand{min-width:0}.quest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-text-large .quest-grid{grid-template-columns:1fr}.learning-text-large .quest-card{min-height:155px}.challenge{max-width:100%}.answer-grid.long-choices{grid-template-columns:1fr}.answer-grid.long-choices .answer-btn{min-height:72px}.answer-grid.long-choices .answer-choice{font-size:clamp(1.45rem,6vw,2.25rem)!important}.options-panel .options-heading{flex-wrap:wrap}.text-size-preview{padding:13px}.play-head .pill{font-size:.8rem}}@media (max-width:375px){.learning-text-large .topbar .brand{font-size:.86rem}.learning-text-large .level-pill{display:none}}.compare-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;width:100%;max-width:700px;margin:14px auto}.compare-pick-card{border:3px solid #c5d9f7;border-bottom-width:7px;background:#fff;border-radius:24px;padding:16px 6px;min-height:165px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;color:#2c4781}.compare-pick-card:focus-visible{outline:4px solid #ffb52c;outline-offset:4px}.compare-pick-card:active:not(:disabled){transform:translateY(3px);border-bottom-width:4px}.compare-pick-card:disabled{opacity:.78}.compare-pick-number{font-size:clamp(2.9rem,9vw,5.5rem);font-weight:950;line-height:1}.compare-pick .dot-pack{padding:3px 5px;gap:3px;border-width:1px}.compare-pick .dot-pack .dot{width:clamp(13px,2.9vw,19px);height:clamp(13px,2.9vw,19px)}.compare-pick .dot-row.dot-groups{gap:4px}@media (max-width:360px){.compare-pick{gap:8px}.compare-pick-card{padding:10px 3px;min-height:145px}}.reward-overlay{contain:layout paint}.interactive{width:100%;display:flex;flex-direction:column;align-items:center;gap:13px}.activity-instructions{max-width:38rem;text-align:center;color:#4f6188;font-weight:850;line-height:1.65;margin:8px 0 2px}.activity-message{width:100%;padding:11px;border-radius:13px;background:#e7f7ef;color:#24624d;font-weight:800}.activity-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;width:100%}.activity-controls button,.activity-undo,.trace-step,.move-buttons button,.train-tile{min-height:50px;border:2px solid #c6dafa;border-bottom-width:5px;border-radius:15px;background:#f9fbff;color:#293b73;font-weight:900;touch-action:manipulation}.activity-controls button{font-size:1.1rem;padding:13px 19px;flex:1;min-width:120px;max-width:195px}.activity-controls button:active,.train-tile:active,.trace-step:active{transform:translateY(3px)}.interactive button:disabled{opacity:.47;cursor:default;transform:none}.activity-undo{background:#f0f4ff;font-size:.94rem;padding:10px 18px}.trace-board{width:min(100%,340px);padding:10px;border-radius:24px;background:linear-gradient(155deg,#eef8ff,#f7fffa);border:3px solid #beddee;box-shadow:0 8px #d3e2f1;overflow:hidden}.trace-board svg{display:block;aspect-ratio:1/1;width:100%;height:auto;pointer-events:all;touch-action:none;user-select:none;-webkit-user-select:none}.trace-board svg circle,.trace-board svg path{pointer-events:none}.activity-counter{font-size:1.05rem;color:#3b6582;font-weight:900;margin:0}.trace-access{width:100%;max-width:420px;border:2px solid #d9e5f9;background:#f7faff;border-radius:17px;padding:12px 16px}.trace-access summary{min-height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:900;color:#51649c}.trace-access p{color:#54698c;line-height:1.6;text-align:center}.trace-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.trace-step{min-width:0;font-size:1.1rem}.trace-step.reached{background:#d4f6e8;border-color:#90d7b8}.build-status{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;font-weight:900;color:#4d5f8e}.build-status span{font-size:1.15rem}.build-status strong{font-size:1.6rem;color:#236b64}.build-groups{width:100%;display:flex;flex-direction:column;align-items:center;gap:9px;padding:18px 7px;background:#eff5ff;border-radius:20px;border:2px solid #d0e3fb}.build-group{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:8px 12px;border:2px solid #d3e3fc;background:#fff;border-radius:14px}.build-dot{width:clamp(30px,7vw,46px);height:clamp(30px,7vw,46px);border-radius:11px;background:#edf2f9;border:3px dashed #cbdaf0}.build-dot.filled{background:linear-gradient(125deg,#ffc95d,#eda536);border:3px solid white;box-shadow:0 4px #d99d3f,0 0 0 1px #f2c771}.machine{font-size:2.7rem;animation:bob 2.8s ease-in-out infinite}.train-mascot{font-size:5.5rem;line-height:1.3}.train-slots{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;width:100%}.train-slot{display:flex;align-items:center;justify-content:center;width:clamp(48px,13vw,77px);height:clamp(62px,17vw,87px);font-size:2rem;font-weight:950;border-radius:13px;border:3px dashed #b9cbeb;background:#f2f6fd;color:#a3b5d6}.train-slot.placed{border:3px solid #7dabd6;color:#3a5896;background:#e3f4ff}.train-track{font-size:1.2rem;color:#9ab0cf;max-width:100%;overflow:hidden}.train-tiles{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.train-tile{min-width:61px;min-height:72px;font-size:2rem;padding:10px 15px;background:#ffefc8;border-color:#efd08e}.move-icon{font-size:clamp(5rem,22vw,8rem);filter:drop-shadow(0 7px 0 #dfe8f6)}.move-name{font-size:clamp(1.4rem,5vw,2rem);color:#334b89;font-weight:900;margin:0}.move-instructions{font-size:clamp(1.15rem,4vw,1.55rem);font-weight:800;margin:5px 0;line-height:1.7}.move-seated{background:#eaf5ff;color:#3f678b;font-weight:800;padding:13px 18px;border-radius:15px;line-height:1.55;margin:5px 0}.move-safety{font-size:.86rem;color:#64748d;text-align:center;line-height:1.7;max-width:35rem;margin:7px 0 0}.move-buttons{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;width:100%}.move-buttons button{min-height:68px;padding:14px 20px;font-size:1.06rem}.move-buttons .move-done{background:#ffcd6a;border-color:#e7a846;color:#634615}.move-buttons .move-skip{background:#ecf2ff}@media (max-width:630px){.interactive{gap:10px}.build-group{gap:6px;padding:8px}.build-dot{width:clamp(28px,7vw,42px);height:clamp(28px,7vw,42px)}.activity-controls button{min-width:100px;max-width:none}.train-slot{font-size:1.65rem}.train-tile{font-size:1.8rem;min-width:53px}.move-buttons{flex-direction:column}.move-buttons button{width:100%}}@media (prefers-reduced-motion:reduce){.machine{animation:none}}.quiet-mode .machine{animation:none}.trace-stroke-count{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px 15px;padding:10px 14px;background:#fff0ca;border:2px solid #eed59a;border-radius:16px;color:#80551d;font-weight:900;font-size:1.1rem;text-align:center}.trace-stroke-count strong{font-size:1.4rem}.trace-stroke-count span{font-variant-numeric:tabular-nums}.trace-rule{max-width:27rem;text-align:center;margin:0;color:#816441;line-height:1.6;font-size:.91rem;font-weight:800}.trace-board svg .stroke-number{pointer-events:none}.trace-board svg text{font-family:system-ui,sans-serif}@media (max-width:390px){.trace-stroke-count{font-size:1rem}.trace-stroke-count strong{font-size:1.18rem}}.build-tap-back{display:block;width:min(100%,430px);padding:0;border:0;background:transparent;border-radius:20px;cursor:pointer;touch-action:manipulation}.build-tap-back .build-groups{min-height:72px}.build-tap-back:not(:disabled):active{transform:scale(.99)}.build-tap-back:focus-visible,.train-slot.placed:focus-visible{outline:4px solid #f5b840;outline-offset:4px}button.train-slot.placed{font-family:inherit;cursor:pointer;touch-action:manipulation;min-width:48px;min-height:62px}button.train-slot.placed:not(:disabled):active{transform:translateY(2px)}.move-parent-note{max-width:430px;color:#607291;text-align:center}.move-parent-note summary{cursor:pointer;min-height:44px;font-weight:850}.move-parent-note p{margin:5px 0;font-size:.84rem}@media (min-width:1px){.build-tap-back:disabled{opacity:1}}.growth-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:22px 0}.growth-shortcuts button{display:flex;align-items:center;gap:11px;text-align:left;flex-wrap:wrap;border:2px solid #d8e2fb;border-bottom-width:6px;border-radius:19px;background:#fff;padding:17px 20px;color:#334775;min-height:80px;box-shadow:0 4px 14px #dae4f455}.growth-shortcuts button span{font-size:2rem;line-height:1.2}.growth-shortcuts button strong{font-size:1.18rem}.growth-shortcuts button small{font-size:.85rem;color:#647595;flex-basis:100%}.growth-page{background:#fff;border-radius:25px;border:2px solid #dce5f7;box-shadow:0 8px #dae4f6;padding:clamp(16px,4vw,35px);margin:22px auto 38px;max-width:1050px;color:#33456b;overflow-wrap:anywhere}.growth-page h1{font-size:clamp(1.5rem,5vw,2.1rem);margin:13px 0;color:#2f3e74;line-height:1.4}.growth-page h2{font-size:clamp(1.15rem,3vw,1.5rem);margin:30px 0 13px;color:#394d8a}.growth-back{border:2px solid #d5e1f6;background:#f8faff;padding:10px 16px;border-radius:14px;min-height:49px;font-weight:900;color:#455b89}.growth-lead,.growth-help{line-height:1.7;color:#657595;font-weight:700;margin:12px 0}.progress-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}.progress-tabs button{min-height:55px;border:2px solid #d9e2f5;border-radius:14px;background:#f3f6fd;color:#4d618d;padding:11px 14px;font-weight:900;font-size:1.02rem}.progress-tabs button.active{background:linear-gradient(110deg,#e8f2ff,#f3faff);border-color:#8daee7;color:#2b58a8;box-shadow:0 4px #cbdef5}.growth-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.growth-stat{min-width:0;background:#f2f6ff;border:2px solid #dce6fb;border-radius:17px;padding:17px 8px;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}.growth-stat strong{color:#344a90;font-size:clamp(1.27rem,4vw,1.8rem);font-variant-numeric:tabular-nums}.growth-stat span{color:#68789f;font-weight:850;font-size:.85rem;line-height:1.4}.history-chart{display:flex;align-items:stretch;gap:7px;background:#f4f8ff;border:2px solid #e2eaf8;border-radius:19px;min-height:213px;padding:15px 8px 12px;overflow-x:auto}.history-day{display:flex;flex-direction:column;align-items:center;min-width:34px;flex:1;color:#7384a9;font-variant-numeric:tabular-nums}.history-day.is-today{color:#255b9d;font-weight:900}.history-number{height:20px;line-height:20px;font-size:.74rem;font-weight:900}.history-rail{flex:1;width:min(100%,35px);display:flex;flex-direction:column;justify-content:flex-end;background:#e1eafb;border-radius:9px 9px 3px 3px;overflow:hidden;min-height:130px}.history-rail>span{width:100%;background:linear-gradient(#67c5b5,#80a8e7);border-radius:8px 8px 0 0}.history-day.is-today .history-rail>span{background:linear-gradient(#f8cf70,#edac58)}.history-date{font-size:.76rem;margin-top:8px}.daily-table-wrap{max-width:100%;overflow-x:auto;border:2px solid #e0e8f7;border-radius:16px}.daily-table{width:100%;border-collapse:collapse;text-align:center;font-size:.91rem;font-variant-numeric:tabular-nums}.daily-table th,.daily-table td{padding:13px 9px;border-bottom:1px solid #e4ebf9;white-space:nowrap}.daily-table thead th{color:#455b87;background:#eff4ff}.daily-table tbody th{font-weight:850;text-align:left}.daily-table tbody tr:nth-child(2n){background:#fafcff}.growth-note{margin:28px 0 5px;border-left:4px solid #a6b8dc;padding:12px 14px;background:#f6f8fe;color:#667690;line-height:1.7;font-size:.87rem}.skill-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(110deg,#f6edff,#eff6ff);border-radius:17px;border:2px solid #e0d7fa;padding:16px 20px;color:#495d91}.skill-summary strong{font-size:1.65rem}.skill-summary span{font-weight:800}.skill-filters{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0 22px}.skill-category{min-height:46px;border:2px solid #dae4f5;border-radius:999px;background:#f8faff;color:#48638c;padding:8px 13px;font-weight:900;font-size:.92rem}.skill-category.active{background:#5069bd;border-color:#5069bd;color:#fff}.skill-tree-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.skill-branch{border:2px solid #dce5fa;border-radius:20px;background:#fcfdff;padding:17px;min-width:0}.skill-branch-header{display:flex;align-items:center;gap:12px}.skill-branch-icon{font-size:2.1rem;flex-shrink:0}.skill-branch h3{margin:0 0 3px;color:#3b5085;font-size:1.04rem}.skill-branch-header p{color:#6b7fa7;font-size:.8rem;font-weight:750;margin:0}.skill-path{display:flex;align-items:center;justify-content:space-between;gap:0;margin:20px 0 12px}.skill-node{border-radius:13px;min-width:39px;min-height:58px;padding:7px 4px;border:2px solid #d6e0f1;background:#eff2f7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex-shrink:0}.skill-node.unlocked{background:#fff5d5;border-color:#f2d27c;color:#785220}.skill-node.current{outline:3px solid #8ccde8;outline-offset:2px}.skill-level{font-size:1.1rem;line-height:1}.skill-node small{font-size:.67rem;font-weight:900}.skill-connector{flex:1;height:5px;background:#dae3ef;min-width:3px}.skill-connector.unlocked{background:#f4cb6e}.skill-progress-copy{font-weight:900;color:#536b99;margin:0;font-size:.86rem}.growth-page button:focus-visible{outline:4px solid #f5b840;outline-offset:3px}@media (max-width:700px){.skill-tree-grid{grid-template-columns:1fr}.growth-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-page{padding:15px;margin-top:12px}.skill-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:7px}.skill-category{flex-shrink:0}}@media (max-width:390px){.growth-shortcuts button{padding:13px 9px;gap:4px;flex-direction:column;text-align:center}.growth-shortcuts button strong{font-size:.95rem}.growth-shortcuts button small{font-size:.72rem}.history-day{min-width:31px}.skill-branch{padding:11px}.skill-node{min-width:34px;min-height:54px;padding:5px 2px}}@media (prefers-reduced-motion:reduce){.growth-page *{transition:none!important}}button.skill-node{font:inherit;color:#785220;cursor:pointer;min-width:44px;min-height:62px}button.skill-node:active{transform:translateY(2px)}.skill-node.locked{opacity:.68}@media (max-width:390px){button.skill-node{min-width:40px}}.today-games{display:flex;flex-wrap:wrap;gap:9px;margin:13px 0 4px}.today-game{border:2px solid #d4e3f8;background:#f5faff;color:#435c91;border-radius:999px;padding:7px 13px;font-size:.89rem;font-weight:900;line-height:1.4}.growth-dashboard{min-width:0;width:min(100%,1050px);overflow-wrap:normal}.growth-dashboard .growth-hero{display:flex;align-items:center;gap:17px;min-width:0;margin:16px 0;background:linear-gradient(125deg,#e3f8ff,#fff4d8 55%,#fce9ff);border:2px solid #dce7fd;border-bottom-width:6px;border-radius:24px;padding:18px}.growth-dashboard .growth-hero-icon{display:grid;place-items:center;flex-shrink:0;width:76px;height:76px;border-radius:22px;background:#fff;font-size:2.5rem;box-shadow:0 6px #d2e5f7;transform:rotate(-5deg)}.growth-dashboard .growth-kicker{margin:0;font-size:.72rem;font-weight:950;letter-spacing:.16em;color:#6971b8}.growth-dashboard .growth-hero h1{margin:3px 0 0;font-size:clamp(1.4rem,4.5vw,2rem);word-break:keep-all;overflow-wrap:anywhere}.growth-dashboard .growth-hero .growth-lead{margin:5px 0 0;font-size:.95rem;line-height:1.5}.growth-panel{min-width:0;padding:18px;border:2px solid #e2e9fc;border-radius:23px;margin:18px 0;background:linear-gradient(170deg,#fff,#f9fbff);box-shadow:0 5px #edf2fa}.growth-panel h2{margin:0 0 14px;font-size:clamp(1.08rem,3.8vw,1.36rem);line-height:1.4}.growth-dashboard .growth-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.growth-dashboard .growth-stat{min-width:0;padding:13px 5px;border-radius:18px;gap:5px;border-color:#d7e6fc;background:#fff;box-shadow:0 4px #ebf2fc}.growth-dashboard .growth-stat strong{font-size:clamp(1.2rem,4vw,1.8rem);line-height:1.25;overflow-wrap:anywhere}.growth-dashboard .growth-stat span{font-size:clamp(.7rem,2vw,.85rem);word-break:keep-all;line-height:1.4}.growth-today{background:linear-gradient(155deg,#fffefa,#fff3d9)}.growth-today .growth-stat{border-color:#f0dbb1;background:#fffefa}.growth-dashboard .history-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(5px,2vw,14px);overflow:hidden;min-height:206px;padding:15px 10px 11px;background:linear-gradient(180deg,#f3f9ff,#eff2ff)}.growth-dashboard .history-day{min-width:0;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:end;flex:1}.growth-dashboard .history-number{flex:0 0 23px;font-size:.93rem;line-height:23px;color:#4164a0}.growth-dashboard .history-rail{flex:1;min-height:115px;width:min(100%,48px);border-radius:11px 11px 4px 4px;background:#e3eafa}.growth-dashboard .history-rail>span{display:block;min-height:0;background:linear-gradient(#55d7bc,#62a8f3);border-radius:10px 10px 0 0;transition:height .3s ease}.growth-dashboard .history-day.is-today .history-rail>span{background:linear-gradient(#ffcc61,#ff8b68)}.growth-dashboard .history-date{white-space:nowrap;font-size:.94rem;margin-top:9px;font-weight:850}.growth-dashboard .history-date small{font-size:.7rem;margin-left:1px}.growth-week-total{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px}.growth-week-total span{background:#eaf5ff;border-radius:12px;padding:10px 7px;text-align:center;color:#46629a;font-weight:900;font-size:.91rem}.growth-dashboard .today-games{margin:12px 0 0}.daily-record-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.daily-record{min-width:0;border:2px solid #dce7f9;border-radius:15px;background:#fff;overflow:hidden}.daily-record summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:13px 12px;min-height:56px;cursor:pointer;list-style:none}.daily-record summary::-webkit-details-marker{display:none}.daily-record summary strong{color:#334e90;white-space:nowrap}.daily-record-date{font-weight:900;color:#53699b;white-space:nowrap;font-variant-numeric:tabular-nums}.daily-record-reward{color:#a36c21;font-size:.85rem;white-space:nowrap;font-weight:850}.daily-record-chevron{margin-left:auto;color:#7187b2;font-size:1.4rem;line-height:1;transition:transform .2s ease}.daily-record[open] .daily-record-chevron{transform:rotate(180deg)}.daily-record-body{border-top:1px solid #e4ecfb;padding:11px 13px;display:flex;flex-wrap:wrap;gap:8px}.daily-record-body span{padding:7px 9px;border-radius:10px;background:#f1f6ff;color:#445e91;font-size:.83rem;font-weight:850}.daily-record-body p{width:100%;margin:4px 0;line-height:1.55;color:#526485;overflow-wrap:anywhere}.growth-empty{font-weight:800;color:#65799b}.growth-dashboard .growth-help{font-size:.91rem;margin:4px 0 12px}.growth-dashboard .growth-note{overflow-wrap:anywhere}@media (max-width:700px){.growth-dashboard{padding:10px}.growth-dashboard .growth-hero{padding:13px;gap:12px;margin:10px 0}.growth-dashboard .growth-hero-icon{width:57px;height:57px;font-size:1.9rem;border-radius:18px}.growth-panel{padding:12px;margin:13px 0}.growth-dashboard .growth-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.growth-dashboard .growth-stat{min-height:87px;justify-content:center}.growth-dashboard .growth-stat strong{font-size:1.38rem}.daily-record-list{grid-template-columns:1fr}}@media (max-width:360px){.growth-dashboard .growth-hero-icon{display:none}.growth-dashboard .history-chart{gap:4px;padding-left:5px;padding-right:5px}.growth-dashboard .history-date,.growth-week-total span{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.growth-dashboard .history-rail>span,.daily-record-chevron{transition:none}}.progress-tabs button{font:inherit;font-size:1rem;font-weight:900;line-height:1.35;cursor:pointer}.progress-tabs button.active{font-weight:950}@media (max-width:390px){.progress-tabs{gap:8px}.progress-tabs button{font-size:.9rem;padding:10px 5px;min-height:56px}}details.growth-note{padding:12px 14px}details.growth-note summary{cursor:pointer;font-weight:900;color:#516b9e;min-height:38px;display:flex;align-items:center}details.growth-note p{margin:6px 0;line-height:1.65}details.growth-note summary:focus-visible{outline:3px solid #ffb23c;outline-offset:2px}.skill-practice{margin-top:8px;width:100%;min-height:45px;border:2px solid #c9ddc6;border-radius:13px;background:#f0faef;color:#3d754f;font:inherit;font-size:.88rem;font-weight:900}.skill-practice:focus-visible{outline:4px solid #f5b840;outline-offset:3px}.touch-activity{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:640px;margin:auto}.touch-tip{color:#52688f;font-weight:900;text-align:center;line-height:1.6;margin:4px 0}.path-trace-board{width:min(100%,420px);padding:8px;background:#f2f8ff;border:3px solid #b9d6ed;border-radius:22px;box-shadow:0 5px #dce7f5}.path-trace-board svg{width:100%;height:auto;display:block;aspect-ratio:1;touch-action:none;user-select:none;-webkit-user-select:none}.path-trace-board svg text,.path-trace-board svg polyline,.path-trace-board svg rect{pointer-events:none}.hands-clock{width:min(100%,330px);aspect-ratio:1;display:block;touch-action:none;user-select:none;-webkit-user-select:none;overflow:visible}.hands-clock text{pointer-events:none}.hands-clock [data-clock-hand]{cursor:grab;pointer-events:all;touch-action:none}.hands-clock [data-clock-hand]:active{cursor:grabbing}.clock-hand-guide{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;color:#4e6593;font-size:.91rem;font-weight:900}.clock-hand-guide span{padding:8px 11px;background:#f1f6ff;border:1px solid #d5e4f8;border-radius:12px}.clock-current{font-size:2rem;font-weight:950;font-variant-numeric:tabular-nums;color:#344f8b;margin:0}.clock-check{min-height:65px;width:min(100%,320px);border:2px solid #edae5e;border-bottom-width:5px;background:#ffe1a0;color:#775022;font-weight:950;border-radius:17px;font-size:1.1rem}.touch-reset,.touch-fallback button{min-height:48px;padding:10px 18px;border:2px solid #c5d9f4;border-radius:14px;background:#f1f6ff;color:#475f90;font-weight:900}.touch-fallback{width:100%;max-width:430px;border:2px solid #d9e5f9;background:#f8faff;border-radius:17px;padding:12px 16px;color:#53698f}.touch-fallback summary{min-height:44px;cursor:pointer;display:flex;justify-content:center;align-items:center;font-weight:900;text-align:center}.touch-fallback p{text-align:center;line-height:1.6}.touch-fallback>button{display:block;margin:9px auto;min-width:140px}.clock-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}.clock-controls>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:2px solid #d5e2f7;border-radius:17px;padding:11px;background:#f5f9ff}.clock-controls strong{grid-column:1/-1;text-align:center;color:#47608a;font-size:.95rem}.clock-controls button{font-size:2rem;min-height:60px;background:#fff;color:#4266a9;font-weight:950}.touch-activity button:focus-visible{outline:4px solid #ffb23c;outline-offset:3px}@media (max-width:380px){.touch-fallback{padding:10px}.clock-controls{gap:7px}.clock-controls>div{padding:6px}}@media (prefers-reduced-motion:reduce){.touch-activity *{transition:none!important}}.maze-board{background:#6e91af;border-color:#9dbde1;box-shadow:0 6px #c5d7eb}.maze-board svg{border-radius:13px}.maze-activity .touch-reset{align-self:center;min-width:152px}.maze-activity .touch-tip{margin:0;font-size:.94rem}.workshop{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:680px;margin:auto;color:#354d80;font-weight:800}.workshop-target{font-size:clamp(1.6rem,5vw,2.5rem);padding:14px 22px;border:2px solid #e6d0a5;border-radius:22px;background:#fff5db;text-align:center}.workshop-hint{color:#596d94;font-size:1.04rem;line-height:1.65;text-align:center;margin:4px 0}.shop-money{font-size:1.55rem;font-weight:950}.shop-coins{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;min-height:86px;background:#eef6ff;border:2px solid #d5e5fc;border-radius:21px;width:100%;padding:14px}.coin-token{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#ffd778;border:4px solid #eeb354;color:#6b521c;font-weight:950;font-size:1.2rem}.workshop-actions,.routine-options,.rhythm-pads{width:100%;display:flex;justify-content:center;flex-wrap:wrap;gap:12px}.workshop-btn{min-height:58px;min-width:100px;padding:12px 18px;border:2px solid #b4cbee;border-bottom-width:5px;border-radius:16px;background:#f5f9ff;color:#385787;font-weight:900;font-size:1.05rem;flex:1;max-width:240px}.workshop-btn:disabled{opacity:.4}.workshop-btn:active:not(:disabled){transform:translateY(3px);border-bottom-width:2px}.workshop-btn:focus-visible,.skill-start:focus-visible{outline:4px solid #f3b941;outline-offset:3px}.workshop-message{min-height:24px;color:#83612e;text-align:center;margin:4px}.routine-order{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.routine-step{display:flex;align-items:center;justify-content:center;border:2px dashed #b9cce8;background:#eaf1ff;border-radius:14px;text-align:center;min-height:88px;font-size:.86rem;padding:6px;line-height:1.5;overflow-wrap:anywhere}.routine-options>.workshop-btn{max-width:275px;min-height:75px}.split-baskets{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.split-basket{min-width:0;display:flex;align-items:center;flex-direction:column;gap:12px;padding:16px 10px;border:3px solid #cddff0;background:#f7faff;border-radius:23px;text-align:center}.split-basket strong{font-size:1.02rem}.split-basket b{font-size:1.6rem}.split-basket .workshop-btn{max-width:none;width:100%;font-size:.94rem}.split-dots{font-size:1.45rem;line-height:1.7;overflow-wrap:anywhere;min-height:62px}.rhythm-score{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;background:#f2f7ff;padding:16px;border-radius:18px;width:100%;border:2px solid #d5e5f7}.rhythm-score span{font-size:clamp(1.6rem,5vw,2.4rem);opacity:.55}.rhythm-score span.played{opacity:1;filter:drop-shadow(0 3px 2px #99bdcd)}.rhythm-pads .workshop-btn{min-height:120px;font-size:1.35rem}.station-world{background:#fff;border:2px solid #e1e8f8;padding:clamp(16px,4vw,34px);border-radius:24px;max-width:1000px;margin:25px auto;display:flex;flex-direction:column;gap:12px;color:#3f5784}.station-world h1{font-size:clamp(1.55rem,5vw,2.2rem)}.station-header{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;background:#f1f7ff;padding:15px;border-radius:18px;font-weight:900}.station-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-radius:20px;background:linear-gradient(#eaf4ff,#f3f9ff);padding:20px 12px}.station-stop{display:flex;flex-direction:column;align-items:center;gap:9px;padding:17px 8px;border:2px solid #cddcec;border-bottom-width:5px;background:#fff;border-radius:20px;text-align:center}.station-stop.waiting{background:#e7edf6;opacity:.7}.station-art{font-size:clamp(2.1rem,8vw,4.3rem);line-height:1.4}.station-copy{display:flex;flex-direction:column;align-items:center;gap:7px}.station-copy strong{font-size:1.1rem}.station-copy span{color:#6c7c9d;font-size:.85rem}.station-footer{background:#ffefca;color:#7d5b26;text-align:center;border-radius:15px;padding:14px;font-weight:900;font-size:1.1rem}.station-favorites{background:#edf7ff;border-radius:17px;padding:14px;line-height:1.8}.station-world .primary-btn{align-self:center;max-width:410px;width:100%}.growth-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.skill-start{width:100%;min-height:53px;border:2px solid #6d9bd4;border-bottom-width:4px;border-radius:14px;color:#285c8b;background:#e5f5ff;font-weight:950;padding:10px 8px;margin-top:12px}.parent-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.parent-period{background:#f4f8ff;border:2px solid #dae6fa;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:7px}.parent-period strong{color:#395a9e;font-size:1.3rem}.parent-period span{font-weight:750;color:#587196}@media (max-width:650px){.station-rail,.growth-shortcuts,.routine-order{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-periods{grid-template-columns:1fr}}@media (max-width:390px){.workshop-btn{min-width:80px;padding:12px 8px}.split-baskets{gap:7px}.split-basket{padding:9px 6px}.split-basket .workshop-btn{font-size:.82rem}}@media (prefers-reduced-motion:reduce){.workshop *,.station-world *{animation:none!important;transition:none!important}}.odd-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:550px}.odd-picture-card{min-height:105px;border:3px solid #d5def2;border-bottom-width:6px;border-radius:21px;background:#fff;font-size:clamp(2.4rem,8vw,4.1rem);display:flex;align-items:center;justify-content:center}.odd-picture-card:focus-visible{outline:4px solid #ffb840;outline-offset:3px}.odd-picture-card:disabled{opacity:.7}@media (max-width:380px){.odd-pick{gap:7px}.odd-picture-card{min-height:90px}}.workshop-shop{gap:13px}.workshop-shop .shop-money{font-size:1.5rem;color:#3c568b;line-height:1.25}.workshop-shop .shop-money strong{font-size:clamp(2.2rem,7vw,3rem);color:#ed8c42;font-variant-numeric:tabular-nums}.workshop-shop .shop-coins{min-height:112px;padding:13px;gap:10px;background:#fdfaf1;border:3px dashed #e5cf9b}.workshop-shop .coin-token{font:inherit;display:flex;flex-direction:column;gap:0;flex:0 0 62px;width:62px;height:62px;min-width:62px;min-height:62px;cursor:pointer;touch-action:manipulation;box-shadow:0 4px #dca850;font-weight:950;font-size:1.45rem}.workshop-shop .coin-token small{font-size:.7rem;line-height:1.1}.workshop-shop .coin-token:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #dca850}.workshop-shop .coin-token:focus-visible{outline:4px solid #ffad3c;outline-offset:3px}.workshop-shop .coin-token:disabled{opacity:.65}.workshop-shop .shop-empty{color:#7b8caf;font-size:.95rem;font-weight:800;text-align:center}.workshop-shop .workshop-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.workshop-shop .workshop-actions .workshop-btn{min-width:0;max-width:none;min-height:77px;border-radius:18px;background:#ffefc7;border-color:#e5bd74;font-weight:950;font-size:1.22rem}.workshop-shop .workshop-actions .workshop-btn:focus-visible{outline:4px solid #4c83b6;outline-offset:3px}.workshop-message:empty{display:none}@media (max-width:390px){.workshop-shop .coin-token{flex-basis:56px;width:56px;height:56px;min-width:56px;min-height:56px}.workshop-shop .workshop-actions .workshop-btn{font-size:1.08rem;min-height:70px}}button.routine-step{font:inherit;font-size:.88rem;font-weight:900;cursor:pointer;border:2px solid #9bd7bb;background:#e6f9ed;color:#376b52;min-height:76px}button.routine-step:focus-visible,button.split-dots:focus-visible{outline:4px solid #f3b941;outline-offset:3px}button.split-dots{display:block;width:100%;min-height:66px;padding:7px;border:2px solid #cbddef;border-radius:13px;background:#fff;cursor:pointer;font:inherit;font-size:1.35rem;line-height:1.65;white-space:normal;overflow-wrap:anywhere}button.split-dots:disabled{opacity:.65;cursor:default}button.split-dots:active:not(:disabled),button.routine-step:active:not(:disabled){transform:translateY(2px)}
