.kid-scene{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:stretch}
.kid-panel{flex:1 1 130px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.kid-label{display:block;text-align:center;margin-bottom:10px;color:var(--ink)}
.kid-group{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;min-height:56px}
.kid-item{position:relative;display:flex;flex-direction:column;align-items:center;width:44px;flex:none}
.kid-object{display:block;width:44px!important;height:44px!important;max-height:none!important}
.kid-item>b{font-size:15px;line-height:1.6}
.kid-removed{opacity:.6}.kid-removed::after{content:'';position:absolute;left:4px;right:4px;top:20px;border-top:3px solid #c13d59;transform:rotate(-40deg)}
.kid-empty{border:2px dashed var(--line);padding:20px 14px;border-radius:12px;color:var(--ink-2)}
.kid-position{display:flex;flex-direction:column;align-items:center;gap:6px}.kid-shelf{height:8px;width:90%;background:#a7723b;border-radius:4px}
.kid-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kid-sides .kid-panel{padding:6px}.kid-sides .kid-item{width:100%;max-width:44px;flex:0 1 44px}.kid-sides .kid-object{width:100%!important;height:auto!important}.kid-sides .kid-label{font-size:14px}
.kid-numberline{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-bottom:6px}.kid-number{display:grid;place-items:center;min-width:36px;min-height:40px;flex:1 0 36px;border:1px solid var(--line);border-radius:9px}
.kid-number.from{border:3px dashed var(--brand)}.kid-number.to{background:var(--brand);color:var(--surface)}
.kid-path p{margin:8px 0;text-align:center}
.kid-ruler{position:relative;max-width:350px;padding-top:26px;margin:12px auto;color:var(--ink)}
.kid-ruler-segment{position:absolute;top:10px;left:var(--from);width:var(--length);height:5px;background:#df7375;border-inline:3px solid #9f3348}
.kid-ruler-ticks{position:relative;height:32px;border-top:2px solid var(--ink)}.kid-ruler-ticks span{position:absolute;top:4px;transform:translateX(-50%)}.kid-ruler-ticks span::before{content:'';position:absolute;top:-5px;left:50%;height:6px;border-left:1px solid var(--ink)}
.kid-ruler p{margin:6px 0;font-size:14px}
.kid-share{display:flex;width:100%;height:70px;border:2px solid #765624;border-radius:8px;overflow:hidden;background:#fff4da}.kid-share span{flex:1;border-right:2px dashed #765624}.kid-share span:last-child{border:0}.kid-share .filled{background:#e7ae54}
.kid-tap{padding:18px;border:1px solid var(--line);border-radius:14px;margin:18px 0}.kid-tap-items{display:flex;flex-wrap:wrap;gap:8px}.kid-tap-items button{position:relative;display:grid;place-items:center;min-width:56px;min-height:66px;padding:4px;background:var(--surface);border:2px solid var(--line);border-radius:12px}.kid-tap-items button[aria-pressed=true]{border-color:var(--brand);background:var(--brand-l)}.kid-tap-items b{height:16px;line-height:1;color:var(--brand)}
.starter-mini-example{margin:22px 0;padding-top:16px;border-top:1px solid var(--line)}.starter-mini-example h3{font-size:20px}.starter-topic .worked{margin-block:14px}.starter-practice-entry{margin:24px 0;padding:22px;border:2px solid var(--brand);border-radius:16px;background:var(--brand-l)}
.starter-stage{color:var(--brand);font-weight:800}.starter-figure{margin-inline:0}.starter-figure>figcaption{font-size:16px}
.checkpoint .kid-group,.q .kid-group,.q-solution .kid-group{margin-block:12px}
.checkpoint .choice-text .kid-group{min-width:0}.checkpoint .choice-text .kid-item{width:32px}.checkpoint .choice-text .kid-object{width:32px!important;height:32px!important}
.derivative-lesson{min-width:0}.derivative-figure{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.derivative-figure svg{width:100%;max-width:360px;height:auto;display:block;margin:auto}.derivative-figure figcaption{line-height:1.6;margin-top:10px}.derivative-steps{padding-left:24px;line-height:1.8}.derivative-steps li{margin-bottom:12px}.derivative-lesson .math-scroll{max-width:100%;overflow-x:auto}.derivative-chain{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.derivative-chain>div{padding:12px;border:2px solid var(--line);border-radius:12px;flex:1 1 140px;min-width:0}
@media print{.kid-tap,.starter-practice-entry{display:none}}
.derivative-primer-boxes{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.derivative-primer-boxes>div{flex:1 1 135px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.derivative-primer-boxes b,.derivative-primer-boxes strong,.derivative-primer-boxes span{display:block;overflow-wrap:anywhere}
.derivative-primer-boxes strong{font-size:1.15em;color:var(--brand);margin:10px 0}
.derivative-caption{font-size:16px;line-height:1.6}
.derivative-rise{width:100%;max-width:360px;height:auto;display:block;margin:auto}
.derivative-secant{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.derivative-lab-label{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-weight:700}
.derivative-lab-label select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;max-width:100%;min-height:44px}
