@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{color-scheme:dark;--bg:#090c11;--panel:#10141b;--border:#252b34;--text:#ebeee9;--muted:#8b949f;--green:#c0f280;--amber:#f1bd76;--font:'DM Sans',system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.6}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--green);outline-offset:4px}button{transition:background .2s,transform .2s}button:hover:not(:disabled){filter:brightness(1.1)}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.topbar{height:88px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;font-size:22px;letter-spacing:-.8px;gap:6px}.brand strong{font-weight:700}.brand-mark{font-size:39px;line-height:1;color:var(--green);margin-right:10px}.edition{font-size:9px;letter-spacing:1.7px;margin-left:21px;border-left:1px solid var(--border);padding-left:21px;color:var(--muted)}.model-state{display:flex;align-items:center;gap:9px;color:#a2aab3;font-size:12px}.model-state i,footer i,.live-label i,.output-label i{width:6px;height:6px;background:#75808c;border-radius:50%;display:inline-block}.model-state i.ready,.live-label i,footer i{background:var(--green);box-shadow:0 0 12px #c0f24044}.app-shell{max-width:1640px;padding:0 4%;margin:auto}.tabs{display:flex;gap:9px;padding:24px 0 0;border-bottom:1px solid var(--border)}.tab{display:flex;gap:12px;align-items:center;border:0;background:none;color:var(--muted);padding:17px 26px 21px;position:relative;font-size:14px}.tab span{font-size:11px;color:#65707d}.tab i{font-style:normal;opacity:0;margin-left:13px}.tab.active{color:var(--green)}.tab.active span{color:var(--green)}.tab.active i{opacity:1}.tab.active:after{content:'';position:absolute;height:2px;background:var(--green);bottom:-1px;left:20px;right:20px}.page{display:none;animation:appear .3s ease}.page.active{display:block}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:43px 0 30px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--green);margin:0 0 16px}h1{font-family:'Manrope',var(--font);font-size:clamp(29px,3vw,46px);font-weight:500;line-height:1.24;letter-spacing:-1.7px;margin:0 0 15px}h1 em{font-style:normal;color:var(--green)}.lead{color:var(--muted);font-size:15px;line-height:1.75;margin:0}.outline-tag{border:1px solid var(--border);color:#8f9b8b;border-radius:30px;font-size:9px;letter-spacing:1.3px;padding:9px 13px;white-space:nowrap}.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:25px;min-width:0}.learn-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:22px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.panel-heading h2{font-size:15px;letter-spacing:-.2px;font-weight:550;margin:0}.panel-heading>.muted{font-size:9px;letter-spacing:1.5px}.tiny-icon{font-size:18px;color:var(--green);margin-right:9px}.muted{color:var(--muted)}.dataset{display:flex;align-items:center;gap:15px;border:1px solid #475639;border-radius:9px;padding:18px 15px;background:#c0f20705;cursor:pointer}.dataset:has(input:not(:checked)){border-color:var(--border);background:transparent}.dataset input{accent-color:var(--green);width:15px;height:15px}.file-icon{font-size:10px;color:var(--green);border:1px solid #50633f;border-radius:5px;padding:10px 7px;background:#c0f20808}.file-info{flex:1;min-width:0}.file-info strong{display:block;font-size:14px;font-weight:550}.file-info small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.tag{background:#c0f2130c;color:var(--green);border-radius:4px;padding:4px 8px;font-size:8px;letter-spacing:1.2px;white-space:nowrap}.file-actions{display:flex;justify-content:space-between;margin:10px 2px 22px;color:#a4adb5;font-size:11px}.text-button{border:0;background:none;color:inherit;padding:0;font:inherit}.upload-zone{border:1px dashed #333d48;border-radius:9px;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:20px;cursor:pointer;position:relative}.upload-zone:hover,.upload-zone.dragover{border-color:var(--green);background:#c0f20405}.upload-zone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-zone:focus-within{outline:2px solid var(--green)}.upload-symbol{font-size:25px;color:var(--muted);line-height:1;margin-bottom:12px}.upload-zone strong{font-size:13px;font-weight:500}.upload-zone>span:not(.upload-symbol){font-size:11px;color:var(--muted);margin-top:3px}.upload-zone small{font-size:9px;color:#646e7b;margin-top:11px}.upload-row{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding:10px 0;border-bottom:1px solid var(--border)}.upload-row span{overflow-wrap:anywhere}.upload-row button{border:0;background:none;color:#c8ada4}.corpus-illustration{display:flex;align-items:center;gap:20px;padding:23px 0}.corpus-illustration strong{font-size:12px;font-weight:500}.corpus-illustration p{font-size:11px;color:var(--muted);line-height:1.65;max-width:370px;margin:4px 0 0}.paper-stack{width:48px;height:48px;position:relative;flex-shrink:0}.paper-stack i{position:absolute;width:27px;height:36px;border:1px solid #424a55;border-radius:3px;background:#171d25;transform:rotate(-18deg);left:2px;top:2px}.paper-stack i:nth-child(2){transform:rotate(-7deg);left:9px}.paper-stack i:nth-child(3){transform:rotate(8deg);left:15px}.paper-stack i:nth-child(4){transform:rotate(20deg);left:21px;background:repeating-linear-gradient(0deg,#1b222b 0 6px,#414a54 7px 8px);border:7px solid #1b222b}.train-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;border-top:1px solid var(--border)}.train-bottom>span{font-size:11px;color:var(--muted)}.primary,.secondary{border-radius:7px;padding:11px 18px;font-size:12px;font-weight:600;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:28px}.primary{background:var(--green);color:#1c2912}.secondary{background:#151b24;color:#c5ccd3;border-color:#323b46}.learning-panel{position:relative;overflow:hidden}.mini-network{height:230px;position:relative;border-bottom:1px solid var(--border);margin-top:-15px;margin-bottom:24px}.mini-network svg{width:100%;height:100%;padding:0 20px 15px}.mini-network>span{position:absolute;right:0;bottom:12px;color:#596452;font-size:8px;letter-spacing:1.3px}.explain-steps{padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:21px}.explain-steps li{display:flex;gap:16px;align-items:center}.explain-steps li>span{width:27px;height:27px;border:1px solid #35412c;background:#c0f20b07;color:var(--green);border-radius:50%;display:grid;place-items:center;font-size:11px;flex-shrink:0}.explain-steps strong{font-size:12px;font-weight:550}.explain-steps p{font-size:11px;color:var(--muted);margin:3px 0 0}.note{display:flex;gap:12px;border:1px solid #242c32;border-radius:8px;background:#11161b80;margin-top:22px;padding:15px 18px;align-items:flex-start;color:var(--muted)}.note>span{color:var(--green);font-size:16px}.note p{font-size:11px;line-height:1.8;margin:0}.note strong{font-weight:500;color:#c3cdc2}footer{display:flex;justify-content:space-between;gap:20px;color:#626d79;font-size:10px;padding:28px 0;letter-spacing:.2px}footer i{width:4px;height:4px;margin-right:7px}footer span:last-child{font-size:8px;letter-spacing:1.5px}footer b{color:#45503e;padding:0 6px}.training-progress{margin-top:22px;font-size:11px}.training-progress>div{display:flex;justify-content:space-between}.training-progress strong{color:var(--green)}progress{width:100%;height:5px;accent-color:var(--green);margin-top:10px}progress::-webkit-progress-bar{background:#2a3522;border-radius:4px}progress::-webkit-progress-value{background:var(--green);border-radius:4px;transition:width .3s}.training-result{margin-top:22px;padding:15px;background:#c0f21408;border:1px solid #3b4c2d;border-radius:8px;color:var(--green);font-size:12px}.training-result button{margin-top:10px}.compact{padding:30px 0 25px}.compact h1{font-size:33px}.network-workspace{background:#0c1015;border:1px solid var(--border);border-radius:12px;overflow:hidden}.network-workspace:fullscreen{display:flex;flex-direction:column;border-radius:0}.network-workspace:fullscreen .canvas-wrap{flex:1;height:auto}.network-toolbar{padding:15px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:15px}.live-label{font-size:9px;letter-spacing:1.5px;color:#a7b899}.live-label i{margin-right:7px}.network-totals{display:flex;gap:24px;font-size:11px;color:var(--muted)}.network-totals strong{color:var(--text);font-size:16px;font-weight:500;margin-right:5px;font-variant-numeric:tabular-nums}.zoom-buttons{display:flex;gap:5px}.zoom-buttons button{border:1px solid #29333d;border-radius:5px;color:#c2cbbd;background:#151b22;width:28px;height:28px}.canvas-wrap{height:560px;position:relative;background-image:radial-gradient(#64728223 .8px,transparent .8px);background-size:22px 22px}canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}.canvas-hint{position:absolute;bottom:17px;left:20px;font-size:9px;color:#687482;pointer-events:none}.neuron-detail{position:absolute;top:18px;right:18px;width:237px;border:1px solid #303c33;background:#10161bf0;backdrop-filter:blur(12px);border-radius:9px;padding:16px}.neuron-detail .eyebrow{margin-bottom:9px}.neuron-detail label{font-size:10px;color:var(--muted);display:block;margin-bottom:8px}.neuron-detail select{width:100%;margin-bottom:9px}.neuron-detail p{font-size:10px;line-height:1.8}.neuron-detail h3{font-size:22px;color:var(--green);margin:8px 0}.neighbor-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;border-bottom:1px solid #232c31;padding:5px 0;gap:8px}.neighbor-row button{background:none;border:0;padding:0;color:#d0d9ca;text-align:left}.neighbor-row strong{color:var(--green);font-size:11px}.neighbor-scroll{max-height:200px;overflow:auto}.network-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;padding:20px 25px;border-top:1px solid var(--border);background:#11161e}.network-controls label>span{display:flex;justify-content:space-between;font-size:11px;margin-bottom:10px}.network-controls strong{color:var(--green);font-weight:500}.network-controls small{color:var(--muted);font-size:9px}.network-controls input{width:100%;accent-color:var(--green);height:4px;cursor:pointer;display:block;margin:15px 0}.capacity{border-left:1px solid var(--border);padding-left:25px}.capacity>span{color:var(--green);font-size:12px}.capacity p{font-size:10px;color:var(--muted);margin:5px 0}.empty-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#0c1015d9;text-align:center;z-index:2}.empty-state>span{font-size:50px;color:var(--green)}.empty-state h2{font-size:23px;font-weight:500}.empty-state p{color:var(--muted);margin:0 0 25px}.generation-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}.field-label{font-size:11px;color:var(--muted);display:block;margin-bottom:9px}textarea,select{background:#0a0f15;border:1px solid #303946;border-radius:7px;color:var(--text);padding:12px;outline:none}textarea{width:100%;resize:vertical;font-size:15px;line-height:1.7}select{font-size:11px}.generation-settings{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.generation-settings label{font-size:10px;color:var(--muted)}.generation-settings select{width:100%;display:block;margin-top:7px}.button-row{display:flex;gap:10px}.output-label{margin:30px 0 16px;border-top:1px solid var(--border);padding-top:20px;color:#95a78b;font-size:9px;letter-spacing:1.5px;display:flex;align-items:center;gap:8px}.output-label i{background:var(--green)}.output-label>span{margin-left:auto;color:var(--muted);letter-spacing:0}.answer{min-height:105px;font-family:'Manrope',var(--font);font-size:23px;line-height:1.7;letter-spacing:-.5px;color:#8f9c88}.answer.started{color:var(--text)}.answer .word{animation:word-in .25s ease}.answer.running:after{content:'';display:inline-block;width:7px;height:23px;vertical-align:middle;background:var(--green);margin-left:5px;animation:blink .8s infinite}#generation-status{font-size:11px}.context-display{border:1px solid #34422c;background:#c0f20b06;border-radius:8px;color:var(--green);font-size:24px;padding:16px 20px;margin-top:12px;min-height:70px}.prediction-panel>.muted{font-size:11px}.candidates{min-height:190px;margin-top:24px}.placeholder{color:#697783;font-size:13px;line-height:1.8}.candidate{margin-bottom:15px}.candidate-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.candidate.chosen .candidate-label{color:var(--green)}.candidate-track{height:5px;background:#222c33;border-radius:3px}.candidate-track i{height:100%;background:#57724a;display:block;border-radius:3px;transition:width .2s}.candidate.chosen .candidate-track i{background:var(--green)}.prediction-note{font-size:11px;line-height:1.8;color:var(--muted);border-top:1px solid var(--border);padding-top:17px}.amber{color:var(--amber)!important}.hall-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:22px}blockquote{font-size:23px;line-height:1.7;margin:30px 0 16px;font-family:'Manrope',var(--font);color:#d6ddcc;border-left:2px solid var(--green);padding-left:22px}.source-caption{font-size:10px;color:var(--muted)}.missing-fact{display:flex;gap:14px;align-items:center;margin:28px 0;background:#f1bd7608;border:1px solid #4a3e2b;border-radius:8px;padding:15px;color:#cabbab}.missing-fact>span{font-size:20px;color:var(--amber)}.missing-fact p{margin:0;font-size:12px}.hall-grid .muted{font-size:12px;line-height:1.8}.source-link{font-size:10px;color:#a5b894;text-decoration:underline;text-underline-offset:4px}.warning{color:var(--amber);background:#f1bd7610}.amber-button{background:var(--amber);margin-top:18px}.hall-output{min-height:160px;margin-top:25px}.hall-output .bad-answer{font-size:22px;color:var(--amber);line-height:1.7}.hall-output .verdict{color:var(--amber);border-top:1px solid #493c2a;padding-top:15px;font-size:12px}.hall-output .safe-answer{font-size:12px;color:var(--green)}.small{font-size:10px!important}dialog{background:#111820;color:var(--text);border:1px solid #3b4935;border-radius:14px;width:min(760px,90vw);max-height:85vh;padding:25px}dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}dialog pre{white-space:pre-wrap;font:13px/1.9 var(--font);color:#bdc8bd}dialog a{text-decoration:underline}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#273425;color:#e6f1de;border:1px solid #667b54;border-radius:8px;padding:13px 22px;font-size:12px;max-width:90vw;z-index:20;box-shadow:0 10px 40px #0008}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes word-in{from{opacity:0;color:var(--green)}to{opacity:1}}@keyframes blink{50%{opacity:0}}
@media(min-width:1500px){.canvas-wrap{height:650px}.mini-network{height:255px}.panel{padding:30px}}
@media(max-width:1000px){.edition,.outline-tag{display:none}.tab{padding-left:18px;padding-right:18px}.learn-grid{grid-template-columns:1fr 1fr}.dataset{gap:9px;padding:12px}.dataset .tag{display:none}.file-info small{font-size:9px}.panel{padding:20px}.network-controls{gap:18px}.neuron-detail{width:210px}.canvas-wrap{height:540px}.page-heading{padding-top:32px}}
@media(max-width:720px){.topbar{height:70px}.brand{font-size:18px}.brand-mark{font-size:30px}.model-state{font-size:9px}.app-shell{padding:0 5%}.tabs{gap:0;justify-content:space-between;padding-top:12px}.tab{font-size:11px;padding:14px 5px;gap:6px}.tab span{font-size:9px}.tab i{display:none}.tab.active:after{left:4px;right:4px}.page-heading{padding:28px 0 24px}.page-heading h1{font-size:30px;letter-spacing:-1.1px}.lead{font-size:13px}.eyebrow{font-size:9px;letter-spacing:1.5px}.learn-grid,.generation-grid,.hall-grid{grid-template-columns:1fr}.mini-network{height:200px}.panel{padding:20px}.learning-panel{order:2}.desktop{display:none}.note p{font-size:10px}footer{align-items:flex-start;font-size:9px}footer span:last-child{display:none}.compact{display:block}.compact>.secondary{margin-top:15px}.network-toolbar{padding:12px;flex-wrap:wrap;gap:10px}.live-label{font-size:8px}.network-totals{order:3;width:100%;gap:20px}.network-totals strong{font-size:14px}.canvas-wrap{height:620px}.neuron-detail{top:auto;bottom:38px;right:10px;left:10px;width:auto;padding:12px}.neuron-detail .eyebrow,.neuron-detail label{display:none}.neuron-detail select{margin:0}.neuron-detail h3{display:none}.neuron-detail p{margin:6px 0}.neighbor-scroll{max-height:95px}.canvas-hint{font-size:8px;left:12px;bottom:14px}.network-controls{grid-template-columns:1fr 1fr;padding:16px;gap:17px}.capacity{grid-column:1/-1;border-left:0;border-top:1px solid var(--border);padding:12px 0 0}.network-controls label>span{font-size:10px}.generation-settings{gap:10px}.primary,.secondary{padding:11px 13px;gap:12px}.answer{font-size:21px}.hall-grid blockquote{font-size:20px}.network-workspace:fullscreen .canvas-wrap{min-height:250px}.network-workspace:fullscreen .neuron-detail{max-width:220px;left:auto;bottom:35px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Observable learning: an empty bank of neurons fills as real pairs arrive. */
.training-theater{border:1px solid #303c32;border-radius:10px;background:radial-gradient(ellipse at 50% 35%,#b8ef7209,transparent 65%),#0b1117;padding:15px;margin-bottom:23px}
.theater-status{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1px;color:var(--green)}
.theater-status strong{font-weight:400;color:var(--muted);letter-spacing:0}
#learning-svg{width:100%;display:block;overflow:visible;margin:12px 0}
.learn-node circle{fill:#131c23;stroke:#38434e;stroke-width:1.5;transition:fill .4s,stroke .4s}
.learn-node text{fill:#58626c;text-anchor:middle;font-size:13px}
.learn-node.filled circle{fill:#253d1e;stroke:var(--green)}
.learn-node.filled text{fill:#e2f4d1;font-size:12px;paint-order:stroke;stroke:#162112;stroke-width:3px}
.learn-link path{stroke:#97c869;fill:none;stroke-linecap:round}
.learn-link text{fill:var(--green);text-anchor:middle;font-size:13px;paint-order:stroke;stroke:#0b1117;stroke-width:5px}
.just-learned{animation:learn-glow .65s ease}
.incoming-text{border-top:1px solid #2b382c;padding-top:12px}
.incoming-text>span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}
#incoming-pair{display:flex;align-items:center;gap:12px;min-height:43px;font-size:13px;color:var(--green);flex-wrap:wrap}
.flying-word{display:inline-block;padding:3px 9px;border:1px solid #50683c;border-radius:5px;background:#c0f2800b;animation:word-arrives .55s ease}
#learning-explanation{font-size:12px;line-height:1.7;min-height:62px;margin:8px 0 14px;color:#c2cbbb}
.animation-controls{display:flex;align-items:end;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:12px}
.animation-controls label{font-size:9px;color:var(--muted)}
.animation-controls select{display:block;padding:5px 8px;margin-top:5px}
.animation-controls button{font-size:10px;padding:8px 10px}
.training-theater>small{display:block;margin-top:12px;font-size:9px;line-height:1.6;color:var(--muted)}
#network-empty{inset:auto auto 50px 20px;max-width:360px;align-items:start;text-align:left;background:#0c1015d9;padding:18px;border:1px solid #303a43;border-radius:9px}
#network-empty>span{display:none}#network-empty h2{font-size:17px;margin:0 0 8px}#network-empty p{font-size:11px;margin:0 0 15px}
.hall-grid{grid-template-columns:.75fr 1.25fr}
.hall-neurons{margin:18px -5px 8px;border:1px solid #303940;border-radius:10px;background:radial-gradient(ellipse at center,#c0f28005,transparent 75%),#0b1015;padding:8px}
#hall-svg{width:100%;display:block;overflow:visible}
.hall-edge{fill:none;stroke:#465c3b;stroke-width:2;opacity:.5}
.hall-edge.known-path{stroke:var(--green);stroke-width:4;opacity:1}
.hall-edge.wrong-path{stroke:#ff807a;stroke-width:4;stroke-dasharray:9 5;opacity:1;animation:wrong-flow 1.4s linear infinite}
.hall-node{cursor:pointer;outline:none}.hall-node circle{fill:#182118;stroke:#60774b;stroke-width:1.5}.hall-node text{text-anchor:middle;fill:#bdc9b7;font-size:13px;paint-order:stroke;stroke:#111a12;stroke-width:3px}
.hall-node.used circle{fill:#324d22;stroke:var(--green)}.hall-node.used text{fill:#dcf5c8}
.hall-node.wrong-node circle{fill:#462726;stroke:#ff807a}.hall-node.wrong-node text{fill:#ffb9b5;stroke:#2d1718}
.hall-node.current circle,.hall-node:focus-visible circle,.hall-node:hover circle{stroke-width:4;filter:drop-shadow(0 0 5px #c0f28055)}
.missing-path{stroke:#7a8590;stroke-width:1.5;stroke-dasharray:4 6;fill:none}.missing-label{fill:#939fa9;text-anchor:middle;font-size:11px;paint-order:stroke;stroke:#0b1015;stroke-width:5px}
.error-label{fill:#ff807a;text-anchor:middle;font-size:12px}.source-label{fill:var(--green);text-anchor:middle;font-size:10px}
.hall-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:9px;color:var(--green)}.hall-legend span:nth-child(2){color:#ff807a}.hall-legend span:nth-child(3){color:var(--muted)}
.step-explanation{min-height:78px;padding:13px 15px;background:#f1bd7607;border-left:2px solid var(--amber);font-size:12px;line-height:1.8;color:#d3c9b8}
.hall-actions{flex-wrap:wrap}.hall-actions .amber-button{margin:0}.hall-actions button{font-size:11px;gap:8px;padding:10px 12px}
.hall-output{min-height:110px}.hall-word{display:inline-block;animation:word-in .35s ease}.hall-word.wrong-subject{color:#ff918a;text-decoration:underline wavy #ff807a;text-underline-offset:7px}.hall-word.wrong-fact{background:#ff807a18;border-radius:4px;padding:0 5px;color:#ffaaa4}
.wrong-relation{color:#ff9e97;font-size:11px;border:1px solid #703d3a;background:#ff807a09;padding:9px 12px;border-radius:6px}.typing-cursor{color:var(--amber);animation:blink .8s infinite}
@keyframes word-arrives{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes learn-glow{50%{filter:drop-shadow(0 0 7px #c0f280)}}
@keyframes wrong-flow{to{stroke-dashoffset:-28}}
@media(max-width:1000px){.hall-grid{grid-template-columns:1fr}.hall-neurons{max-width:740px;margin-left:auto;margin-right:auto}}
@media(max-width:720px){.theater-status{font-size:7px;letter-spacing:0}.training-theater{padding:12px}.animation-controls{flex-wrap:wrap}#network-empty{max-width:calc(100% - 30px);left:15px;bottom:235px}.hall-actions button{font-size:10px;padding:9px}.hall-neurons{margin-left:-12px;margin-right:-12px;padding:3px}.hall-legend{font-size:8px;gap:8px}.step-explanation{font-size:11px}.hall-output .bad-answer{font-size:20px}}
@media(prefers-reduced-motion:reduce){.just-learned,.flying-word,.hall-edge.wrong-path,.typing-cursor{animation:none}}

/* Reality: biological plasticity and model training are different mechanisms. */
.reality-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.reality-grid .panel{overflow:hidden}.reality-grid .panel-heading{min-height:48px;margin-bottom:5px}.reality-visual{position:relative;margin:0 -10px 20px}.reality-visual svg{width:100%;height:280px;display:block}.visual-footnote{display:block;text-align:center;font-size:9px;color:var(--muted)}
.head-outline{fill:#18251930;stroke:#96bb77;stroke-width:1.7}.head-detail{fill:none;stroke:#789365;stroke-width:1.3}#brain-connections line{stroke:#a2d37b;opacity:.42}#brain-connections circle{fill:#c0f280;stroke:#dbffb3;stroke-width:.5}.portrait-caption{font-size:9px;letter-spacing:2px;fill:#819177;text-anchor:middle}
.chip-outline{fill:#121e2b;stroke:#799ec9;stroke-width:1.5}.chip-inner{fill:#0b131e;stroke:#33465f;stroke-width:1}#chip-pins path{stroke:#58789e;stroke-width:3;fill:none}#ai-connections line{stroke:#7dafe9;opacity:.42}#ai-connections circle{fill:#9bc8ff}.ai-card .portrait-caption{fill:#819bb8}
.reality-metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--border);padding-top:22px}.reality-metrics>div{display:flex;flex-direction:column;align-items:start;min-width:0}.reality-metrics>div>span{font-size:11px;color:var(--muted)}.reality-metrics strong{font-family:'Manrope',var(--font);font-size:38px;font-weight:500;line-height:1.4;letter-spacing:-1px;color:var(--green);margin:6px 0}.reality-metrics strong small{font-size:16px;letter-spacing:-.2px}.reality-metrics strong.unknown-number{font-size:29px;line-height:1.85}.reality-metrics a,.reality-metrics>div>small{font-size:9px;line-height:1.7;color:#9aab8f}.ai-card .reality-metrics strong{color:#a7cbff}.ai-card .reality-metrics a,.ai-card .reality-metrics>div>small{color:#90a9c3}.reality-description{font-size:12px;color:var(--muted);line-height:1.8;margin:18px 0 0}.reality-description a{color:#a9b9a0;text-decoration:underline;text-underline-offset:3px}.learning-badge{padding:11px 14px;border:1px solid #3f5430;background:#c0f28006;border-radius:6px;font-size:12px;color:var(--green);margin-top:22px}.ai-badge{border-color:#314763;color:#a7cbff;background:#7dafe908}.ai-badge strong{font-weight:500}.model-picker{font-size:8px;color:var(--muted);text-align:right}.model-picker select{display:block;margin-top:4px;padding:6px 9px;max-width:230px}.experience-lab{margin-top:22px}.experience-lab .panel-heading{margin-bottom:0}.experience-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.experience-actions .text-button{font-size:11px;color:var(--muted);margin-left:auto}.experience-results{display:grid;grid-template-columns:1fr 1fr;gap:22px}.experience-results>div{border-radius:8px;border:1px solid #35462b;background:#c0f28004;padding:20px}.experience-results>div:nth-child(2){border-color:#2d405a;background:#7dafe904}.experience-results>div>span{font-size:9px;letter-spacing:1.6px;color:var(--green)}.experience-results>div:nth-child(2)>span{color:#a7cbff}.experience-results h3{font-size:16px;font-weight:500;margin:9px 0}.experience-results p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.reality-takeaway{display:flex;gap:25px;align-items:center;background:linear-gradient(110deg,#c0f28008,#7dafe908);border:1px solid #344037;border-radius:10px;padding:25px;margin-top:22px}.reality-takeaway>span{font-size:55px;font-weight:400;color:var(--green)}.reality-takeaway h2{font-size:19px;font-weight:500;margin:0 0 8px}.reality-takeaway p{font-size:12px;color:#a4afa4;line-height:1.85;margin:0;max-width:1000px}.comparison-sources{border:1px solid var(--border);border-radius:9px;margin-top:22px;font-size:12px;color:var(--muted)}.comparison-sources summary{padding:18px 20px;cursor:pointer;color:#bdc6b8}.comparison-sources>div{padding:0 20px 15px}.comparison-sources p{line-height:1.9}.comparison-sources a{color:#b8d79f;text-decoration:underline;text-underline-offset:3px}
.experience-live #brain-connections,.experience-source #brain-connections,.experience-retrain #ai-connections{animation:plasticity 1.8s ease}.experience-live #ai-connections circle,.experience-source #ai-connections circle{animation:activation 1.8s ease}.experience-source .ai-card .learning-badge{animation:activation 1.8s ease}@keyframes plasticity{30%,70%{filter:drop-shadow(0 0 6px #c0f280);opacity:1}50%{opacity:.5}}@keyframes activation{50%{filter:drop-shadow(0 0 8px #89bbff);fill:white}}
@media(max-width:1000px){.tab{padding-left:12px;padding-right:12px}.tab i{margin-left:2px}.reality-metrics strong{font-size:29px}.reality-metrics strong small{font-size:13px}.reality-metrics strong.unknown-number{font-size:25px}.reality-metrics{gap:12px}.reality-visual svg{height:245px}.model-picker select{max-width:180px;font-size:10px}.experience-actions .text-button{margin-left:0}}
@media(max-width:720px){.tabs{overflow-x:auto;justify-content:start;gap:14px}.tab{flex-shrink:0;padding:14px 5px}.reality-grid,.experience-results{grid-template-columns:1fr}.reality-visual svg{height:auto}.reality-takeaway{align-items:start;padding:20px;gap:15px}.reality-takeaway>span{font-size:32px;line-height:1.2}.reality-takeaway h2{font-size:17px}.reality-metrics strong{font-size:32px}.reality-metrics strong small{font-size:14px}.experience-actions button{font-size:11px}.model-picker select{max-width:190px}}
@media(prefers-reduced-motion:reduce){.experience-live #brain-connections,.experience-source #brain-connections,.experience-retrain #ai-connections,.experience-live #ai-connections circle,.experience-source #ai-connections circle,.experience-source .ai-card .learning-badge{animation:none}}

/* Context: a chat and a glass, with the explanation left to the presenter. */
.cup-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 0 20px}.cup-heading h1{font-size:26px;letter-spacing:-.7px;margin:0}.cup-heading>div{display:flex;align-items:center;gap:12px}.cup-heading .primary{min-width:120px}.cup-reset{background:none;border:1px solid #303b45;color:#9ca7b2;border-radius:7px;width:37px;height:37px;font-size:21px}.cup-demo{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);position:relative;height:calc(100dvh - 280px);min-height:570px;max-height:900px;border:1px solid #26313b;border-radius:14px;background:#0c1117;overflow:hidden}.cup-demo article{min-width:0;min-height:0}.cup-demo header{height:66px;display:flex;align-items:center;gap:12px;padding:0 27px}.cup-demo h2{font-size:15px;font-weight:500;margin:0}.cup-demo header>span:last-child{margin-left:auto;font-size:10px;color:#7b8794}.cup-chat{border-right:1px solid #28313a;display:flex;flex-direction:column;background:#10151c}.chat-logo{font-size:26px;color:var(--green)}.cup-messages{flex:1;min-height:0;overflow:auto;padding:18px 28px;scrollbar-width:thin;scrollbar-color:#34432f transparent;overscroll-behavior:contain}.cup-welcome{display:grid;place-items:center;height:100%;font-size:20px;color:#6d7882;font-family:'Manrope',var(--font);text-align:center}.cup-message{display:flex;gap:12px;align-items:start;margin:0 0 27px;animation:appear .25s ease}.cup-message.user{justify-content:flex-end;padding-left:40px}.cup-message p{font-size:14px;line-height:1.9;margin:0;color:#d8ded5;overflow-wrap:anywhere}.cup-message.user p{background:#242d36;border-radius:17px 17px 4px 17px;padding:12px 17px}.assistant-mark{font-size:24px;line-height:1.4;color:var(--green);flex-shrink:0}.cup-message.assistant p{padding-top:3px}.forgotten-word{color:#ee7e7e!important;text-decoration:line-through;text-decoration-color:#ec818766;transition:color .6s}.wrong-chat-word{color:#ff9191;background:#ff6d6d12;border-radius:3px;border-bottom:1px solid #ff8282}.chat-caret{display:inline-block;width:6px;height:15px;vertical-align:middle;background:var(--green);margin-left:4px;animation:blink .8s infinite}.cup-composer{margin:15px 24px 23px;min-height:64px;max-height:130px;display:flex;align-items:center;gap:15px;padding:15px 17px;background:#202831;border:1px solid #35404b;border-radius:15px;color:#77838e;font-size:13px}.cup-composer>span:first-child{flex:1;line-height:1.65;overflow:auto;max-height:96px}.cup-composer .is-typing{color:#e0e6dd}.cup-send{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#c0f280;color:#1c2b12;font-size:21px;flex-shrink:0}.cup-model{display:flex;align-items:center;flex-direction:column;background:radial-gradient(ellipse at 50% 65%,#a8e86908,transparent 65%)}.cup-model header{width:100%;flex-shrink:0}.cup-count{padding:4px 0 9px;color:#7c8a97;font-size:14px}.cup-count strong{font-family:'Manrope',var(--font);font-size:38px;font-weight:500;letter-spacing:-1px;color:#d9ebca;font-variant-numeric:tabular-nums}.glass-stage{position:relative;width:310px;flex:1;min-height:280px;max-height:560px;margin-top:12px;margin-bottom:8px}.glass-body{position:absolute;top:13px;left:40px;right:40px;bottom:17px;clip-path:polygon(0 0,100% 0,89% 97%,86% 100%,14% 100%,11% 97%);background:linear-gradient(90deg,#c5e3ef16,#b2d2e505 20%,#94b9ce05 75%,#d9eeff15)}.glass-body:after{content:'';position:absolute;inset:0;z-index:3;background:linear-gradient(96deg,transparent 3%,#d6e8f04d 3.5%,transparent 4.5%,transparent 93%,#d6e8f04d 94%,transparent 95%);pointer-events:none}.glass-rim{position:absolute;left:38px;right:38px;top:4px;height:20px;border:2px solid #82999f;border-radius:50%;z-index:5;background:#08121733}.glass-base{position:absolute;bottom:15px;left:64px;right:64px;height:17px;border-bottom:3px solid #82999f;border-radius:0 0 40% 40%;box-shadow:0 15px 30px #0008}.glass-water{position:absolute;bottom:0;left:0;right:0;height:0;background:linear-gradient(180deg,#9dcd6b51,#6b9b4b37);border-top:2px solid #b9ef8599;transition:height .7s ease,background 1s}.water-surface{position:absolute;left:-50%;right:-50%;height:25px;top:-13px;border-radius:45%;background:#b0e77722;animation:glass-wave 4s ease-in-out infinite}.glass-words{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(180deg,black 90%,transparent);transition:opacity .4s}.glass-words>span{position:absolute;left:calc(var(--x)*1%);top:calc(var(--y)*1%);font-size:9px;line-height:1;color:#cbeeb0aa;white-space:nowrap;transform:translateX(-50%);transition:top .6s;color:#cbeeb0aa}.glass-words>span.assistant{color:#a0c3e2a0}.glass-empty{position:absolute;top:48%;width:100%;text-align:center;font-size:12px;color:#75838b}.glass-limit{position:absolute;top:1px;right:0;display:flex;gap:5px;align-items:center;color:#687783;font-size:9px}.glass-limit i{width:18px;border-top:1px dashed #82959b}.cup-loss{height:24px;font-size:12px;color:#f78b84;text-align:center}.cup-chart{width:230px;height:35px;overflow:visible;margin:2px 0}.cup-chart-limit{stroke:#778e7733;stroke-dasharray:4 5;fill:none}.cup-chart path:last-of-type{stroke:var(--green);stroke-width:2;fill:none}.cup-chart text{text-anchor:end;fill:#6c7c70;font-size:8px}.cup-caption{font-size:8px;color:#52606b;padding:9px 12px 16px}.glass-spill{position:absolute;inset:0;pointer-events:none}.spilled-word{position:absolute;left:50%;top:10px;font-size:13px;color:#ff8787;opacity:0;white-space:nowrap;animation:glass-spill 3.2s var(--delay) ease-in infinite}.overflowing .glass-water{background:linear-gradient(180deg,#da7a6255,#86944d33);border-top-color:#f18a76}.overflowing .glass-rim{border-color:#e08a7d}.overflowing .cup-count strong{color:#ff9d8f}.overflowing .cup-chart path:last-of-type{stroke:#f78b84}.cup-flight{display:none;position:absolute;top:0;left:0;z-index:10;pointer-events:none;max-width:260px;width:max-content;padding:13px;background:#182518ee;border:1px solid #a0cc75;border-radius:9px;box-shadow:0 10px 55px #0009}.cup-flight.visible{display:block}.cup-flight>small{display:block;font-size:9px;letter-spacing:1px;color:#c0f280;margin-bottom:7px}.cup-flight>div{display:flex;flex-wrap:wrap;gap:4px;max-width:230px}.cup-flight i{font-style:normal;font-size:9px;padding:3px 5px;background:#bfdc7922;color:#d4edbc;border-radius:3px}.cup-flight i.assistant{background:#8abaf326;color:#b9d6f5}.cup-flight.returning{border-color:#92bce5;background:#172537ee;color:#b6d6fc;font-size:13px}@keyframes glass-wave{50%{transform:translateX(8px) rotate(2deg)}}@keyframes glass-spill{0%{opacity:0;transform:translate(0,0)}15%{opacity:1;transform:translate(calc(var(--side)*105px),-15px)}50%{opacity:1}100%{opacity:0;transform:translate(calc(var(--side)*(105px + var(--drift))),330px) rotate(calc(var(--side)*15deg))}}
@media(max-width:900px){.cup-demo{min-height:590px}.cup-demo header{padding:0 18px}.cup-messages{padding:12px 17px}.cup-message p{font-size:12px}.cup-composer{margin:12px 16px 18px}.glass-stage{width:270px}.cup-demo header>span:last-child{font-size:9px}.cup-message.user{padding-left:15px}}
@media(max-width:600px){.cup-heading{padding:18px 0}.cup-demo{grid-template-columns:1.12fr .88fr;height:calc(100dvh - 240px);min-height:470px}.cup-demo header{height:50px;padding:0 12px;gap:6px}.cup-demo h2{font-size:12px}.cup-model header{flex-wrap:wrap;align-content:center;gap:1px}.cup-model header>span:last-child{width:100%;margin-left:0;font-size:8px}.cup-messages{padding:10px}.cup-message{gap:5px;margin-bottom:18px}.cup-message p{font-size:11px;line-height:1.75}.cup-message.user{padding-left:8px}.cup-message.user p{padding:9px 10px;border-radius:11px}.assistant-mark{font-size:17px}.cup-welcome{font-size:14px}.cup-composer{margin:8px;min-height:48px;padding:9px;font-size:10px;gap:5px}.cup-send{width:22px;height:22px;font-size:15px}.glass-stage{width:100%;min-height:225px}.glass-body{left:18px;right:18px}.glass-rim{left:16px;right:16px}.glass-base{left:30px;right:30px}.glass-limit{right:0;font-size:7px}.glass-limit i{width:8px}.glass-words>span{font-size:7px}.glass-empty{font-size:9px}.cup-count{font-size:9px}.cup-count strong{font-size:26px}.cup-chart{width:75%;height:25px}.cup-loss{font-size:9px;padding:0 7px;height:30px}.cup-caption{text-align:center;font-size:7px;line-height:1.5}.spilled-word{font-size:9px}.cup-flight{max-width:170px}.cup-flight>div{max-width:140px}.cup-flight i{font-size:7px}.cup-flight>small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.water-surface,.spilled-word,.chat-caret,.cup-message{animation:none}.spilled-word:nth-child(-n+3){opacity:1;top:calc(18% + var(--side)*7%);left:3%;color:#ff8787}.glass-water,.glass-words>span{transition:none}}

.glass-words>span{max-width:62px;overflow:hidden;text-overflow:ellipsis;font-size:10px}
@media(max-width:600px){.glass-words>span{max-width:36px;font-size:7px}}

.cup-settings{flex-wrap:wrap;justify-content:flex-end}.cup-capacity-label{display:flex;align-items:center;gap:7px;color:#909eaa;font-size:11px}.cup-capacity-label input{width:88px;background:#151d25;color:#d2e8be;border:1px solid #35434d;border-radius:6px;padding:7px 9px;font-size:13px}.cup-copilot-toggle{display:flex;align-items:center;gap:8px;border:1px solid #35434d;border-radius:7px;padding:8px 10px;font-size:11px;color:#a4b0bd;cursor:pointer}.cup-copilot-toggle input{accent-color:#93bfff}.cup-copilot-toggle:has(input:checked){color:#b9d8ff;border-color:#547dad;background:#8bbcff0c}.cup-account-label{font-size:9px;color:#91bdf3;text-align:center;padding:0 8px;flex-shrink:0}.cup-account-label strong{margin-left:5px;font-weight:500}.glass-account{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(#83b8f877,#467daf88);border-top:1px solid #a0c7fc;transition:height .7s;pointer-events:none}.cup-flight i.account{color:#d1e5ff;background:#86b8ff33}.cup-heading{gap:18px}@media(max-width:800px){.cup-heading{align-items:flex-start}.cup-heading h1{font-size:22px;margin-top:5px}.cup-settings{gap:8px!important}.cup-capacity-label,.cup-copilot-toggle{font-size:10px}.cup-account-label{font-size:8px}.cup-capacity-label input{width:70px}.cup-copilot-toggle{padding:7px}.cup-heading .primary{min-width:92px}}@media(max-width:600px){.cup-heading{display:block}.cup-heading h1{margin-bottom:12px}.cup-settings{justify-content:flex-start}.cup-demo{height:calc(100dvh - 290px)}.cup-account-label{font-size:7px;line-height:1.5;max-width:150px}}
.cup-account-label{min-height:14px}.cup-model .cup-account-label[hidden]{display:block!important;visibility:hidden}

/* Training presentation: document on the right, empty neurons on the left. */
.training-stage{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:minmax(0,1fr);height:calc(100dvh - 315px);min-height:530px;max-height:860px;position:relative;overflow:hidden;border:1px solid #29333b;border-radius:14px;background:#0d1218}.training-stage article{min-width:0;min-height:0;display:flex;flex-direction:column}.training-stage header{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:65px;padding:0 25px}.training-stage h2{font-size:15px;font-weight:500;margin:0}.training-stage header>span{font-size:10px;color:#809077}.training-brain{border-right:1px solid #29333b;background:radial-gradient(ellipse at center,#b9ec7309,transparent 70%)}.training-map{flex:1;min-height:0;display:grid;place-items:center;padding:0 10px}.training-stage #learning-svg{width:100%;height:100%;max-height:580px;display:block;margin:0;overflow:visible}.training-stage .learn-node circle{transition:fill .5s,stroke .5s,r .3s;fill:#151e24;stroke:#394953}.training-stage .learn-node.filled circle{fill:#283b20;stroke:#b6e77d;filter:drop-shadow(0 0 7px #a6df5518)}.training-stage .learn-node.filled text{font-size:12px;fill:#dbefcb;stroke:#213019}.training-stage .learn-link path{stroke:#8fbd6c;opacity:.6}.training-stage .learn-link.just-learned path{stroke:#c6ff8f;opacity:1}.training-stage .learn-link text{font-size:12px;stroke:#0e1519;stroke-width:6px}.training-caption{min-height:58px;padding:12px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.training-caption strong{font-size:16px;font-weight:500;color:#c4e2aa}.training-caption>span{font-size:10px;color:#81917b}.training-footnote{text-align:center;font-size:8px;color:#586553;padding:10px 15px 16px}.training-stage #training-result{text-align:center;padding:5px 15px;color:#b6cf9e;font-size:10px}.training-document{background:#11171f}.training-document header button{font-size:20px;color:#8393a0}.document-sheet{flex:1;min-height:0;margin:0 24px 16px;border:1px solid #37414b;border-radius:8px;background:#171f28;display:flex;flex-direction:column;box-shadow:0 6px 0 -2px #0c1117,0 7px 0 -2px #303c47;overflow:hidden}.document-name{display:flex;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid #2c3843}.document-name>span{font-size:9px;color:#bfd99f;border:1px solid #506340;border-radius:4px;padding:4px 6px}.document-name strong{font-size:10px;font-weight:400;color:#8796a4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.training-doc-text{min-height:0;overflow:auto;padding:23px;font-size:16px;line-height:2.15;white-space:pre-wrap;color:#c5cec9;scrollbar-width:thin;scrollbar-color:#3b4942 transparent}.training-doc-text p{margin:0 0 23px;white-space:normal}.doc-surrounding{color:#6d7a82}.doc-current{color:#cad7c4}.doc-highlight{background:#b4e37a20;color:#d7ffa9;border-radius:4px;box-shadow:0 0 0 3px #b4e37a20}.training-source-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:6px 24px 15px;font-size:10px;color:#8d9ca8}.training-source-controls>label{display:flex;align-items:center;gap:6px;cursor:pointer}.training-source-controls input[type=checkbox]{accent-color:var(--green)}.training-source-controls #selected-count{font-size:9px;color:#647480;margin-left:auto}.training-upload{position:relative;border:1px solid #3a4652;border-radius:5px;padding:6px 9px;overflow:hidden}.training-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.training-upload:focus-within{outline:2px solid var(--green)}.training-document #upload-list{max-height:95px;overflow:auto;padding:0 24px}.training-document .upload-row{font-size:10px}.learning-flights{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:6}.training-flying-word{position:absolute;left:0;top:0;padding:5px 10px;border:1px solid #b7e984;border-radius:6px;background:#24341e;color:#e4ffd1;font-size:17px;box-shadow:0 0 30px #b9ed7333;white-space:nowrap}.training-progress{display:flex;align-items:center;gap:12px;font-size:9px;color:#7e8d78;margin-top:12px}.training-progress progress{flex:1;margin:0;height:3px}.training-progress>strong{color:var(--green);font-weight:400}#learn>.cup-heading select{padding:9px 12px}.training-stage .just-learned{animation:learn-glow .75s ease}
@media(max-width:900px){.training-stage{grid-template-columns:1fr 1fr}.training-stage header{padding:0 16px}.document-sheet{margin:0 14px 12px}.training-doc-text{font-size:13px;padding:16px}.document-name{padding:12px}.training-source-controls{padding:5px 14px 12px;font-size:9px;gap:8px}.training-caption strong{font-size:13px}.training-stage h2{font-size:13px}}
@media(max-width:600px){.training-stage{height:calc(100dvh - 310px);min-height:450px;grid-template-columns:1fr 1fr}.training-stage header{padding:0 9px;min-height:56px;flex-wrap:wrap;align-content:center;gap:3px}.training-stage h2{font-size:11px}.training-stage header>span{font-size:8px}.document-sheet{margin:0 7px 12px}.document-name{padding:8px;gap:5px}.document-name strong{font-size:8px}.document-name>span{font-size:7px;padding:2px}.training-doc-text{font-size:11px;padding:12px;line-height:1.95}.training-source-controls{font-size:8px;padding:3px 8px 10px}.training-source-controls #selected-count{display:none}.training-map{padding:0}.training-caption{padding:8px;min-height:55px}.training-caption strong{font-size:11px}.training-caption>span{font-size:8px}.training-footnote{font-size:7px}.training-stage #training-result{font-size:8px}.training-flying-word{font-size:12px;padding:4px 7px}.training-progress>span{display:none}}
@media(prefers-reduced-motion:reduce){.training-stage .just-learned{animation:none}.training-stage .learn-node circle{transition:none}}

/* Internet: trained knowledge stays green; retrieved context is temporary blue. */
.internet-demo{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);position:relative;height:calc(100dvh - 280px);min-height:630px;max-height:920px;border:1px solid #29343e;border-radius:14px;overflow:hidden;background:#0d131a}.internet-demo article{min-width:0;min-height:0;display:flex;flex-direction:column}.internet-demo header{display:flex;align-items:center;gap:12px;padding:0 25px;height:61px;flex-shrink:0}.internet-demo h2{font-size:15px;font-weight:500;margin:0}.internet-demo header>span:last-child{font-size:10px;color:#839386;margin-left:auto}.internet-chat{background:#11171e;border-right:1px solid #28333d}.internet-chat header .chat-logo{margin:0!important;color:var(--green)!important;font-size:25px!important}.web-message-body{min-width:0}.internet-chat .cup-message.user .web-message-body{background:#242d36;border-radius:17px 17px 4px 17px;padding:12px 17px}.internet-chat .cup-message.user p{background:none;padding:0}.web-answer-origin{display:block;margin-top:10px;font-size:9px;color:#7f9484}.web-citation{display:inline-block;background:#87bfff14;border:0;border-radius:4px;padding:0 4px;color:#9dceff;font-size:11px;cursor:pointer}.internet-model{align-items:center;background:radial-gradient(ellipse at 50% 30%,#a6d97406,transparent 65%)}.internet-model header{width:100%}.cutoff-badge{font-size:11px;color:#8f9d89;display:flex;align-items:center;gap:8px;flex-shrink:0}.cutoff-badge strong{font-size:14px;font-weight:500;color:#c3e1a7}.internet-head-stage{width:100%;flex:1;min-height:230px;max-height:460px;display:grid;place-items:center}#internet-head{display:block;width:100%;height:100%;max-height:460px}.internet-head-outline{fill:#14201644;stroke:#7e9d66;stroke-width:1.5}#web-trained-network line{stroke:#91b56b;stroke-width:1;opacity:.5}#web-trained-network circle{fill:#c0f280}.head-trained-label{text-anchor:middle;font-size:9px;letter-spacing:1.3px;fill:#8bad73}.head-knowledge-box{fill:#243c2077;stroke:#648951;stroke-width:1}.head-knowledge-text{font-size:11px;fill:#c3e9a7;text-anchor:middle}#web-context-box{fill:#0c1520;stroke:#3f5268;stroke-width:1;stroke-dasharray:4 4}#web-context-box.has-context{fill:#24476b66;stroke:#8cbcef;stroke-dasharray:none}.head-context-label{fill:#839db8;text-anchor:middle;font-size:8px;letter-spacing:1px}.head-context-empty{fill:#657c93;font-size:11px;text-anchor:middle}.head-context-fact{fill:#bcdfff;font-size:12px;text-anchor:middle}.web-browser{width:calc(100% - 60px);border:1px solid #3d4c5d;border-radius:9px;background:#121c28;flex-shrink:0;overflow:hidden}.web-browser-bar{display:flex;align-items:center;gap:11px;border-bottom:1px solid #2c3a4b;padding:9px 12px}.web-browser-bar>span{color:#586a80;font-size:8px;letter-spacing:2px}.web-browser-bar strong{font-size:10px;font-weight:500;color:#b2c5dd}.web-browser-bar small{font-size:7px;color:#788aa2;margin-left:auto;letter-spacing:.7px}.web-search-field{padding:10px 14px;font-size:11px;color:#8fadd0;border-bottom:1px solid #2a3748}.web-idle{font-size:11px;color:#536a83;text-align:center;padding:17px;margin:0}.web-result{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px 14px;border:0;border-bottom:1px solid #243349;background:transparent;color:#aac9eb;text-align:left;font-size:11px}.web-result strong{font-size:10px;font-weight:500;color:#d0e7ff;white-space:nowrap}.web-caption{min-height:49px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;line-height:1.7;color:#90a68a;padding:10px 30px;flex-shrink:0}.internet-footnote{font-size:8px;color:#5e6a77;padding:0 10px 15px}.using-knowledge #web-trained-network,.using-knowledge .head-knowledge-box{animation:plasticity 1.5s ease-in-out infinite}.using-context #web-context-box{filter:drop-shadow(0 0 8px #71b1ff44)}.searching-web .web-browser{border-color:#83bbff;box-shadow:0 0 25px #8bc2ff17}.source-flash{animation:activation 1.5s ease;background:#8bbfff18}
@media(max-width:900px){.internet-demo header{padding:0 16px}.web-browser{width:calc(100% - 32px)}.web-caption{padding:8px 16px;font-size:10px}.web-result{font-size:10px;padding:10px}.web-result strong{font-size:9px}}
@media(max-width:600px){.internet-demo{height:calc(100dvh - 260px);min-height:530px;grid-template-columns:1.05fr 1fr}.internet-demo header{height:50px;padding:0 10px;gap:6px}.internet-demo h2{font-size:11px}.internet-model header{flex-wrap:wrap;align-content:center;gap:3px}.internet-model header>span:last-child{margin:0;font-size:8px;width:100%}.internet-chat .cup-message.user .web-message-body{padding:9px 10px;border-radius:11px}.internet-demo .cup-message p{font-size:11px}.internet-demo .cup-messages{padding:10px}.cutoff-badge{font-size:8px;gap:4px}.cutoff-badge strong{font-size:10px}.internet-head-stage{min-height:190px}.web-browser{width:calc(100% - 16px)}.web-browser-bar{padding:7px;gap:5px;flex-wrap:wrap}.web-browser-bar small{font-size:6px}.web-search-field{font-size:9px;padding:8px}.web-result{font-size:9px;flex-direction:column;align-items:start;gap:3px;padding:8px}.web-caption{font-size:9px;min-height:60px;padding:8px 10px}.web-answer-origin{font-size:8px}.internet-footnote{font-size:7px;text-align:center}}
@media(prefers-reduced-motion:reduce){.using-knowledge #web-trained-network,.using-knowledge .head-knowledge-box,.source-flash{animation:none}}

/* Partner branding: colored logo needs a light chip to stay legible on the dark bar. */
.topbar-left{display:flex;align-items:center;gap:26px;min-width:0}
.partner-logo{display:flex;align-items:center;flex-shrink:0;padding:9px 14px;border-radius:11px;background:#f4f7fa;box-shadow:0 2px 16px #0007;transition:box-shadow .2s,transform .2s}
.partner-logo:hover{box-shadow:0 2px 24px #17a0fa4d;transform:translateY(-1px)}
.partner-logo img{display:block;width:auto;height:54px}
.topbar-left .brand{padding-left:26px;border-left:1px solid var(--border)}

/* Footer: disclaimer plus the AI course package this simulator was built for. */
footer{display:block;padding:30px 0 46px}
.footer-disclaimer{border-top:1px solid var(--border);padding:24px 0 0}
.footer-disclaimer p{margin:0;max-width:940px;font-size:11px;line-height:1.85;color:#77828e}
.footer-disclaimer strong{color:#98a3ae;font-weight:600}
.footer-courses{margin-top:30px;padding:28px 30px 30px;border:1px solid var(--border);border-radius:14px;background:radial-gradient(ellipse at 15% 0%,#c0f2800a,transparent 60%),var(--panel)}
.courses-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-bottom:22px}
.courses-head h2{margin:0 0 7px;font-family:'Manrope',var(--font);font-size:31px;font-weight:650;letter-spacing:-1px;color:var(--text)}
.courses-head p{margin:0;font-size:12px;line-height:1.7;color:var(--muted)}
.courses-head p a{color:var(--green);border-bottom:1px solid #c0f28055}
.course-link{flex-shrink:0;font-size:12px;color:var(--green);border:1px solid #3f4d34;border-radius:8px;padding:11px 17px;background:#c0f2800a;white-space:nowrap;transition:background .2s,border-color .2s}
.course-link:hover{background:#c0f28017;border-color:var(--green);color:var(--green)}
.course-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none}
.course-list a{display:flex;flex-direction:column;height:100%;gap:9px;padding:19px;border:1px solid var(--border);border-radius:11px;background:#0c1015;transition:border-color .2s,background .2s,transform .2s}
.course-list a:hover{border-color:#4f6340;background:#0f151b;transform:translateY(-2px);color:inherit}
.course-index{font-family:'Manrope',var(--font);font-size:11px;letter-spacing:1.6px;color:var(--green)}
.course-list strong{font-size:14px;font-weight:600;line-height:1.45;letter-spacing:-.3px;color:var(--text)}
.course-desc{font-size:11px;line-height:1.75;color:#7c8894}
.course-list em{margin-top:auto;padding-top:6px;display:flex;align-items:center;justify-content:space-between;font-style:normal;font-size:10px;letter-spacing:1.2px;color:#68727e}
.course-list i{width:auto;height:auto;background:none;border-radius:0;box-shadow:none;font-style:normal;font-size:13px;color:var(--green)}
.footer-meta{display:flex;justify-content:space-between;gap:20px;margin-top:26px}
@media(max-width:1100px){.course-list{grid-template-columns:1fr}.course-list a{gap:6px}.course-list em{padding-top:2px}}
@media(max-width:1000px){.topbar-left{gap:18px}.partner-logo img{height:44px}.topbar-left .brand{padding-left:18px}}
@media(max-width:720px){.topbar{gap:12px}.topbar-left{gap:11px}.model-state{max-width:112px;line-height:1.35}.partner-logo{padding:6px 9px;border-radius:8px}.partner-logo img{height:34px}.topbar-left .brand{padding-left:11px}.footer-disclaimer{padding-top:20px}.footer-disclaimer p{font-size:10px}.footer-courses{padding:20px 17px 22px;margin-top:24px}.courses-head{display:block;margin-bottom:16px}.courses-head h2{font-size:25px}.courses-head p{font-size:11px}.course-link{display:inline-block;margin-top:14px;white-space:normal}}
@media(max-width:480px){.topbar{height:78px}.partner-logo img{height:30px}.brand{font-size:16px}.brand-mark{font-size:26px}}

/* Intro gate: white terms window over the blurred app, shown on every visit. */
body.intro-open{overflow:hidden}
body.intro-open .topbar,body.intro-open .app-shell{filter:blur(9px) saturate(.75);pointer-events:none}
.intro-gate{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:26px;background:#04070ad4;overflow:auto;animation:appear .3s ease}
.intro-window{display:flex;flex-direction:column;width:min(880px,100%);max-height:calc(100dvh - 52px);background:#fff;color:#1a212a;border-radius:18px;box-shadow:0 40px 130px #000c;overflow:hidden}
.intro-head{display:flex;align-items:center;gap:24px;padding:26px 34px;border-bottom:1px solid #e4e8ee;background:linear-gradient(180deg,#f7f9fc,#fff)}
.intro-logo{flex-shrink:0;width:auto;height:52px}
.intro-eyebrow{margin:0 0 6px;font-size:9px;letter-spacing:1.8px;color:#5b7fa0}
.intro-head h1{margin:0;font-family:'Manrope',var(--font);font-size:25px;font-weight:650;letter-spacing:-.9px;color:#111820;line-height:1.25}
.intro-body{flex:1;min-height:0;overflow:auto;padding:6px 34px 10px;scrollbar-width:thin;scrollbar-color:#c3ccd6 transparent}
.intro-block{padding:22px 0;border-bottom:1px solid #eceff4}
.intro-block:last-child{border-bottom:0}
.intro-block h2{margin:0 0 9px;font-size:15px;font-weight:650;letter-spacing:-.3px;color:#111820}
.intro-block p{margin:0 0 10px;font-size:13px;line-height:1.75;color:#41505f}
.intro-block p:last-child{margin-bottom:0}
.intro-block strong{color:#131c25;font-weight:650}
.intro-block ul{margin:0 0 10px;padding-left:19px}
.intro-block li{font-size:13px;line-height:1.75;color:#41505f;margin-bottom:8px}
.intro-warn{border-left:3px solid #e0a04a;margin-left:-34px;padding-left:31px;background:#fdf7ee}
.intro-warn h2{color:#7d4f10}
.intro-actions{display:flex;align-items:center;gap:14px;padding:18px 34px 22px;border-top:1px solid #e4e8ee;background:#f7f9fc}
.intro-continue{border:0;border-radius:9px;padding:14px 24px;font-size:14px;font-weight:650;letter-spacing:-.2px;background:#0f1720;color:#eaf5d8;transition:background .2s}
.intro-continue:hover{background:#1d2937}
.intro-leave{margin-left:auto;font-size:12px;font-weight:600;color:#1266a3;border-bottom:1px solid #1266a355;padding-bottom:1px}
.intro-leave:hover{color:#179cfa;border-color:#179cfa}
@media(max-width:720px){.intro-gate{padding:12px}.intro-window{max-height:calc(100dvh - 24px);border-radius:14px}.intro-head{gap:15px;padding:18px 20px}.intro-logo{height:38px}.intro-head h1{font-size:19px;letter-spacing:-.6px}.intro-body{padding:2px 20px 8px}.intro-block{padding:18px 0}.intro-block h2{font-size:14px}.intro-block p,.intro-block li{font-size:12px}.intro-warn{margin-left:-20px;padding-left:17px}.intro-actions{flex-wrap:wrap;gap:12px;padding:15px 20px 18px}.intro-continue{width:100%;padding:13px 18px}.intro-leave{margin:0 auto}}
@media(max-width:520px){.intro-head{display:block}.intro-logo{height:34px;margin-bottom:12px}}
