:root{--bg:#07111e;--surface:#0d1b2e;--surface2:#12243b;--text:#edf6ff;--muted:#9eb3c9;--line:#2c4661;--accent:#43e8b3;--accent2:#5da9ff;--danger:#ff8b8b;--shadow:0 18px 42px #0005}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 Inter,Segoe UI,Arial,sans-serif}body.light{--bg:#eef5fa;--surface:#fff;--surface2:#e5f0f8;--text:#102337;--muted:#52708c;--line:#b8cad9;--accent:#087c5c;--accent2:#176dcc;--shadow:0 14px 35px #24445c22}button,a{font:inherit}button{color:inherit;cursor:pointer}.hero{min-height:560px;position:relative;overflow:hidden;padding:22px max(5vw,26px);background:radial-gradient(ellipse at 82% 20%,#17476566,transparent 38%),linear-gradient(125deg,#081827,#07111e 65%,#0b2733)}.circuit-bg{position:absolute;inset:0;opacity:.35;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.8%,#4ca8c433 50%,transparent 50.2%),linear-gradient(#4ca8c422 1px,transparent 1px);background-size:95px 95px}.circuit-bg span{position:absolute;color:var(--accent);font:500 18px monospace;animation:float 7s ease-in-out infinite}.circuit-bg span:nth-child(1){left:15%;top:23%}.circuit-bg span:nth-child(2){right:19%;top:31%;animation-delay:-2s}.circuit-bg span:nth-child(3){left:47%;bottom:25%;animation-delay:-4s}.circuit-bg span:nth-child(4){right:7%;bottom:17%}.circuit-bg span:nth-child(5){left:8%;bottom:14%;animation-delay:-3s}.circuit-bg i{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent);animation:pulse 2s infinite}.circuit-bg i:nth-of-type(1){left:28%;top:50%}.circuit-bg i:nth-of-type(2){right:29%;top:65%;animation-delay:.6s}.circuit-bg i:nth-of-type(3){right:10%;top:14%;animation-delay:1.2s}.topbar{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;max-width:1260px;margin:auto}.brand{font-weight:800;letter-spacing:1.5px;text-decoration:none;color:var(--text)}.brand span{color:var(--accent)}.top-actions,.lab-tools,.step-controls{display:flex;gap:9px;flex-wrap:wrap}.icon-button,.secondary-button,.step-controls button{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 78%,transparent);padding:9px 13px;border-radius:8px}.hero-copy{position:relative;z-index:1;max-width:650px;margin:95px auto 40px;transform:translateX(-15%)}.eyebrow{font-size:.76rem;font-weight:700;letter-spacing:1.7px;color:var(--accent);margin:0 0 9px}.hero h1{font-size:clamp(2.8rem,7vw,5.7rem);line-height:.96;letter-spacing:-.06em;margin:0}.hero h1 em{color:var(--accent);font-style:normal}.hero p:not(.eyebrow){max-width:500px;color:var(--muted);font-size:1.08rem}.hero-subtitle{font-weight:700!important;color:var(--text)!important}.primary-button{display:inline-flex;gap:22px;align-items:center;background:var(--accent);color:#06151b;text-decoration:none;font-weight:800;padding:14px 19px;border-radius:8px;margin-top:14px}.primary-button span{font-size:1.4rem}.gate-nav-wrap{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.gate-nav{max-width:1260px;margin:auto;padding:10px 20px;display:flex;gap:8px;overflow:auto}.gate-nav button{min-width:100px;text-align:left;border:1px solid transparent;background:transparent;padding:10px;border-radius:8px}.gate-nav button:hover,.gate-nav button.active{background:var(--surface2);border-color:var(--line)}.gate-nav b{display:block}.gate-nav small{display:block;color:var(--muted);font-family:Georgia,serif}.section{max-width:1260px;padding:78px 26px;margin:auto}.section-heading{max-width:700px;margin-bottom:27px}.section h2,.from-input h2{font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin:0 0 10px}.section-heading p:not(.eyebrow){color:var(--muted);margin:0}.lab-tools{justify-content:flex-end;margin:-73px 0 25px}.secondary-button:hover,.step-controls button:hover{border-color:var(--accent);color:var(--accent)}.simulator{display:grid;grid-template-columns:185px minmax(400px,1fr) 175px;gap:14px;align-items:stretch}.input-panel,.output-panel,.signal-stage,.info-card,.quiz-card,.comparison-card,.remember-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px}.input-panel,.output-panel{padding:20px;display:flex;flex-direction:column;align-items:center}.panel-label{font-size:.76rem;font-weight:800;letter-spacing:1.5px;color:var(--muted);margin:0 0 18px}.input-control{width:100%;margin:0 0 19px}.input-control label{display:flex;justify-content:space-between;font-weight:700;margin-bottom:7px}.toggle{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--bg);display:flex;justify-content:space-between;align-items:center}.toggle[data-on="true"]{border-color:var(--accent);color:var(--accent)}.toggle .knob{height:18px;width:18px;border-radius:50%;background:var(--muted);transition:.25s}.toggle[data-on="true"] .knob{transform:translateX(0);background:var(--accent);box-shadow:0 0 12px var(--accent)}.signal-stage{position:relative;min-height:330px;padding:10px}.flow-label{font-size:.75rem;color:var(--muted);text-align:center}.signal-stage svg{width:100%;height:290px;overflow:visible}.wire{fill:none;stroke:var(--line);stroke-width:5;stroke-linecap:round}.wire.active{stroke:var(--accent);filter:url(#glow)}.gate-shape{fill:color-mix(in srgb,var(--surface2) 80%,transparent);stroke:var(--text);stroke-width:4;stroke-linejoin:round}.gate-shape.processing{stroke:var(--accent);filter:url(#glow);animation:gatePulse .55s ease}.gate-text{fill:var(--text);font-size:26px;font-weight:800;text-anchor:middle}.svg-label{fill:var(--muted);font-size:15px;font-weight:700}.particle{fill:var(--accent);filter:url(#glow)}.particle.low{fill:var(--muted);filter:none}.process-message{text-align:center;color:var(--accent);font-weight:700;min-height:24px}.output-lamp{width:75px;height:75px;border-radius:50%;display:grid;place-items:center;font-size:2rem;font-weight:800;background:var(--bg);border:4px solid var(--line);margin:7px}.output-lamp.high{background:var(--accent);color:#06151b;border-color:var(--accent);box-shadow:0 0 28px color-mix(in srgb,var(--accent) 65%,transparent)}.output-panel strong{font-size:2.8rem;line-height:1}.output-panel span{font-weight:700;color:var(--muted)}.output-panel p{font-size:.85rem;text-align:center;color:var(--muted)}.formula-strip{margin-top:14px;padding:16px 21px;border-left:3px solid var(--accent);background:var(--surface2);display:flex;gap:25px;align-items:center;flex-wrap:wrap}.formula-strip span{font-size:.78rem;font-weight:800;letter-spacing:1px;color:var(--muted)}.formula-strip strong{font:1.7rem Georgia,serif}.lower-grid{display:grid;grid-template-columns:.85fr 1.15fr 1.3fr;gap:14px;margin-top:14px}.info-card{padding:20px}.info-card h3{margin:0 0 14px;font-size:1.1rem}.monitor{font-family:ui-monospace,monospace;line-height:2;border-bottom:1px solid var(--line);padding-bottom:9px}.monitor div{display:flex;justify-content:space-between}.monitor b{color:var(--accent)}.info-card>p{color:var(--muted);font-weight:600}.table-wrap table{width:100%;border-collapse:collapse;text-align:center}.table-wrap th{font-size:.75rem;color:var(--muted);letter-spacing:1px}.table-wrap td,.table-wrap th{padding:7px;border-bottom:1px solid var(--line)}.table-wrap tr.active{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-weight:800;animation:rowFlash .5s}.step-display{min-height:78px;background:var(--surface2);padding:13px;border-radius:8px}.step-display b{display:block;color:var(--accent);font-size:.78rem;letter-spacing:1px}.step-controls{margin-top:12px}.step-controls button{padding:7px 9px;font-size:.8rem}.legend{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px;color:var(--muted);font-size:.86rem}.dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px}.dot.high{background:var(--accent)}.dot.low{border:2px solid var(--muted)}.comparison-grid,.remember-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.comparison-card,.remember-card{padding:19px;transition:transform .2s,border-color .2s}.comparison-card:hover{transform:translateY(-4px);border-color:var(--accent)}.comparison-card h3,.remember-card h3{margin:0}.expression-mini{font:1.35rem Georgia,serif;color:var(--accent);margin:8px 0}.comparison-card p{font-size:.88rem;color:var(--muted);min-height:40px}.mini-table{font:12px ui-monospace,monospace;color:var(--muted);display:grid;grid-template-columns:1fr 1fr;margin:8px 0 13px}.comparison-card button{border:0;background:none;color:var(--accent);padding:0;font-weight:800}.remember-card p{color:var(--accent);font-weight:700;margin-bottom:0}.quiz-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}.quiz-section .section-heading{margin:0}.quiz-card{padding:26px}.quiz-question-gate{color:var(--accent);font-weight:800;font-size:1.2rem}.quiz-options{display:flex;gap:10px;margin:17px 0}.quiz-options button{flex:1;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);font-size:1.3rem;font-weight:800}.quiz-options button:hover{border-color:var(--accent)}#quizFeedback{min-height:26px;font-weight:700}.correct{color:var(--accent)}.incorrect{color:var(--danger)}.score{color:var(--muted);font-size:.9rem}.from-input{padding:70px 26px;text-align:center;background:var(--surface2)}.journey{position:relative;max-width:900px;margin:32px auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.journey div{position:relative;z-index:1;background:var(--surface);border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;width:130px;height:130px;font-size:.84rem;font-weight:800}.journey span{color:var(--accent);font-size:2rem}.journey i{position:absolute;top:50%;left:8%;width:27px;height:27px;border-radius:50%;background:var(--accent);color:#06151b;font-style:normal;font-weight:800;display:grid;place-items:center;animation:journey 5s linear infinite}footer{border-top:1px solid var(--line);padding:32px 5%;display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;color:var(--muted);font-size:.9rem}footer strong{color:var(--text)}body.simple{font-size:19px}body.simple .circuit-bg,body.classroom .hero,body.classroom .gate-nav-wrap,.classroom .compare,.classroom .quiz-section,.classroom .remember,.classroom .from-input,body.classroom footer{display:none}body.classroom .lab{max-width:1480px;padding-top:35px}body.classroom .simulator{grid-template-columns:220px minmax(500px,1fr) 205px}body.classroom{font-size:19px}@keyframes float{50%{transform:translateY(-16px);opacity:.45}}@keyframes pulse{50%{transform:scale(1.8);opacity:.3}}@keyframes gatePulse{50%{transform:scale(1.045);transform-origin:center}}@keyframes rowFlash{50%{background:color-mix(in srgb,var(--accent) 35%,transparent)}}@keyframes journey{to{left:87%}}@media(max-width:900px){.hero-copy{transform:none;margin-top:80px}.simulator{grid-template-columns:1fr 1fr}.signal-stage{grid-row:1;grid-column:1/3}.lower-grid{grid-template-columns:1fr 1fr}.steps{grid-column:1/3}.comparison-grid,.remember-grid{grid-template-columns:repeat(3,1fr)}.quiz-section{grid-template-columns:1fr}.lab-tools{justify-content:flex-start;margin:0 0 18px}}@media(max-width:600px){.topbar{align-items:flex-start}.top-actions{justify-content:flex-end}.hero{min-height:500px}.simulator{display:flex;flex-direction:column}.signal-stage{order:-1;min-height:250px}.signal-stage svg{height:230px}.input-panel{display:block}.input-control{display:inline-block;width:48%;vertical-align:top}.output-panel{padding:15px}.lower-grid,.comparison-grid,.remember-grid{grid-template-columns:1fr}.steps{grid-column:auto}.journey div{width:75px;height:75px;font-size:.65rem}.journey{gap:5px}.journey span{font-size:1.2rem}.formula-strip{gap:10px}.gate-nav button{min-width:82px}.gate-nav{padding-left:10px}.journey i{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
/* Institutional branding additions */
.institution-lockup strong,.institution-lockup small{font-size:clamp(.9rem,2vw,1.15rem)!important;font-weight:700!important;letter-spacing:1.25px!important;line-height:1.35!important}.institution-lockup small{margin-top:0!important;color:var(--text)!important}.footer-identity span{font-weight:700;color:var(--text)}
.institution-lockup{display:grid;gap:1px;max-width:430px;margin:0 0 23px;padding:0 0 17px;border-bottom:1px solid color-mix(in srgb,var(--accent) 55%,transparent);text-transform:uppercase;letter-spacing:1.25px}.institution-lockup span{font-size:.68rem;font-weight:700;color:var(--muted)}.institution-lockup strong{font-size:clamp(.9rem,2vw,1.15rem);font-weight:700;color:var(--text)}.institution-lockup small{margin-top:4px;font-size:.7rem;font-weight:700;color:var(--accent)}footer{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:18px 38px!important;align-items:end!important;padding:34px 5%!important}footer strong{display:block!important;margin-bottom:9px;color:var(--text);font-size:1.05rem;letter-spacing:.3px}.footer-identity,.footer-learning{display:grid;gap:3px}.footer-identity span:first-of-type{color:var(--text);font-weight:700}.footer-learning{text-align:right}.educator-credit{margin:0;padding-left:24px;border-left:1px solid var(--line);color:var(--text);font-weight:600;white-space:nowrap}@media(max-width:900px){footer{grid-template-columns:1fr 1fr!important}.educator-credit{grid-column:1/-1;padding:14px 0 0;border-left:0;border-top:1px solid var(--line)}}@media(max-width:600px){footer{grid-template-columns:1fr!important}.footer-learning{text-align:left}.educator-credit{grid-column:auto}.institution-lockup{margin-bottom:18px}}
