.math-lab{background:#0b0c14;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:92px 0 105px}
.math-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.math-heading h2{margin-top:16px}.math-heading>p{color:var(--muted);font-size:14px}
.math-stage{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr);gap:1px;background:var(--line);border:1px solid var(--line);padding-left:0;padding-right:0}
.canvas-shell{position:relative;background:radial-gradient(circle at 50% 48%,#211d3b 0,#11121e 52%,#0b0c14 100%);min-height:570px;overflow:hidden}.canvas-shell:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:44px 44px;pointer-events:none}.canvas-shell canvas{position:absolute;inset:0;width:100%;height:100%}
.formula{position:absolute;top:22px;left:24px;font-family:monospace;font-size:11px;color:#d5c8ff}.canvas-status{position:absolute;left:24px;right:24px;bottom:20px;display:flex;justify-content:space-between;font:10px monospace;letter-spacing:1.4px;color:#9e9aac}.canvas-status span{display:flex;align-items:center;gap:8px}.canvas-status i{width:6px;height:6px;border-radius:50%;background:#abf5cd;box-shadow:0 0 9px #abf5cd}
.math-controls{background:#151620;padding:34px 31px;display:flex;flex-direction:column;justify-content:center}.control-number{font:10px monospace;color:var(--accent);letter-spacing:2px}.control-intro h3{font-size:32px;line-height:1.15;margin-top:16px}.control-intro p{color:var(--muted);font-size:14px;margin:15px 0 30px}.math-controls label{display:block;border-top:1px solid var(--line);padding:18px 0 16px}.math-controls label>span{display:flex;justify-content:space-between;font-size:13px;margin-bottom:11px;color:#d8d6e2}.math-controls output{color:var(--accent);font-family:monospace}.math-controls input{width:100%;accent-color:var(--accent)}
.math-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.math-actions button{border:1px solid #555367;color:var(--ink);background:transparent;border-radius:4px;padding:12px 10px;cursor:pointer}.math-actions button:first-child{background:var(--accent);color:#171124;border-color:var(--accent);font-weight:700}.math-actions button:hover{border-color:var(--accent)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lab-page .header{border-bottom:1px solid var(--line)}.lab-intro{padding-top:54px;padding-bottom:36px}.lab-title-row{display:grid;grid-template-columns:1.5fr .7fr;gap:60px;align-items:end}.lab-title-row h1{font-size:clamp(56px,7vw,94px);margin:22px 0 0}.lab-title-row p{color:var(--muted);font-size:17px;line-height:1.8;padding-bottom:12px}.lab-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:1px;background:var(--line);border:1px solid var(--line);padding-left:0;padding-right:0;margin-bottom:95px}.future-lab{border-top:1px solid var(--line);padding-top:65px;padding-bottom:90px;display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.future-lab h2{margin-top:16px}.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.future-grid>a{background:var(--bg);padding:24px;min-height:220px;display:flex;flex-direction:column;transition:background .2s}.future-grid>a:hover{background:#201b33}.future-grid>a>span,.future-grid small{font:11px monospace;color:var(--accent);letter-spacing:1.4px}.future-grid h3{font-size:20px;margin-top:35px}.future-grid p{font-size:14px;color:var(--muted);margin-top:10px}.future-grid small{margin-top:auto;color:#aaa0c7}.experiment-block{padding-top:95px;padding-bottom:95px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:65px;align-items:center}.experiment-block.reverse{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr)}.experiment-block.reverse .experiment-copy{order:2}.experiment-copy h2{font-size:50px;margin-top:15px}.experiment-copy>p{color:var(--muted);margin-top:20px;max-width:430px}.experiment-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.experiment-actions button{background:transparent;border:1px solid #555367;color:var(--ink);padding:11px 17px;border-radius:4px;cursor:pointer}.experiment-actions button:first-child{background:var(--accent);border-color:var(--accent);color:#171124;font-weight:700}.experiment-actions button:hover{border-color:var(--accent)}.experiment-copy>output{display:block;color:#888699;font:12px monospace;margin-top:14px}.experiment-canvas{position:relative;background:#0a0b12;border:1px solid var(--line);min-height:500px;overflow:hidden}.experiment-canvas canvas{position:absolute;inset:0;width:100%;height:100%}.canvas-label{position:absolute;left:18px;bottom:14px;color:#8d899b;font:11px monospace;letter-spacing:1.2px;text-transform:uppercase}.experiment-slider{display:block;margin-top:28px;border-top:1px solid var(--line);padding-top:18px}.experiment-slider>span{display:flex;justify-content:space-between;color:#d8d6e2;font-size:14px;margin-bottom:10px}.experiment-slider input{width:100%;accent-color:var(--accent)}
@media(max-width:900px){.math-stage,.lab-workspace{grid-template-columns:1fr}.canvas-shell{min-height:500px}.math-heading{align-items:start}.math-heading>p{max-width:300px}.lab-title-row{grid-template-columns:1fr;gap:10px}.future-lab{grid-template-columns:1fr;gap:35px}.future-grid{grid-template-columns:1fr 1fr 1fr}.experiment-block,.experiment-block.reverse{grid-template-columns:1fr;gap:35px}.experiment-block.reverse .experiment-copy{order:0}.experiment-canvas{min-height:480px}}
@media(max-width:620px){.math-lab{padding:58px 0 65px}.math-heading{display:block}.math-heading>p{margin-top:15px}.canvas-shell{min-height:390px}.formula{font-size:9px;left:16px}.canvas-status{left:16px;right:16px}.math-controls{padding:28px 22px}.math-actions{grid-template-columns:1fr}.control-intro h3{font-size:28px}.lab-intro{padding-top:36px}.lab-title-row h1{font-size:50px}.lab-title-row p{font-size:16px}.lab-workspace{margin-bottom:60px}.future-lab{padding-top:45px;padding-bottom:60px}.future-grid{grid-template-columns:1fr}.future-grid>a{min-height:180px}.experiment-block{padding-top:60px;padding-bottom:60px}.experiment-copy h2{font-size:38px}.experiment-canvas{min-height:360px}}
