@charset "UTF-8";
.creative-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.experiment-card{border:1px solid var(--line);background:var(--panel);min-width:0;scroll-margin-top:120px}.experiment-cover{display:block;background:#030307}.experiment-cover img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain}.experiment-copy{padding:22px}.project-type{font:.6875rem/1.6 Consolas,'Courier New',monospace;letter-spacing:.03em;text-transform:uppercase;color:var(--acid);margin:0 0 12px}.experiment-copy h4,.learning-list h4{font:400 1.1875rem/1.4 Consolas,'Courier New',monospace;letter-spacing:-.035em;margin:0 0 14px;overflow-wrap:anywhere}.experiment-copy>p:not(.project-type){font-size:.9375rem;line-height:1.7;color:var(--muted);margin:0 0 20px}.experiment-copy>a,.learning-list a{font-size:.8125rem;color:var(--acid);text-decoration:underline;text-underline-offset:4px;line-height:1.6}.learning-list>article{display:grid;grid-template-columns:1fr 1.5fr auto;gap:25px;padding:25px 0;border-top:1px solid var(--line);align-items:start}.learning-list>article:first-child{border-top:0}.learning-list p:not(.project-type){font-size:.9375rem;line-height:1.7;color:var(--muted);margin:0}.learning-list a{white-space:nowrap}.learning-list h4{margin:0}.learning-list .project-type{margin-bottom:9px}@media(max-width:1180px){.creative-gallery{grid-template-columns:1fr 1fr}.learning-list>article{grid-template-columns:1fr 1fr}.learning-list a{grid-column:2}}@media(max-width:780px){.creative-gallery{grid-template-columns:1fr}.experiment-card{scroll-margin-top:170px}.experiment-copy{padding:22px}.learning-list>article{grid-template-columns:1fr;gap:14px}.learning-list a{grid-column:auto}}
.creative-case{margin-top:34px;scroll-margin-top:112px}.creative-case h4{font:400 1.375rem/1.4 Consolas,'Courier New',monospace;margin:0}.experiment-shot{margin:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--panel)}.experiment-shot img{width:100%;height:auto}.experiment-shot figcaption{padding:16px;font-size:.8125rem;line-height:1.7;color:var(--muted)}.experiment-shot a:not(:first-child){color:var(--acid)}.experiment-shot figcaption a{text-decoration:underline;text-underline-offset:3px}@media(max-width:780px){.creative-case{scroll-margin-top:165px}}
.project-archive>.comment{margin-top:42px}.archive-entry{border-top:1px solid var(--line);padding-top:34px;margin-top:38px;scroll-margin-top:112px}.entry-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.entry-heading .comment{margin-bottom:12px}.archive-entry h3{font-size:clamp(1.45rem,2.4vw,2.25rem);font-family:Consolas,'Courier New',monospace;font-weight:400;line-height:1.3;letter-spacing:-.04em;margin:0;overflow-wrap:anywhere}.entry-heading .repo-badge{font-size:.75rem}.event-pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;border:1px solid var(--line);border-radius:5px;overflow:hidden}.event-pipeline li{padding:24px;background:var(--panel);border-right:1px solid var(--line)}.event-pipeline li:last-child{border:0}.event-pipeline span{font:.75rem/1.5 Consolas,'Courier New',monospace;color:var(--acid)}.event-pipeline strong{display:block;font-size:1rem;font-weight:500;margin:15px 0 10px}.event-pipeline p,.archive-detail-grid p{font-size:.9375rem;line-height:1.7;color:var(--muted);margin:0}.archive-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding:5px 0 25px}.archive-detail-grid h4{font-size:1rem;margin:0 0 12px}.archive-tags{list-style:none;padding:0;margin:23px 0 0;display:flex;gap:10px 22px;flex-wrap:wrap;color:var(--muted);font:.8125rem/1.6 Consolas,'Courier New',monospace}.archive-tags li::before{content:'· ';color:var(--acid)}.bot-flow{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:23px;background:var(--panel);border:1px solid var(--line);font:.875rem/1.5 Consolas,'Courier New',monospace}.bot-flow b{font-weight:400;color:var(--violet)}.creative-entry h3{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.15}.archive-entry .dev-details{margin-top:25px}@media(max-width:780px){.archive-entry{scroll-margin-top:165px}.entry-heading{display:block}.entry-heading .repo-badge{display:inline-block;margin-top:18px}.event-pipeline,.archive-detail-grid{grid-template-columns:1fr}.event-pipeline li{border-right:0;border-bottom:1px solid var(--line)}.archive-detail-grid{gap:22px}.bot-flow{gap:10px;padding:20px;flex-direction:column;align-items:flex-start}.bot-flow b{transform:rotate(90deg)}.archive-entry h3{font-size:clamp(1.25rem,6vw,1.9rem)}.creative-entry h3{font-size:2.25rem}}
:root{color-scheme:dark;--bg:#111216;--panel:#191b20;--raised:#202329;--line:#34383f;--text:#efeee9;--muted:#a6abb4;--acid:#d5fb78;--amber:#ffb37e;--violet:#bfaaff;--switch-border:#42474e;--switch-bg:#191b20;--switch-text:#b5bbc4;--switch-active:#d5fb78;--switch-active-text:#111216;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:106px}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}button,input,a,summary{outline-offset:5px}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--amber)}[hidden]{display:none!important}::selection{background:var(--acid);color:var(--bg)}.acid{color:var(--acid)}.amber{color:var(--amber)}.violet{color:var(--violet)}.dim{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:30;top:10px;left:15px;padding:15px;background:var(--acid);color:var(--bg);transform:translateY(-180%)}.skip-link:focus{transform:none}
.dev-header{display:flex;align-items:center;gap:28px;padding:20px 30px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:10;min-height:89px}.dev-brand{display:flex;align-items:center;gap:14px;font-family:Consolas,'Courier New',monospace;font-size:1rem;white-space:nowrap}.dev-brand>span:first-child{font-size:1.7rem;color:var(--acid);font-weight:bold;letter-spacing:-3px}.dev-header>.view-switch{margin-left:auto}.palette-trigger{display:flex;gap:25px;align-items:center;background:none;border:1px solid var(--line);border-radius:6px;color:var(--muted);padding:11px 14px;font-size:.875rem;min-height:44px}kbd{font-family:Consolas,'Courier New',monospace;font-size:.75rem;border:1px solid var(--line);border-radius:4px;padding:3px 5px;color:var(--muted)}.workspace{display:grid;grid-template-columns:185px minmax(0,1fr);max-width:1720px;margin-inline:auto}.explorer{font: .875rem/1.5 Consolas,'Courier New',monospace;position:sticky;top:89px;align-self:start;height:calc(100vh - 89px);padding:30px 14px;border-right:1px solid var(--line)}.explorer-title{font-size:.75rem;letter-spacing:.1em;color:var(--muted);padding-left:14px}.folder{display:block;margin:26px 0 13px;padding-left:10px;color:#d7dce4;font-size:.8125rem}.explorer nav{display:grid;gap:4px}.explorer nav a{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:4px;color:var(--muted);min-height:44px}.explorer nav a:hover,.explorer nav a:focus-visible{color:var(--text);background:var(--raised)}.explorer nav a:first-child{color:var(--text);background:var(--raised)}.file-icon{font: .75rem/1 Consolas,'Courier New',monospace;color:var(--acid);min-width:23px}.explorer-note{font-size:.75rem;line-height:1.8;border-top:1px solid var(--line);margin:34px 8px 0;padding-top:22px;color:var(--muted)}.explorer-note>span{color:var(--acid)}.explorer-note a{text-decoration:underline;text-underline-offset:4px}.explorer-note p{margin:9px 0 12px}main{min-width:0}.section-pad{padding:38px clamp(28px,4vw,66px) 65px;border-bottom:1px solid var(--line);scroll-margin-top:0}.breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font: .8125rem/1.5 Consolas,'Courier New',monospace;color:var(--muted)}.breadcrumb>span:nth-child(3){color:var(--text)}.line-note{margin-left:auto;font-size:.75rem}.dev-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin-top:65px}.comment{font:.875rem/1.6 Consolas,'Courier New',monospace;color:var(--muted);margin:0 0 20px}h1{font-size:clamp(3rem,4.8vw,5.4rem);line-height:1.06;letter-spacing:-.06em;font-weight:600;margin:0 0 27px}h1>span{color:var(--acid)}.cursor{color:var(--acid);animation:cursor-pulse 1.2s step-end 5}.lead{font-size:1.55rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 20px}.intro-copy{font-size:1rem;line-height:1.75;color:var(--muted);max-width:48ch;margin:0}.dev-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:30px}.acid-button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--acid);color:var(--bg);border:1px solid var(--acid);border-radius:4px;padding:16px 18px;font-size:.9375rem;font-weight:600;box-shadow:4px 4px 0 #526633}.acid-button:hover{background:#e4ffac;box-shadow:2px 2px 0 #526633;transform:translate(2px,2px)}.subtle-link{font:.9375rem/1.5 Consolas,'Courier New',monospace;border-bottom:1px solid var(--line);padding:12px 0}.subtle-link:hover{color:var(--acid)}.code-window{background:var(--panel);border:1px solid #45494e;border-radius:8px;overflow:hidden;transform:rotate(1.3deg);min-width:0;box-shadow:10px 13px 0 #0b0d10}.window-bar{display:flex;gap:16px;align-items:center;justify-content:space-between;min-height:45px;padding:13px 17px;border-bottom:1px solid var(--line);font:.8125rem/1.4 Consolas,'Courier New',monospace;color:var(--muted)}.window-bar>span:first-child{display:flex;gap:10px;align-items:center;color:var(--text)}.window-bar i{width:8px;height:8px;display:inline-block;background:var(--acid);border-radius:2px}.window-bar a{text-decoration:underline;text-underline-offset:4px}.code-window pre{font:.875rem/1.9 Consolas,'Courier New',monospace;overflow:auto;margin:0;padding:26px 17px 30px}.code-window b{font-weight:400}.line em{font-style:normal;color:#757d8b;display:inline-block;width:31px;user-select:none}.code-footer{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:13px 17px;font:.75rem/1.5 Consolas,'Courier New',monospace;color:var(--muted)}.dev-stack{display:flex;flex-wrap:wrap;gap:12px 26px;border-top:1px dashed #464b54;padding-top:24px;margin-top:63px;font:.875rem/1.5 Consolas,'Courier New',monospace}.dev-stack span:not(:last-child)::before{content:'· ';color:var(--acid)}
.dev-case{background:#15171b}.case-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-top:45px}.case-heading .comment{margin-bottom:16px}h2{font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.15;font-weight:500;letter-spacing:-.04em;margin:0}.repo-badge{font:.8125rem/1.4 Consolas,'Courier New',monospace;border:1px dashed #666f7b;color:var(--amber);padding:10px 12px;white-space:nowrap;margin-bottom:4px}.section-intro{font-size:1.0625rem;line-height:1.75;color:var(--muted);max-width:80ch;margin:24px 0 30px}.project-browser{margin-top:32px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.project-browser img{width:100%}.git-history{list-style:none;margin:34px 0 45px;padding:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0}.git-history li{position:relative;border-top:1px solid #59606b;padding:20px 25px 0 0}.commit-node{position:absolute;top:-5px;left:0;width:9px;height:9px;background:var(--bg);border:2px solid var(--acid);border-radius:50%}.git-history b{font:400 .875rem/1.5 Consolas,'Courier New',monospace;color:var(--acid)}.git-history p{font-size:.9375rem;line-height:1.7;color:var(--muted);margin:9px 0 0}.code-heading{font:400 1.25rem/1.5 Consolas,'Courier New',monospace;overflow-wrap:anywhere;margin:0 0 22px}.architecture{display:grid;grid-template-columns:1fr 25px 1fr 25px 1fr;align-items:stretch;gap:12px}.architecture>div{border:1px solid var(--line);padding:20px;background:var(--panel)}.architecture>div>span{font:.75rem/1.4 Consolas,'Courier New',monospace;color:var(--acid)}.architecture h4{font-size:1rem;margin:15px 0 11px}.architecture p{font-size:.9375rem;line-height:1.65;color:var(--muted);margin:0}.flow-arrow{display:flex;align-items:center;justify-content:center;color:var(--acid);font-size:1.2rem}.tradeoffs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;margin-top:34px}.tradeoffs article>span{font:.8125rem/1.5 Consolas,'Courier New',monospace}.tradeoffs h4{font-size:1rem;margin:12px 0}.tradeoffs p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}.dev-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:36px}.dev-details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;font-size:1rem}.dev-details summary::-webkit-details-marker{display:none}.dev-details summary span{font-size:1.6rem;color:var(--acid)}.dev-details[open] summary span{transform:rotate(45deg)}.diff-content{padding-bottom:24px}.diff-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px}.diff-toolbar p{font:.8125rem/1.5 Consolas,'Courier New',monospace;color:var(--muted)}.device-switch{display:flex;border:1px solid var(--line);padding:4px}.device-switch button{min-height:44px;padding:10px 14px;font-size:.875rem;border:0;background:none;color:var(--muted)}.device-switch button[aria-pressed=true]{color:var(--bg);background:var(--acid)}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.comparison-grid figure{min-width:0;margin:0}.comparison-grid figcaption{font:.8125rem/1.5 Consolas,'Courier New',monospace;padding:12px;color:var(--amber);background:var(--panel)}.comparison-grid figure+figure figcaption{color:var(--acid)}.comparison-grid img{width:100%}.comparison-grid.mobile{max-width:720px;margin-inline:auto}.fine-print{font-size:.8125rem;line-height:1.7;color:var(--muted);max-width:100ch;margin:20px 0 0}.fine-print a{text-decoration:underline;text-underline-offset:3px}
.lab-section>.comment{margin-top:44px}.lab-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.lab-controls button{font:.8125rem/1.5 Consolas,'Courier New',monospace;color:var(--muted);border:1px solid #4b515a;background:var(--bg);padding:12px 14px;border-radius:4px;min-height:46px}.lab-controls button[aria-pressed=true]{background:var(--acid);color:var(--bg);border-color:var(--acid)}.lab-controls button:hover{border-color:var(--acid)}.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lab-input{border:1px solid var(--line);background:var(--panel);min-width:0}.lab-input pre{overflow:auto;padding:22px;margin:0;font:.875rem/1.9 Consolas,'Courier New',monospace;color:var(--amber);min-height:180px}.lab-result{border:1px solid #657647;background:#1a2116;padding:25px}.result-label{font:.75rem/1.5 Consolas,'Courier New',monospace;color:var(--acid)}.lab-result h3{font-size:1.5rem;line-height:1.25;font-weight:500;margin:23px 0 16px}.lab-result p{font-size:1rem;line-height:1.65;color:#c0c8b5;margin:0 0 20px}.lab-result>code{font:.8125rem/1.7 Consolas,'Courier New',monospace;color:var(--acid);overflow-wrap:anywhere}.lab-result[data-state=error]{background:#2a1d19;border-color:#915d45}.lab-result[data-state=error] .result-label,.lab-result[data-state=error]>code{color:var(--amber)}.lab-result[data-state=error] p{color:#d7bcb0}.lab-result[data-state=fallback]{background:#21202a;border-color:#6b6184}.lab-result[data-state=fallback] .result-label,.lab-result[data-state=fallback]>code{color:var(--violet)}
.terminal-section{background:#15171b}.terminal-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:44px 0 30px}.terminal-heading p{font-size:.9375rem;line-height:1.8;color:var(--muted);margin:0}.terminal-heading code{color:var(--acid);font-size:.875rem}.terminal-window{background:#0c0f10;border:1px solid #48544a;border-radius:6px;overflow:hidden}.terminal-output{max-height:340px;min-height:150px;overflow:auto;padding:23px 25px;font:.9375rem/1.75 Consolas,'Courier New',monospace;overflow-wrap:anywhere;scrollbar-color:#48544a #0c0f10}.terminal-entry{margin-bottom:20px}.terminal-entry:last-child{margin-bottom:0}.terminal-entry p{margin:0;white-space:pre-wrap}.terminal-entry .echo{color:#a6abb4;margin-bottom:5px}.terminal-entry a{display:inline-block;text-decoration:underline;text-underline-offset:4px;color:var(--acid);margin-top:5px;margin-inline-end:18px}.terminal-welcome{color:var(--acid)}.terminal-output .coffee{font-size:1rem;color:var(--amber);white-space:pre;line-height:1.25}.terminal-form{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1px solid #313b32}.terminal-form label{color:var(--acid);font-size:1.25rem}.terminal-form input{min-width:0;flex:1;font:.9375rem/1.5 Consolas,'Courier New',monospace;padding:10px 0;background:none;border:0;color:var(--acid);caret-color:var(--acid);border-radius:0}.terminal-form input::placeholder{color:#88998a}.terminal-form button{font:.8125rem/1.5 Consolas,'Courier New',monospace;min-height:44px;border:1px solid #48544a;border-radius:3px;background:none;color:var(--text);padding:9px 12px}.terminal-form button:hover{background:#29352a}.terminal-shortcuts{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:15px;font:.75rem/1.5 Consolas,'Courier New',monospace;color:var(--muted)}.terminal-shortcuts>div{display:flex;gap:8px}.terminal-shortcuts button{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:4px;padding:10px 13px;min-height:42px;font:.8125rem/1.5 Consolas,'Courier New',monospace}
.dev-contact{padding-top:56px}.dev-contact>p:not(.comment){font-size:1.0625rem;line-height:1.75;color:var(--muted);margin:24px 0}.dev-email{display:inline-block;font:clamp(1.15rem,2.5vw,2.2rem)/1.5 Consolas,'Courier New',monospace;overflow-wrap:anywhere;border-bottom:1px solid #637344;padding-bottom:12px;color:var(--acid);max-width:100%}.contact-links{display:flex;flex-wrap:wrap;gap:22px 30px;margin-top:26px;font:.875rem/1.5 Consolas,'Courier New',monospace}.contact-links a{padding:9px 0}.contact-links a:hover{color:var(--acid)}.dev-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:24px clamp(28px,4vw,66px);font:.75rem/1.6 Consolas,'Courier New',monospace;color:var(--muted)}.dev-footer a{color:var(--acid)}
dialog{color:var(--text);background:#191c21;border:1px solid #657647;border-radius:10px;padding:0;width:min(560px,calc(100% - 28px));max-height:85vh;box-shadow:0 35px 120px #0008}dialog::backdrop{background:#030608b8;backdrop-filter:blur(4px)}.palette-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px}.palette-top h2{font-size:1.25rem;letter-spacing:0}.palette-top button{padding:9px 12px;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:4px;font-size:.8125rem;min-height:44px}#palette-search{display:block;width:calc(100% - 40px);margin:0 20px 18px;padding:15px;background:#101215;border:1px solid #59604f;border-radius:4px;color:var(--text);font-size:1rem}.palette-results{display:grid;gap:3px;padding:0 10px 10px}.palette-results a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 12px;border-radius:4px;font-size:1rem}.palette-results a:hover,.palette-results a:focus-visible{background:#293225;color:var(--acid)}.palette-help,#palette-empty{padding:15px 20px;margin:0;font-size:.8125rem;line-height:1.6;color:var(--muted);border-top:1px solid var(--line)}
@keyframes cursor-pulse{0%,49%{opacity:1}50%,100%{opacity:0}}
@media(min-width:1500px){.dev-hero-grid{margin-top:85px;margin-bottom:40px}}
@media(max-width:1180px){.workspace{grid-template-columns:155px minmax(0,1fr)}.explorer{padding-inline:8px}.section-pad{padding-inline:32px}.dev-hero-grid{grid-template-columns:1fr;gap:38px;margin-top:40px}.dev-intro{max-width:660px}h1{font-size:4.4rem}.code-window{transform:none;max-width:650px}.intro-copy{max-width:60ch}.architecture{gap:8px;grid-template-columns:1fr 15px 1fr 15px 1fr}.architecture>div{padding:16px}.terminal-heading{display:block}.terminal-heading p{margin-top:22px}.line-note{display:none}.dev-header{padding-inline:22px;gap:18px}.palette-trigger{gap:12px}.tradeoffs{gap:20px}}
@media(max-width:780px){html{scroll-padding-top:190px}.workspace{grid-template-columns:1fr}.explorer{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:12px 20px}.explorer-title,.folder,.explorer-note{display:none}.explorer nav{display:flex;flex-wrap:wrap;gap:6px}.explorer nav a{padding:9px 10px;gap:8px;font-size:.8125rem}.explorer nav a:first-child{display:none}.file-icon{min-width:18px}.dev-header{flex-wrap:wrap;gap:14px;padding:16px 20px}.dev-header>.view-switch{order:3;width:100%;margin:0;justify-content:center}.dev-header>.view-switch a{flex:1}.palette-trigger{margin-left:auto}.dev-brand{font-size:.875rem}.section-pad{padding:28px 24px 42px}.dev-hero-grid{margin-top:32px}.dev-stack{margin-top:35px}.case-heading{margin-top:32px}.case-heading h2{font-size:2.25rem}.git-history{grid-template-columns:1fr;margin:30px 0}.git-history li{border-top:0;border-left:1px solid #59606b;padding:0 0 25px 22px}.git-history li:last-child{padding-bottom:0}.commit-node{left:-5px;top:6px}.git-history p{max-width:58ch}.architecture{grid-template-columns:1fr;gap:12px}.flow-arrow{transform:rotate(90deg);min-height:20px}.tradeoffs{grid-template-columns:1fr;gap:25px}.tradeoffs h4{display:inline;margin-left:12px}.tradeoffs p{margin-top:10px}.lab-grid{grid-template-columns:1fr}.lab-controls{gap:8px}.lab-controls button{flex:1 1 42%;text-align:left}.terminal-shortcuts{align-items:start;flex-direction:column;gap:12px}.dev-footer{padding-inline:24px}.dev-footer>span:nth-child(2){display:none}}
@media(max-width:440px){.dev-header{padding-inline:16px}.palette-trigger{padding:8px 10px;gap:10px}.palette-trigger kbd{display:none}.dev-brand{gap:10px}.section-pad{padding-inline:19px}.explorer{padding-inline:12px}.explorer nav a{gap:5px;padding-inline:8px}.file-icon{display:none}.breadcrumb{font-size:.75rem;gap:8px}h1{font-size:clamp(2.55rem,12vw,3.6rem)}.lead{font-size:1.375rem}.intro-copy{font-size:1rem}.code-window pre{font-size:.8125rem;padding-inline:12px}.code-footer{font-size:.75rem;padding-inline:12px}.line em{width:25px}.case-heading{display:block}.repo-badge{display:inline-block;margin-top:22px}.case-heading h2{font-size:2rem}.section-intro{font-size:1rem}.project-browser .window-bar{flex-wrap:wrap;font-size:.75rem;gap:10px}.comparison-grid{grid-template-columns:1fr}.comparison-grid.mobile{grid-template-columns:1fr 1fr;gap:8px}.comparison-grid.mobile figcaption{font-size:.75rem;padding:8px}.diff-toolbar{align-items:start;flex-direction:column;gap:12px}.lab-input pre{font-size:.8125rem;padding:16px}.lab-result{padding:20px}.terminal-output{padding:20px 17px;font-size:.875rem}.terminal-form{padding-inline:14px;gap:9px}.terminal-form input{font-size:1rem}.terminal-form button{font-size:.75rem;padding-inline:8px}.terminal-heading h2{font-size:2rem}.dev-email{font-size:clamp(.95rem,4.7vw,1.3rem)}.contact-links{gap:10px 23px}.dev-stack{font-size:.8125rem;gap:12px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cursor{animation:none}.acid-button:hover{transform:none}.code-window{transform:none}}
@media print{html{color-scheme:light}body{background:white;color:black}.dev-header,.explorer,.terminal-section,.lab-controls,.dev-footer,.dev-actions,.palette-trigger,dialog{display:none!important}.workspace{display:block}.section-pad{padding:20px 0;background:white;border-color:#ccc}.dev-hero-grid{display:block}.code-window{display:none}h1{font-size:40px;color:black}.acid,.comment,.dim,.section-intro,.tradeoffs p,.git-history p,.dev-contact>p{color:#333}.project-browser{max-width:600px}.architecture>div{background:white}.lab-result{background:white}.dev-email{color:black}.dev-details{display:none}}

/* Project hierarchy: selected work, integrations, then experiments by topic. */
html { scroll-padding-top: 106px; }
.archive-entry, .experiment-card, .fight-feature, .experiment-group,
.learning-list article, #learning-archive { scroll-margin-top: 18px; }
.explorer nav a:first-child { color: var(--muted); background: transparent; }
.explorer nav a[aria-current="location"] { color: var(--acid); background: var(--raised); }
.portfolio-map { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin-top: 38px; border: 1px solid var(--line); background: var(--line); }
.portfolio-map a { display: flex; flex-direction: column; gap: 12px; position: relative; min-width: 0; padding: 24px; background: var(--panel); }
.portfolio-map a:hover { background: var(--raised); }
.portfolio-map .map-number { color: var(--acid); font: .6875rem/1.5 Consolas,'Courier New',monospace; text-transform: uppercase; letter-spacing: .06em; }
.portfolio-map strong { font-size: 1.15rem; font-weight: 500; padding-right: 18px; }
.portfolio-map a>span:last-of-type { color: var(--muted); font-size: .875rem; line-height: 1.6; }
.portfolio-map b { position: absolute; right: 22px; top: 23px; color: var(--acid); font-weight: 400; }
.case-overview { display: grid; grid-template-columns: .85fr 1.15fr; gap: 34px; align-items: center; margin-top: 30px; }
.case-overview .project-browser { margin: 0; }
.case-overview .section-intro { margin: 0; font-size: 1.0625rem; line-height: 1.8; }
.case-overview .archive-tags { margin-block: 20px; }
.source-link { color: var(--acid); text-decoration: underline; text-underline-offset: 4px; font-size: .8125rem; line-height: 1.7; }
.case-technical { padding: 0 0 24px; }
.case-technical .code-heading { margin-top: 16px; }
.integration-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; margin-top: 28px; align-items: start; }
.integration-grid .archive-entry { border: 1px solid var(--line); border-top: 2px solid var(--acid); margin: 0; padding: 28px; background: var(--panel); }
.integration-grid .archive-entry:nth-child(2) { border-top-color: var(--violet); }
.integration-grid .entry-heading { display: block; }
.integration-grid h3 { font-size: clamp(1.2rem,1.9vw,1.65rem); }
.integration-grid .repo-badge { display: inline-block; margin-top: 17px; }
.integration-grid .section-intro { font-size: 1rem; line-height: 1.75; margin-block: 22px; }
.integration-grid .event-pipeline { grid-template-columns: 1fr; border: 0; }
.integration-grid .event-pipeline li { display: grid; grid-template-columns: 100px 1fr; gap: 5px 12px; border: 0; padding: 13px 0; border-top: 1px solid var(--line); }
.integration-grid .event-pipeline span { font-size: .6875rem; align-self: center; }
.integration-grid .event-pipeline strong { font-size: .875rem; margin: 0; }
.integration-grid .event-pipeline p { grid-column: 2; font-size: .8125rem; }
.integration-grid .bot-flow { background: var(--bg); padding: 18px; gap: 12px; font-size: .8125rem; }
.integration-grid .archive-detail-grid { grid-template-columns: 1fr; gap: 22px; }
.integration-grid .dev-details summary { font-size: .875rem; }
.integration-grid .archive-tags { font-size: .75rem; gap: 8px 15px; }
.collection-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: end; margin-top: 36px; }
.collection-heading h2 { margin: 0; }
.collection-heading>p { font-size: 1rem; line-height: 1.85; color: var(--muted); margin: 0 0 4px; max-width: 45ch; }
.collection-nav { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 30px; }
.collection-nav a { display: flex; align-items: center; gap: 26px; min-height: 44px; padding: 12px 16px; border: 1px solid var(--line); font-size: .875rem; border-radius: 4px; }
.collection-nav span { color: var(--muted); font: .75rem Consolas,'Courier New',monospace; }
.collection-nav a:hover, .collection-nav a[aria-current="location"] { border-color: var(--acid); color: var(--acid); background: #d5fb7808; }
.experiment-group { border-top: 1px solid var(--line); }
.experiment-group:last-child { border-bottom: 1px solid var(--line); }
.experiment-group>summary { cursor: pointer; list-style: none; display: flex; gap: 20px; align-items: center; padding: 24px 0; }
.experiment-group>summary::-webkit-details-marker { display: none; }
.group-index { align-self: start; padding-top: 4px; font: .75rem/1.6 Consolas,'Courier New',monospace; color: var(--acid); }
.group-label { display: grid; gap: 7px; min-width: 0; }
.group-label strong { font-size: 1.1875rem; font-weight: 500; }
.group-label>span { color: var(--muted); font-size: .8125rem; line-height: 1.6; }
.group-count { margin-left: auto; white-space: nowrap; color: var(--muted); font: .75rem Consolas,'Courier New',monospace; }
.group-toggle { color: var(--acid); font-size: 1.6rem; font-weight: 300; }
.experiment-group[open]>summary .group-toggle { transform: rotate(45deg); }
.group-content { padding-bottom: 30px; }
.fight-feature { display: grid; grid-template-columns: 1.12fr 1fr; border: 1px solid var(--line); background: var(--panel); }
.fight-image { display: flex; align-items: center; background: #292537; min-width: 0; }
.fight-image img { width: 100%; height: auto; object-fit: contain; }
.fight-copy { padding: 30px; }
.fight-copy h3 { font-size: 2.6rem; line-height: 1.1; font-weight: 500; letter-spacing: -.055em; margin: 0 0 10px; }
.fight-copy>p:not(.project-type):not(.repo-name) { color: var(--muted); line-height: 1.75; font-size: .9375rem; margin: 20px 0; }
.repo-name, .experiment-copy>p.repo-name { color: var(--muted); font: .6875rem/1.6 Consolas,'Courier New',monospace; overflow-wrap: anywhere; margin: 0 0 16px; }
.project-notes { display: grid; gap: 15px; margin: 22px 0; }
.project-notes div { border-left: 2px solid #59634b; padding-left: 13px; }
.project-notes dt { font-size: .6875rem; text-transform: uppercase; letter-spacing: .045em; color: var(--acid); margin-bottom: 5px; }
.project-notes dd { color: var(--muted); font-size: .8125rem; line-height: 1.7; margin: 0; }
.creative-gallery { margin-top: 20px; align-items: stretch; }
.graphics-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 0; }
.experiment-card { display: flex; flex-direction: column; }
.experiment-cover img { aspect-ratio: 16/9; }
.experiment-copy { display: flex; flex-direction: column; flex: 1; padding: 22px; }
.experiment-copy h4 { font-family: Arial,Helvetica,sans-serif; font-size: 1.25rem; font-weight: 500; letter-spacing: -.025em; margin-bottom: 7px; }
.experiment-copy>p:not(.project-type):not(.repo-name) { font-size: .875rem; line-height: 1.75; }
.experiment-copy>a { margin-top: auto; }
.compact-studies { margin-top: 20px; }
.compact-studies>article { grid-template-columns: 1fr 1.6fr auto; gap: 24px; padding: 22px 0; }
.compact-studies>article:first-child { border-top: 1px solid var(--line); }
.compact-studies h4 { font-size: .9375rem; }
.compact-studies p:not(.project-type) { font-size: .875rem; }
.network-flow { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 15px; border: 1px solid var(--line); padding: 22px; font: .8125rem/1.6 Consolas,'Courier New',monospace; background: var(--panel); }
.network-flow b { color: var(--acid); font-weight: 400; }
.collection-credit { max-width: 90ch; margin-bottom: 0; }
.palette-results { max-height: 48vh; overflow-y: auto; overscroll-behavior: contain; }
@media(max-width:1180px) {
 .integration-grid { grid-template-columns: 1fr; }
 .case-overview { grid-template-columns: 1fr; }
 .case-overview .project-browser { max-width: 760px; }
 .fight-feature { grid-template-columns: 1fr 1fr; }
 .fight-copy { padding: 24px; }
 .game-gallery { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .experiment-copy { padding: 17px; }
 .compact-studies>article { grid-template-columns: 1fr 1.4fr; }
 .compact-studies>article>a { grid-column: 2; }
}
@media(max-width:900px) {
 .portfolio-map { grid-template-columns: 1fr; }
 .portfolio-map a { gap: 8px; padding: 20px; }
 .fight-feature { grid-template-columns: 1fr; }
 .fight-image img { max-height: 360px; }
 .game-gallery { grid-template-columns: 1fr; }
 .game-gallery .experiment-card { display: grid; grid-template-columns: .85fr 1.15fr; }
 .game-gallery .experiment-cover { display: flex; align-items: center; }
}
@media(max-width:780px) {
 html { scroll-padding-top: 156px; }
 .collection-heading { grid-template-columns: 1fr; gap: 20px; margin-top: 30px; }
 .collection-nav { gap: 8px; }
 .collection-nav a { gap: 13px; padding: 11px 13px; }
 .integration-grid .archive-entry { padding: 23px; }
 .integration-grid .bot-flow { flex-direction: row; align-items: center; }
 .integration-grid .bot-flow b { transform: none; }
 .graphics-gallery { grid-template-columns: 1fr; }
 .compact-studies>article { grid-template-columns: 1fr; gap: 12px; }
 .compact-studies>article>a { grid-column: auto; }
 .group-count { display: none; }
 .group-toggle { margin-left: auto; }
 .experiment-group>summary { gap: 13px; padding: 22px 0; }
 .group-label strong { font-size: 1.0625rem; }
 .fight-copy { padding: 23px; }
 .network-flow { flex-direction: column; align-items: flex-start; }
 .network-flow b { transform: rotate(90deg); }
}
@media(max-width:500px) {
 .game-gallery .experiment-card { display: flex; }
 .experiment-copy { padding: 22px; }
 .integration-grid .event-pipeline li { grid-template-columns: 85px 1fr; gap: 5px 9px; }
 .integration-grid .archive-entry { padding: 20px; }
 .collection-nav a { gap: 10px; font-size: .8125rem; }
 .group-label>span { font-size: .75rem; }
}
@media print {
 .portfolio-map, .collection-nav { display: none; }
 .integration-grid, .fight-feature, .case-overview { display: block; }
}
