:root{--lab-bg:#0a0c0b;--lab-panel:#111411;--lab-panel-2:#171b17;--lab-ink:#f1f4e9;--lab-muted:#8e9688;--lab-line:#f1f4e929;--lab-acid:#c9ff35;--lab-orange:#ff7044;--lab-blue:#71a7ff;--lab-paper:#e9ebdf}body:has(.lab-shell){background:var(--lab-bg);color:var(--lab-ink)}.lab-shell{background:linear-gradient(#c9ff3506 1px, transparent 1px), linear-gradient(90deg, #c9ff3506 1px, transparent 1px), var(--lab-bg);min-height:100vh;color:var(--lab-ink);font-family:var(--font-geist-sans), Arial, sans-serif;background-size:40px 40px;overflow:hidden}.lab-shell *{box-sizing:border-box}.lab-shell a{color:inherit;text-decoration:none}.lab-shell h1,.lab-shell h2,.lab-shell h3,.lab-shell p{margin-top:0}.lab-header{border-bottom:1px solid var(--lab-line);width:min(100% - 48px,1440px);height:92px;font-family:var(--font-geist-mono), monospace;grid-template-columns:1fr auto 1fr;align-items:center;margin:0 auto;display:grid}.lab-brand{align-items:center;gap:13px;width:max-content;display:inline-flex}.lab-mark{grid-template-columns:repeat(3,1fr);gap:3px;width:35px;height:35px;display:grid;transform:rotate(-7deg)}.lab-mark i{background:var(--lab-acid);display:block}.lab-mark i:first-child{align-self:end;height:50%}.lab-mark i:nth-child(2){height:100%}.lab-mark i:last-child{background:var(--lab-orange);align-self:end;height:72%}.lab-brand strong{letter-spacing:.08em;font-size:15px;display:block}.lab-brand small{color:var(--lab-muted);letter-spacing:.13em;margin-top:4px;font-size:8px;display:block}.lab-header nav{color:var(--lab-muted);letter-spacing:.1em;text-transform:uppercase;gap:34px;font-size:10px;display:flex}.lab-header nav a{transition:color .2s}.lab-header nav a:hover{color:var(--lab-acid)}.lab-online{letter-spacing:.1em;justify-self:end;align-items:center;gap:9px;font-size:9px;display:flex}.lab-online>span{background:var(--lab-acid);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #c9ff351f,0 0 18px #c9ff3599}.lab-hero{border-bottom:1px solid var(--lab-line);grid-template-columns:1fr .88fr;align-items:center;gap:clamp(50px,8vw,130px);width:min(100% - 48px,1440px);min-height:720px;margin:0 auto;display:grid}.lab-kicker,.lab-section-head>div>span,.log-intro>span,.personal-code{font:600 10px var(--font-geist-mono), monospace;letter-spacing:.14em;color:var(--lab-acid)}.lab-kicker{margin-bottom:34px}.lab-hero h1{letter-spacing:-.08em;max-width:760px;margin-bottom:31px;font-size:clamp(70px,8vw,126px);font-weight:760;line-height:.79}.lab-hero h1 span{color:var(--lab-acid);display:block}.lab-intro{color:#abb2a5;letter-spacing:-.02em;max-width:680px;margin-bottom:37px;font-size:clamp(17px,1.35vw,21px);line-height:1.6}.lab-actions{flex-wrap:wrap;gap:11px;display:flex}.lab-button{border:1px solid var(--lab-line);min-height:54px;font:650 11px var(--font-geist-mono), monospace;letter-spacing:.07em;justify-content:center;align-items:center;gap:24px;padding:0 20px;transition:transform .22s,background .22s,color .22s;display:inline-flex}.lab-button:hover{transform:translateY(-3px)}.lab-button-bright{background:var(--lab-acid);border-color:var(--lab-acid);color:#0b0d0b!important}.lab-button-ghost:hover{border-color:var(--lab-acid);color:var(--lab-acid)}.lab-console{background:#0d110e;border:1px solid #c9ff3552;justify-self:end;width:100%;max-width:570px;position:relative;transform:rotate(1deg);box-shadow:22px 22px #c9ff350e}.console-topbar{height:39px;color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.09em;border-bottom:1px solid #c9ff3538;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.console-screen{min-height:430px;font-family:var(--font-geist-mono), monospace;padding:28px}.console-prompt{color:#7f887c;margin-bottom:25px;font-size:11px}.console-prompt span{color:var(--lab-acid)}.console-prompt b{color:var(--lab-blue)}.status-stack{border-top:1px solid var(--lab-line);margin:0 0 34px}.status-stack>div{border-bottom:1px solid var(--lab-line);grid-template-columns:1fr 1fr;align-items:center;min-height:45px;display:grid}.status-stack dt{color:#747d70;letter-spacing:.1em;font-size:9px}.status-stack dd{letter-spacing:.06em;margin:0;font-size:10px}.status-good{background:var(--lab-acid);border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.console-focus{border-left:2px solid var(--lab-acid);background:#ffffff09;padding:18px}.console-focus small{color:#737c70;letter-spacing:.1em;font-size:8px}.console-focus strong{font:600 15px var(--font-geist-sans), sans-serif;letter-spacing:-.02em;margin:8px 0 17px;display:block}.focus-progress{background:#ffffff14;height:5px;margin-bottom:17px}.focus-progress span{background:var(--lab-acid);width:100%;height:100%;display:block}.console-focus p{color:#778074;margin-bottom:7px;font-size:8px}.console-cursor{color:var(--lab-acid);margin-top:18px;animation:1s step-end infinite lab-blink}.console-sticker{background:var(--lab-orange);color:#15100d;width:86px;height:86px;font:800 11px/1.05 var(--font-geist-mono), monospace;text-align:center;place-items:center;display:grid;position:absolute;bottom:-23px;right:-20px;transform:rotate(-8deg);box-shadow:8px 9px #00000059}@keyframes lab-blink{50%{opacity:0}}.lab-ticker{border-bottom:1px solid var(--lab-line);grid-template-columns:repeat(4,1fr);width:min(100% - 48px,1440px);min-height:138px;margin:0 auto;display:grid}.lab-ticker>div{border-right:1px solid var(--lab-line);flex-direction:column;justify-content:center;padding:34px 25px;display:flex}.lab-ticker>div:first-child{padding-left:0}.lab-ticker>div:last-child{border-right:0}.lab-ticker strong{color:var(--lab-acid);font:700 26px var(--font-geist-mono), monospace;letter-spacing:-.06em}.lab-ticker span{color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.12em;margin-top:8px}.lab-index,.lab-log{padding:125px max(24px,50vw - 720px)}.lab-section-head{grid-template-columns:1.45fr .55fr;align-items:end;gap:70px;margin-bottom:52px;display:grid}.lab-section-head h2,.log-intro h2,.lab-personal h2{letter-spacing:-.065em;margin:22px 0 0;font-size:clamp(48px,5.7vw,84px);line-height:.92}.lab-section-head>p{max-width:470px;color:var(--lab-muted);margin:0;font-size:15px;line-height:1.7}.lab-projects{gap:14px;display:grid}.lab-project{border:1px solid var(--lab-line);background:var(--lab-panel);grid-template-columns:58px 1fr;min-height:370px;transition:transform .3s,border-color .3s;display:grid;overflow:hidden}.lab-project:hover{border-color:var(--lab-acid);transform:translate(7px)}.project-rail{border-right:1px solid var(--lab-line);writing-mode:vertical-rl;color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.11em;justify-content:space-between;align-items:center;padding:18px 0;display:flex;transform:rotate(180deg)}.rail-status{color:var(--lab-ink)}.rail-status i{background:var(--lab-acid);border-radius:50%;width:6px;height:6px;margin-bottom:7px;display:inline-block}.project-main{min-width:0;padding:38px 42px;position:relative;overflow:hidden}.project-title-row{grid-template-columns:auto 1fr auto;align-items:center;gap:24px;display:grid}.project-glyph{border:1px solid var(--lab-line);width:62px;height:62px;color:var(--lab-acid);font:700 24px var(--font-geist-mono), monospace;place-items:center;display:grid}.project-title-row p{color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.13em;margin-bottom:7px}.project-title-row h3{letter-spacing:-.065em;margin:0;font-size:clamp(42px,5vw,69px);line-height:.8}.project-open{border:1px solid var(--lab-line);place-items:center;width:48px;height:48px;font-size:20px;transition:background .2s,color .2s;display:grid}.lab-project:hover .project-open{background:var(--lab-acid);color:#0a0c0b}.project-description{color:#a0a89b;max-width:690px;margin:35px 0 24px;font-size:15px;line-height:1.65}.project-main ul{color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.09em;text-transform:uppercase;gap:22px;margin:0;padding:0;list-style:none;display:flex}.project-main li:before{content:"/";color:var(--lab-acid);margin-right:8px}.project-signal{opacity:.14;pointer-events:none;width:340px;height:125px;position:absolute;bottom:30px;right:34px}.signal-paper{align-items:end;gap:6px;display:flex}.signal-paper i{background:var(--lab-acid);flex:1;height:25%}.signal-paper i:nth-child(2){height:60%}.signal-paper i:nth-child(3){height:42%}.signal-paper i:nth-child(4){height:88%}.signal-paper i:nth-child(5){height:54%}.signal-paper i:nth-child(6){height:100%}.signal-paper i:nth-child(7){height:72%}.signal-paper i:nth-child(8){height:38%}.signal-terminal{border:1px solid var(--lab-blue);color:var(--lab-blue);font:9px var(--font-geist-mono), monospace;flex-direction:column;justify-content:center;gap:10px;padding:17px;display:flex}.project-shellhound .project-glyph{color:var(--lab-blue)}.lab-experiments{background:var(--lab-paper);color:#111410;padding:125px max(24px,50vw - 720px)}.lab-section-head-light>div>span{color:#4d5e17}.lab-section-head-light>p{color:#62685e}.experiment-grid{border-top:1px solid #11141040;border-left:1px solid #11141040;grid-template-columns:repeat(3,1fr);display:grid}.experiment-card{background:#ffffff26;border-bottom:1px solid #11141040;border-right:1px solid #11141040;flex-direction:column;min-height:410px;padding:27px;display:flex}.experiment-card.experiment-open{background:var(--lab-acid)}.experiment-shellforge{background:#111410;transition:transform .25s;color:var(--lab-paper)!important}.experiment-shellforge:hover{transform:translateY(-6px)}.experiment-shellforge .experiment-meta b,.experiment-shellforge .experiment-state{color:var(--lab-acid)}.experiment-shellforge p{color:#9ba294}.experiment-shellforge .experiment-icon,.experiment-shellforge .experiment-state{border-color:#f1f4e938}.experiment-meta{font:8px var(--font-geist-mono), monospace;letter-spacing:.1em;justify-content:space-between;display:flex}.experiment-meta b{color:#526018}.experiment-icon{width:62px;height:62px;font:300 36px var(--font-geist-mono), monospace;border:1px solid #11141052;place-items:center;margin:60px 0 32px;display:grid}.experiment-card h3{letter-spacing:-.045em;margin-bottom:15px;font-size:29px}.experiment-card p{color:#5c6358;max-width:360px;font-size:14px;line-height:1.65}.experiment-state{font:8px var(--font-geist-mono), monospace;letter-spacing:.1em;border-top:1px solid #11141033;margin-top:auto;padding-top:25px}.lab-log{background:#0e110f;grid-template-columns:.7fr 1.3fr;gap:90px;display:grid}.log-intro{align-self:start;position:sticky;top:45px}.log-intro p{color:var(--lab-muted);margin-top:25px}.log-list{border-top:1px solid var(--lab-line);margin:0;padding:0;list-style:none}.log-list li{border-bottom:1px solid var(--lab-line);grid-template-columns:115px 1fr auto;gap:24px;min-height:205px;padding:30px 0;display:grid}.log-list time,.log-list div>span,.log-list li>b{font:8px var(--font-geist-mono), monospace;letter-spacing:.1em}.log-list time{color:var(--lab-muted)}.log-list div>span{color:var(--lab-acid)}.log-list h3{letter-spacing:-.035em;margin:13px 0 11px;font-size:23px}.log-list p{max-width:590px;color:var(--lab-muted);margin:0;font-size:13px;line-height:1.6}.log-list li>b{border:1px solid var(--lab-line);height:max-content;color:var(--lab-acid);padding:7px 9px}.log-next{opacity:.52}.lab-personal{background:var(--lab-orange);color:#17100d;grid-template-columns:.4fr 1.25fr auto;align-items:center;gap:55px;min-height:380px;margin:18px;padding:70px max(30px,50vw - 680px);display:grid}.personal-code{color:#5b2617;align-self:start;padding-top:8px}.lab-personal h2{margin-top:0}.lab-personal p{color:#17100dad;max-width:690px;margin:24px 0 0;line-height:1.65}.lab-button-dark{white-space:nowrap;background:#17100d;border-color:#17100d;color:var(--lab-paper)!important}.lab-footer{width:min(100% - 48px,1440px);min-height:130px;color:var(--lab-muted);font:8px var(--font-geist-mono), monospace;letter-spacing:.1em;grid-template-columns:1fr auto 1fr;align-items:center;margin:0 auto;display:grid}.lab-footer-brand{font-size:15px;font-weight:700;color:var(--lab-ink)!important}.lab-footer-brand span{color:var(--lab-acid)}.lab-footer p{margin:0}.lab-footer>span{justify-self:end}@media (max-width:1000px){.lab-header{grid-template-columns:1fr auto}.lab-header nav{display:none}.lab-hero{grid-template-columns:1fr;gap:75px;padding:100px 0 90px}.lab-console{justify-self:start}.lab-ticker{grid-template-columns:repeat(2,1fr)}.lab-ticker>div:nth-child(2){border-right:0}.lab-ticker>div:nth-child(-n+2){border-bottom:1px solid var(--lab-line)}.lab-section-head{grid-template-columns:1fr;gap:28px}.experiment-grid{grid-template-columns:1fr}.experiment-card{min-height:340px}.experiment-icon{margin-top:38px}.lab-log{grid-template-columns:1fr;gap:65px}.log-intro{position:static}.lab-personal{grid-template-columns:1fr}.lab-personal .lab-button{justify-self:start}}@media (max-width:650px){.lab-header{width:min(100% - 30px,1440px);height:76px}.lab-brand small{display:none}.lab-online{font-size:8px}.lab-hero{width:min(100% - 30px,1440px);padding:75px 0 80px}.lab-hero h1{font-size:clamp(59px,18vw,80px)}.lab-actions{flex-direction:column}.lab-button{justify-content:space-between;width:100%}.lab-console{transform:none}.console-screen{min-height:400px;padding:19px}.console-sticker{right:10px}.lab-ticker{width:min(100% - 30px,1440px)}.lab-ticker>div{padding:25px 12px}.lab-ticker>div:first-child{padding-left:12px}.lab-ticker strong{font-size:20px}.lab-index,.lab-log,.lab-experiments{padding-top:90px;padding-bottom:90px}.lab-section-head h2,.log-intro h2,.lab-personal h2{font-size:48px}.lab-project{grid-template-columns:38px 1fr}.project-main{padding:26px 20px}.project-title-row{grid-template-columns:auto 1fr;gap:13px}.project-glyph{width:45px;height:45px}.project-open{display:none}.project-title-row h3{font-size:39px}.project-main ul{gap:12px}.project-signal{display:none}.experiment-card{min-height:360px}.log-list li{grid-template-columns:1fr auto}.log-list time{grid-column:1}.log-list li>div{grid-column:1/span 2}.log-list li>b{grid-area:1/2}.lab-personal{margin:9px;padding:55px 23px}.lab-footer{grid-template-columns:1fr auto;width:min(100% - 30px,1440px)}.lab-footer p{display:none}}@media (prefers-reduced-motion:reduce){.console-cursor{animation:none}.lab-shell *,.lab-shell :before,.lab-shell :after{transition-duration:.01ms!important}}
