@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Source+Code+Pro:wght@500;600&display=swap";:root{font-family:Manrope,system-ui,sans-serif;color:#172033;background:#f7f8fa;font-synthesis:none;--navy: #07366d;--navy-deep: #052a59;--blue: #1769d2;--green: #16864b;--green-dark: #08783a;--mint: #e8f5ec;--paper: #fffefb;--line: #dce2e7;--muted: #667085}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;background:#f7f8fa}.topbar{height:66px;padding:0 22px;background:linear-gradient(110deg,var(--navy-deep),#074a83);color:#fff;display:grid;grid-template-columns:310px 1fr 220px;align-items:center;position:sticky;top:0;z-index:20;box-shadow:0 2px 12px #052a5930}.brand{border:0;background:transparent;color:#fff;display:flex;gap:12px;align-items:center;text-align:left;padding:0}.brand strong{display:block;font-size:17px}.brand small{display:block;opacity:.72;font-size:11px;margin-top:2px}.excel-mark{width:35px;height:39px;background:#12834a;display:grid;place-items:center;font-size:21px;font-weight:800;box-shadow:inset -7px 0 #0b6539;border-radius:2px}.main-nav{justify-self:center;align-self:stretch;display:flex;gap:30px}.main-nav button{color:#dfeafa;background:transparent;border:0;min-width:85px;display:flex;align-items:center;justify-content:center;gap:7px;position:relative;font-weight:600}.main-nav button:after{content:"";position:absolute;bottom:0;left:16px;right:16px;height:3px;background:#56c271;transform:scaleX(0);transition:.2s}.main-nav button:hover,.main-nav button.active{color:#fff}.main-nav button.active:after{transform:scaleX(1)}.student{justify-self:end;display:flex;align-items:center;gap:12px;font-size:14px}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#1ca653;font-weight:800}.lesson-strip{min-height:92px;background:#fff;border-bottom:1px solid var(--line);display:grid;align-items:center;grid-template-columns:265px 1fr 210px;gap:30px;padding:14px 34px;position:relative;z-index:10}.lesson-strip>div:first-child strong{color:var(--green);display:block;font-size:13px}.lesson-strip>div:first-child span{display:block;font-size:13px;line-height:1.45;margin-top:6px}.lesson-picker label{color:var(--green);display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.lesson-picker select{width:100%;margin-top:3px;padding:6px 28px 6px 8px;border:1px solid #c9d1d9;border-radius:5px;background:#f8fafb;color:#164675;font-size:12px;font-weight:700}.lesson-picker>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-steps{display:flex;justify-content:space-around;position:relative}.strip-steps:before{content:"";height:2px;background:#d2d7dc;position:absolute;top:13px;left:9%;right:9%}.strip-steps span{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:10px;color:#737b86;position:relative;z-index:1}.strip-steps i{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;border:1px solid #aeb5bc;background:#fff;font-style:normal}.strip-steps span.done i{border-color:var(--green);background:var(--green);color:#fff}.strip-steps span.done{color:var(--green-dark);font-weight:700}.progress-box{border-left:1px solid var(--line);padding-left:22px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;font-size:12px}.progress-box strong{font-size:18px}.progress-box div{grid-column:1 / -1;height:5px;background:#e3e6e9;border-radius:5px;overflow:hidden}.progress-box i{display:block;height:100%;background:var(--green);border-radius:inherit;transition:width .5s ease}.progress-reset-all{grid-column:1 / -1;border:1px solid #c6ced7;background:#fff;color:#42546a;border-radius:999px;padding:5px 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:800}.progress-reset-all:hover{border-color:#7e98b4;color:#174d83;background:#f6faff}.app-layout{display:grid;grid-template-columns:248px minmax(620px,1fr) 270px;max-width:1600px;margin:auto}.sidebar{background:#fff;border-right:1px solid var(--line);padding:27px 17px;min-height:calc(100vh - 158px);position:sticky;top:158px;height:calc(100vh - 158px)}.sidebar>p,.resources p{margin:0 10px 13px;color:#667080;font-weight:700;font-size:13px}.lesson-menu{display:grid;gap:5px}.lesson-menu button{border:0;background:transparent;color:#606977;display:flex;gap:12px;align-items:center;padding:12px;border-radius:7px;text-align:left;font-size:13px;position:relative}.lesson-menu button:hover{background:#f4f8f6}.lesson-menu button.active{background:#ebf5ee;color:var(--green-dark);font-weight:700}.lesson-menu button.active:before{content:"";width:4px;background:var(--green);position:absolute;left:-17px;top:0;bottom:0;border-radius:0 3px 3px 0}.resources{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.resources a{display:flex;align-items:center;gap:9px;padding:10px;font-size:12px;color:#465266}.resources a svg:first-child{color:var(--green)}.resources a svg:last-child{margin-left:auto}.resources a:hover{color:var(--blue)}.goal-note{position:absolute;bottom:25px;left:20px;right:20px;padding:15px;border:1px solid #bfd9c6;background:#f3fbf4;color:#316047;transform:rotate(-1deg);box-shadow:0 3px 8px #234b3020}.goal-note svg{color:var(--green)}.goal-note strong{display:block;margin:5px 0}.goal-note span{display:block;font-size:11px;line-height:1.55}.notebook{min-width:0;background-color:var(--paper);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,#dbe6ee 32px);padding:24px 42px 70px 75px;position:relative;box-shadow:inset 20px 0 22px -26px #29394f}.notebook:before{content:"";position:absolute;left:33px;top:0;bottom:0;width:10px;background:repeating-linear-gradient(to bottom,#29343d 0 5px,transparent 5px 22px);opacity:.75;border-radius:10px}.video-invite{background:#edf4ff;border:1px solid #cadcf4;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;border-radius:5px}.video-invite>div{display:flex;align-items:center;gap:11px;color:var(--navy)}.video-invite strong,.video-invite small{display:block}.video-invite small{color:#627089;margin-top:3px}.video-invite a{color:var(--blue);font-size:13px;font-weight:700;display:flex;gap:7px;align-items:center}.notebook-section{scroll-margin-top:180px;padding:8px 0 24px;border-bottom:2px dashed #aeb9c4;margin-bottom:16px}.notebook-section:last-child{border-bottom:0}.notebook-section h2{font-size:22px;color:#074290;margin:0 0 16px;font-weight:800;transform:rotate(-.3deg)}.notebook-section h2>span{display:inline-grid;place-items:center;width:34px;height:34px;border:3px solid #0751a8;border-radius:50%;margin-right:12px;font-family:Source Code Pro,monospace}.notebook-section p{font-size:14px;line-height:1.7;margin:9px 0;max-width:850px}mark{background:#d9f1d9;color:#175e2d;padding:2px 5px;border-radius:3px}.concept-lines{display:flex;gap:32px;flex-wrap:wrap;margin-top:12px}.concept-lines p{margin:0}.theory-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.theory-cards article{background:#f4f9ff;border:1px solid #c6d9ed;padding:13px;color:#314b65}.theory-cards strong,.theory-cards span{display:block}.theory-cards strong{color:#0a4388;margin-bottom:6px}.theory-cards span{font-size:12px;line-height:1.55}.theory-cards code,.deep-note code,.worked-example code{font-family:Source Code Pro;color:#125ba8;background:#e7f1ff;padding:1px 4px;border-radius:3px}.formula-pair{display:grid;grid-template-columns:1fr 1fr;gap:55px;text-align:center;padding:7px 8px 19px}.formula-pair h3{font-size:18px;margin:0 0 10px}.giant-formula{font-family:Source Code Pro,monospace;font-size:clamp(24px,2.5vw,38px);font-weight:600;white-space:nowrap}.formula-token{display:inline-block;padding:4px 8px;border:2px solid #2580df;background:#eaf3ff;color:#1456ae;border-radius:7px}.formula-token.green{border-color:#42a55a;background:#eaf7ec;color:#237338}.formula-token.purple{border-color:#8d65d4;background:#f1ebfb;color:#7146b5}.formula-legend{display:flex;justify-content:space-around;margin-top:9px;font-size:12px;font-style:italic}.formula-legend .blue{color:#1663bd}.formula-legend .green{color:#237338}.formula-legend .purple{color:#7146b5}.reference-callout{display:flex;gap:18px;align-items:center;background:#fff6cf;border-left:4px solid #f4c434;padding:10px 13px;font-size:12px}.reference-callout code{font-family:Source Code Pro;font-size:13px;color:#0d55ab}.reference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px}.reference-grid>div{border:1px solid #ced9e3;background:#f8fbfe;padding:12px}.reference-grid code{display:block;color:#0c56a2;font:700 15px Source Code Pro;margin-bottom:7px}.reference-grid span{display:block;color:#566170;font-size:12px;line-height:1.55}.worked-example,.deep-note{margin-top:14px;padding:13px 15px;background:#eef8f2;border-left:4px solid #31a35b;color:#285d3a}.worked-example strong,.deep-note strong{display:block;margin-bottom:7px;color:#176438}.worked-example p,.deep-note p{margin:0}.deep-note ol{margin:0;padding-left:19px;font-size:12px;line-height:1.8}.deep-note.compact{display:grid;gap:4px;font-size:12px}.practice-in-file>p{color:#5f6978}.sheet-wrap{background:#fff;border:1px solid #aab4bd;border-radius:8px;overflow:auto;box-shadow:0 4px 12px #40536a16;margin-top:12px}.formula-bar{height:35px;background:#f6f7f8;display:grid;grid-template-columns:45px 45px 1fr;align-items:center;border-bottom:1px solid #c9ced3;font-family:Source Code Pro;font-size:11px}.formula-bar>*{padding:0 10px}.formula-bar>span:first-child{font-style:italic;font-weight:700;font-size:15px;border-right:1px solid #d3d7da}.portfolio-grid{min-width:810px;display:grid;grid-template-columns:32px 78px 68px repeat(8,minmax(78px,1fr));font-size:10px}.portfolio-grid>div{min-height:31px}.corner,.col-letter,.row-number{background:#eff1f3;display:grid;place-items:center;color:#56606b;border-right:1px solid #c5cbd0;border-bottom:1px solid #c5cbd0}.cell{padding:7px 5px;border-right:1px solid #c9ced3;border-bottom:1px solid #c9ced3;overflow:hidden;white-space:nowrap}.header-cell{background:#107a3e;color:#fff;font-weight:700;text-align:center;white-space:normal;display:grid;place-items:center}.cell.number{text-align:right;font-variant-numeric:tabular-nums}.cell.symbol{font-weight:700}.calculated{background:#f7faf8}.cell.gain{color:#14753d;background:#f3fbf5}.cell.loss{color:#ae3b3b;background:#fff6f6}.input-cell{padding:0;outline:2px solid #2d7fe0;outline-offset:-2px;position:relative;z-index:1}.input-cell input{border:0;width:100%;height:100%;padding:6px;font-family:Source Code Pro;font-size:10px;outline:0;background:#edf5ff}.input-cell.correct{outline-color:#1a9b50}.input-cell.correct input{background:#eaf8ed}.input-cell.wrong{outline-color:#d84b4b}.input-cell.wrong input{background:#fff0f0}.sheet-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}button.primary,a.primary{border:0;border-radius:6px;background:#075ab3;color:#fff;padding:11px 18px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;box-shadow:0 3px 7px #075ab32c}button.primary:hover{background:#064b95}button.primary:disabled{opacity:.4;cursor:not-allowed}button.secondary{border:1px solid #b8c0c8;background:#fff;border-radius:6px;padding:10px 14px;display:flex;align-items:center;gap:7px;color:#526071}.feedback-banner{margin-top:13px;display:flex;align-items:center;gap:11px;border:1px solid #dfb4b4;background:#fff5f5;color:#8e3535;padding:11px;border-radius:6px}.feedback-banner.success{border-color:#79be8b;background:#f1faf3;color:#176c37}.feedback-banner strong,.feedback-banner span{display:block}.feedback-banner span{font-size:12px;margin-top:2px}.mini-lab>div{display:flex;align-items:center;gap:18px}.mini-lab code{font-family:Source Code Pro;font-size:20px;color:#1456ae;background:#eaf3ff;padding:10px 14px;border-radius:6px}.mini-lab strong{font-size:20px;color:var(--green-dark)}.recap-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recap-grid span{display:flex;align-items:center;gap:9px;background:#f1f8f3;padding:10px;color:#285d3a;font-size:13px}.recap-grid svg{background:var(--green);color:#fff;border-radius:50%;padding:2px}.hint-panel{background:#fff;border-left:1px solid var(--line);margin:10px 8px 0 0;align-self:start;position:sticky;top:168px;box-shadow:0 4px 16px #26394f18}.hint-title{padding:17px;display:flex;gap:9px;color:#17437c;align-items:center;border-bottom:1px solid var(--line)}.hint-title svg{color:#e0a400}.hint-tabs{display:flex;border-bottom:1px solid var(--line)}.hint-tabs span{flex:1;padding:12px;text-align:center;font-size:12px}.hint-tabs .active{color:var(--green-dark);border-bottom:2px solid var(--green);font-weight:700}.hint-body{padding:17px;font-size:12px;color:#4f5967}.hint-body ol{padding-left:18px;line-height:2}.progressive-hint{border-top:1px dashed #c8ced4;padding-top:15px;margin-top:14px}.progressive-hint small{color:#798391}.progressive-hint p{font-size:12px;line-height:1.6;color:#264f79;font-weight:600}.progressive-hint button{border:1px solid #7ca2c8;background:#fff;color:#15528f;padding:8px;width:100%;border-radius:5px;font-size:11px}.progressive-hint button:disabled{opacity:.55}.mode-page,.quiz-page,.challenge-page,.result-page{max-width:1220px;margin:auto;padding:42px 34px 80px}.mode-heading,.challenge-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.mode-heading>div:first-child{position:relative;padding-left:50px}.mode-number{position:absolute;left:0;top:-7px;font-family:Source Code Pro;color:#cad8e7;font-size:42px;font-weight:700}.mode-heading h1,.challenge-heading h1{margin:0;color:var(--navy);font-size:32px}.mode-heading p,.challenge-heading p{color:var(--muted);margin:7px 0 0;max-width:650px}.exercise-count{font-size:28px;color:var(--green);font-weight:800;text-align:right}.exercise-count small,.mission-score small{display:block;font-size:11px;color:var(--muted);font-weight:500}.practice-layout{display:grid;grid-template-columns:245px minmax(430px,1fr) 220px;gap:22px;align-items:start}.exercise-rail{background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px;display:grid;gap:2px}.exercise-rail button{border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:10px;text-align:left;border-radius:5px;font-size:12px;color:#5b6573}.exercise-rail button>span{flex:0 0 25px;width:25px;height:25px;display:grid;place-items:center;border:1px solid #b7c0c8;border-radius:50%}.exercise-rail button.active{color:#0b549b;background:#edf5fd;font-weight:700}.exercise-rail button.complete>span{color:#fff;background:var(--green);border-color:var(--green)}.exercise-stage{background-color:var(--paper);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,#e0eaf0 32px);border:1px solid #d4dadd;padding:35px 38px;min-height:500px;box-shadow:0 7px 20px #31465f17}.exercise-kicker{color:var(--green);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.exercise-stage h2{color:#0a4388;font-size:26px;margin:10px 0 7px}.exercise-stage>p{color:#566170;min-height:48px}.formula-entry{display:grid;grid-template-columns:50px 1fr;background:#fff;border:2px solid #5c91cb;min-height:58px;margin:28px 0 14px;box-shadow:3px 4px #c8daed}.formula-entry span{display:grid;place-items:center;border-right:1px solid #c9d4df;font-family:serif;font-style:italic;font-size:20px;color:#325f90}.formula-entry input{min-width:0;width:100%;border:0;outline:0;padding:12px 16px;font:600 18px Source Code Pro,monospace;color:#164c86}.entry-actions{display:flex;justify-content:space-between}.hint-button{border:0;background:transparent;color:#876c12;display:flex;gap:7px;align-items:center}.inline-hint{display:flex;align-items:center;gap:9px;margin-top:18px;padding:12px;background:#fff6d8;border-left:4px solid #e4b52c;color:#6f5915;font-size:13px}.answer-feedback{display:flex;align-items:center;gap:12px;margin-top:20px;padding:15px;border:1px solid #e1b6b6;background:#fff5f5;color:#903d3d}.answer-feedback.correct{border-color:#82c092;background:#f0faf2;color:#216f3b}.answer-feedback strong,.answer-feedback span{display:block}.answer-feedback span{font-size:12px;margin-top:3px}.exercise-nav{border-top:1px dashed #b9c0c7;display:flex;justify-content:space-between;margin-top:30px;padding-top:20px}.exercise-nav button{border:0;background:transparent;color:#31577f;display:flex;align-items:center;gap:5px}.exercise-nav button:disabled{opacity:.3}.reset-panel{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:15px}.reset-panel.compact-tools{justify-content:flex-start;margin-top:10px}.reset-panel.top-tool{justify-content:flex-end;margin:0 0 12px}.reset-panel button,.reset-action{border:1px solid #c6ced7;background:#fff;color:#42546a;border-radius:6px;padding:8px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:700}.reset-panel button:hover,.reset-action:hover{border-color:#7e98b4;color:#174d83;background:#f6faff}.reset-panel button.danger{border-color:#d8b8b8;color:#8e3f3f;background:#fff7f7}.micro-lesson{background:#edf4ff;border:1px solid #ccdbed;padding:20px;color:#345778}.micro-lesson h3{margin:8px 0;color:#12497f}.micro-lesson p{font-size:12px;line-height:1.6}.micro-lesson>div{display:flex;align-items:center;gap:8px;margin:9px 0}.micro-lesson .formula-token{font-size:18px;font-family:Source Code Pro}.micro-lesson .small{color:#687b8e;border-top:1px solid #cbd8e6;padding-top:12px;margin-top:17px}.quiz-page{max-width:850px}.quiz-progress{display:flex;gap:7px;margin-bottom:18px}.quiz-progress i{height:5px;background:#dce2e8;flex:1;border-radius:3px}.quiz-progress i.active{background:var(--green)}.quiz-card{background-color:var(--paper);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,#e0eaf0 32px);border:1px solid var(--line);padding:48px 58px;box-shadow:0 8px 25px #31465f18}.quiz-card>span{color:var(--green);font-weight:800;font-size:12px;text-transform:uppercase}.quiz-card h1{font-size:28px;line-height:1.35;color:var(--navy);min-height:76px}.quiz-options{display:grid;gap:10px}.quiz-options button{border:1px solid #cbd2d9;background:#fff;padding:13px;display:flex;align-items:center;gap:12px;text-align:left;color:#435064}.quiz-options button i{width:30px;height:30px;border:1px solid #aeb8c3;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700}.quiz-options button:hover{border-color:#6e9ac7}.quiz-options button.selected{border:2px solid #1971c8;background:#edf6ff;color:#124e89;font-weight:700}.quiz-options button.selected i{background:#1971c8;color:#fff;border-color:#1971c8}.quiz-actions{display:flex;justify-content:space-between;margin-top:28px}.quiz-actions>button:first-child{border:0;background:transparent;color:#5c6876}.result-page{text-align:center;max-width:800px}.result-medal{color:#d2a117}.result-page h1{color:var(--navy)}.big-score{color:var(--green);font-size:72px;font-weight:800}.big-score span{font-size:28px;color:#8090a0}.result-page>p{color:var(--muted)}.review-list{margin:30px 0;display:grid;gap:7px;text-align:left}.review-list>div{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff;border-left:4px solid #ca5252}.review-list>div.right{border-color:var(--green)}.review-list .right svg{color:var(--green)}.review-list .missed svg{color:#c04444}.review-list strong,.review-list small{display:block}.review-list small{color:var(--muted);margin-top:3px}.challenge-heading>div:first-child>span{color:#a7760a;font-weight:800;display:flex;align-items:center;gap:8px;margin-bottom:8px}.mission-score{text-align:right;font-size:24px;color:#728092}.mission-score strong{color:var(--green);font-size:46px}.challenge-sheet{background:var(--paper);border:1px solid #cdd4da;padding:26px;box-shadow:0 7px 22px #30455c17}.mobile-scroll-hint{display:none;margin:0 0 10px;color:#476987;font-size:12px;font-weight:700}.challenge-table{display:grid;grid-template-columns:36px 1.1fr .8fr 1fr 1.2fr 1.4fr 1.4fr;border-top:1px solid #aeb7bf;border-left:1px solid #aeb7bf}.challenge-table>div{min-height:52px;padding:10px;border-right:1px solid #aeb7bf;border-bottom:1px solid #aeb7bf;display:grid;align-items:center;font-size:13px}.challenge-table .coordinate,.challenge-table .row-coordinate{min-height:30px;padding:4px;place-items:center;background:#eef1f4;color:#596574;font:600 11px Source Code Pro,monospace}.challenge-table .row-coordinate{min-height:52px}.challenge-table .corner-coordinate{min-height:30px}.challenge-table .th{min-height:45px;background:#107a3e;color:#fff;font-weight:700;text-align:center}.challenge-input{padding:0!important}.challenge-input input{width:100%;height:100%;border:0;outline:2px solid #3983cf;outline-offset:-2px;background:#f0f7ff;padding:8px;font:600 12px Source Code Pro;color:#14528f}.challenge-input.correct input{outline-color:var(--green);background:#e9f8ed}.challenge-input.wrong input{outline-color:#d34c4c;background:#fff0f0}.total-label{grid-column:2 / 7;justify-content:end;font-weight:800;background:#f0f3f5}.total-input{grid-column:7}.challenge-footer{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.challenge-footer>div{display:flex;gap:9px;align-items:center;color:#63581c;font-size:12px}.challenge-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.challenge-result{margin-top:20px;background:#fff4e5;border:1px solid #e5bd7b;color:#865b18;padding:15px;display:flex;align-items:center;gap:12px}.challenge-result.success{background:#edf9f0;border-color:#7cbd8e;color:#1f7039}.challenge-result strong,.challenge-result span{display:block}.challenge-result span{font-size:12px;margin-top:3px}.challenge-result a{margin-left:auto;display:flex;gap:6px;align-items:center;font-weight:700;color:#075ab3}.reset-progress{position:fixed;right:14px;bottom:14px;border:1px solid #bac2ca;background:#fff;color:#5c6876;min-height:34px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:700;box-shadow:0 4px 12px #1720331f;z-index:30}.reset-progress:hover{color:#174d83;border-color:#7e98b4}.generic-learn-layout{grid-template-columns:248px minmax(620px,1fr);max-width:1380px}.generic-notebook{padding-right:70px}.generic-sidebar .goal-menu{gap:7px}.goal-menu>div{display:flex;align-items:center;gap:10px;padding:9px 11px;color:#586575;font-size:12px;border-bottom:1px dashed #d8dde2}.goal-menu>div span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #88a997;color:var(--green-dark);border-radius:50%;font:700 11px Source Code Pro,monospace}.lesson-intro{padding:13px 0 28px;border-bottom:2px solid #183c68;margin-bottom:24px}.lesson-intro>span:first-child{color:var(--green);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.lesson-intro h1{margin:7px 0 8px;font-size:clamp(29px,4vw,44px);line-height:1.1;color:var(--navy)}.lesson-intro p{max-width:780px;color:#5e6b7b;line-height:1.65;font-size:15px}.lesson-intro a,.bonus-label{display:inline-flex;align-items:center;gap:7px;margin-top:8px;color:#075ab3;font-weight:700;font-size:13px}.bonus-label{color:#816713}.mobile-lesson-resources{display:none}.concept-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px}.concept-stack article{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:8px 0 18px;border-bottom:1px dashed #aeb9c4}.concept-stack article>span{width:36px;height:36px;display:grid;place-items:center;border:3px solid #1769d2;color:#0751a8;border-radius:50%;font:700 15px Source Code Pro,monospace;transform:rotate(-4deg)}.concept-stack h2{margin:3px 0 7px;color:#0a4388;font-size:19px}.concept-stack p{margin:0;color:#4d5968;line-height:1.65;font-size:13px}.concept-stack p+p{margin-top:8px}.concept-definition{padding:9px 11px;background:#f3f8ff;border-left:4px solid #2a7ed4;color:#284f78!important}.concept-steps{margin:10px 0 0;padding-left:18px;color:#4d5968;font-size:12px;line-height:1.65}.concept-examples{display:grid;gap:6px;margin-top:10px}.concept-stack code{display:inline-block;max-width:100%;margin-top:10px;padding:7px 9px;background:#eaf3ff;color:#1557a7;font:600 12px Source Code Pro,monospace;white-space:normal;overflow-wrap:anywhere}.concept-examples code{margin-top:0}.concept-why,.concept-memory{margin-top:10px!important;padding:8px 10px;background:#eef8f2;color:#285d3a!important;border-left:4px solid #31a35b}.concept-pitfall{margin-top:10px!important;padding:8px 10px;background:#fff7dd;color:#715a12!important;border-left:4px solid #e6b529}.lesson-lab{margin-top:28px;padding:22px;border:1px solid #aebbc7;background:#fff;box-shadow:4px 5px #d9e1e8}.lab-title{display:flex;align-items:center;gap:11px;color:var(--navy);margin-bottom:18px}.lab-title svg{color:var(--green)}.lab-title strong,.lab-title span{display:block}.lab-title span{color:#687485;font-size:12px;margin-top:3px}.mini-formula-bar{display:flex;gap:15px;align-items:center;padding:8px 12px;border:1px solid #c8d0d8;background:#f2f4f6;font:12px Source Code Pro,monospace}.mini-formula-bar b{color:#0b579f;min-width:34px}.basic-grid{display:grid;grid-template-columns:35px 1.3fr .7fr 1fr .9fr 1fr;overflow:auto;margin-top:10px;min-width:600px}.grid-corner,.grid-head{min-height:30px;display:grid;place-items:center;background:#edf0f2;border-right:1px solid #bcc5cc;border-bottom:1px solid #bcc5cc;font-size:11px}.grid-cell{min-height:38px;border:0;border-right:1px solid #c9d0d5;border-bottom:1px solid #c9d0d5;background:#fff;text-align:left;padding:7px;font-size:11px}.grid-cell.header{background:#148048;color:#fff;font-weight:700;text-align:center}.grid-cell.selected{outline:3px solid #287fd5;outline-offset:-3px;background:#eaf4ff;color:#0b4d8d}.function-switcher{display:flex;flex-wrap:wrap;gap:7px}.function-switcher button,.data-controls button{border:1px solid #b6c2cd;background:#fff;color:#526174;padding:8px 12px;border-radius:5px;font-size:12px;font-weight:700}.function-switcher button.active,.data-controls button.active{border-color:#1769d2;background:#eaf3ff;color:#0d56a9}.function-demo{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;padding:28px 10px 20px}.function-demo code{font:700 clamp(19px,3vw,31px) "Source Code Pro",monospace;color:#1456ae}.function-demo span{font-size:26px}.function-demo strong{color:var(--green-dark);font-size:32px}.grade-row{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.grade-row span{display:flex;justify-content:space-between;padding:9px;border:1px solid #ccd4da;color:#657284;font-size:11px}.grade-row b{color:#172033}.bar-chart{height:250px;border-left:2px solid #82909e;border-bottom:2px solid #82909e;display:flex;align-items:end;justify-content:space-around;padding:25px 20px 0;margin:18px 5px 25px}.bar-chart>div{height:100%;flex:1;max-width:90px;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:5px}.bar-chart span{color:#5f6c7b;font-size:10px}.bar-chart i{display:block;width:62%;min-height:8px;background:#4f86c2;border-radius:3px 3px 0 0}.bar-chart b{transform:translateY(23px);font-size:11px;color:#5c6978}.pie-layout{display:flex;align-items:center;justify-content:center;gap:45px;padding:22px 10px 5px}.pie-chart{width:210px;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff80}.pie-layout>div:last-child{display:grid;gap:8px;font-size:12px}.pie-layout span{display:flex;align-items:center;gap:8px}.pie-layout span i{width:11px;height:11px}.scenario-controls{display:grid;grid-template-columns:1fr 1fr;gap:25px}.scenario-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;color:#4d5c6e;font-size:12px}.scenario-controls input{grid-column:1 / -1;width:100%;accent-color:var(--green)}.scenario-results{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:22px}.scenario-results span{display:grid;gap:4px;padding:12px 8px;text-align:center;border:1px solid;font-size:12px}.scenario-results .bad{background:#fff0f0;border-color:#d98181;color:#983838}.scenario-results .middle{background:#fff8de;border-color:#d4b54a;color:#775f0c}.scenario-results .good{background:#eaf8ed;border-color:#71b784;color:#176b36}.data-controls{display:flex;gap:10px;align-items:end;margin-bottom:12px}.data-controls label{display:grid;gap:4px;color:#5c6978;font-size:11px}.data-controls select,.lookup-controls select{border:1px solid #b8c2cc;background:#fff;padding:8px;border-radius:5px;color:#314b65}.data-table{display:grid;grid-template-columns:1fr .55fr .75fr .8fr 1.4fr;overflow:auto;min-width:650px;border-left:1px solid #b8c1c9;border-top:1px solid #b8c1c9}.data-table>div{min-height:34px;padding:8px;border-right:1px solid #c4ccd3;border-bottom:1px solid #c4ccd3;font-size:11px}.data-table .th{background:#107a3e;color:#fff;font-weight:700}.lesson-lab>small{display:block;margin-top:8px;color:#697687}.lookup-controls{display:grid;grid-template-columns:2fr 1fr;gap:12px}.lookup-controls label{display:grid;gap:5px;font-size:11px;color:#5c6978}.lookup-controls input{min-width:0;border:1px solid #b8c2cc;padding:9px;border-radius:5px;color:#214a72}.lookup-output{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.lookup-output span{padding:12px;border:1px solid #c9d3dc;background:#f7fafc;min-width:0}.lookup-output small,.lookup-output b{display:block}.lookup-output small{color:#6b7887;font-size:9px;min-height:24px}.lookup-output b{color:#0b549b;margin-top:6px;overflow:hidden;text-overflow:ellipsis}.learn-complete{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:28px;padding-top:22px;border-top:2px dashed #aeb9c4}.learn-complete>div{display:flex;gap:10px;align-items:center;color:#3c5e49;font-size:12px}.learn-complete>div svg{color:var(--green)}.learn-complete strong,.learn-complete span{display:block}.practice-choice-grid{display:grid;gap:8px;margin:28px 0 14px}.practice-choice-grid button{display:flex;align-items:center;gap:11px;border:1px solid #c7d0d8;background:#fff;padding:11px;color:#435267;text-align:left}.practice-choice-grid button span{width:27px;height:27px;display:grid;place-items:center;border:1px solid #aeb8c3;border-radius:50%;font-weight:700}.practice-choice-grid button.selected{border:2px solid #1971c8;background:#edf6ff;color:#124e89;font-weight:700}.practice-choice-grid button.selected span{background:#1971c8;color:#fff;border-color:#1971c8}.generic-challenge-sheet{max-width:950px;margin:auto}.challenge-list{display:grid;gap:10px}.challenge-list article{display:grid;grid-template-columns:74px 1fr;align-items:stretch;border:1px solid #c6ced5;background:#fff}.challenge-list article>span{display:grid;place-items:center;background:#eef1f4;color:#526276;font:700 12px Source Code Pro,monospace;border-right:1px solid #c6ced5}.challenge-list article>div{padding:12px 14px}.challenge-list article>div>strong{display:block;color:#334459;font-size:13px}.challenge-list .formula-entry{margin:9px 0 0;min-height:46px}.challenge-list .practice-choice-grid{grid-template-columns:repeat(3,1fr);margin:9px 0 0}.challenge-list article.correct{border-color:#4fa86b;box-shadow:inset 4px 0 #2b9951}.challenge-list article.wrong{border-color:#d26b6b;box-shadow:inset 4px 0 #cf4949}@media(max-width:1180px){.topbar{grid-template-columns:250px 1fr 150px}.main-nav{gap:8px}.main-nav button{min-width:72px;font-size:12px}.app-layout,.generic-learn-layout{grid-template-columns:205px minmax(580px,1fr)}.generic-notebook{padding-right:40px}.hint-panel{display:none}.practice-layout{grid-template-columns:220px 1fr}.micro-lesson{grid-column:2}}@media(max-width:850px){.topbar{height:auto;min-height:62px;grid-template-columns:1fr auto;padding:10px 14px}.brand small,.student>span:first-child{display:none}.main-nav{position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--navy-deep);z-index:50;justify-content:space-around}.main-nav{width:100%;justify-self:stretch}.main-nav button{flex:1;flex-direction:column;gap:2px;font-size:10px;min-width:60px}.main-nav button:after{top:0;bottom:auto}.lesson-strip{grid-template-columns:1fr auto;min-height:72px;padding:10px 15px;position:static}.lesson-picker>span{display:none!important}.strip-steps{display:none}.progress-box{border:0;width:120px}.app-layout{display:block}.sidebar{display:none}.notebook{padding:22px 17px 100px 42px;overflow-x:hidden}.notebook:before{left:18px}.generic-notebook{padding-right:17px}.mobile-lesson-resources{display:flex;gap:7px;overflow-x:auto;margin-top:14px;padding:2px 0 5px;scrollbar-width:thin}.mobile-lesson-resources a{flex:0 0 auto;margin-top:0;padding:8px 10px;border:1px solid #b8cce0;border-radius:5px;background:#f4f8fc;color:#15548f;font-size:11px}.lesson-two-mobile-resources{margin:-12px 0 22px}.concept-stack,.theory-cards,.reference-grid{grid-template-columns:1fr}.lesson-intro h1{font-size:30px}.lesson-lab{padding:15px;overflow:auto}.scenario-controls,.lookup-controls{grid-template-columns:1fr}.scenario-results{grid-template-columns:repeat(5,minmax(90px,1fr));min-width:500px}.lookup-output{grid-template-columns:1fr 1fr}.learn-complete{align-items:stretch;flex-direction:column}.pie-layout{align-items:flex-start;flex-direction:column}.challenge-list article{grid-template-columns:52px minmax(570px,1fr)}.generic-challenge-sheet{overflow:auto}.formula-pair{grid-template-columns:1fr;gap:25px}.reference-callout{align-items:flex-start;flex-direction:column;gap:7px}.portfolio-grid{min-width:780px}.mode-page,.quiz-page,.challenge-page,.result-page{padding:28px 15px 90px}.mode-heading,.challenge-heading{align-items:flex-start;gap:15px}.practice-layout{display:block}.exercise-rail{display:flex;overflow:auto;margin-bottom:15px}.exercise-rail button{min-width:150px}.micro-lesson{margin-top:15px}.exercise-stage,.quiz-card{padding:28px 20px}.challenge-sheet{overflow:auto;padding:14px}.challenge-table{min-width:760px}.mobile-scroll-hint{display:block;position:sticky;left:0;width:calc(100vw - 58px)}.challenge-footer{min-width:760px}.reset-panel,.reset-panel.top-tool{justify-content:stretch}.reset-panel button{flex:1 1 0;padding:8px 7px;font-size:11px}.reset-progress{bottom:70px}}@media(max-width:360px){.mode-heading,.challenge-heading{flex-direction:column}.mode-heading>div:first-child,.challenge-heading>div:first-child{min-width:0}.exercise-count,.mission-score{text-align:left}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
