body.learning-focus{background:#f5f8fc}body.learning-focus>header,body.learning-focus>.subject-navigation,body.learning-focus>footer,body.learning-focus>.save-status-bar,body.learning-focus>#level-milestone,body.learning-focus>#save-feedback{display:none!important}body.learning-focus #app{max-width:840px;margin:0 auto;padding:28px 24px 60px;min-height:100dvh}body.learning-focus .trainer{max-width:100%;margin:0}.focus-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;font-weight:800;letter-spacing:.04em;color:#365173}.focus-back{font-size:12px;color:#245386;padding:12px 0;white-space:nowrap;text-decoration:none}.focus-heading img{width:120px;height:auto}.focus-heading>span{text-align:center}.focus-progress{display:flex;flex-direction:column;align-items:center;gap:12px;margin:20px 0 28px;font-size:12px;letter-spacing:.08em;font-weight:800;color:#4c6483}.focus-dots{display:flex;gap:9px}.focus-dots>span{height:11px;width:11px;background:#e1e9f4;border:2px solid #d4dfed;border-radius:50%}.focus-dots .done{background:#237fdb;border-color:#237fdb}.focus-dots .current{background:#fff;border-color:#159ac2;box-shadow:0 0 0 3px #d7f5fc}body.learning-focus .task{padding:40px 32px;border-radius:26px;box-shadow:0 12px 35px #15345c0b;border:1px solid #e1e9f4;text-align:center;background:#fff}body.learning-focus .player-avatar,body.learning-focus .task>.eyebrow,body.learning-focus .task-save-actions,body.learning-focus [data-save-progress],body.learning-focus .focus-reward-message{display:none!important}body.learning-focus .equation,body.learning-focus .large-equation{font-size:clamp(40px,8vw,72px);line-height:1.3;margin:25px 0 34px;color:#14365e;font-weight:800;overflow-wrap:anywhere}body.learning-focus .fraction-expression{font-size:clamp(26px,6vw,42px);margin:24px 0}body.learning-focus .task>h2{font-size:clamp(22px,5vw,32px);line-height:1.4;margin:10px 0 24px}.focus-answer-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%}.focus-answer-choice{font:inherit;font-size:36px;font-weight:800;color:#123761;background:#f1f6fc;border:2px solid #d9e6f5;border-radius:18px;min-height:94px;cursor:pointer;padding:14px 8px}.focus-answer-choice.selected{border-color:#1689d8;background:#e4f7ff;box-shadow:0 0 0 2px #c9eefc}.focus-answer-choice.answer-success,.fraction-choice.answer-success{border-color:#238b7a;background:#e3f5ef}.focus-answer-choice.answer-success:after,.fraction-choice.answer-success:after{content:' ✓';font-size:18px}.focus-answer-choice.answer-retry{border-color:#957bc6;background:#f1ebfa}.focus-answer-choice:focus-visible,body.learning-focus button:focus-visible,body.learning-focus input:focus-visible,body.learning-focus a:focus-visible{outline:3px solid #1689d8;outline-offset:4px}body.learning-focus .answer{flex-wrap:wrap;gap:18px;justify-content:center}body.learning-focus .answer>.primary{min-height:52px;min-width:170px;margin-top:8px}.focus-help-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:30px 0 10px}.focus-help-buttons .secondary{font-size:12px;min-height:48px}.focus-help-buttons .text-link{width:100%;font-size:11px;padding:14px;border:0;background:none;cursor:pointer;color:#476684}.focus-legacy-help{display:none!important}body.learning-focus .hint{text-align:left;background:#f1f8fd;border-radius:18px;padding:22px;font-size:15px}body.learning-focus .hint h3{font-size:13px;letter-spacing:.06em}.focus-help-equation{text-align:center;font-size:23px;font-weight:700;line-height:1.7}.focus-groups{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:24px 0}.focus-dot-group{display:flex;flex-wrap:wrap;gap:5px;max-width:76px;padding:10px;background:#d9f4fb;border-radius:10px}.focus-dot-group i{width:9px;height:9px;background:#2080cf;border-radius:50%}body.learning-focus .xp-gain{font-size:12px;color:#49687d;font-weight:600}body.learning-focus .feedback{font-size:16px;margin:20px 0;line-height:1.6}body.learning-focus .large-strategies{margin:20px 0;gap:8px}body.learning-focus .large-strategies .secondary{font-size:11px;padding:11px}body.learning-focus .fraction-choices{gap:14px}body.learning-focus .fraction-choice{min-height:94px;font-size:30px;border-radius:18px}body.learning-focus .fraction-strip{min-height:95px;margin:26px 0}body.learning-focus .fraction-draw button{min-height:90px;border-width:2px}body.learning-focus .fraction-live{font-size:14px;color:#416487;min-height:22px}body.learning-focus .interactive-numberline{margin:35px 0;min-height:82px}body.learning-focus .focus-family .trainer>h1{font-size:15px;text-align:center;margin:20px 0;color:#48617e}body.learning-focus .focus-family .trainer>p.muted,body.learning-focus .focus-family .trainer>.family-choices,body.learning-focus .focus-family .trainer>.progress{display:none}body.learning-focus .focus-family .trainer>section.panel:first-of-type{padding:10px;background:none;border:0;box-shadow:none;margin:0}body.learning-focus .family-visual{max-width:230px;min-height:140px;margin:0 auto}body.learning-focus .family-number{width:48px;height:48px;font-size:21px}body.learning-focus .focus-family .trainer>section.panel:first-of-type>.eyebrow,body.learning-focus .focus-family .trainer>section.panel:first-of-type>p{display:none}body.learning-focus .family-question{font-size:clamp(27px,6vw,43px);text-align:center;line-height:1.5;font-weight:800;margin:20px 0 28px}body.learning-focus .family-form{text-align:center}body.learning-focus .family-form input{min-height:58px;font-size:25px;max-width:100%}body.learning-focus .family-form label{font-size:13px}body.learning-focus .family-choices button{min-height:65px;font-size:19px}.focus-round-summary .actions{gap:12px}.focus-round-summary .actions .primary{min-width:190px}.focus-round-summary .learning-moments p:nth-child(n+4){display:none}.focus-round-summary .actions>[data-save-progress]{display:none}.focus-round-summary .shop-training .text-link{font-size:12px}@media(max-width:600px){body.learning-focus #app{padding:14px 14px 40px}.focus-heading{flex-wrap:wrap;font-size:10px;gap:8px}.focus-heading>span{order:3;width:100%}.focus-heading img{width:110px}.focus-progress{margin:16px 0 22px}body.learning-focus .task{padding:26px 16px}.focus-answer-choices{gap:9px}.focus-answer-choice{font-size:28px;min-height:82px}.focus-help-buttons{gap:8px}.focus-help-buttons .secondary{padding:13px 11px;font-size:11px}body.learning-focus .fraction-choice{font-size:25px;min-width:0;padding:12px 6px}.focus-dots{gap:8px}body.learning-focus .large-equation{font-size:42px}body.learning-focus .hint{padding:16px}.focus-round-summary .actions{flex-direction:column}.focus-round-summary .actions a,.focus-round-summary .actions button{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){body.learning-focus *{animation:none!important;transition:none!important}}
.focus-round-summary .actions .round-extra-control{display:none}.focus-round-summary .shop-training{margin:22px 0;padding:20px;border-radius:18px;background:#eef7fd}.focus-round-summary .shop-training>.workshop-art{height:130px;width:150px;margin:0 auto 12px}.focus-round-summary .shop-training>.text-link{display:none}.focus-strategy-details{text-align:left;font-size:12px}body.learning-focus .family-form>.primary{min-height:52px;margin-top:12px}body.learning-focus .task .fraction-circle{width:230px;height:230px}
.focus-family-choices{display:grid;gap:12px;margin:24px 0}.focus-family-choices button{min-height:70px;font-size:clamp(20px,5vw,29px);background:#f1f6fc;border:2px solid #d7e5f4}.focus-family-choices .answer-success{background:#e5f7ef;border-color:#448f84}
.fraction-count-guide{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.fraction-count-guide>span{padding:16px;border-radius:12px;background:#dff5fc}.fraction-count-guide>span:last-child{background:#ebe8fb}.fraction-count-guide strong{font-size:28px;display:block;color:#164273}
/* Mobile learning has its own flow, not a scaled desktop canvas. */
.focus-dot-field{display:grid;grid-template-columns:repeat(var(--dot-columns),minmax(0,1fr));gap:clamp(5px,1.6vw,12px);width:min(100%,360px);padding:14px;border-radius:16px;background:#e8f7fc;box-sizing:border-box;margin:8px auto}.focus-dot-field i{display:block;width:clamp(8px,2.3vw,16px);aspect-ratio:1;border-radius:50%;background:#1679c4;justify-self:center;align-self:center}.learning-focus .division-groups{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:100%}.learning-focus .division-group{display:flex;flex-wrap:wrap;gap:4px;max-width:82px;box-sizing:border-box}.learning-focus .division-group i{flex:none}.learning-focus #app,.learning-focus .trainer,.learning-focus .task,.learning-focus .hint,.learning-focus .family-form{box-sizing:border-box;min-width:0}.learning-focus .family-number{box-sizing:border-box;display:grid;place-items:center;padding:8px}.learning-focus .family-number.product{min-width:64px}.learning-focus .family-visual{width:min(100%,240px);gap:22px}.learning-focus .family-equations{min-width:0}.learning-focus .family-equations p{overflow-wrap:anywhere}.learning-focus .focus-family-choices button{white-space:normal;overflow-wrap:anywhere}.learning-focus .focus-help-equation{overflow-wrap:anywhere}.learning-focus .focus-dots{flex-wrap:wrap;justify-content:center}.learning-focus .focus-dot-group{box-sizing:border-box;flex-shrink:0}.learning-focus .answer input{max-width:100%;box-sizing:border-box}.learning-focus .hint ol{padding-left:22px}.learning-focus .focus-help-buttons [hidden]{display:none!important}
@media(max-width:600px){.learning-focus #app{width:100%;max-width:840px;padding:12px 12px 28px;min-height:100dvh}.learning-focus .focus-progress{margin:10px 0 16px;gap:10px}.learning-focus .task{padding:20px 14px}.learning-focus .equation{margin:16px 0 24px;font-size:clamp(36px,10vw,52px);white-space:normal}.learning-focus .focus-help-buttons{margin:20px 0 8px}.learning-focus .focus-help-buttons button{min-height:48px;width:100%;max-width:300px}.learning-focus .focus-help-buttons[data-unlocked="1"] [data-focus-stage="2"],.learning-focus .focus-help-buttons[data-unlocked="1"] [data-focus-stage="3"],.learning-focus .focus-help-buttons[data-unlocked="2"] [data-focus-stage="1"],.learning-focus .focus-help-buttons[data-unlocked="2"] [data-focus-stage="3"],.learning-focus .focus-help-buttons[data-unlocked="3"] [data-focus-stage="1"],.learning-focus .focus-help-buttons[data-unlocked="3"] [data-focus-stage="2"]{display:none}.learning-focus .focus-help-buttons .text-link{background:#edf5fc;border:1px solid #ccdfef;border-radius:12px;font-size:12px}.learning-focus .focus-groups{margin:12px 0;gap:6px}.learning-focus .hint{padding:14px;line-height:1.6}.learning-focus .family-question{font-size:clamp(24px,6vw,34px);margin:12px 0 18px}.learning-focus .family-equations{grid-template-columns:1fr}.learning-focus .family-visual{margin:10px auto;min-height:124px}.learning-focus .focus-family-choices{margin:14px 0;gap:10px}.learning-focus .focus-family-choices button{min-height:58px}.learning-focus .answer>.primary{min-height:48px;margin-top:0}.learning-focus .focus-heading img{width:105px}.learning-focus .focus-heading>span{line-height:1.5}.learning-focus .feedback{margin:14px 0}.learning-focus .focus-answer-choices{gap:10px}.learning-focus .focus-answer-choice{min-height:66px}.learning-focus .family-form input{width:100%;min-width:0}.learning-focus .focus-dot-field{gap:5px;padding:10px}}
@media(max-width:359px){.learning-focus .focus-answer-choices{grid-template-columns:1fr}.learning-focus .focus-answer-choice{min-height:54px;padding:8px;font-size:27px}.learning-focus .task{padding:18px 12px}.learning-focus .equation{font-size:36px}.learning-focus .focus-progress{font-size:11px}.learning-focus .focus-dots{gap:6px}.learning-focus .family-equations>div{padding:14px}.learning-focus .family-equations p{font-size:18px}}
@media(min-width:601px) and (max-width:1024px){.learning-focus #app{width:100%;max-width:800px;padding:22px}.learning-focus .task{padding:30px 24px}.learning-focus .focus-dot-field{width:min(100%,390px)}}
@media(max-height:500px) and (orientation:landscape){.learning-focus .focus-progress{margin:8px 0}.learning-focus .task{padding:16px}.learning-focus .equation{margin:10px 0 18px}.learning-focus .focus-help-buttons{margin-top:16px}}
.math-array-label,.math-array-key{text-align:center;font-size:14px;font-weight:700}.math-array .math-extra{background:#7855bc;box-shadow:0 0 0 2px #cbbcea}.math-array.math-split{background:linear-gradient(#e7f6fc,#f5f0fb)}.math-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:12px;max-width:440px;margin:16px auto}.math-group{border:1px solid #a5cce5;border-radius:12px;background:#eef8fe;padding:10px;box-sizing:border-box}.math-group>span{font-size:10px;display:block;margin-bottom:8px;color:#355779}.math-group>div{display:grid;grid-template-columns:repeat(var(--dot-columns),minmax(0,1fr));gap:5px}.math-group i{width:8px;aspect-ratio:1;border-radius:50%;background:#1683c7;justify-self:center}.math-inverse .math-group{border-color:#c7b5e8;background:#f2edfa}.math-inverse .math-group i{background:#7558ba}.math-strategy-steps{border-left:3px solid #347ed0;padding-left:16px}.math-strategy-steps p{font-size:18px;line-height:1.5}.math-alternative{margin:16px 0;border-top:1px solid #d3e4ef;padding-top:12px}.math-alternative summary{cursor:pointer;font-size:12px;font-weight:700;min-height:44px;display:flex;align-items:center}.math-swap .secondary{min-height:44px}.math-empty{background:#f2f6fc;padding:20px;border-radius:14px;text-align:center}.family-triangle-lines{position:absolute;inset:0;width:100%;height:100%;color:#58abc9;z-index:0;pointer-events:none}.family-visual:before{display:none}.learning-focus .family-visual{position:relative;padding:0 10px 6px}.math-inverse>p,.math-neighbor>p{line-height:1.6}.math-array-visual{min-width:0}@media(max-width:600px){.math-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.math-strategy-steps p{font-size:16px}.math-array-label,.math-array-key{font-size:12px}.math-group i{width:9px}.math-swap .secondary{width:100%;min-height:48px}}@media(prefers-reduced-motion:reduce){.math-array i{transition:none!important}}
.family-solved{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0}.family-solved p{font-size:12px;font-weight:600;padding:8px 10px;background:#edf7fc;border-radius:10px;margin:0}.family-solved p:nth-child(n+3){background:#f3eefb}@media(max-width:600px){.family-solved{flex-direction:column;align-items:stretch}.family-solved p{text-align:center}}
