.platform-layout{display:grid;grid-template-columns:minmax(0,1fr);max-width:1000px;margin:auto}.platform-game{background:white;border:1px solid var(--line);border-radius:24px;padding:18px;overflow:hidden}.platform-instructions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.platform-instructions strong{font-family:Baloo,sans-serif;font-size:24px}.platform-instructions span{align-self:center;font-size:14px}.platform-stage{height:372px;background:linear-gradient(#d3eced,#f3f7da);border-radius:16px;overflow:hidden;position:relative;touch-action:pan-y}.platform-sky{position:absolute;inset:0;display:flex;justify-content:space-around;color:white;font-size:90px;pointer-events:none}.platform-sky span:nth-child(2){margin-top:65px}.platform-world{position:absolute;inset:0;will-change:transform}.platform-ground,.platform-ledge{position:absolute;background:#b5c69a;border-top:11px solid #75975d;border-radius:8px 8px 0 0;box-shadow:inset 0 -6px #8da67666}.platform-ground{height:90px;background:repeating-linear-gradient(110deg,#d7bf90 0 22px,#dfc99f 22px 40px)}.platform-ledge{height:24px}.platform-flower{position:absolute;top:290px;color:#c8809b;font-size:30px}.platform-player{position:absolute;top:0;left:0;width:46px;height:56px;will-change:transform;transform-origin:center}.platform-player .dragon{width:100%;height:100%;overflow:visible}.platform-player.is-jumping .dragon{transform:rotate(-8deg)}.platform-star{position:absolute;color:#ba8629;font-size:27px;filter:drop-shadow(0 2px 0 white)}.platform-star.collected{display:none}.math-gate{position:absolute;top:199px;width:48px;height:121px;background:repeating-linear-gradient(0deg,#a993be 0 12px,#baa5cd 12px 24px);border:5px solid #7d678e;border-radius:28px 28px 0 0;display:flex;justify-content:center;padding-top:15px;transition:opacity .3s}.math-gate b{background:white;border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.math-gate>span{position:absolute;bottom:130px;background:white;white-space:nowrap;padding:4px 9px;border-radius:8px;font-size:12px;font-weight:bold}.math-gate.gate-open{opacity:.25;transform:scaleY(.2);transform-origin:bottom}.platform-finish{position:absolute;top:200px;color:#b99131;font-size:70px}.platform-prompt{position:absolute;bottom:8px;left:8px;right:8px;background:#fffef3ed;border-radius:8px;padding:7px 10px;font-size:13px;font-weight:700;text-align:center}.platform-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.platform-controls>div{display:flex;gap:8px}.platform-controls button{min-width:58px;min-height:52px;border:1px solid var(--line);background:var(--tint);color:var(--ink);border-radius:12px;font-size:21px;font-weight:700;touch-action:none;user-select:none}.platform-controls>span{font-size:12px;line-height:1.5}.platform-game>.text-button{font-size:12px;margin-top:8px}.gate-instruction{display:none}.gate-not-reached .gate-instruction{display:block;background:var(--tint);padding:15px;border-radius:12px;font-weight:700}.gate-not-reached #answer-area{opacity:.55}.platform-layout .question-card{max-width:none}.style-picker>div{grid-template-columns:repeat(4,minmax(0,1fr))}.family-content{padding:24px}.family-content>p{line-height:1.7;margin-bottom:15px}.child-list{display:grid;gap:10px;margin:16px 0}.child-row{display:flex;justify-content:space-between;gap:8px}.account-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.account-error{color:#9a342d;margin-top:16px}.account-success{color:var(--green);margin-top:16px}.account-form .check-label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6}.account-form .check-label input{width:20px;height:20px;flex:0 0 20px;margin-top:2px}.family-dialog{max-height:90dvh;overflow:auto}
@media(max-width:1100px){.style-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.platform-game{padding:10px;border-radius:18px}.platform-stage{height:365px}.platform-instructions{gap:3px}.platform-instructions span{font-size:13px}.platform-controls>span{font-size:11px}.family-content{padding:18px}.style-choice{padding:12px}.style-choice small{font-size:11px}}
