/* Route Explorer and consultation plan: progressive enhancement, visible without JS. */
.route-section{background:radial-gradient(ellipse at 85% 20%,#d0e7cf 0,transparent 50%),linear-gradient(135deg,#f7f6eb,#e6eee5);position:relative;isolation:isolate}
.route-section:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.27;background-image:linear-gradient(#7fa19a23 1px,transparent 1px),linear-gradient(90deg,#7fa19a23 1px,transparent 1px);background-size:40px 40px}
.route-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}.route-intro .section-lead{font-size:16px;line-height:2.1;max-width:370px}.route-console{background:linear-gradient(145deg,#194b54,#102f3c 75%);border:1px solid #497570;border-radius:12px 12px 38px 12px;color:#f5f8ed;padding:32px 36px;box-shadow:0 14px 0 #c9d8c6,0 25px 60px #123c481c;position:relative;overflow:hidden}.route-console:after{content:"＋";position:absolute;right:22px;top:65%;font:100px/1 Arial;color:#ffffff04;pointer-events:none}.route-console-head{display:flex;justify-content:space-between;gap:15px;font:11px/1.5 Arial,sans-serif;letter-spacing:2px;color:#bdd6cc;border-bottom:1px solid #9dbcb838;padding-bottom:17px;margin-bottom:26px}.route-console-dot{display:flex;align-items:center;gap:8px;letter-spacing:1px;font-family:inherit}.route-console-dot:before{content:"";width:7px;height:7px;background:#dbfc96;border-radius:50%;box-shadow:0 0 12px #d5fa9d66}.route-prompt{font-size:16px;font-weight:700;margin-bottom:15px}.route-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.route-choices button{color:#e0eae2;text-align:left;background:linear-gradient(135deg,#ffffff10,#ffffff04);border:1px solid #789d954f;border-radius:7px 7px 17px 7px;padding:20px;font:inherit;font-size:15px;font-weight:700;line-height:1.7;min-height:115px;box-shadow:0 4px 0 #08232d66;transition:background .25s,border-color .25s,box-shadow .25s,transform .2s}.route-choices button>span{font:11px/1 Arial,sans-serif;color:#a6c8ba;display:block;margin-bottom:12px;letter-spacing:2px}.route-choices button[aria-pressed=true]{background:linear-gradient(120deg,#e5ffa5,#cae785);border-color:#e6ffa6;color:#143b43;box-shadow:0 4px 0 #79904d,0 0 32px #c1eb6a15}.route-choices button[aria-pressed=true]>span{color:#496448}.route-track{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:25px;margin:40px 0 30px;padding:0;position:relative}.route-track:before,.route-track:after{content:"";position:absolute;left:30px;right:auto;top:29px;height:2px;width:calc(66.666% + 16px);background:#87aea33b}.route-track:after{background:linear-gradient(90deg,#dfff8b,#91d7c5);transform-origin:left;transform:scaleX(var(--route-scale,0));width:calc(66.666% + 16px);right:auto;transition:transform .6s ease;box-shadow:0 0 12px #c1ee9766}.route-track li{position:relative;z-index:1}.route-node{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;border:1px solid #99b8b254;background:#1b414b;color:#adc3bb;font:600 14px Arial,sans-serif;position:relative;transition:background .35s,box-shadow .35s,color .35s}.route-track .is-lit .route-node{color:#153b43;background:linear-gradient(145deg,#e8ffad,#bce181);border-color:#dfff8b;box-shadow:0 0 0 7px #dfff8b0b,0 0 24px #b6e08c20}.route-track .is-current .route-node:after{content:"";position:absolute;inset:-8px;border:1px solid #dfff8b5c;border-radius:50%;animation:route-node-arrive .65s ease-out both}.route-step-type{font:10px Arial,sans-serif;letter-spacing:1.2px;color:#afc9bc;margin:22px 0 10px}.route-track h3{font-size:20px;line-height:1.6;margin:0 0 10px;color:#eef7e7}.route-track li:not(.is-lit) h3{color:#aec8bf}.route-track li div>p:last-child{font-size:14px;line-height:1.9;color:#bbd0c9;margin:0;max-width:265px}.route-track .is-current h3{color:#e4ff9e}.route-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #9dbcb830;padding-top:25px}.route-bottom>p{font-size:15px;line-height:1.9;max-width:530px;color:#eef7e5}.route-next{flex-shrink:0;font-size:14px;padding:18px 23px}.route-status{font-size:12px;line-height:1.8;color:#c0d4ca;margin:20px 0 0;min-height:22px}.route-links{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:25px;padding-top:20px;border-top:1px solid #9dbcb830}.route-links a{display:inline-flex;font-size:13px;line-height:1.8;color:#e4f2d4;padding:5px 0;border-bottom:1px solid #abc4ab70}.route-disclaimer{font-size:12px;line-height:1.9;color:#536b61;margin:30px 0 0}.route-complete .route-console{border-color:#8bb881}.route-complete .route-track .is-lit .route-node{animation:route-complete .7s ease-out both}
.grade-choice{padding:0 0 21px;margin-bottom:20px;border-bottom:1px solid #aec8bc30}.grade-choice>p:first-child{font-size:14px;font-weight:700;line-height:1.8;margin:0 0 13px}.grade-choice>p>span{font-size:11px;display:block;font-weight:400;color:#c1d5c7}.grade-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.grade-buttons button{border:1px solid #7f9f8e6e;background:linear-gradient(145deg,#ffffff12,#ffffff03);color:#e2eddb;padding:12px 5px;border-radius:5px;font:inherit;font-size:12px;line-height:1.5;box-shadow:0 3px 0 #09222d55;min-height:44px}.grade-buttons button[aria-pressed=true]{background:linear-gradient(135deg,#dff6ae,#bace90);color:#193f40;border-color:#cee899}.grade-choice .grade-note{font-size:11px;line-height:1.8;color:#bed2c5;margin:10px 0 0}
.strategy-card{margin-top:18px;padding:24px;background:radial-gradient(ellipse at 0 0,#e2efa522,transparent 60%),linear-gradient(150deg,#f8f9ee,#e9efdf);color:#143b43;border:1px solid #d5e4b9;border-radius:8px 8px 24px 8px;position:relative;overflow:hidden;box-shadow:0 6px 0 #728b5e40}.strategy-top{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.strategy-eyebrow{font:9px/1.5 Arial,sans-serif;letter-spacing:1.6px;color:#54776a}.strategy-grade{font-size:10px;padding:4px 9px;border:1px solid #b7cbaa;border-radius:3px;color:#355a4e}.strategy-constellation{display:flex;align-items:center;justify-content:space-between;position:relative;margin:23px 4px 19px}.strategy-constellation:before{content:"";position:absolute;left:7%;right:7%;height:1px;background:#b6caaa;top:50%}.strategy-constellation>span{position:relative;display:grid;place-items:center;width:32px;height:32px;background:#e6ecdf;border:1px solid #b0c9aa;border-radius:50%;color:#6e8872;font:10px Arial,sans-serif;z-index:1}.strategy-constellation>span.is-lit{background:#234d49;color:#e2ffac;border-color:#234d49;box-shadow:0 0 0 5px #b7d88728}.strategy-complete .strategy-constellation>span.is-lit{animation:constellation-connect .65s ease-out both;animation-delay:calc(var(--point-index) * 80ms)}.strategy-card .strategy-title{font-size:21px;line-height:1.6;letter-spacing:-.5px;margin:0 0 15px}.strategy-card .strategy-tags{display:flex;gap:6px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 20px}.strategy-card .strategy-tags li{font-size:11px;line-height:1.6;color:#446150;background:#dce8ce;border:1px solid #c8d9b4;padding:5px 8px;border-radius:3px}.strategy-priority{border-top:1px solid #c9d9b9;padding-top:17px}.strategy-step-label{display:block;font-size:11px;font-weight:700;color:#507248;margin-bottom:8px}.strategy-priority h5{font-size:18px;line-height:1.7;margin:0 0 9px}.strategy-card .strategy-priority p{font-size:13px;line-height:1.9;color:#486155;margin:0}.strategy-secondary{margin-top:17px;padding-top:15px;border-top:1px dashed #c5d5b6}.strategy-secondary>strong{font-size:11px;color:#476749}.strategy-secondary ul{padding-left:18px;margin:8px 0 0}.strategy-card .strategy-secondary li{font-size:12px;line-height:1.9;color:#486155}.strategy-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:22px}.strategy-learn{display:flex;justify-content:space-between;padding:12px 0;font-size:12px;font-weight:700;border-bottom:1px solid #8ba77b;line-height:1.7}.strategy-copy{font:inherit;font-size:13px;font-weight:700;border:1px solid #346256;background:linear-gradient(135deg,#285a52,#143e45);color:#f0f9d9;border-radius:5px 5px 12px 5px;box-shadow:0 4px 0 #092d32;padding:15px;min-height:48px}.strategy-card .memo-status{font-size:11px;line-height:1.9;color:#536e5d;margin:14px 0 0}.memo-fallback{box-sizing:border-box;width:100%;padding:12px;margin-top:12px;font:inherit;font-size:13px;line-height:1.7;background:#fffef4;border:1px solid #8aab7a;border-radius:4px;color:#123c48}.strategy-card .strategy-note{font-size:10px;color:#57705a;border-top:1px solid #c7d5b7;padding-top:12px;margin:14px 0 0;line-height:1.9}
/* Native controls keep semantics. Existing layout transforms are composed with translate. */
a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:not(.btn):not(.mobile-contact).is-pressed,summary.is-pressed{translate:0 2px;filter:brightness(.91)}.check-card.is-pressed{box-shadow:inset 0 3px 6px #123c4830;translate:0 2px}.strategy-copy:active,.route-choices button:active,.grade-buttons button:active{translate:0 3px;box-shadow:inset 0 2px 5px #082e3725}.route-choices button:focus-visible,.grade-buttons button:focus-visible,.strategy-copy:focus-visible,.strategy-learn:focus-visible,.route-links a:focus-visible,.route-next:focus-visible{outline:3px solid #ffb679;outline-offset:5px}.btn{animation:none}.control-arrived{animation:control-arrive .7s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--arrival-delay,0ms)}.route-complete [data-route-note]{color:#e5ffa5}
@keyframes control-arrive{from{opacity:.55;translate:0 12px;filter:brightness(1.15)}to{opacity:1;translate:0 0;filter:brightness(1)}}@keyframes route-node-arrive{from{scale:.75;opacity:0}to{scale:1;opacity:1}}@keyframes route-complete{0%{box-shadow:0 0 0 0 #dfff8b55}100%{box-shadow:0 0 0 12px #dfff8b00}}@keyframes constellation-connect{0%{scale:.8;box-shadow:0 0 0 0 #78a85588}65%{scale:1.14;box-shadow:0 0 0 9px #78a85500}100%{scale:1;box-shadow:0 0 0 5px #b7d88728}}
@media(max-width:950px){.route-intro{align-items:flex-start}.route-console{padding:27px}.route-choices{gap:10px}.route-choices button{font-size:13px;padding:16px}.route-track{gap:18px}.route-track h3{font-size:17px}.route-bottom{align-items:flex-start}.route-bottom>p{font-size:14px}.route-next{font-size:12px;padding:15px}.strategy-card{padding:20px}.strategy-card .strategy-title{font-size:20px}}
@media(max-width:640px){.route-intro{display:block;margin-bottom:27px}.route-intro .section-lead{font-size:15px;line-height:2;margin-top:20px}.route-intro .section-lead br{display:none}.route-console{padding:23px 19px;border-radius:8px 8px 25px 8px;box-shadow:0 8px 0 #c9d8c6,0 18px 35px #123c4817}.route-console-head{font-size:8px;letter-spacing:1.4px;gap:8px;margin-bottom:20px}.route-console-dot{font-size:9px;letter-spacing:0}.route-console-dot:before{width:5px;height:5px}.route-prompt{font-size:15px}.route-choices{grid-template-columns:1fr;gap:9px}.route-choices button{display:flex;align-items:center;gap:14px;font-size:14px;padding:14px 15px;min-height:68px;line-height:1.7}.route-choices button>span{margin:0;font-size:10px;min-width:22px}.route-choices button br{display:none}.route-track{grid-template-columns:1fr;gap:0;margin-top:28px;margin-bottom:22px}.route-track:before,.route-track:after{left:23px;top:24px;right:auto;width:2px;height:calc(100% - 99px)}.route-track:after{transform:scaleY(var(--route-scale,0));transform-origin:top;width:2px}.route-track li{display:grid;grid-template-columns:48px 1fr;gap:17px;padding-bottom:25px;min-height:128px}.route-track li:last-child{padding-bottom:0;min-height:0}.route-node{width:48px;height:48px;font-size:12px}.route-step-type{font-size:9px;letter-spacing:1px;margin:1px 0 8px}.route-track h3{font-size:18px;margin:0 0 6px}.route-track li div>p:last-child{font-size:13px;line-height:1.8;max-width:none}.route-bottom{flex-direction:column;gap:19px;padding-top:20px}.route-bottom>p{font-size:14px;line-height:1.9}.route-next{width:100%;justify-content:center;min-height:52px;font-size:13px}.route-status{font-size:11px;min-height:39px;margin-top:18px}.route-links{gap:15px;margin-top:18px;padding-top:18px}.route-links a{font-size:12px}.route-disclaimer{font-size:11px;margin-top:22px;line-height:1.9}.grade-choice{margin-bottom:17px}.grade-choice>p:first-child{font-size:13px}.grade-buttons{gap:5px}.grade-buttons button{font-size:11px;min-height:44px;padding:11px 3px}.grade-choice .grade-note{font-size:11px}.strategy-card{padding:20px 16px;margin-top:16px}.strategy-top{gap:8px}.strategy-eyebrow{font-size:8px;letter-spacing:1.3px}.strategy-grade{font-size:10px}.strategy-card .strategy-title{font-size:19px}.strategy-card .strategy-tags li{font-size:11px}.strategy-priority h5{font-size:17px}.strategy-card .strategy-priority p{font-size:13px}.strategy-card .strategy-secondary li{font-size:12px}.strategy-card .memo-status{font-size:11px}.strategy-card .strategy-note{font-size:11px}.strategy-learn{font-size:12px}.strategy-copy{font-size:13px}.quest-result #check-message{font-size:14px;line-height:1.8}.check-card .check-copy strong{font-size:14px;line-height:1.75}.check-card .check-copy small{font-size:12px;line-height:1.8;margin-top:4px}.check-card{min-height:103px;padding:14px 12px}.check-card .check-number{font-size:10px}.check-card .check-box{width:25px;height:25px;flex-shrink:0}.quest-board .quest-actions .btn{font-size:12px;line-height:1.8;min-height:52px}.quest-board .reset-button{font-size:12px;min-height:44px}.quest-result{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.control-arrived,.route-complete .route-track .is-lit .route-node,.strategy-complete .strategy-constellation>span.is-lit,.route-track .is-current .route-node:after{animation:none!important}.route-track:after,.route-node{transition:none}a:not(.btn):not(.mobile-contact).is-pressed,summary.is-pressed,.check-card.is-pressed,.strategy-copy:active,.route-choices button:active,.grade-buttons button:active{translate:none}.route-choices button,.grade-buttons button{transform:none!important}}

/* Readable consultation copy and touch controls across screen sizes. */
.strategy-card .strategy-priority p,.strategy-card .strategy-secondary li{font-size:14px;line-height:1.95}
.strategy-card .memo-status,.strategy-card .strategy-note,.grade-choice .grade-note,.grade-choice>p>span,.route-disclaimer,.route-status{font-size:12px;line-height:1.9}
.strategy-step-label,.strategy-secondary>strong,.strategy-grade,.strategy-card .strategy-tags li{font-size:12px}
.strategy-copy,.strategy-learn,.route-next,.route-links a,.grade-buttons button{font-size:14px}
.memo-fallback{font-size:14px}.route-track li div>p:last-child{font-size:14px}
@media(max-width:640px){.grade-choice>p:first-child{font-size:14px}.grade-buttons button{font-size:12px}.strategy-card .strategy-priority p,.strategy-card .strategy-secondary li,.route-track li div>p:last-child{font-size:14px}.strategy-card .memo-status,.strategy-card .strategy-note,.grade-choice .grade-note,.grade-choice>p>span,.route-disclaimer,.route-status,.strategy-step-label,.strategy-secondary>strong,.strategy-grade,.strategy-card .strategy-tags li{font-size:12px}.route-status{min-height:46px}.strategy-copy,.strategy-learn,.route-next,.route-links a{font-size:14px}.check-card .check-copy small{font-size:13px}.route-console-head{font-size:10px;letter-spacing:.8px}.route-console-dot{font-size:11px}.route-step-type{font-size:10px}.strategy-eyebrow{font-size:10px;letter-spacing:1px}}

/* V3 — a short, answer-dependent learning experience. */
.route-console-head{font-family:inherit;font-size:12px;letter-spacing:.04em}.route-choices button{min-height:76px;padding:15px 18px}.route-choices button>span{margin-bottom:6px}.route-console:after{display:none}.challenge-steps{display:flex;gap:8px;list-style:none;padding:0;margin:25px 0 28px}.challenge-steps li{flex:1;padding:9px 10px;border-bottom:2px solid #6b8d8660;color:#a9c6ba;font-size:12px;line-height:1.6}.challenge-steps li.is-lit{border-color:#dfff8b;color:#e9ffbc}.challenge-steps li.is-current{background:linear-gradient(90deg,#dfff8b10,transparent)}.challenge-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:25px;align-items:start}.challenge-question{min-width:0}.challenge-kicker{font-size:12px;color:#b7d4c7;margin:0 0 10px}.challenge-question h3{font-size:clamp(24px,2.7vw,34px);line-height:1.6;color:#f7fbea;margin:0 0 12px;letter-spacing:.02em}.challenge-question>p:last-of-type{color:#c6ddcf;font-size:15px;line-height:1.9;max-width:660px;margin:0 0 22px}.challenge-answers{display:flex;flex-wrap:wrap;gap:12px}.challenge-answer{font:inherit;font-size:17px;font-weight:700;line-height:1.65;min-height:58px;min-width:110px;padding:13px 22px;border:1px solid #9fbf9c;border-radius:6px 6px 15px 6px;background:linear-gradient(145deg,#fffef7,#dcebc9);color:#173f43;box-shadow:0 5px 0 #0a2028;transition:translate .15s,box-shadow .15s,background .2s}.challenge-answer[aria-pressed=true]{background:linear-gradient(135deg,#ecffac,#bad981);box-shadow:0 3px 0 #0a2028,inset 0 0 0 2px #335f48;translate:0 2px}.challenge-answer:not(:disabled):active{translate:0 5px;box-shadow:inset 0 3px 6px #204c3a30}.challenge-answer:disabled{cursor:default;opacity:.6}.challenge-answer:disabled[aria-pressed=true]{opacity:1}.challenge-answer:focus-visible,.priority-choice:focus-visible,.strategy-fees:focus-visible,.strategy-secondary summary:focus-visible{outline:3px solid #ffb679;outline-offset:5px}.challenge-help{padding:24px;border:1px solid #98bb9247;border-radius:6px 20px 6px 6px;background:radial-gradient(at 100% 0,#e5ffb112,transparent 60%),linear-gradient(140deg,#ffffff0b,#031e2933);animation:challenge-reveal .45s ease-out backwards}.challenge-feedback{font-size:17px;line-height:1.9;font-weight:700;color:#e8ffb8;margin:0 0 20px}.challenge-explanation{font-size:15px;line-height:2;color:#d9e9d7;margin:20px 0 0;max-width:760px}.challenge-visual{max-width:720px}.fraction-line{display:grid;grid-template-columns:125px minmax(0,1fr);gap:18px;align-items:center;margin:10px 0;font-size:14px;color:#f0f8e5}.fraction-blocks{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;border:1px solid #8dad9366;padding:5px;border-radius:5px}.fraction-blocks span{height:28px;border-radius:2px;background:#bad8d015}.fraction-blocks .fraction-a{background:#a5dfda}.fraction-blocks .fraction-b{background:#e8c58e}.fraction-blocks .fraction-sum{background:#dfff8b}.fraction-line:last-child .fraction-blocks{border-color:#dbf9a2}.equation-dots{display:grid;grid-template-columns:repeat(9,1fr);gap:9px;max-width:490px;padding:14px 0}.equation-dots span{aspect-ratio:1;border-radius:50%;background:#dfff8b;box-shadow:0 0 20px #ddff8b20}.equation-dots .equation-away{background:#ffffff0a;border:2px dashed #9fb9ad;position:relative}.equation-away:after{content:'';position:absolute;left:15%;right:15%;height:2px;top:50%;background:#bbd5c9;rotate:-35deg}.visual-equation>p,.schedule-total{font-size:14px;line-height:1.8;color:#e5f3d8;margin:8px 0}.schedule-bars{display:grid;gap:10px}.schedule-day{display:grid;grid-template-columns:45px minmax(0,1fr);align-items:center;gap:15px;font-size:14px}.schedule-day>strong{font-weight:400;color:#d7ebd7}.schedule-day>span{display:block;width:var(--minutes);min-width:65px;padding:8px 12px;background:linear-gradient(90deg,#c4e99b,#a8dcd0);border-radius:3px;color:#214a47;font-weight:700;box-sizing:border-box}.schedule-day:nth-child(2)>span{background:linear-gradient(90deg,#f0dfa9,#dfff8b)}.schedule-total{margin-top:15px;font-weight:700;color:#e8ffac}.challenge-finish{display:flex;align-items:center;gap:22px;background:linear-gradient(120deg,#e3ffa31c,#c5eab60b);border:1px solid #b6da8f7a;border-radius:7px 22px 7px 7px;margin:26px 0 0;padding:25px;animation:challenge-reveal .6s ease-out backwards}.challenge-seal{display:grid;place-items:center;width:60px;height:60px;flex-shrink:0;background:linear-gradient(135deg,#edffb1,#b2d789);color:#254b45;border-radius:50%;font-size:28px;box-shadow:0 0 0 8px #dfff8b0a,0 0 35px #dfff8b15}.challenge-finish h3{font-size:23px;line-height:1.6;color:#eaffbc;margin:0 0 8px}.challenge-finish p{font-size:15px;line-height:1.9;color:#deedce;margin:0}.route-bottom{margin-top:26px;min-height:57px}.route-bottom .route-status{margin:0;max-width:520px}.route-next[hidden],.challenge-help[hidden],.challenge-finish[hidden],.challenge-visual[hidden]{display:none!important}.challenge-nojs{font-size:15px;line-height:2;color:#e0edcf;padding:20px 0}.challenge-question h3:focus,.challenge-finish:focus{outline:2px solid #c5ee98;outline-offset:8px}.route-section[data-challenge-phase=done] .challenge-steps li{border-color:#e5ffac}.route-section[data-challenge-phase=done] .challenge-finish .challenge-seal{animation:learning-complete .8s ease-out backwards}
.strategy-priority-choices{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.priority-choice{font:inherit;font-size:13px;line-height:1.65;font-weight:700;color:#35574b;border:1px solid #b0c5a3;border-radius:5px 5px 12px 5px;background:linear-gradient(145deg,#f8f9ef,#e3ebd4);padding:10px 12px;min-height:44px;box-shadow:0 3px 0 #adbea03b;transition:translate .15s,box-shadow .15s}.priority-choice[aria-pressed=true]{background:linear-gradient(135deg,#2f6255,#1c4445);color:#e8ffc4;border-color:#2b5b50}.priority-choice[aria-pressed=true]:before{content:'✓ ';color:#dfff8b}.priority-choice:active{translate:0 3px;box-shadow:inset 0 2px 4px #173d3a24}.strategy-fees{display:flex;justify-content:space-between;align-items:center;font-size:14px;line-height:1.8;font-weight:700;padding:14px;border:1px solid #8ca77b;border-radius:5px;background:linear-gradient(130deg,#edf7d7,#d5e7ba);color:#214a43;box-shadow:0 3px 0 #98b07860}.strategy-secondary{margin-top:23px}.strategy-secondary>summary{cursor:pointer;font-size:13px;line-height:1.8;color:#365b47;min-height:44px;padding:10px 0;box-sizing:border-box;font-weight:700}.strategy-secondary .strategy-tags{margin:12px 0}.strategy-memo-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.9;margin:12px 0 0;padding:15px;background:#fffef4aa;border:1px solid #c8d8b7;border-radius:4px;color:#44614e}.strategy-actions .strategy-learn{font-weight:400}.strategy-eyebrow{font-family:inherit;font-size:12px;letter-spacing:.08em}.strategy-card .strategy-title{font-size:22px}.strategy-secondary summary::marker{color:#4c785a}.control-arrived{animation-fill-mode:backwards}.strategy-complete .strategy-constellation>span.is-lit{animation:none}.strategy-complete.is-celebrating .strategy-constellation>span.is-lit{animation:constellation-connect .65s ease-out backwards;animation-delay:calc(var(--point-index) * 80ms)}
@keyframes challenge-reveal{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}@keyframes learning-complete{0%{scale:.75;box-shadow:0 0 0 0 #dfff8b66}65%{scale:1.1;box-shadow:0 0 0 18px #dfff8b00}100%{scale:1;box-shadow:0 0 0 8px #dfff8b0a}}
@media(max-width:640px){.route-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.route-choices button{display:block;min-height:82px;padding:12px 7px;font-size:12px;line-height:1.7;text-align:center}.route-choices button>span{font-size:11px;margin-bottom:5px}.route-console-head{flex-wrap:wrap;font-size:11px;letter-spacing:0}.challenge-steps{gap:5px;margin:20px 0}.challenge-steps li{font-size:11px;padding:8px 3px;text-align:center}.challenge-question h3{font-size:25px;line-height:1.6}.challenge-question>p:last-of-type{font-size:14px}.challenge-answers{gap:9px}.challenge-answer{font-size:15px;min-width:75px;min-height:53px;padding:12px 15px;flex:1}.challenge-help{padding:18px 14px}.challenge-feedback{font-size:15px;margin-bottom:16px}.challenge-explanation{font-size:14px;line-height:1.9;margin-top:16px}.fraction-line{grid-template-columns:1fr;gap:7px;font-size:13px;margin:16px 0}.fraction-blocks span{height:25px}.equation-dots{gap:5px}.visual-equation>p,.schedule-total{font-size:13px}.schedule-day{font-size:13px;gap:10px;grid-template-columns:35px minmax(0,1fr)}.challenge-finish{padding:20px 15px;gap:15px;align-items:flex-start}.challenge-seal{width:41px;height:41px;font-size:21px}.challenge-finish h3{font-size:19px}.challenge-finish p{font-size:14px}.route-bottom .route-status{font-size:12px;min-height:0}.strategy-card .strategy-title{font-size:20px}.priority-choice{font-size:12px;padding:10px}.strategy-memo-preview{font-size:13px}.strategy-fees{font-size:14px}.route-links a{min-height:44px;align-items:center;padding:5px 0}.route-links{gap:6px}}
@media(prefers-reduced-motion:reduce){.challenge-help,.challenge-finish,.route-section[data-challenge-phase=done] .challenge-finish .challenge-seal,.strategy-complete.is-celebrating .strategy-constellation>span.is-lit{animation:none!important}.challenge-answer,.priority-choice{transition:none}.challenge-answer[aria-pressed=true],.challenge-answer:active,.priority-choice:active{translate:none}}
