@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#eaf0ff;background:#090d1b;font-synthesis:none;--sidebar: 19rem}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 70% -20%,#1b2859 0,transparent 34rem),#090d1b}button{font:inherit}.app-shell{min-height:100vh}.topbar{position:fixed;z-index:20;inset:0 0 auto 0;height:4.5rem;display:flex;align-items:center;padding:0 1.5rem;border-bottom:1px solid #263150;background:#090d1bdb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:.75rem;font:600 1rem Space Grotesk;letter-spacing:-.02em}.brand{padding:0;border:0;color:inherit;background:none;cursor:pointer}.brand b{color:#77e0c1}.brand-mark{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.72rem;background:linear-gradient(145deg,#6ea8ff,#805ad5);box-shadow:0 8px 24px #6ea8ff33}.brand-mark svg{width:1.25rem}.course-label{margin-left:auto;color:#8d99b7;font-size:.85rem}.menu-button,.close-nav{display:none;color:inherit;background:none;border:0}.sidebar{position:fixed;z-index:15;top:4.5rem;bottom:0;left:0;width:var(--sidebar);overflow-y:auto;padding:1.5rem 1rem;border-right:1px solid #202a46;background:#0d1224}.sidebar-heading{display:flex;justify-content:space-between;align-items:baseline;padding:0 .65rem 1rem}.sidebar-heading span{font:600 .9rem Space Grotesk}.sidebar-heading small{color:#687493}.lecture-nav{margin-bottom:.45rem;border-radius:.8rem}.lecture-nav.active{background:color-mix(in srgb,var(--lecture-color) 8%,transparent)}.lecture-button{width:100%;min-height:3.2rem;display:grid;grid-template-columns:1.7rem 1.4rem 1fr 1rem;gap:.55rem;align-items:center;padding:.65rem;text-align:left;color:#cbd4eb;background:none;border:0;border-radius:.8rem;cursor:pointer}.lecture-button:hover{background:#17203a}.active .lecture-button{color:#fff}.lecture-button>svg:not(.chevron){width:1.15rem;color:var(--lecture-color)}.lecture-button .chevron{width:1rem;opacity:.4}.lecture-number{font:600 .72rem Space Grotesk;color:#64708d}.unit-list{padding:.2rem .5rem .7rem 2.4rem}.unit-list button{position:relative;width:100%;display:flex;gap:.65rem;align-items:center;padding:.55rem .4rem;border:0;background:none;color:#8995b2;text-align:left;font-size:.82rem;cursor:pointer}.unit-list button span{display:grid;place-items:center;flex:0 0 1.35rem;height:1.35rem;border-radius:50%;border:1px solid #34405f;font-size:.67rem}.unit-list button.current{color:#fff}.unit-list button.current span{background:var(--lecture-color);color:#101528;border-color:transparent;font-weight:700}.welcome-nav{width:100%;min-height:2.8rem;display:flex;align-items:center;gap:.75rem;margin-bottom:.55rem;padding:.65rem .75rem;border:0;border-radius:.75rem;color:#8995b2;background:none;text-align:left;cursor:pointer}.welcome-nav svg{width:1.15rem}.welcome-nav:hover{background:#17203a}.welcome-nav.current{color:#fff;background:#17203a}.lecture-nav.locked{opacity:.62}.lecture-nav.locked .lecture-button{cursor:not-allowed}.lecture-nav.locked .lecture-button:hover{background:none}.lecture-button .lock-icon{width:.9rem;opacity:.65}.main-content{margin-left:var(--sidebar);padding:7rem clamp(1.5rem,5vw,5rem) 5rem;max-width:78rem}.lesson-header{display:flex;justify-content:space-between;gap:1rem;align-items:end}.eyebrow{display:block;margin-bottom:.55rem;color:var(--lecture-color);font:600 .78rem Space Grotesk;letter-spacing:.08em;text-transform:uppercase}h1,h2{font-family:Space Grotesk;letter-spacing:-.035em}h1{max-width:48rem;margin:0;font-size:clamp(2rem,5vw,3.6rem);line-height:1.02}.unit-count{color:#74809c;font-variant-numeric:tabular-nums}.lesson-progress{display:grid;grid-template-columns:repeat(var(--unit-count,4),1fr);gap:.5rem;margin:1.5rem 0 3rem}.lesson-progress span{height:3px;background:#27314c;border-radius:1rem}.lesson-progress .active{background:var(--lecture-color);box-shadow:0 0 14px color-mix(in srgb,var(--lecture-color) 45%,transparent)}.concept-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(16rem,1fr);gap:2rem;align-items:start;margin-bottom:2.25rem}.lead{margin:0;color:#b9c4dc;font-size:1.12rem;line-height:1.75}.key-idea{padding:1rem 1.1rem;border-left:3px solid var(--lecture-color);background:#121a30;border-radius:0 .75rem .75rem 0}.key-idea span{color:var(--lecture-color);font:600 .72rem Space Grotesk;text-transform:uppercase;letter-spacing:.08em}.key-idea p{margin:.35rem 0 0;color:#aab6d0;line-height:1.5;font-size:.9rem}.game-shell{position:relative;overflow:hidden;padding:clamp(1.25rem,4vw,2.5rem);border:1px solid #2b385d;border-radius:1.25rem;background:linear-gradient(145deg,#18213df5,#0e1427f5);box-shadow:0 24px 70px #0006}.game-shell:before{content:"";position:absolute;width:20rem;height:20rem;right:-8rem;top:-12rem;border-radius:50%;background:var(--lecture-color);opacity:.07;filter:blur(15px)}.game-topline{display:flex;align-items:center;gap:1rem;color:#8390ad;font-size:.78rem}.mini-progress{flex:1;max-width:12rem;height:4px;overflow:hidden;border-radius:1rem;background:#2a3552}.mini-progress span{display:block;height:100%;background:var(--lecture-color);transition:width .3s ease}.scenario-visual{min-height:10rem;display:flex;justify-content:center;align-items:center;gap:clamp(.75rem,3vw,2rem);color:#55617e}.scenario-visual>svg{width:1.2rem}.data-stack{width:5.8rem;display:grid;gap:.45rem}.data-stack i{height:.72rem;border-radius:.3rem;background:linear-gradient(90deg,#355a98,#6ea8ff);box-shadow:0 5px 14px #0004}.data-stack i:nth-child(2){width:74%}.data-stack i:nth-child(3){width:88%}.data-stack i:nth-child(4){width:60%}.model-orb{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:1.3rem;color:#fff;background:linear-gradient(145deg,#755dd6,#4a68c5);transform:rotate(8deg);box-shadow:0 14px 34px #5f65d54d}.model-orb svg{transform:rotate(-8deg)}.output-tile{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:50%;border:2px dashed #607093;color:#a9b5d0;font:700 1.5rem Space Grotesk}.game-shell h2{margin:0 0 .65rem;font-size:clamp(1.45rem,3vw,2rem)}.scenario-copy{max-width:48rem;min-height:3.6rem;margin:0 0 1.5rem;color:#c5cee2;font-size:1.04rem;line-height:1.6}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.choice{min-height:3.35rem;display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border:1px solid #354364;border-radius:.75rem;color:#d8e0f1;background:#11192f;cursor:pointer;transition:.18s ease}.choice:hover:not(:disabled){transform:translateY(-2px);border-color:var(--lecture-color);background:#17213c}.choice svg{width:1.1rem}.choice.correct{border-color:#77e0c1;background:#77e0c119;color:#b8f4e2}.choice.wrong{border-color:#ff7f8d;background:#ff7f8d14;color:#ffc0c7}.feedback{display:flex;flex-direction:column;gap:.2rem;margin-top:1rem;padding:.85rem 1rem;border-radius:.7rem;font-size:.9rem}.feedback.good{background:#77e0c112;color:#b8f4e2}.feedback.try{background:#ffbd7012;color:#ffd7a8}.feedback span{opacity:.78}.primary-button{display:flex;align-items:center;gap:.35rem;margin:1rem 0 0 auto;padding:.75rem 1rem;border:0;border-radius:.7rem;background:var(--lecture-color);color:#0d1325;font-weight:700;cursor:pointer}.primary-button svg{width:1.05rem}.completion{display:flex;gap:.6rem;align-items:center;margin-top:1rem;color:#b8f4e2}.completion svg{width:1.15rem}.activity-kicker{margin-bottom:.5rem;color:var(--lecture-color);font:600 .72rem Space Grotesk;letter-spacing:.08em;text-transform:uppercase}.activity-prompt{max-width:46rem;margin:0 0 1.6rem;color:#aeb9d1;line-height:1.6}.system-explorer,.data-lab,.viz-grid{display:grid;grid-template-columns:minmax(15rem,.8fr) minmax(0,1.35fr);gap:1.5rem;align-items:stretch}.control-panel{display:flex;flex-direction:column;gap:1rem;padding:1.1rem;border:1px solid #293654;border-radius:1rem;background:#0d1428}.range-control{display:grid;gap:.55rem;color:#aab6d0;font-size:.88rem}.range-control>span{display:flex;justify-content:space-between;gap:1rem}.range-control b{color:#f2f5ff;font-variant-numeric:tabular-nums}.range-control input{width:100%;accent-color:var(--lecture-color)}.architecture-viz{position:relative;min-height:18rem;display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.25rem;overflow:hidden;border-radius:1rem;background:radial-gradient(circle at 50% 40%,#293861,#10182d 65%)}.architecture-viz>svg{flex:0 0 1.2rem;color:#596783}.source-cloud,.system-block{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.source-cloud{width:8rem;min-height:7rem;padding:1rem;border:1px dashed #62708d;border-radius:50%;color:#eef3ff}.source-cloud span{margin-top:.35rem;color:#8f9bb6;font-size:.72rem}.system-block{width:13rem;min-height:9rem;padding:1rem;border:1px solid #45669c;border-radius:1.2rem;background:#172443;box-shadow:0 18px 40px #0005}.system-block.hot{border-color:#ffad66;box-shadow:0 0 35px #ff9e4a25}.system-block small{color:var(--lecture-color);text-transform:uppercase;letter-spacing:.08em}.system-block strong{margin:.35rem 0;font-family:Space Grotesk}.system-block span{color:#98a5c0;font-size:.78rem;line-height:1.4}.load-meter{position:absolute;inset:auto 1.2rem 1rem;height:4px;overflow:hidden;border-radius:1rem;background:#2c3754}.load-meter span{display:block;height:100%;background:linear-gradient(90deg,#6ea8ff,#77e0c1,#ffc86b);transition:width .25s ease}.insight-line{margin-top:1.15rem;padding:.9rem 1rem;border-radius:.75rem;color:#aeb9d1;background:#111a30;line-height:1.55;font-size:.9rem}.insight-line b{color:#f0f4ff}.pipeline-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1.5rem 0}.pipeline-slots>div{min-height:7.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:.8rem;border:1px dashed #445170;border-radius:.8rem;color:#71809e;text-align:center}.pipeline-slots>div.filled{border-style:solid;border-color:var(--lecture-color);background:color-mix(in srgb,var(--lecture-color) 8%,#11182d);color:#f0f4ff}.pipeline-slots>div>span{display:grid;place-items:center;width:1.4rem;height:1.4rem;margin-bottom:.5rem;border-radius:50%;background:#26314d;font-size:.7rem}.pipeline-slots b{font-family:Space Grotesk}.pipeline-slots small{margin-top:.3rem;color:#8e9ab5;line-height:1.3}.pipeline-slots em{font-size:.8rem;font-style:normal}.stage-bank{display:flex;flex-wrap:wrap;gap:.6rem}.stage-bank button{padding:.65rem .9rem;border:1px solid #3a4868;border-radius:.65rem;background:#151e36;color:#dce4f6;cursor:pointer}.stage-bank button:hover:not(:disabled){border-color:var(--lecture-color)}.stage-bank button:disabled{opacity:.28}.text-button{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem;border:0;background:none;color:#94a2bf;cursor:pointer}.text-button svg{width:1rem}.completion .text-button{margin-left:auto}.data-table{overflow:hidden;border:1px solid #2d3958;border-radius:.85rem;background:#0e1528}.data-row{display:grid;grid-template-columns:.5fr 1fr 1fr 1fr;gap:.5rem;padding:.72rem .8rem;border-bottom:1px solid #222d49;color:#aeb9d1;font-size:.84rem}.data-row:last-child{border:0}.data-row.header{color:#6f7d9b;background:#141d34;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.data-row.flagged{background:#ff97680d;color:#ffd3b7}.data-row span:last-child{text-transform:capitalize}.repair-panel{display:grid;gap:.65rem}.repair-panel button{display:flex;flex-direction:column;gap:.2rem;padding:.8rem 1rem;border:1px solid #354260;border-radius:.75rem;background:#11192e;color:#dfe6f5;text-align:left;cursor:pointer}.repair-panel button span{color:#8e9bb6;font-size:.78rem}.repair-panel button.done{border-color:#77e0c1;background:#77e0c10d}.repair-panel button.done:after{content:"Applied";align-self:flex-end;margin-top:-1.8rem;color:#77e0c1;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.quality-meter{position:relative;height:2.2rem;margin-top:1rem;overflow:hidden;border-radius:.65rem;background:#202a44}.quality-meter span{display:block;height:100%;background:linear-gradient(90deg,#ff8190,#ffc86b,#77e0c1);opacity:.7;transition:width .3s ease}.quality-meter b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;font-size:.75rem}.plot{width:100%;min-height:20rem;border:1px solid #293654;border-radius:1rem;background:linear-gradient(145deg,#111a31,#0c1326)}.plot line{stroke:#26324e;stroke-width:.45}.plot text{fill:#9ba8c2;font-size:5px}.plot .distance-line{stroke:#9ba8c2;stroke-width:.7;stroke-dasharray:2 2}.plot .axis-line{stroke:#ffc86b;stroke-width:1.5}.plot .projection-line{stroke:#62708d;stroke-width:.5;stroke-dasharray:1.5 1.5}.plot .assignment-line{stroke:#61708d;stroke-width:.4;opacity:.5}.plot .regression-line{stroke:#6ea8ff;stroke-width:2}.plot .residual-line{stroke:#ff8190;stroke-width:1;stroke-dasharray:2 1}.toggle{display:flex;align-items:center;gap:.6rem;padding:.75rem;border:1px solid #364462;border-radius:.75rem;background:#141d33;color:#dce3f3;cursor:pointer}.toggle span{position:relative;width:2.4rem;height:1.35rem;border-radius:1rem;background:#3a4560}.toggle span:after{content:"";position:absolute;top:.2rem;left:.2rem;width:.95rem;height:.95rem;border-radius:50%;background:#fff;transition:.2s}.toggle.on span{background:#77e0c1}.toggle.on span:after{transform:translate(1.05rem)}.nearest-result{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-radius:.8rem;background:#171f37}.nearest-result small{color:#8995b0}.nearest-result strong{font:700 2rem Space Grotesk}.control-panel>p,.microcopy{margin:0;color:#8f9cb7;line-height:1.55;font-size:.82rem}.variance-card,.mse-score{padding:1rem;border-radius:.85rem;background:#171f37}.variance-card small,.mse-score small{display:block;color:#8996b2}.variance-card strong,.mse-score strong{display:block;margin:.25rem 0;font:700 2rem Space Grotesk}.variance-card>div{height:5px;overflow:hidden;border-radius:1rem;background:#303b57}.variance-card>div span{display:block;height:100%;background:#ffc86b}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;padding:.3rem;border-radius:.75rem;background:#0b1122}.segmented button{padding:.6rem;border:0;border-radius:.55rem;color:#8996b1;background:transparent;cursor:pointer}.segmented button.active{background:#283552;color:#fff}.step-label{display:flex;align-items:center;justify-content:space-between}.step-label small{color:#8b98b3}.step-label strong{font:700 2rem Space Grotesk}.metric{display:flex;justify-content:space-between;padding:.85rem 0;border-block:1px solid #293653;color:#8e9ab5}.metric b{color:#fff;font-variant-numeric:tabular-nums}.metric-pair{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.metric-pair>div{padding:.9rem;border-radius:.75rem;background:#171f37}.metric-pair small{display:block;color:#8794af}.metric-pair b{display:block;margin-top:.2rem;font:700 1.5rem Space Grotesk}.primary-button.inline{width:100%;justify-content:center;margin:0}.primary-button:disabled{opacity:.45;cursor:not-allowed}.mse-score{border:1px solid transparent}.mse-score.great{border-color:#77e0c1;box-shadow:0 0 28px #77e0c115}.mse-score span{color:#8e9bb5;font-size:.78rem}.error-bars{height:7rem;display:flex;align-items:end;gap:.35rem;padding:.7rem;border-radius:.75rem;background:#0b1122}.error-bars span{flex:1;min-height:3px;border-radius:.2rem .2rem 0 0;background:linear-gradient(#ff8190,#7f4c77)}.control-panel>small{color:#74809a;text-align:center}.loss-chart text{font-size:4px}.quiz-list{display:grid;gap:1.4rem}.quiz-question{padding-bottom:1.25rem;border-bottom:1px solid #27324d}.quiz-question h3{display:flex;gap:.7rem;align-items:flex-start;margin:0 0 .8rem;font:600 1rem DM Sans;line-height:1.45}.quiz-question h3 span{display:grid;place-items:center;flex:0 0 1.5rem;height:1.5rem;border-radius:50%;background:#283451;color:#abb6cd;font-size:.72rem}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.quiz-options button{min-height:3rem;display:flex;align-items:center;justify-content:space-between;padding:.65rem .8rem;border:1px solid #34415f;border-radius:.65rem;color:#cbd4e7;background:#11192d;text-align:left;cursor:pointer}.quiz-options button.selected{border-color:var(--lecture-color);background:color-mix(in srgb,var(--lecture-color) 9%,#11192d)}.quiz-options button.correct{border-color:#77e0c1;color:#b8f4e2;background:#77e0c10c}.quiz-options button.wrong{border-color:#ff8190;color:#ffc1c8;background:#ff81900c}.quiz-options svg{width:1rem}.quiz-why{margin:.7rem 0 0;color:#9ba8c1;font-size:.85rem;line-height:1.5}.quiz-why b{color:#eef3ff}.quiz-result{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;border-radius:.8rem;background:#131c32}.quiz-result strong{font:700 1.6rem Space Grotesk;color:var(--lecture-color)}.quiz-result span{color:#a5b1c9}.quiz-result .text-button{margin-left:auto}.workload-card{display:flex;flex-direction:column;gap:.55rem;min-height:8rem;justify-content:center;padding:1.3rem;border-radius:1rem;background:#10182e}.workload-card small{color:#7f8da8}.workload-card strong{max-width:42rem;font:600 1.25rem Space Grotesk;line-height:1.4}.two-choice{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}.two-choice button{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border:1px solid #35425f;border-radius:.8rem;background:#131c32;color:#e6ebf7;text-align:left;cursor:pointer}.two-choice button span{color:#8d9ab5;font-size:.8rem}.two-choice button.correct{border-color:#4fb994;background:#77e0c112}.two-choice button.wrong{border-color:#e76878;background:#ff819010}.worker-visual,.number-line,.distribution-strip,.solver-race{position:relative;min-height:20rem;padding:1.2rem;border:1px solid #293654;border-radius:1rem;background:linear-gradient(145deg,#111a31,#0c1326)}.runtime-bar{height:3.2rem;margin:4rem 0 2rem;overflow:hidden;border-radius:.7rem;background:#29334e}.runtime-bar span{display:flex;align-items:center;justify-content:flex-end;min-width:3rem;height:100%;padding-right:.7rem;background:linear-gradient(90deg,#6ea8ff,#77e0c1);color:#0d1824;transition:width .3s}.workers{display:flex;flex-wrap:wrap;gap:.4rem}.workers span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.45rem;background:#2a395c;color:#dce6f8;font-size:.7rem}.baseline{position:absolute;bottom:1rem;color:#7886a2;font-size:.78rem}.number-line{min-height:18rem}.number-axis{position:absolute;left:6%;right:6%;top:50%;height:2px;background:#46536e}.number-line>span{position:absolute;top:calc(50% - 1.2rem);display:flex;flex-direction:column;align-items:center;gap:.25rem;transform:translate(-50%);color:#aeb9d0;font-size:.7rem}.number-line>span i{width:.75rem;height:.75rem;border-radius:50%;background:#6ea8ff}.number-line>span.outlier i{background:#ff8190}.mean-marker,.median-marker{position:absolute;top:62%;transform:translate(-50%);padding:.2rem .4rem;border-radius:.35rem;color:#0b1322;font-size:.65rem}.mean-marker{background:#ffc86b}.median-marker{top:72%;background:#77e0c1}.distribution-strip{min-height:18rem}.distribution-strip>span{position:absolute;top:45%;transform:translate(-50%);color:#75829c;font-size:.65rem}.distribution-strip>span i{display:block;width:.7rem;height:2.8rem;margin:auto;border-radius:.3rem .3rem 0 0;background:#77e0c1}.distribution-axis{position:absolute;left:4%;right:4%;top:calc(45% + 2.8rem);border-top:2px solid #46536e;padding-top:1rem;color:#8e9ab5;text-align:center}.dendrogram .tree-lines path{fill:none;stroke:#7d8ba5;stroke-width:1.2}.dendrogram .cut-line{stroke:#ff8190;stroke-width:1.4;stroke-dasharray:3 2}.silhouette-score{padding:1rem;border-radius:.85rem;background:#171f37}.silhouette-score small,.silhouette-score span{display:block;color:#8491ab}.silhouette-score strong{display:block;margin:.25rem 0;font:700 2rem Space Grotesk}.silhouette-score.good-score{box-shadow:inset 3px 0 #77e0c1}.solver-race{display:flex;flex-direction:column;justify-content:center;gap:2rem}.solver-race>div{display:grid;grid-template-columns:8rem 1fr;gap:.45rem 1rem;align-items:center}.solver-race span{display:block;min-width:3px;height:1rem;border-radius:.3rem;background:#6ea8ff}.solver-race>div:nth-child(2) span{background:#77e0c1}.solver-race small{grid-column:2;color:#7f8da8}.recommendation{padding:1rem;border-left:3px solid var(--lecture-color);background:#171f37}.recommendation small{display:block;color:#8190aa}.recommendation strong{display:block;margin-top:.25rem}:root{color:#172033;background:#fff}body{background:radial-gradient(circle at 72% -18%,#edf3ff 0,transparent 32rem),#fff}.topbar{border-color:#dfe5ef;background:#ffffffeb;box-shadow:0 1px 12px #22304a0a}.brand{color:#172033}.brand b{color:#197d68}.course-label{color:#69758a}.sidebar{border-color:#e1e6ef;background:#f7f9fc}.sidebar-heading small,.lecture-number{color:#7b879a}.lecture-button{color:#4e5a6d}.lecture-button:hover{background:#edf1f7}.active .lecture-button{color:#172033}.lecture-nav.active{background:color-mix(in srgb,var(--lecture-color) 12%,#fff)}.welcome-nav{color:#59667a}.welcome-nav:hover{background:#edf1f7}.welcome-nav.current{color:#172033;background:#e9eef5}.unit-list button{color:#69768b}.unit-list button span{border-color:#cbd3df}.unit-list button.current{color:#172033}.unit-list button.current span{color:#fff}.unit-count{color:#758197}.lesson-progress span{background:#e2e7ef}.lead{color:#4f5c70}.key-idea{background:#f5f7fb}.key-idea p{color:#526075}.game-shell{border-color:#dfe5ee;background:#fff;box-shadow:0 18px 55px #20304d12}.game-shell:before{opacity:.09}.game-topline,.activity-prompt{color:#667389}.mini-progress{background:#e1e6ee}.scenario-visual>svg{color:#aab4c3}.model-orb{color:#fff}.output-tile{border-color:#aeb8c8;color:#536076}.game-shell h2{color:#172033}.scenario-copy{color:#445267}.choice,.stage-bank button,.repair-panel button,.quiz-options button,.two-choice button{border-color:#d5dce7;color:#263248;background:#f8fafc}.choice:hover:not(:disabled),.stage-bank button:hover:not(:disabled){background:#f0f4fa}.choice.correct,.two-choice button.correct{color:#176b57;background:#e8f8f3}.choice.wrong,.two-choice button.wrong{color:#a33a49;background:#fff0f2}.feedback.good{background:#eaf8f3;color:#176b57}.feedback.try{background:#fff7e8;color:#875c13}.completion{color:#176b57}.primary-button{color:#fff;filter:saturate(.82) brightness(.82)}.text-button{color:#5f6c80}.control-panel{border-color:#dce3ed;background:#f8fafc}.range-control{color:#4f5c70}.range-control b{color:#172033}.architecture-viz,.worker-visual,.number-line,.distribution-strip,.solver-race,.plot{border-color:#dce3ed;background:linear-gradient(145deg,#fbfcfe,#f3f6fa)}.architecture-viz>svg{color:#9aa6b8}.source-cloud{border-color:#aab5c5;color:#263248}.source-cloud span{color:#69768a}.system-block{border-color:#adc2df;background:#fff;box-shadow:0 12px 30px #26365312}.system-block span{color:#657287}.load-meter,.runtime-bar{background:#e2e7ef}.insight-line{color:#4f5c70;background:#f4f6fa}.insight-line b{color:#172033}.pipeline-slots>div{border-color:#bdc7d5;color:#7b8799}.pipeline-slots>div.filled{color:#172033}.pipeline-slots>div>span{background:#e5eaf1}.pipeline-slots small{color:#667389}.data-table{border-color:#dce3ed;background:#fff}.data-row{border-color:#e6eaf0;color:#4d5a6f}.data-row.header{color:#68758a;background:#f3f6fa}.data-row.flagged{background:#fff7ef;color:#86542e}.repair-panel button span,.two-choice button span{color:#667389}.quality-meter{background:#e5e9ef}.plot line{stroke:#dfe4eb}.plot text{fill:#536176}.plot .distance-line,.plot .assignment-line,.plot .projection-line{stroke:#9aa6b8}.plot .axis-line{stroke:#d58d19}.plot .regression-line{stroke:#397ed2}.plot .residual-line{stroke:#d85667}.toggle{border-color:#d2dae6;background:#fff;color:#263247}.toggle span{background:#c9d1dc}.nearest-result,.variance-card,.mse-score,.metric-pair>div,.silhouette-score,.recommendation{background:#eef2f7}.nearest-result small,.variance-card small,.mse-score small,.step-label small,.metric-pair small,.silhouette-score small,.silhouette-score span,.recommendation small{color:#667389}.control-panel>p,.microcopy{color:#5c697e}.variance-card>div{background:#dce2eb}.segmented{background:#e9edf3}.segmented button{color:#5f6c80}.segmented button.active{background:#fff;color:#172033;box-shadow:0 1px 5px #26365314}.metric{border-color:#dce2ea;color:#667389}.metric b,.step-label strong,.metric-pair b,.nearest-result strong,.variance-card strong,.mse-score strong,.silhouette-score strong{color:#172033}.error-bars{background:#edf1f6}.control-panel>small{color:#68758a}.quiz-question{border-color:#e1e6ed}.quiz-question h3 span{background:#e8edf3;color:#526075}.quiz-options button.selected{background:color-mix(in srgb,var(--lecture-color) 10%,#fff)}.quiz-options button.correct{color:#176b57;background:#e9f8f3}.quiz-options button.wrong{color:#a33a49;background:#fff0f2}.quiz-why{color:#59667a}.quiz-why b{color:#172033}.quiz-result{background:#f2f5f9}.quiz-result span{color:#59667a}.workload-card{background:#f3f6fa}.workload-card small{color:#6b778b}.two-choice button{color:#263248}.workers span{background:#dfe8f5;color:#34435a}.baseline,.distribution-axis,.solver-race small{color:#69768a}.number-line>span{color:#5f6b7f}.number-axis,.distribution-axis{border-color:#aab4c3;background:#aab4c3}.distribution-axis{background:none}.solver-race span{filter:saturate(.8)}.recommendation{background:#eef2f7}.placeholder{min-height:24rem;display:grid;place-items:center;align-content:center;text-align:center;color:#9da9c3}.placeholder-art{width:8rem;height:8rem;border:1px solid #344263;border-radius:2rem;background:radial-gradient(circle,#6ea8ff55 0 8%,transparent 9%),linear-gradient(135deg,#1c2745,#12192d);transform:rotate(8deg)}.placeholder h2{margin-top:2rem;color:#eef3ff}.scrim{display:none}@media(max-width:850px){:root{--sidebar: 18rem}.menu-button{display:grid;place-items:center;margin-right:.75rem;padding:.4rem}.sidebar{top:0;z-index:40;transform:translate(-105%);transition:transform .25s ease;box-shadow:18px 0 60px #000a}.sidebar.open{transform:translate(0)}.close-nav{display:block;margin:0 0 1rem auto;padding:.4rem}.scrim{display:block;position:fixed;z-index:35;top:0;right:0;bottom:0;left:0;border:0;background:#050813b8}.main-content{margin-left:0;padding-top:6.5rem}.concept-intro,.system-explorer,.data-lab,.viz-grid{grid-template-columns:1fr}.pipeline-slots{grid-template-columns:1fr 1fr}}@media(max-width:560px){.topbar{padding:0 .85rem}.course-label{display:none}.main-content{padding-inline:1rem}.choice-grid{grid-template-columns:1fr}.scenario-visual{gap:.5rem}.data-stack{width:4rem}.model-orb,.output-tile{width:3.6rem;height:3.6rem}.pipeline-slots,.quiz-options{grid-template-columns:1fr}.architecture-viz{flex-direction:column}.architecture-viz>svg{transform:rotate(90deg)}.plot{min-height:16rem}.quiz-result{align-items:flex-start;flex-wrap:wrap}.quiz-result .text-button{margin-left:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.welcome-page{min-height:100vh;margin-left:var(--sidebar);padding:7.2rem clamp(1.2rem,4vw,4rem) 5rem;color:#172033}.welcome-hero{max-width:54rem;margin:0 auto 4.5rem;text-align:center}.welcome-kicker{color:#536782;font:600 .75rem Space Grotesk;text-transform:uppercase;letter-spacing:.13em}.welcome-hero h1{margin:.7rem 0 .8rem;font:700 clamp(2.8rem,7vw,5.5rem)/.98 "Space Grotesk";letter-spacing:-.065em}.welcome-hero>p{max-width:43rem;margin:0 auto;color:#566379;font-size:1.05rem;line-height:1.7}.welcome-stats{display:flex;justify-content:center;flex-wrap:wrap;gap:.6rem 1.5rem;margin:1.5rem 0;color:#647187;font-size:.8rem}.welcome-stats span{display:flex;align-items:baseline;gap:.35rem}.welcome-stats b{color:#172033;font:700 1.1rem Space Grotesk}.welcome-start{display:inline-flex;align-items:center;gap:.55rem;padding:.82rem 1.15rem;border:0;border-radius:.8rem;color:#fff;background:#315fbd;box-shadow:0 12px 30px #315fbd2c;font-weight:700;cursor:pointer}.welcome-start:hover{transform:translateY(-2px);box-shadow:0 16px 34px #315fbd38}.welcome-start svg{width:1rem;fill:currentColor}.course-journey{max-width:50rem;margin:0 auto}.journey-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:end;padding-bottom:1.3rem;border-bottom:1px solid #dce3ed}.journey-heading span{color:#315fbd;font:600 .72rem Space Grotesk;text-transform:uppercase;letter-spacing:.11em}.journey-heading h2{margin:.35rem 0 0;font:700 clamp(1.65rem,4vw,2.35rem)/1.12 "Space Grotesk";letter-spacing:-.035em}.journey-heading>p{margin:0;color:#667389;font-size:.85rem;line-height:1.6}.journey-path{position:relative;height:1840px;margin-top:2.2rem}.journey-line{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.journey-line path{fill:none;stroke:#cbd6e6;stroke-width:2.5;stroke-dasharray:7 7;vector-effect:non-scaling-stroke}.journey-row{position:relative;height:150px;display:flex;align-items:flex-start}.journey-row.center{justify-content:center}.journey-row.right{justify-content:flex-end}.journey-row.left{justify-content:flex-start}.journey-node{position:relative;display:flex;align-items:center;gap:1rem;width:min(25rem,64%)}.journey-node>button{position:relative;z-index:2;display:grid;place-items:center;flex:0 0 4rem;height:4rem;border-radius:50%;cursor:pointer}.journey-node.open>button{border:2px solid #315fbd;color:#315fbd;background:#fff;box-shadow:0 9px 25px #315fbd24}.journey-node.open>button:hover{color:#fff;background:#315fbd;transform:scale(1.06)}.journey-node.locked>button{border:2px solid #d6dde7;color:#8491a4;background:#f1f4f8}.journey-node button svg{width:1.15rem}.journey-node button span{font:700 1.05rem Space Grotesk}.journey-copy{min-width:0;padding:.35rem 0}.journey-copy small{color:#758297;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.journey-copy h3{margin:.22rem 0 .25rem;color:#233047;font:600 .95rem/1.28 Space Grotesk}.journey-copy p{margin:0;color:#6c788c;font-size:.73rem;line-height:1.45}.journey-node.locked .journey-copy{opacity:.72}.lock-notice{position:absolute;z-index:5;left:2rem;top:-2.45rem;padding:.45rem .65rem;border-radius:.55rem;color:#fff;background:#27344a;box-shadow:0 8px 22px #26365324;font-size:.7rem;white-space:nowrap}@media(max-width:850px){.welcome-page{margin-left:0;padding-top:6.5rem}}@media(max-width:620px){.welcome-hero{margin-bottom:3.2rem}.journey-heading{grid-template-columns:1fr;gap:.7rem}.journey-path{height:auto}.journey-line{left:1.95rem;width:2px;height:calc(100% - 3rem);background:#d5deea}.journey-line path{display:none}.journey-row,.journey-row.center,.journey-row.right,.journey-row.left{height:auto;min-height:8.4rem;justify-content:flex-start}.journey-node{width:100%;align-items:flex-start}.journey-node>button{flex-basis:4rem}.journey-copy{padding-top:.25rem}.journey-copy h3{font-size:.9rem}.journey-copy p{max-width:17rem}}.classification-plot{position:relative}.classification-plot .class-region-a{fill:#6ea8ff16}.classification-plot .class-boundary{fill:none;stroke:#ff8f70;stroke-width:1.5;stroke-dasharray:3 2}.classification-plot text{fill:#425069;font-size:4px}.classification-plot .knn-radius{fill:#ffc86b12;stroke:#c48a2e;stroke-width:.8;stroke-dasharray:2 2}.classification-plot .neighbor-line{stroke:#a56e23;stroke-width:.65;opacity:.7}.vote-board{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.vote-board span{display:grid;grid-template-columns:auto 1fr auto;gap:.45rem;align-items:center;padding:.7rem;border-radius:.7rem;color:#536075;background:#eef2f7;font-size:.78rem}.vote-board i{width:.65rem;height:.65rem;border-radius:50%}.vote-board b{color:#172033;font:700 1.1rem Space Grotesk}.split-canvas{position:relative;min-height:20rem;overflow:hidden;border:1px solid #dce3ed;border-radius:1rem;background:linear-gradient(145deg,#fbfcfe,#f3f6fa)}.split-axis{position:absolute;left:6%;right:6%;top:50%;height:2px;background:#aab4c3}.split-marker{position:absolute;top:19%;bottom:18%;width:2px;background:#ff8f70;transform:translate(-50%);transition:left .2s}.split-marker span{position:absolute;top:-1.5rem;left:50%;padding:.25rem .45rem;border-radius:.4rem;color:#fff;background:#c66048;font-size:.68rem;white-space:nowrap;transform:translate(-50%)}.split-record{position:absolute;width:.9rem;height:.9rem;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 7px #26365325;transform:translate(-50%,-50%)}.split-label{position:absolute;bottom:1rem;color:#69768a;font-size:.72rem;line-height:1.45}.split-label.left{left:1rem}.split-label.right{right:1rem;text-align:right}.split-label b{color:#263248}.impurity-score{padding:1rem;border-left:3px solid #aab4c3;border-radius:.75rem;background:#eef2f7}.impurity-score.best{border-color:#2d9a79;background:#eaf8f3}.impurity-score small,.impurity-score span{display:block;color:#667389}.impurity-score strong{display:block;margin:.2rem 0;color:#172033;font:700 1.8rem Space Grotesk}.bayes-animal{min-height:20rem;display:grid;place-items:center;align-content:center;gap:1rem;border:1px solid #dce3ed;border-radius:1rem;background:radial-gradient(circle at 50% 43%,#ffe2d7 0 5rem,transparent 5.05rem),linear-gradient(145deg,#fbfcfe,#f3f6fa)}.animal-face{position:relative;display:grid;place-items:center;width:8rem;height:7rem;border-radius:45% 45% 50% 50%;color:#fff;background:#ff8f70;box-shadow:0 12px 28px #ff8f7030}.animal-face:before,.animal-face:after{content:"";position:absolute;top:-1rem;width:2.4rem;height:2.7rem;border-radius:90% 10% 60% 40%;background:#ff8f70}.animal-face:before{left:.25rem;transform:rotate(-25deg)}.animal-face:after{right:.25rem;transform:scaleX(-1) rotate(-25deg)}.animal-face span{position:relative;z-index:1;font:700 2.2rem Space Grotesk}.bayes-animal p{margin:0;color:#59667a;font-weight:600}.evidence-list{display:grid;gap:.45rem}.evidence-list button{display:flex;justify-content:space-between;padding:.65rem .75rem;border:1px solid #d6dde8;border-radius:.65rem;color:#344057;background:#fff;cursor:pointer}.evidence-list button.yes{border-color:#6ea8ff;background:#edf5ff}.evidence-list button.no{color:#7a4650;background:#fff4f5}.evidence-list b{font-size:.75rem}.posterior-bars{display:grid;gap:.55rem}.posterior-bars>div{display:grid;grid-template-columns:4rem 1fr 2.5rem;gap:.5rem;align-items:center;color:#536075;font-size:.72rem}.posterior-bars i{height:.65rem;overflow:hidden;border-radius:1rem;background:#e0e5ec}.posterior-bars i b{display:block;height:100%;border-radius:inherit;transition:width .3s}.posterior-bars strong{color:#263248;text-align:right}.svm-plot .svm-boundary{fill:none;stroke:#263248;stroke-width:1.6}.svm-plot .svm-margin{fill:none;stroke:#ff8f70;stroke-width:.8;stroke-dasharray:3 2}.control-panel .segmented:has(button:nth-child(2):last-child){grid-template-columns:1fr 1fr}.neuron-stage{min-height:25rem;display:grid;grid-template-columns:5rem 1fr;grid-template-rows:1fr auto;align-items:center;gap:1rem;padding:1.35rem;border:1px solid #dce3ed;border-radius:1rem;background:linear-gradient(145deg,#fbfcfe,#f4f1ff)}.neuron-inputs{display:grid;gap:1.5rem}.neuron-inputs span{display:grid;place-items:center;width:4rem;height:4rem;border:1px solid #cfc7f2;border-radius:50%;color:#536075;background:#fff;box-shadow:0 7px 18px #4e3f8514}.neuron-inputs small{font-size:.66rem}.neuron-inputs b{color:#302952}.neuron-stage svg{width:108%;min-height:18rem;margin-left:-4%;overflow:visible}.neuron-stage svg line{stroke:#8b96a8}.neuron-stage svg line.positive{stroke:#6f5bd6}.neuron-stage svg line.negative{stroke:#d45d73}.neuron-stage svg circle{fill:#fff;stroke:#9b8cff;stroke-width:2}.neuron-stage svg .output-node{fill:#9b8cff}.neuron-stage svg text{fill:#3f4960;font-size:9px;font-weight:700}.neuron-stage svg .output-node+text{fill:#fff;font-size:8px}.signal-meter{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:.55rem;align-items:center;color:#59667a;font-size:.75rem}.signal-meter i{height:.7rem;overflow:hidden;border-radius:1rem;background:#e1e5ed}.signal-meter i b{display:block;height:100%;border-radius:inherit;background:#9b8cff;transition:width .25s}.neuron-equation{padding:.75rem;border-radius:.7rem;color:#4d5970;background:#f1effc;font:500 .76rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.neuron-equation b{color:#392c7a}.activation-tabs{grid-template-columns:repeat(3,1fr)!important}.activation-plot line{stroke:#c8d0dc;stroke-width:.7}.activation-plot polyline{fill:none;stroke:#9b8cff;stroke-width:2.5}.activation-plot .probe{stroke:#d59b2a;stroke-width:1.2;stroke-dasharray:3 2}.activation-plot circle{fill:#ffc86b;stroke:#fff;stroke-width:1.5}.activation-plot text{fill:#718096;font-size:4px}.backprop-plot circle{fill:#9b8cff;stroke:#fff;stroke-width:1.5}.gradient-readout{display:grid;gap:.15rem;padding:.75rem .85rem;border-left:3px solid #9b8cff;border-radius:.7rem;background:#f2f0fc}.gradient-readout small,.gradient-readout span{color:#667389;font-size:.68rem}.gradient-readout strong{color:#302952;font:700 1.35rem Space Grotesk}.conv-layout{display:grid;grid-template-columns:1fr auto .72fr auto .72fr;gap:1rem;align-items:center;padding:1.25rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.grid-label{display:block;margin-bottom:.45rem;color:#68758a;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.pixel-grid{display:grid;gap:.25rem}.input-grid{grid-template-columns:repeat(5,1fr)}.kernel-grid,.output-grid{grid-template-columns:repeat(3,1fr)}.pixel-grid span,.pixel-grid button{display:grid;place-items:center;aspect-ratio:1;min-width:2rem;border:1px solid #d6dce7;border-radius:.35rem;color:#364157;background:#fff;font-size:.72rem}.input-grid span.selected{outline:2px solid #9b8cff;outline-offset:-2px}.output-grid button{cursor:pointer}.output-grid button.selected{border-color:#6f5bd6;color:#fff;background:#9b8cff}.conv-symbol{color:#77849a;font:700 1.4rem Space Grotesk}.conv-controls{display:grid;grid-template-columns:1.1fr .7fr 1.2fr;gap:1rem;align-items:center;margin-top:1rem}.conv-controls p{margin:0;color:#59667a;font-size:.82rem;line-height:1.5}.sequence-stage{min-height:20rem;display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem;padding:1.5rem 1rem;border:1px solid #dce3ed;border-radius:1rem;background:linear-gradient(180deg,#faf9ff,#f3f5f9)}.memory-step{flex:1;display:grid;justify-items:center;gap:.45rem;min-width:0}.memory-step>span{min-height:2rem;display:grid;place-items:center;color:#3f4960;font-size:.67rem;font-weight:700;text-align:center}.memory-step i{position:relative;display:flex;align-items:flex-end;width:1.25rem;height:9rem;overflow:hidden;border-radius:.7rem;background:#e1e5ed}.memory-step i b{display:block;width:100%;border-radius:.7rem;background:linear-gradient(180deg,#9b8cff,#6f5bd6);transition:height .3s}.memory-step small{color:#68758a;font-size:.65rem}.memory-verdict{display:grid;gap:.2rem;padding:.8rem;border-left:3px solid #d05d70;border-radius:.7rem;background:#fff1f3}.memory-verdict.kept{border-color:#2d9a79;background:#eaf8f3}.memory-verdict small,.memory-verdict span{color:#667389;font-size:.7rem}.memory-verdict strong{color:#273249;font:700 1.5rem Space Grotesk}@media(max-width:720px){.neuron-stage{min-height:31rem;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:.6rem;padding:1.25rem}.neuron-inputs{grid-template-columns:1fr 1fr;justify-items:center;gap:1rem}.neuron-inputs span{width:4.6rem;height:4.6rem}.neuron-stage svg{width:116%;min-height:17rem;margin:-.5rem -8%}.signal-meter{grid-column:1}.conv-layout{grid-template-columns:1fr auto 1fr}.conv-layout>:nth-child(4),.conv-layout>:nth-child(5){display:none}.conv-controls{grid-template-columns:1fr}.sequence-stage{overflow-x:auto}.memory-step{min-width:3rem}}.tradeoff-plot line{stroke:#c8d1dd}.tradeoff-plot polyline{fill:none;stroke-width:2.3}.tradeoff-plot .train-curve{stroke:#6ea8ff}.tradeoff-plot .validation-curve{stroke:#49b9a2}.tradeoff-plot .complexity-probe{stroke:#edaa43;stroke-dasharray:3 2}.tradeoff-plot circle{fill:#edaa43;stroke:#fff;stroke-width:1.4}.tradeoff-plot text{fill:#6c788c;font-size:4px}.forest-board{min-height:21rem;display:grid;align-content:center;gap:1.1rem;padding:1.2rem;border:1px solid #dce3ed;border-radius:1rem;background:linear-gradient(145deg,#f7fcfa,#eef7f4)}.tree-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.tree-grid span{display:grid;place-items:center;width:2.6rem;height:3.2rem;border-radius:1.2rem 1.2rem .45rem .45rem;color:#fff;box-shadow:0 6px 14px #26365316}.tree-grid .vote-a{background:#49b9a2}.tree-grid .vote-b{background:#d49bff}.tree-grid b{font:700 .9rem Space Grotesk}.tree-grid small{font-size:.62rem}.forest-result{display:flex;align-items:center;justify-content:center;gap:.6rem;color:#526075}.forest-result small{text-transform:uppercase;letter-spacing:.08em}.forest-result strong{color:#172033;font:700 1.1rem Space Grotesk}.boosting-plot line{stroke:#49b9a2;stroke-width:2}.boosting-plot circle{transition:r .25s}.boost-rounds{display:flex;gap:.4rem}.boost-rounds span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;color:#718096;background:#e5e9ef}.boost-rounds span.active{color:#fff;background:#49b9a2}.fold-board{min-height:21rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;align-content:center;padding:1.1rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.fold-board button{display:grid;grid-template-columns:1fr auto;gap:.25rem;padding:.7rem;border:1px solid #d8e0ea;border-radius:.7rem;color:#526075;background:#fff;text-align:left;cursor:pointer}.fold-board button b{color:#2d8f74;font-size:.65rem}.fold-board button small{grid-column:1/-1;color:#718096}.fold-board button.validation{border-color:#edaa43;background:#fff7e8}.fold-board button.validation b{color:#b87314}.cv-average{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:.8rem;border-radius:.7rem;background:#e9f6f2}.cv-average small{color:#587166}.cv-average strong{color:#176b57;font:700 1.25rem Space Grotesk}.confusion-board{min-height:21rem;display:grid;place-items:center;align-content:center;gap:.6rem;padding:1.1rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.confusion-axis{color:#718096;font-size:.68rem}.confusion-grid{display:grid;grid-template-columns:1fr 1fr;width:min(100%,20rem);gap:.45rem}.confusion-grid span{display:grid;place-items:center;min-height:6.5rem;border-radius:.8rem}.confusion-grid small{color:#536075}.confusion-grid b{color:#172033;font:700 2rem Space Grotesk}.confusion-grid .tp,.confusion-grid .tn{background:#e6f7f1}.confusion-grid .fp,.confusion-grid .fn{background:#fff0f2}.metric-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.metric-trio div{padding:.65rem;border-radius:.65rem;background:#eef2f7;text-align:center}.metric-trio small{display:block;color:#68758a}.metric-trio b{color:#172033}.cluster-map{min-width:0;min-height:22rem;display:grid;gap:.8rem;align-content:center;padding:1.1rem;border:1px solid #dce3ed;border-radius:1rem;background:linear-gradient(145deg,#fffaf1,#f6f7fa)}.master-node,.worker-node{min-width:0;display:grid;gap:.45rem;padding:.8rem;border:1px solid #d9e0e9;border-radius:.8rem;background:#fff}.master-node{grid-template-columns:1fr}.worker-row{min-width:0;display:grid;grid-template-columns:1fr;gap:.55rem}.worker-node{grid-template-columns:repeat(2,minmax(0,1fr))}.worker-node small{grid-column:1/-1}.master-node small,.worker-node small{color:#7a8699;font-size:.62rem;font-weight:700;letter-spacing:.08em}.master-node button,.worker-node button{min-width:0;width:100%;padding:.55rem .4rem;border:1px solid #d7dee8;border-radius:.55rem;color:#4f5c70;background:#f7f9fc;cursor:pointer}.worker-node button{padding-inline:.2rem;font-size:.75rem;white-space:nowrap}.master-node button.active,.worker-node button.active{border-color:#edaa43;color:#805611;background:#fff3d8}.role-card{display:grid;gap:.25rem;padding:1rem;border-left:3px solid #edaa43;border-radius:.8rem;background:#fff7e8}.role-card small{color:#8a6a35;text-transform:uppercase}.role-card strong{color:#5b421a;font:700 1.35rem Space Grotesk}.role-card p{margin:.25rem 0 0}.hdfs-nodes{min-height:22rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;padding:1.1rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.hdfs-nodes button{display:flex;flex-wrap:wrap;align-content:flex-start;gap:.45rem;padding:.9rem;border:1px solid #d8e0ea;border-radius:.8rem;color:#536075;background:#fff;cursor:pointer}.hdfs-nodes small,.hdfs-nodes b{width:100%;text-align:left}.hdfs-nodes span{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:.5rem;color:#744d0e;background:#ffe5ae}.hdfs-nodes b{margin-top:auto;color:#2d8f74;font-size:.67rem;text-transform:uppercase}.hdfs-nodes button.failed{opacity:.6;border-color:#d45d73;background:#fff1f3}.hdfs-nodes button.failed b{color:#a33a49}.read-path{min-height:21rem;display:grid;grid-template-columns:1fr;place-items:center;align-content:center;gap:.45rem;padding:1rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.path-node{min-width:9rem;padding:.75rem;border:2px solid #d3dbe6;border-radius:.75rem;color:#7a8699;background:#fff;text-align:center}.path-node.active{border-color:#edaa43;color:#6f4c14;box-shadow:0 7px 18px #edaa4322}.path-link{color:#96a1b1;font-size:.67rem;text-transform:uppercase}.path-link:before{content:"↓ "}.path-link.active.control{color:#397ed2}.path-link.active.bulk{color:#d58d19;font-weight:700}.mapreduce-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.mapreduce-flow>div{min-height:15rem;padding:1rem;border:1px solid #dce3ed;border-radius:.9rem;background:#f8fafc}.mapreduce-flow>div:nth-child(2),.mapreduce-flow>div:nth-child(4){background:#fff8e9}.mapreduce-flow small{color:#b2771b;font-weight:700;letter-spacing:.09em}.mapreduce-flow p{color:#4d5a6f;font:500 .74rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.document-picker{display:flex;gap:.5rem;margin-top:1rem}.document-picker button{padding:.6rem .8rem;border:1px solid #d7dee8;border-radius:.6rem;color:#536075;background:#fff;cursor:pointer}.document-picker button.active{border-color:#edaa43;background:#fff3d8}.traffic-board{min-height:21rem;display:grid;align-content:center;gap:1.2rem;padding:1.2rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.traffic-board>div:not(.mapper-row){display:grid;grid-template-columns:7rem 1fr 4rem;gap:.6rem;align-items:center;color:#536075;font-size:.72rem}.traffic-board i{height:.8rem;overflow:hidden;border-radius:1rem;background:#e0e5ec}.traffic-board i b{display:block;height:100%;border-radius:inherit;background:#edaa43;transition:width .25s}.traffic-board strong{color:#263248;text-align:right}.mapper-row{display:flex;align-items:center;gap:.45rem}.mapper-row span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.6rem;color:#7a5518;background:#ffe5ae}.mapper-row em{margin-left:auto;color:#7b8799;font-style:normal}@media(max-width:720px){.worker-row,.mapreduce-flow{grid-template-columns:1fr}.hdfs-nodes{grid-template-columns:1fr 1fr}.mapreduce-flow>div{min-height:auto}.document-picker{flex-wrap:wrap}}@media(max-width:460px){.worker-node{grid-template-columns:1fr}.worker-node small{grid-column:1;margin-bottom:.1rem}}.spark-cluster,.dag-board,.lineage-board,.collection-flow,.partition-board,.query-plan,.feature-vector,.evaluation-board,.model-match,.cap-network,.schema-card,.write-path,.window-board,.kafka-board,.offset-log,.delivery-flow,.watermark-board{min-height:21rem;padding:1.15rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.spark-cluster{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;align-content:center}.spark-driver,.spark-manager,.spark-storage{padding:.8rem;border:2px solid #d7dee8;border-radius:.75rem;color:#536075;background:#fff;text-align:center}.spark-storage{grid-column:1/-1}.spark-cluster small{display:block;color:#7b8799;font-size:.65rem}.spark-cluster .active{border-color:#e879a7;box-shadow:0 8px 18px #e879a720}.spark-workers{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.spark-workers>div{display:grid;gap:.25rem;padding:.65rem;border:2px solid #d7dee8;border-radius:.7rem;color:#59667a;background:#fff;text-align:center}.spark-workers i{color:#8a5570;font-size:.68rem;font-style:normal}.spark-cluster.running .spark-workers i{color:#fff;border-radius:.35rem;background:#e879a7}.role-tabs,.query-list{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.role-tabs button,.query-list button{padding:.6rem;border:1px solid #d5dde8;border-radius:.6rem;color:#536075;background:#fff;cursor:pointer}.role-tabs button.active,.query-list button.active{border-color:var(--lecture-color);background:color-mix(in srgb,var(--lecture-color) 10%,#fff)}.role-card.spark{border-color:#e879a7;background:#fff3f8}.viz-grid:has(>.dag-board){grid-template-columns:minmax(0,1.7fr) minmax(17rem,.75fr)}.dag-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;align-content:center;overflow:hidden}.dag-board>div:not(.stage-brace){position:relative;display:grid;align-content:center;gap:.25rem;min-width:0;min-height:5rem;padding:.75rem .35rem;border:1px solid #d8e0ea;border-radius:.65rem;background:#fff;text-align:center}.dag-board small{color:#7a8699;font-size:.5rem}.dag-board b{overflow-wrap:anywhere;color:#354158;font-size:.68rem}.dag-board>div:not(.stage-brace)>span{position:absolute;z-index:2;right:-.52rem;top:50%;width:.4rem;color:#9ba6b6;line-height:1;transform:translateY(-50%)}.dag-board>div:not(.stage-brace)>span.shuffle{color:#d26491;font-size:1rem}.dag-board .muted{opacity:.55}.dag-board .active{border-color:#e879a7;background:#fff1f7}.stage-brace{grid-column:1/-1;display:grid!important;grid-template-columns:3fr 2fr;gap:.65rem;margin-top:.35rem}.stage-brace span{padding:.35rem;border-top:2px solid #e879a7;color:#87536b;font-size:.65rem;text-align:center}.lineage-board{display:grid;gap:.65rem;align-content:center}.lineage-board>div{display:grid;grid-template-columns:5.5rem repeat(4,1fr);gap:.45rem;align-items:center}.lineage-board small{color:#68758a}.lineage-board button{padding:.6rem .25rem;border:1px solid #d7dee8;border-radius:.55rem;color:#4f5c70;background:#fff;cursor:pointer}.lineage-board button.replay{border-color:#e879a7;background:#fff0f6}.lineage-board button.failed{color:#9d324d;border-color:#d45d73;background:#fff0f2}.collection-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;place-items:center;align-content:center}.collection-flow>div{width:100%;padding:1.2rem .7rem;border-radius:.8rem;color:#354158;background:#fff;text-align:center}.collection-flow small{display:block;color:#7b8799}.collection-flow code{display:block;margin-top:.5rem;color:#7b3f60;font-size:.85rem}.collection-flow>span{color:#6f7c91}.collection-flow>span b{color:#d05b8e}.partition-board{display:flex;align-items:end;gap:.45rem}.partition-board>div{flex:1;display:flex;min-width:1rem;height:17rem;flex-direction:column;justify-content:flex-end;align-items:center;gap:.3rem}.partition-board span{width:100%;max-width:2.6rem;border-radius:.45rem .45rem 0 0;background:linear-gradient(#f09abc,#d65c8e)}.partition-board small{color:#6c788c;font-size:.6rem}.query-plan{display:grid;gap:.48rem;align-content:center}.query-plan>div{display:grid;grid-template-columns:6rem 1fr auto;gap:.6rem;padding:.65rem .75rem;border-left:3px solid #d4dce7;border-radius:.6rem;color:#68758a;background:#fff}.query-plan>div.active{border-color:#4ca6dd}.query-plan small{font-size:.58rem}.query-plan b{color:#344057}.query-plan span{color:#2975a5;font-size:.64rem}.pipeline-builder{display:grid;grid-template-columns:repeat(6,1fr);gap:.55rem}.pipeline-builder button{position:relative;display:grid;gap:.35rem;min-height:8rem;padding:.75rem .5rem;border:1px solid #d7dee8;border-radius:.8rem;color:#68758a;background:#f5f7fa;cursor:default}.pipeline-builder button:not(:last-child):after{content:"→";position:absolute;z-index:2;right:-.72rem;top:45%;color:#9aa5b5}.pipeline-builder button.next{border-color:#4ca6dd;background:#edf7fd;cursor:pointer}.pipeline-builder button.done{border-color:#6ec5b0;background:#eaf8f3}.pipeline-builder small{font-size:.55rem}.pipeline-builder b{overflow-wrap:anywhere;color:#344057}.pipeline-builder span{font-size:.65rem}.pipeline-footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:1rem}.feature-vector{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;align-content:center}.feature-vector>div{padding:.85rem;border-radius:.7rem;background:#fff;text-align:center}.feature-vector small,.feature-vector em{color:#718096}.feature-vector b{display:block;color:#263248}.feature-vector>span,.feature-vector>i,.feature-vector>em{grid-column:1/-1}.feature-vector>span{padding:.85rem;border-radius:.65rem;color:#2b698f;background:#e9f5fc;font:500 .78rem ui-monospace,monospace}.feature-vector>i{height:.8rem;overflow:hidden;border-radius:1rem;background:#e1e6ed}.feature-vector>i b{height:100%;background:#4ca6dd}.feature-vector em{font-size:.68rem;text-align:center}.distributed-kmeans circle:last-of-type{fill:#fff;stroke:#4ca6dd;stroke-width:2}.distributed-kmeans g circle{fill:#fff;stroke:#4ca6dd;stroke-width:2}.distributed-kmeans text{fill:#286f9e;font-size:5px;text-anchor:middle}.worker-summaries{display:grid;gap:.4rem}.worker-summaries span{display:flex;justify-content:space-between;padding:.55rem .65rem;border-radius:.55rem;color:#526075;background:#fff}.worker-summaries small{color:#718096}.evaluation-board{display:grid;align-content:center;gap:1.4rem}.evaluation-split{display:grid;grid-template-columns:7fr 3fr;gap:.4rem}.evaluation-split span{padding:1rem;border-radius:.7rem;color:#2d6c91;background:#dff1fb;text-align:center}.evaluation-split span:last-child{color:#795a16;background:#fff0c7}.evaluation-split b{font:700 1.25rem Space Grotesk}.score-gauge{display:grid;gap:.35rem;color:#667389}.score-gauge strong{color:#172033;font:700 2rem Space Grotesk}.score-gauge i{height:.8rem;overflow:hidden;border-radius:1rem;background:#e1e6ed}.score-gauge i b{display:block;height:100%;background:#4ca6dd}.model-match{display:grid;gap:1rem}.model-match>div:first-child{min-height:9rem;display:grid;place-items:center;align-content:center;gap:.6rem;padding:1rem;border-radius:1rem;background:#f1f4fa;text-align:center}.model-match>div:first-child small{color:#718096}.model-match>div:first-child strong{color:#263248;font:700 1.35rem Space Grotesk}.model-match .primary-button{justify-self:start}.hash-ring{position:relative;min-height:22rem;display:grid;place-items:center;border:1px solid #dce3ed;border-radius:50%;background:radial-gradient(circle,#fff 0,#fff 35%,#eef2fa 36%,#eef2fa 62%,#fff 63%)}.hash-ring>span{position:absolute;display:grid;place-items:center;width:3rem;height:3rem;border:2px solid #cbd5e4;border-radius:50%;color:#536075;background:#fff}.hash-ring>span.active{border-color:#7c9bdf;color:#fff;background:#7c9bdf}.hash-ring>div{display:grid;gap:.2rem;text-align:center}.hash-ring small,.hash-ring em{color:#718096;font-style:normal}.hash-ring b{color:#263248;font:700 1.8rem Space Grotesk}.cap-network{display:grid;grid-template-columns:1fr auto 1fr;gap:.8rem;place-items:center;align-content:center}.cap-network>div{padding:1.2rem;border:2px solid #7c9bdf;border-radius:.8rem;color:#344057;background:#fff;text-align:center}.cap-network small{display:block;margin-top:.35rem;color:#718096}.cap-network>span{color:#4f7c6e;font-size:.65rem}.cap-network.partitioned>span{padding:.7rem .25rem;color:#a03e50;border-top:3px dashed #d45d73;border-bottom:3px dashed #d45d73}.schema-card{display:grid;gap:.65rem;align-content:center}.schema-card>small{color:#637da8;letter-spacing:.08em}.schema-card>strong{color:#263248;font:700 1.45rem Space Grotesk}.schema-card>p{padding:1rem;border-radius:.7rem;color:#48566c;background:#fff;font:500 .8rem/1.5 ui-monospace,monospace}.schema-card>p b{color:#526fba}.schema-card>p em{color:#9b5b81}.schema-card>div{display:flex;justify-content:space-between;padding:.6rem;border-radius:.55rem;color:#68758a;background:#fff}.schema-card>div b{color:#2f3a50}.write-path{display:grid;gap:.6rem;align-content:center}.write-path>div{display:grid;grid-template-columns:2rem 1fr auto;gap:.65rem;align-items:center;padding:.65rem;border:1px solid #d7dee8;border-radius:.65rem;color:#7a8699;background:#fff}.write-path>div>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#edf1f6}.write-path>div.active{border-color:#7c9bdf;color:#334057}.write-path>div.active>span{color:#fff;background:#7c9bdf}.write-path small{font-size:.65rem}.segmented.three{grid-template-columns:repeat(3,1fr)!important}.window-board{position:relative;overflow:hidden}.event-line{position:absolute;left:4%;right:4%;top:3.5rem;height:2px;background:#aab5c3}.event-line span{position:absolute;display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;color:#fff;background:#34ad8b;font-size:.6rem;transform:translate(-50%,-50%)}.stream-window{position:relative;top:8rem;height:5rem;margin-left:4%;border:2px solid #34ad8b;border-radius:.6rem;background:#34ad8b15}.stream-window+.stream-window{margin-top:-4rem;top:8.5rem}.stream-window small{position:absolute;left:.35rem;bottom:.3rem;color:#267c65}.kafka-board{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;overflow:auto}.kafka-board>div{display:flex;min-width:7rem;flex-direction:column;gap:.4rem;padding:.65rem;border:1px solid #d8e0e9;border-radius:.7rem;background:#fff}.kafka-board small{color:#718096;font-size:.58rem}.kafka-board span{display:grid;grid-template-columns:1.5rem 1fr;gap:.4rem;padding:.45rem;border-radius:.45rem;color:#316f60;background:#e8f7f2}.kafka-board span b{color:#718096}.offset-log{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem;align-content:center}.offset-log>div:not(.offset-legend){display:grid;place-items:center;min-height:6rem;border:2px solid #d7dee8;border-radius:.7rem;color:#68758a;background:#fff}.offset-log>div.committed{border-color:#34ad8b;background:#e8f7f2}.offset-log>div.processed{border-color:#edaa43;background:#fff7e8}.offset-log small{color:#8792a3}.offset-log b{color:#263248;font-size:1.25rem}.offset-legend{grid-column:1/-1;display:flex;gap:1rem;justify-content:center;color:#718096;font-size:.65rem}.delivery-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:.5rem;place-items:center;align-content:center}.delivery-flow>div{padding:1rem .55rem;border:1px solid #d7dee8;border-radius:.7rem;color:#344057;background:#fff;text-align:center}.delivery-flow>strong{grid-column:1/-1;color:#278369}.delivery-flow.crashed>strong{color:#aa3e50}.watermark-board{position:relative;overflow:hidden;background:linear-gradient(90deg,#f2f4f8 0,#f2f4f8 50%,#f8fafc 50%)}.watermark-board:after{content:"event time →";position:absolute;left:1rem;bottom:.7rem;color:#7a8699;font-size:.65rem}.watermark-line{position:absolute;top:1rem;bottom:2rem;border-left:2px dashed #d45d73}.watermark-line>span{position:absolute;top:0;left:.25rem;color:#a43c4e;font-size:.6rem;white-space:nowrap}.watermark-board>div:not(.watermark-line){position:absolute;display:grid;grid-template-columns:1.5rem 1fr;gap:.4rem;padding:.35rem .45rem;border:1px solid #8acbb8;border-radius:.45rem;color:#236b58;background:#e8f7f2;transform:translate(-50%)}.watermark-board>div.late{border-color:#df8c98;color:#a13d4c;background:#fff0f2}.watermark-board small{color:inherit;font-size:.58rem;white-space:nowrap}@media(max-width:760px){.pipeline-builder{grid-template-columns:1fr 1fr}.pipeline-builder button:not(:last-child):after{display:none}.pipeline-footer{align-items:flex-start;flex-direction:column}.viz-grid:has(>.dag-board){grid-template-columns:1fr}.dag-board{grid-template-columns:1fr;gap:1.35rem;overflow:visible}.dag-board>div:not(.stage-brace)>span{right:50%;top:auto;bottom:-1.05rem;transform:translate(50%) rotate(90deg)}.stage-brace{display:none!important}.spark-workers,.kafka-board,.collection-flow,.cap-network,.delivery-flow{grid-template-columns:1fr}.delivery-flow>span{transform:rotate(90deg)}.hash-ring{min-height:19rem}.offset-log{grid-template-columns:repeat(3,1fr)}.role-tabs{grid-template-columns:1fr}}.tutorial-lab{display:grid;gap:1.35rem}.tutorial-lab>h2,.tutorial-lab>p{margin-top:0;margin-bottom:0}.lab-meta{display:grid;grid-template-columns:1.25fr 1fr .55fr;gap:.7rem}.lab-meta>span{min-height:4.2rem;display:flex;flex-direction:column;justify-content:center;gap:.25rem;padding:.75rem .9rem;border:1px solid #dde4ee;border-radius:.8rem;background:#f7f9fc}.lab-meta small,.lab-summary small{color:#718096;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.lab-meta b{color:#263248;font-size:.78rem;line-height:1.35}.lab-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.lab-stepper button{display:flex;align-items:center;gap:.55rem;min-height:3.7rem;padding:.55rem .65rem;border:1px solid #d7dee9;border-radius:.75rem;color:#5c687c;background:#fff;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.lab-stepper button:hover{transform:translateY(-1px);border-color:var(--lecture-color)}.lab-stepper button.active{border-color:var(--lecture-color);background:color-mix(in srgb,var(--lecture-color) 10%,#fff)}.lab-stepper button.done{border-color:#85cbb6}.lab-stepper button>span{display:grid;place-items:center;flex:0 0 1.65rem;height:1.65rem;border-radius:50%;color:#637086;background:#edf1f6;font-size:.72rem}.lab-stepper button.active>span{color:#fff;background:var(--lecture-color)}.lab-stepper button.done>span{color:#fff;background:#2d9a79}.lab-stepper svg{width:.9rem}.lab-stepper b{font-size:.75rem;line-height:1.25}.lab-workspace{display:grid;grid-template-columns:.9fr 1.1fr;gap:1rem}.lab-instructions{padding:1.2rem;border:1px solid #dce3ed;border-radius:1rem;background:#f8fafc}.lab-task-count{color:var(--lecture-color);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.lab-instructions h3,.lab-check h3{margin:.35rem 0 .65rem;color:#172033;font:600 1.08rem Space Grotesk}.lab-instructions>p{margin:0;color:#536075;font-size:.88rem;line-height:1.65}.lab-outcome{display:flex;flex-direction:column;gap:.18rem;margin-top:1rem;padding:.7rem .8rem;border-left:3px solid var(--lecture-color);background:#fff}.lab-outcome small{color:#718096;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.lab-outcome span{color:#334057;font-size:.8rem;line-height:1.4}.lab-hint-button{margin-top:.7rem;padding-left:0;color:#536782}.lab-hint{margin-top:.25rem;padding:.7rem .8rem;border-radius:.65rem;color:#705518;background:#fff5d9;font-size:.8rem;line-height:1.5}.code-card{overflow:hidden;min-width:0;border:1px solid #24324b;border-radius:1rem;background:#111827;box-shadow:0 16px 30px #26365318}.code-card-top{display:flex;align-items:center;gap:.35rem;height:2.35rem;padding:0 .8rem;border-bottom:1px solid #26354f;background:#172136}.code-card-top span{width:.55rem;height:.55rem;border-radius:50%;background:#ff7d8b}.code-card-top span:nth-child(2){background:#ffc75f}.code-card-top span:nth-child(3){background:#70d8b7}.code-card-top b{margin-left:.45rem;color:#94a3b8;font:500 .72rem DM Sans}.code-card pre{min-height:14rem;margin:0;padding:1.2rem;overflow:auto;color:#dce8ff;font:500 .8rem/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;-moz-tab-size:2;tab-size:2}.code-card code{font-family:inherit}.lab-check{display:grid;grid-template-columns:1fr 1.4fr;gap:.8rem 1rem;align-items:start;padding:1.1rem;border:1px solid #dce3ed;border-radius:1rem;background:#fff}.lab-check>div:first-child small{color:var(--lecture-color);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.lab-check-options{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.lab-check-options button{display:flex;align-items:center;justify-content:space-between;min-height:2.8rem;padding:.6rem .7rem;border:1px solid #d6dde8;border-radius:.65rem;color:#344057;background:#f8fafc;text-align:left;cursor:pointer}.lab-check-options button.selected{border-color:var(--lecture-color);background:color-mix(in srgb,var(--lecture-color) 9%,#fff)}.lab-check-options button.correct{border-color:#56ad91;color:#176b57;background:#e9f8f3}.lab-check-options button.wrong{border-color:#df7b89;color:#9e3544;background:#fff0f2}.lab-check-options svg{flex:0 0 1rem;width:1rem}.lab-check-button,.lab-next{justify-self:start;margin:0}.lab-next{grid-column:2}.lab-feedback{grid-column:1/-1;display:flex;gap:.45rem;align-items:flex-start;padding:.75rem .85rem;border-radius:.7rem;font-size:.82rem;line-height:1.45}.lab-feedback b{white-space:nowrap}.lab-feedback span{color:#536075}.lab-feedback.correct{color:#176b57;background:#eaf8f3}.lab-feedback.wrong{color:#9e3544;background:#fff0f2}.lab-feedback .text-button{margin-left:auto;padding:0;white-space:nowrap}.lab-summary{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:1rem 1.1rem;border-radius:1rem;color:#425069;background:#f1f4f8}.lab-summary>div:first-child{display:flex;flex-direction:column;gap:.18rem}.lab-summary strong{color:#263248;font:600 .92rem Space Grotesk}.lab-summary span{font-size:.78rem;line-height:1.4}.lab-summary.complete{background:#eaf8f3}.lab-progress-ring{--lab-progress:0%;display:grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:50%;background:radial-gradient(circle closest-side,#fff 74%,transparent 76% 99%),conic-gradient(var(--lecture-color) var(--lab-progress),#dbe2eb 0)}.lab-progress-ring b{color:#263248;font-size:.72rem}@media(max-width:920px){.lab-meta{grid-template-columns:1fr 1fr}.lab-meta>span:last-child{grid-column:1/-1;min-height:3.4rem}.lab-stepper{grid-template-columns:1fr 1fr}.lab-workspace{grid-template-columns:1fr}}@media(max-width:560px){.lab-meta,.lab-stepper,.lab-check,.lab-check-options{grid-template-columns:1fr}.lab-meta>span:last-child,.lab-next{grid-column:1}.lab-summary{grid-template-columns:1fr auto}.lab-summary>.text-button{grid-column:1/-1;justify-self:start}.lab-feedback{flex-wrap:wrap}.lab-feedback .text-button{width:100%;margin-left:0}}.dag-board small{font-size:.44rem}.dag-board b{overflow-wrap:normal;font-size:.62rem;white-space:nowrap}
