@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#e8f3f7;font-synthesis:none;background:#071827;font-family:DM Sans,system-ui,sans-serif;font-size:16px;line-height:1.45}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:#58e5ce}input,textarea,select{accent-color:#38e9cb}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline-offset:3px;outline:2px solid #53edcf}h1,h2,h3,p{margin-top:0}.app-shell{background:radial-gradient(circle at 54% -20%,#153651 0,#0000 40%),#071827;min-height:100vh}.global-header{background:#0b1d30;border-bottom:1px solid #234259;justify-content:space-between;align-items:center;gap:20px;height:67px;padding:0 28px;display:flex}.brand{letter-spacing:-.055em;color:#f5fcfd;white-space:nowrap;align-items:center;gap:11px;font-family:Space Grotesk,sans-serif;font-size:1.4rem;font-weight:700;text-decoration:none;display:flex}.brand em{color:#38e9cb;font-style:normal}.brand-mark{color:#042724;background:#40ebcd;border-radius:8px;place-items:center;width:31px;height:31px;font-size:1.1rem;display:grid}.header-current{color:#bdd2dd;white-space:nowrap;align-items:center;gap:10px;font-size:.82rem;display:flex}.header-dot{background:#43edc9;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #43edc9}.header-divider{color:#577789}.app-body{grid-template-columns:248px minmax(0,1fr);display:grid}.sidebar{background:#0a2033;border-right:1px solid #234259;flex-direction:column;gap:16px;min-height:calc(100vh - 67px);padding:27px 13px 20px;display:flex}.sidebar-caption,.sidebar-bottom-label{letter-spacing:.16em;color:#7fa6b8;padding:0 12px;font-size:.68rem;font-weight:700}.sidebar nav{gap:5px;display:grid}.lesson-link{color:#b9cbd6;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;min-height:52px;padding:10px 9px;text-decoration:none;display:flex}.lesson-link:hover{color:#f3fcfd;background:#15344a}.lesson-link.active{color:#082a31;background:linear-gradient(110deg,#38efcc,#37ddc7);box-shadow:0 7px 25px #21d9bc18}.lesson-number{border:1px solid #55778c;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-family:Space Grotesk;font-size:.72rem;font-weight:700;display:grid}.lesson-link.active .lesson-number{color:#5ef8df;background:#0b3340;border-color:#0b3340}.lesson-link strong{font-size:.83rem;line-height:1.15;display:block}.lesson-link small{opacity:.75;margin-top:3px;font-size:.71rem;line-height:1.25;display:block}.sidebar-bottom{border-top:1px solid #23465d;margin-top:auto;padding:20px 12px 0}.sidebar-bottom-label{padding:0}.sidebar-bottom strong{margin:7px 0 3px;font-family:Space Grotesk;font-size:.87rem;display:block}.sidebar-bottom p{color:#91aebe;margin:0;font-size:.76rem}.main-workspace{width:100%;min-width:0;max-width:1680px;margin:0 auto;padding:26px clamp(20px,3vw,46px) 45px}.lesson-intro{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:21px;display:flex}.eyebrow{color:#57edcf;letter-spacing:.14em;margin-bottom:4px;font-size:.7rem;font-weight:700}.eyebrow span{color:#64879a;margin:0 5px}.lesson-intro h1{letter-spacing:-.055em;margin:0 0 7px;font-family:Space Grotesk,sans-serif;font-size:clamp(2.05rem,3vw,2.8rem);line-height:1.08}.lesson-intro p{color:#a8c4d1;max-width:710px;margin:0;font-size:.94rem}.source-pill{background:#112c42;border:1px solid #294a61;border-radius:11px;min-width:210px;max-width:275px;padding:10px 12px;line-height:1.25}.source-pill span{color:#54dec6;letter-spacing:.14em;margin-bottom:4px;font-size:.62rem;font-weight:700;display:block}.source-pill strong{color:#bcd6dd;font-size:.73rem;font-weight:600}.workspace-footer{color:#779bad;margin-top:24px;font-size:.75rem}.panel{background:#10283d;border:1px solid #2a4c63;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 12px 35px #020a1530}.panel-heading{justify-content:space-between;align-items:center;gap:10px;padding:16px 18px 0;display:flex}.panel-heading h2{letter-spacing:-.025em;margin:0;font-family:Space Grotesk,sans-serif;font-size:1.07rem;font-weight:700}.panel-detail{color:#a7bfcc;font-size:.75rem}.panel-content{padding:15px 18px 18px}.panel-kicker{letter-spacing:.14em;color:#6debd1;font-size:.66rem;font-weight:700}.embedding-workspace{grid-template-columns:minmax(0,1.85fr) minmax(290px,1fr);gap:14px;display:grid}.embedding-plot-panel{grid-column:1}.embedding-inspector{grid-area:1/2}.training-panel,.embedding-bottom{grid-column:1/-1}.plot-legend{color:#a5becc;justify-content:flex-end;align-items:center;gap:18px;margin:-4px 1px 6px;font-size:.71rem;display:flex}.plot-legend span{align-items:center;gap:6px;display:flex}.legend-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.legend-dot.mint{background:#49eacb}.legend-dot.outline{border:1px solid #6b9bb0}.legend-line{background:#427f83;width:15px;height:1px;display:inline-block}.embedding-svg{background:#0b2237;border:1px solid #23465e;border-radius:9px;width:100%;height:auto;min-height:250px;max-height:390px;display:block}.chart-grid{stroke:#24465d;stroke-width:1px}.chart-axis{stroke:#4b7890;stroke-width:1.25px}.axis-label{fill:#82a8ba;font-family:DM Sans,sans-serif;font-size:12px}.movement-line{stroke:#3fc7b6;stroke-width:1.5px;stroke-dasharray:4 4;opacity:.55}.initial-point{fill:none;stroke:#7ca8b8;stroke-width:1.4px}.current-point{fill:#3aebcc;stroke:#b2ffec;stroke-width:1.5px;filter:drop-shadow(0 0 7px #24dabcaa);transition:cx .18s,cy .18s}.current-point.selected{fill:#ffcf78;stroke:#fff0bd;filter:drop-shadow(0 0 8px #ffc26b)}.point-label{fill:#b6eced;paint-order:stroke;stroke:#0b2237;stroke-width:4px;stroke-linejoin:round;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:x .18s,y .18s}.point-label.selected{fill:#ffe0a8}.plot-point{cursor:pointer}.plot-caption{color:#8fb0c1;justify-content:space-between;gap:18px;margin-top:9px;font-size:.75rem;display:flex}.plot-caption strong{color:#dbf6f1;font-weight:700}.embedding-inspector .panel-content{gap:13px;display:grid}.inspector-target{background:#13374a;border:1px solid #2b5c6f;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;display:flex}.inspector-target span{color:#a6c1cd;font-size:.73rem}.inspector-target strong{color:#76f7db;border:1px solid #3adbbe;border-radius:7px;padding:5px 14px;font-size:.88rem}.inspector-label{color:#95b9c9;letter-spacing:.12em;font-size:.67rem;font-weight:700}.probability-bars{gap:9px;min-width:0;display:grid}.probability-row{color:#c3dbe1;grid-template-columns:minmax(55px,85px) minmax(40px,1fr) 45px;align-items:center;gap:8px;font-size:.76rem;display:grid}.probability-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.probability-row strong{text-align:right;font-variant-numeric:tabular-nums;color:#b6d3dd;font-weight:600}.probability-row.is-selected>span,.probability-row.is-selected strong{color:#67f5da}.bar-track{background:#1e4059;border-radius:3px;height:12px;overflow:hidden}.bar-fill{background:#45e6c6;border-radius:3px;height:100%;transition:width .18s}.loss-box{border-top:1px solid #29506a;grid-template-columns:1fr auto;column-gap:8px;margin-top:6px;padding-top:13px;display:grid}.loss-box span{color:#bdd2d9;font-size:.78rem}.loss-box strong{color:#58efd4;font-variant-numeric:tabular-nums;font-family:Space Grotesk;font-size:1.65rem;line-height:1}.loss-box small{color:#83a8b9;grid-column:1/-1;margin-top:5px;font-size:.72rem}.fine-print{color:#8fb0bf;margin:11px 0 0;font-size:.77rem;line-height:1.5}.training-flow{grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr);align-items:center;gap:10px;display:grid}.flow-stage{background:#16364d;border:1px solid #2a4e65;border-radius:8px;align-content:center;gap:4px;min-height:65px;padding:11px 13px;display:grid}.flow-stage>span{color:#9cbac8;font-size:.72rem}.flow-stage strong{overflow-wrap:anywhere;font-family:Space Grotesk;font-size:.93rem;font-weight:600}.vector-stage strong{color:#93dded}.flow-connector{text-align:center;color:#81a9bc;font-size:1.6rem}.mint-text{color:#66f0d5}.training-controls{background:#0d253a;border:1px solid #294e65;border-radius:8px;flex-wrap:wrap;align-items:center;gap:18px;margin-top:12px;padding:10px 11px;display:flex}.segmented{background:#0a2336;border:1px solid #3c6072;border-radius:8px;gap:3px;padding:3px;display:inline-flex}.segmented button{color:#b6d0d7;white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:7px 11px;font-size:.77rem;font-weight:700}.segmented button:hover{background:#1d4760}.segmented button.selected{color:#052b30;background:#3be5c7}.range-control{color:#b7ced6;white-space:nowrap;align-items:center;gap:8px;font-size:.75rem;display:flex}.range-control strong{color:#e3f8f5;font-variant-numeric:tabular-nums;min-width:28px}.range-control input{width:100px}.training-buttons{flex-wrap:wrap;gap:7px;margin-left:auto;display:flex}.button{color:#d9f1f2;background:#1b4057;border:1px solid #456d7c;border-radius:7px;min-height:36px;padding:8px 12px;font-size:.77rem;font-weight:700;transition:background .16s,transform .16s}.button:hover{background:#2a5870}.button:active{transform:translateY(1px)}.button-primary{color:#063039;background:#3eebcb;border-color:#3eebcb}.button-primary:hover{background:#85f5de}.button-quiet{background:0 0}.embedding-bottom{grid-template-columns:minmax(0,1.85fr) minmax(290px,1fr);gap:14px;display:grid}.side-notes{align-content:start;gap:14px;display:grid}.stat-row{grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:15px;display:grid}.stat{background:#0c2235;border:1px solid #284e63;border-radius:8px;min-width:0;padding:9px 11px}.stat strong{letter-spacing:-.03em;color:#eaf8f8;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-family:Space Grotesk;font-size:1.32rem;line-height:1.1;display:block}.stat.mint strong{color:#60efd5}.stat.amber strong{color:#ffcb7f}.stat span{color:#8eb0be;text-transform:uppercase;letter-spacing:.08em;margin-top:5px;font-size:.61rem;display:block}.formula-block{background:#0a2032;border:1px solid #2b5267;border-radius:8px;padding:12px 13px}.formula-text{color:#a6f7e5;font-variant-numeric:tabular-nums;font-family:Space Grotesk,sans-serif;font-size:.92rem;line-height:1.7;overflow:auto}.formula-block p{color:#94b1be;margin:8px 0 0;font-size:.76rem}.challenge{color:#c6dce2;background:#143249;border:1px solid #315b70;border-radius:9px;padding:12px 14px}.challenge summary{cursor:pointer;font-size:.78rem;font-weight:600}.challenge summary span{color:#62e7ce;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:.64rem;display:block}.challenge p{color:#a8cbce;margin:10px 0 0;font-size:.78rem}.concept-note{color:#b4d3d8;background:#102e42;border-left:3px solid #3be7c6;border-radius:0 9px 9px 0;padding:12px 14px}.concept-note strong{color:#dcf7f1;font-size:.78rem}.concept-note p{margin:5px 0 0;font-size:.77rem;line-height:1.5}.empty-state{color:#9bbac7;background:#0b2235;border:1px dashed #385d70;border-radius:9px;padding:20px;font-size:.86rem}.lab-grid{grid-template-columns:minmax(0,1.75fr) minmax(290px,1fr);align-items:start;gap:14px;display:grid}.lab-stack{gap:14px;min-width:0;display:grid}.lab-wide{grid-column:1/-1}.control-field{gap:6px;margin-bottom:13px;display:grid}.control-field:last-child{margin-bottom:0}.control-field label,.field-label{color:#bcd1db;font-size:.79rem;font-weight:700}.control-field small{color:#87a9b8;font-size:.73rem}.text-input,.number-input,.text-area,.select-input{color:#edf9fa;background:#0a2134;border:1px solid #395a6d;border-radius:8px;outline:none;width:100%;min-height:38px;padding:9px 11px;font-size:.85rem}.text-area{resize:vertical;min-height:95px}.control-row{flex-wrap:wrap;align-items:flex-end;gap:11px;display:flex}.control-row>.control-field{flex:1;min-width:105px}.control-row .control-field{margin-bottom:0}.checkbox-line{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.checkbox-line label{color:#b8d0d8;align-items:center;gap:5px;font-size:.78rem;display:flex}.checkbox-line input{width:17px;height:17px}.button-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button-line .subtle{color:#8fb0bf;font-size:.76rem}.token-list{flex-wrap:wrap;gap:6px;display:flex}.token-chip{color:#d9f4ef;background:#174055;border:1px solid #3d6b80;border-radius:6px;padding:6px 9px;font-family:Space Grotesk;font-size:.79rem}.token-chip.repeated{color:#062b31;background:#39e6c7;border-color:#39e6c7}.token-chip.alt{background:#1a3657;border-color:#4766a0}.subheading{color:#9bbbc8;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:.76rem;font-weight:700}.divider{border:0;border-top:1px solid #2b5067;margin:16px 0}.math-lines{gap:6px;display:grid}.math-line{color:#afc9d1;background:#0d2538;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:.79rem;display:flex}.math-line strong{color:#e7f4f4;font-variant-numeric:tabular-nums;font-weight:700}.math-line .mint-text{color:#68eed7}.matrix-scroll{max-width:100%;overflow:auto}.matrix{border-collapse:separate;border-spacing:3px;font-variant-numeric:tabular-nums;min-width:max-content;font-size:.76rem}.matrix th{color:#a8c4cf;min-width:30px;padding:5px;font-weight:700}.matrix td{text-align:center;color:#d7edef;background:#1b4055;border-radius:5px;min-width:33px;height:32px;padding:2px 6px}.matrix td.selectable{cursor:pointer}.matrix td.selectable:hover{outline:1px solid #72eed5}.matrix td.selected{color:#072d31;background:#42e6c8;font-weight:700}.matrix td.path{background:#376e78}.matrix td.muted{color:#688a9b;background:#112c41}.matrix th:first-child{z-index:1;background:#10283d;position:sticky;left:0}.callout{color:#b9d3d8;background:#17384d;border-left:3px solid #50ebcf;border-radius:0 8px 8px 0;padding:12px 14px;font-size:.79rem;line-height:1.5}.callout strong{color:#e5f7f4}.micro-copy{color:#8eafbd;margin:9px 0 0;font-size:.76rem;line-height:1.5}.split-block{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.count-grid{flex-wrap:wrap;gap:8px;display:flex}.count-grid label{color:#adc5cd;gap:3px;font-size:.72rem;display:grid}.count-grid input{width:64px}.two-bar-rows{gap:10px;display:grid}.compare-bar{color:#c0d6dc;grid-template-columns:80px 1fr 50px;align-items:center;gap:8px;font-size:.75rem;display:grid}.compare-bar .bar-track{height:10px}.compare-bar .bar-fill.original{background:#f2ba70}.compare-bar .bar-fill.adjusted{background:#44e5c7}.compare-bar strong{text-align:right;font-variant-numeric:tabular-nums}.compare-key{color:#8eb3bf;gap:16px;margin-bottom:11px;font-size:.71rem;display:flex}.compare-key i{background:#43e6c7;border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.compare-key .original i{background:#f2ba70}.sequence-line{flex-wrap:wrap;gap:5px;display:flex}.sequence-token{background:#153b50;border:1px solid #3c6174;border-radius:6px;gap:3px;padding:6px 8px;font-size:.74rem;display:grid}.sequence-token small{color:#92bac5}.sequence-token.zero{background:#3d3440;border-color:#936b54}.axis-caption{color:#8eafbd;font-size:.73rem}.network-diagram{grid-template-columns:1fr 30px 1fr 30px 1fr;align-items:center;gap:8px;display:grid}.network-layer{text-align:center;background:#12344a;border:1px solid #31566a;border-radius:8px;padding:18px 10px}.network-layer span{color:#93b5c1;margin-bottom:6px;font-size:.72rem;display:block}.network-layer strong{font-family:Space Grotesk;font-size:.95rem}.network-arrow{text-align:center;color:#6bd6c7;font-size:1.5rem}.weight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.weight-grid label{color:#9fbac6;gap:4px;font-size:.7rem;display:grid}.weight-grid input{width:100%}@media (width<=1180px){.app-body{grid-template-columns:214px minmax(0,1fr)}.main-workspace{padding:25px 20px}.embedding-workspace,.embedding-bottom,.lab-grid{grid-template-columns:minmax(0,1fr) minmax(250px,.75fr)}.training-controls{gap:11px}.training-buttons{margin-left:0}}@media (width<=900px){.embedding-workspace,.embedding-bottom,.lab-grid{grid-template-columns:1fr}.embedding-inspector{grid-area:auto/1}.training-panel,.embedding-bottom,.lab-wide{grid-column:1}.embedding-svg{max-height:350px}.lesson-intro{flex-direction:column;gap:11px}.source-pill{width:100%;max-width:none}}@media (width<=700px){.global-header{height:56px;padding:0 15px}.brand{font-size:1.12rem}.brand-mark{width:25px;height:25px;font-size:.88rem}.header-current{display:none}.app-body{display:block}.sidebar{border-bottom:1px solid #234259;border-right:0;min-height:0;padding:9px 12px 10px;display:block}.sidebar-caption,.sidebar-bottom{display:none}.sidebar nav{scrollbar-width:thin;gap:6px;display:flex;overflow-x:auto}.lesson-link{flex:none;min-height:42px;padding:6px 9px}.lesson-number{width:23px;height:23px;font-size:.65rem}.lesson-link small{display:none}.lesson-link strong{font-size:.875rem}.main-workspace{padding:20px 14px 40px}.lesson-intro h1{font-size:2rem}.source-pill{min-width:0}.panel-heading{padding:13px 14px 0}.panel-content{padding:13px 14px 14px}.embedding-svg{min-height:210px}.plot-legend{flex-wrap:wrap;justify-content:flex-start;gap:8px;font-size:.62rem}.plot-caption{flex-wrap:wrap;gap:4px}.training-flow,.network-diagram{grid-template-columns:1fr}.flow-connector,.network-arrow{text-align:center;line-height:1;transform:rotate(90deg)}.training-controls{display:grid}.training-buttons{margin:0}.training-buttons .button{flex:1}.stat-row{gap:5px}.stat{padding:7px}.stat strong{font-size:1.05rem}.stat span{font-size:.55rem}.split-block{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.lesson-link strong,.control-field label,.field-label,.button,.segmented button,.probability-row,.math-line,.micro-copy,.fine-print,.callout,.challenge summary,.challenge p,.concept-note p,.flow-stage>span,.inspector-target span,.loss-box span{font-size:.875rem}.lesson-intro p{font-size:1rem}.source-pill strong,.plot-caption,.panel-detail,.count-grid label,.sequence-token,.training-controls .range-control{font-size:.875rem}.sidebar-bottom p,.lesson-link small,.stat span,.inspector-label,.panel-kicker{font-size:.75rem}.plot-header-actions{align-items:center;gap:12px;display:flex}.plot-header-actions .button{min-height:34px;padding:5px 9px;font-size:.875rem}.word-picker,.mobile-nav-hint{display:none}@media (width<=700px){.sidebar-caption{justify-content:space-between;padding:0 4px 7px;font-size:.7rem;display:flex}.mobile-nav-hint{letter-spacing:0;text-transform:none;display:block}.plot-header-actions .panel-kicker{display:none}.plot-header-actions .button{font-size:.875rem}.word-picker{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.word-picker button{color:#cce6e9;background:#17384d;border:1px solid #3b6578;border-radius:5px;padding:4px 8px;font-size:.875rem}.word-picker button.active{color:#072d32;background:#46e6c9;border-color:#46e6c9}.plot-point .point-label:not(.selected){display:none}.plot-point .point-label.selected{font-size:20px}}
