.console-launch{z-index:86;color:#ededed;border:1px solid var(--portfolio-line,#44382f);cursor:pointer;background:#111214;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;padding:0;font-size:11px;transition:background .25s,transform .25s;display:flex;position:fixed;top:calc(clamp(24px,2vw,48px) + clamp(32px,2.5vw,44px) - 24px);right:calc(clamp(24px,2.5vw,64px) + clamp(64px,5vw,88px) + 12px)}.console-launch>span:first-child{color:var(--portfolio-accent,#ffc39e);font:18px monospace}.console-shortcut-hint{border:1px solid var(--portfolio-line,#44382f);width:15px;height:15px;color:var(--portfolio-accent,#ffc39e);pointer-events:none;background:#111214;border-radius:4px;place-items:center;font:9px/1 monospace;display:grid;position:absolute;bottom:-1px;right:-2px}.console-launch:hover{background:color-mix(in srgb,var(--portfolio-accent,#ffc39e)12%,#111214);transform:translateY(-2px)}.portfolio.has-fluid-menu .site-header{height:calc(clamp(24px,2vw,48px) + clamp(24px,2vw,48px) + clamp(64px,5vw,88px));padding-right:calc(clamp(24px,2.5vw,64px) + clamp(64px,5vw,88px) + 76px)}@media (max-width:700px){.portfolio.has-fluid-menu .site-header{height:80px;padding-right:6%}.console-launch{top:16px;right:88px}}.console-launch:focus-visible{outline:2px solid var(--portfolio-accent,#ffc39e);outline-offset:4px}.sahi-console{--console-accent:var(--portfolio-accent,#ffc39e);--console-muted:var(--portfolio-muted,#b2a397);--console-line:color-mix(in srgb,var(--console-accent)15%,#252729);--console-surface:color-mix(in srgb,var(--console-accent)3%,#141517);border:1px solid var(--console-line);background:var(--console-surface);color:#edece8;border-radius:16px;width:min(900px,100vw - 40px);max-width:none;max-height:min(800px,88dvh);margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 120px #0009}.sahi-console::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050607c9}.sahi-console[open]{animation:.3s cubic-bezier(.22,1,.36,1) console-arrive}.console-window{flex-direction:column;max-height:min(800px,88dvh);display:flex}.sahi-console button,.sahi-console a{-webkit-tap-highlight-color:transparent}.sahi-console button{cursor:pointer}.sahi-console button:focus-visible,.sahi-console a:focus-visible{outline:2px solid var(--console-accent);outline-offset:3px}.console-top{border-bottom:1px solid var(--console-line);justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.console-identity{align-items:center;gap:10px;display:flex}.console-identity h2{letter-spacing:1.4px;margin:0;font:10px/1.4 monospace}.console-signal{background:var(--console-accent);width:6px;height:6px;box-shadow:0 0 0 4px color-mix(in srgb,var(--console-accent)9%,transparent);border-radius:50%}.console-local{color:var(--console-muted);letter-spacing:1px;margin-left:13px;font:8px monospace}.console-close{width:30px;height:30px;color:var(--console-muted);background:0 0;border:0;border-radius:6px;place-items:center;font:24px/1 sans-serif;display:grid}.console-close:hover{color:var(--console-accent);background:#ffffff08}.console-breadcrumb{color:var(--console-muted);align-items:center;gap:12px;padding:17px 24px 0;font:10px monospace;display:flex}.console-breadcrumb button{color:var(--console-accent);background:0 0;border:0;padding:3px}.console-breadcrumb .console-back{color:var(--console-muted);margin-left:auto}.console-input-row{border-bottom:1px solid var(--console-line);align-items:center;gap:15px;margin:9px 24px 20px;padding:7px 0 13px;display:flex}.console-input-row:focus-within{border-color:var(--console-accent)}.console-prompt{color:var(--console-accent);font:27px/1 monospace}.console-input-row input{color:#edece8;width:0;min-width:0;caret-color:var(--console-accent);font:inherit;letter-spacing:-.5px;box-shadow:none;background:0 0;border:0;outline:none;flex:1;font-size:19px}.console-input-row input::placeholder{color:var(--console-muted);opacity:.7}.console-input-tools{color:var(--console-muted);align-items:center;gap:9px;display:flex}.console-input-tools kbd{font:11px monospace}.console-input-tools button{color:var(--console-muted);background:0 0;border:0;padding:3px;font-size:20px}.console-content{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--console-line)transparent;min-height:0;animation:.24s cubic-bezier(.22,1,.36,1) console-page;overflow-y:auto}.console-browser{grid-template-columns:1fr 1fr;min-height:355px;display:grid}.console-result-column{border-right:1px solid var(--console-line);min-width:0}.console-list-heading{letter-spacing:1px;color:var(--console-muted);justify-content:space-between;padding:0 24px 12px;font:8px monospace;display:flex}.console-results{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--console-line)transparent;max-height:365px;padding:0 10px 10px;overflow-y:auto}.console-results>button{text-align:left;color:#edece8;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:12px;width:100%;padding:13px 12px;transition:background .15s,border-color .15s;display:flex}.console-results>button[aria-selected=true]{background:color-mix(in srgb,var(--console-accent)8%,transparent);border-color:var(--console-line)}.console-result-index{color:var(--console-muted);opacity:.7;font:8px monospace}.console-result-copy{flex:1;min-width:0}.console-result-copy strong{letter-spacing:-.2px;font-size:13px;font-weight:500;display:block}.console-result-copy small{color:var(--console-muted);margin-top:5px;font-size:10px;line-height:1.5;display:block}.console-result-arrow{color:var(--console-accent);opacity:.25;transition:opacity .2s}.console-results>button[aria-selected=true] .console-result-arrow{opacity:1}.console-preview{min-width:0;padding:0}.console-welcome{flex-direction:column;min-height:100%;padding:7px 30px 24px;display:flex}.console-eyebrow{color:var(--console-accent);letter-spacing:1.2px;font:8px/1.6 monospace}.console-mark{color:var(--console-accent);opacity:.85;letter-spacing:-9px;font:72px/1.7 monospace}.console-mark i{font-style:normal;animation:1.8s step-end infinite console-blink}.console-welcome h3{letter-spacing:-.8px;margin:0 0 12px;font-size:24px;font-weight:400;line-height:1.2}.console-welcome>p{max-width:32ch;color:var(--console-muted);margin:0;font-size:13px;line-height:1.8}.console-preview-instruction{color:var(--console-muted);justify-content:space-between;margin-top:auto;padding-top:30px;font:9px monospace;display:flex}.console-preview-instruction>span{color:var(--console-accent)}.console-project-image{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;border-bottom:1px solid var(--console-line);width:100%;height:auto;display:block}.console-project-preview{animation:.25s cubic-bezier(.22,1,.36,1) console-page}.console-project-copy{padding:22px 25px}.console-project-copy h3{letter-spacing:-.8px;margin:8px 0 11px;font-size:27px;font-weight:500;line-height:1.2}.console-project-copy p{color:var(--console-muted);margin:0;font-size:12px;line-height:1.8}.console-stack{color:var(--console-accent);flex-wrap:wrap;gap:7px 12px;margin:17px 0 21px;font:9px/1.6 monospace;display:flex}.console-screen-project>.console-project-preview{grid-template-columns:1.05fr 1fr;align-items:start;display:grid}.console-screen-project .console-project-image{-o-object-fit:cover;object-fit:cover;border:0;height:100%;min-height:310px}.console-editorial{min-height:320px;padding:10px 36px 30px;position:relative}.console-editorial>h3,.console-notebook-page h3{letter-spacing:-1.5px;margin:14px 0 18px;font-size:clamp(30px,4vw,42px);font-weight:400;line-height:1.08}.console-editorial h3 em,.console-notebook-page h3 em{color:var(--console-accent);font-family:Georgia,serif;font-weight:400}.console-editorial>p{color:var(--console-muted);max-width:58ch;margin:0 0 22px;font-size:13px;line-height:1.8}.console-primary{background:var(--console-accent);border:1px solid var(--console-accent);color:#111315;border-radius:5px;justify-content:space-between;align-items:center;gap:28px;padding:12px 17px;font-size:12px;font-weight:500;text-decoration:none;transition:transform .2s,filter .2s;display:inline-flex}.console-primary:hover{filter:brightness(1.08);transform:translateY(-2px)}.console-secondary{color:var(--console-accent);background:0 0;border:0;padding:10px 0;font-size:12px;text-decoration:none;display:inline-block}.console-secondary:hover{text-underline-offset:4px;text-decoration:underline}.console-actions{flex-wrap:wrap;align-items:center;gap:18px;margin:22px 0;display:flex}.console-facts{gap:0;margin:24px 0;display:grid}.console-facts>div{border-top:1px solid var(--console-line);grid-template-columns:150px 1fr;gap:15px;padding:13px 0;display:grid}.console-facts dt{color:var(--console-muted);font:10px/1.8 monospace}.console-facts dd{margin:0;font-size:12px;line-height:1.8}.console-email{color:var(--console-accent);letter-spacing:-1px;overflow-wrap:anywhere;font-size:clamp(20px,4vw,34px);text-decoration:none}.console-palettes{flex-wrap:wrap;gap:10px;margin:28px 0;display:flex}.console-palettes button{border:1px solid var(--console-line);color:#edece8;background:#ffffff03;border-radius:5px;align-items:center;gap:10px;padding:9px 13px 9px 9px;font-size:11px;display:flex}.console-palettes button[aria-pressed=true]{border-color:var(--console-accent)}.console-palettes button>span{color:#121315;border-radius:3px;place-items:center;width:28px;height:28px;display:grid}.console-editorial>.console-theme-status{color:var(--console-accent);margin-top:15px;font:10px monospace}.console-document{color:#292821;pointer-events:none;background:#e1dbcf;border-radius:2px;width:150px;height:205px;padding:19px;position:absolute;top:20px;right:34px;transform:rotate(7deg);box-shadow:0 12px 20px #0003}.console-document>span{letter-spacing:1px;font:6px monospace}.console-document strong{letter-spacing:-.8px;margin:17px 0;font:23px/1.1 Georgia,serif;display:block}.console-document i{background:#aaa496;height:2px;margin:9px 0;display:block}.console-document i:nth-last-child(2){width:65%}.console-document small{margin-top:26px;font:5px monospace;display:block}.console-screen-resume .console-editorial{padding-right:215px}.console-help{margin-top:22px;display:grid}.console-help button{text-align:left;border:0;border-top:1px solid var(--console-line);color:var(--console-muted);background:0 0;grid-template-columns:110px 1fr 15px;gap:12px;padding:13px 0;font-size:12px;display:grid}.console-help code{color:var(--console-accent);font-size:11px}.console-help button:hover{color:#edece8}.console-coffee-page{text-align:center}.console-coffee-page>p{margin-left:auto;margin-right:auto}.console-coffee{background:0 0;border:0;width:180px;height:170px;margin:12px auto 18px;display:block;position:relative}.console-coffee svg{width:100%;position:relative;overflow:visible}.console-cup{transition:transform .6s cubic-bezier(.22,1,.36,1)}.console-coffee.is-lifted .console-cup{transform:translateY(-25px)rotate(-7deg)}.console-coffee-ring{opacity:0;border:5px solid #8667476b;border-radius:50%;width:87px;height:36px;transition:opacity .4s;position:absolute;bottom:9px;left:41px}.console-coffee.is-lifted .console-coffee-ring{opacity:1}.console-notebook-page{color:#343b33;background-color:#e6dfcc;background-image:repeating-linear-gradient(#0000,#0000 27px,#8c8b7420 27px 28px);border-radius:2px;margin:0 24px 24px;padding:27px 30px}.console-notebook-page .console-eyebrow{color:#5e624d}.console-notebook-page h3 em{color:#7a523b}.console-notebook-page svg{width:100%;height:auto;margin:10px 0}.console-notebook-page>p{font:italic 16px/1.6 Georgia,serif}.console-notebook-page .console-secondary{color:#4b5947}.console-empty{padding:30px 15px}.console-empty h3{font-size:20px;font-weight:400}.console-empty p{color:var(--console-muted);font-size:12px;line-height:1.8}.console-empty button{color:var(--console-accent);background:0 0;border:0;padding:0;font-size:12px}.console-feedback{border-top:1px solid var(--console-line);min-height:38px;color:var(--console-accent);padding:11px 24px;font:10px/1.5 monospace}.console-feedback button{color:var(--console-accent);font:inherit;background:0 0;border:0;padding:0}.console-feedback>span{color:var(--console-muted)}.console-footer{border-top:1px solid var(--console-line);color:var(--console-muted);align-items:center;gap:20px;padding:12px 24px;font:9px/1.5 monospace;display:flex}.console-footer kbd{border:1px solid var(--console-line);background:#ffffff06;border-radius:3px;margin-right:4px;padding:1px 4px;font:9px monospace;display:inline-block}.console-footer-note{letter-spacing:.8px;margin-left:auto;font-size:7px}@keyframes console-arrive{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}.console-mode-text{background:#101211;border-radius:10px;width:min(780px,100vw - 40px)}.console-mode-text .console-top{padding:12px 20px}.legacy-terminal{color:#c8cfc7;flex-direction:column;min-width:0;min-height:min(510px,65dvh);font:12px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;display:flex;overflow:hidden}.legacy-transcript{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--console-line)transparent;flex:1;height:390px;min-height:0;padding:22px 24px;overflow-y:auto}.legacy-welcome>pre{color:var(--console-accent);margin:0 0 18px;font:11px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace}.legacy-welcome p{font:inherit;margin:0 0 15px}.legacy-welcome p:first-of-type{color:var(--console-accent);letter-spacing:1px;font-size:10px}.legacy-welcome p:first-of-type span{color:var(--console-muted);margin-left:10px}.legacy-welcome strong{color:var(--console-accent);font-weight:400}.legacy-entry{margin-top:22px;animation:none}.legacy-entry .legacy-echo{color:#eceee8;font:inherit;overflow-wrap:anywhere;margin:0 0 7px}.legacy-echo>span{color:var(--console-accent)}.legacy-entry pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;margin:0}.legacy-entry a{color:var(--console-accent);text-underline-offset:4px;margin:10px 20px 0 0;text-decoration:underline;display:inline-block}.legacy-prompt{border-top:1px solid var(--console-line);background:#0b0d0c;flex-wrap:wrap;align-items:center;gap:5px 10px;padding:16px 23px;display:flex}.legacy-prompt label{color:var(--console-muted);white-space:nowrap;font:11px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.legacy-prompt label span{color:var(--console-accent)}.legacy-prompt label b{color:var(--console-accent);margin-left:8px;font-weight:400}.legacy-prompt input{color:#eef0e9;width:0;min-width:90px;caret-color:var(--console-accent);background:0 0;border:0;border-radius:0;outline:0;flex:1;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.legacy-prompt input::placeholder{color:#778176}.legacy-prompt button{border:1px solid var(--console-line);width:32px;height:32px;color:var(--console-accent);background:0 0;border-radius:3px;font-size:15px}.legacy-prompt:focus-within{border-top-color:var(--console-accent)}.legacy-footer{border-top:1px solid var(--console-line);color:var(--console-muted);justify-content:space-between;gap:14px;padding:9px 23px;font-size:9px;display:flex}.console-text-toggle{margin-left:auto}.console-build{min-height:480px;padding:28px 40px;overflow-y:auto}.console-build-command{color:#edece8;font:12px/1.8 monospace}.console-build-command span{color:var(--console-accent);margin-right:10px}.console-build h3{letter-spacing:-1px;margin:25px 0;font-size:34px;font-weight:400;line-height:1.1}.console-build h3 em{color:var(--console-accent);font:italic 1em Georgia,serif}.console-build-wireframe{border:1px solid var(--console-line);border-radius:6px;grid-template-columns:.9fr 1.1fr;gap:12px;width:min(360px,100%);height:116px;padding:10px;display:grid;position:relative}.console-build-wireframe>i{background:var(--console-accent);opacity:.4;transform-origin:0;grid-column:1/-1;width:55%;height:8px;animation:1s ease-out both console-wire}.console-build-wireframe>div{gap:7px;display:grid}.console-build-wireframe>div i{background:var(--console-accent);opacity:.15;transform-origin:0;height:9px;animation:.7s ease-out both console-wire;display:block}.console-build-wireframe>div i:nth-child(2){animation-delay:.15s}.console-build-wireframe>div i:nth-child(3){animation-delay:.3s}.console-build-wireframe>div i:nth-child(4){animation-delay:.45s}.console-build-wireframe>b{border:1px solid var(--console-accent);opacity:.25;animation:.8s .4s both console-workspace-arrive}.console-build-steps{color:var(--console-muted);gap:8px;margin:24px 0 18px;font:10px monospace;display:grid}.console-build-steps p{margin:0}.console-build-steps span{min-width:22px;display:inline-block}.console-build-steps .is-complete{color:var(--console-accent)}.console-build progress{width:min(360px,100%);height:3px;accent-color:var(--console-accent);background:var(--console-line);border:0;display:block}.console-build progress::-webkit-progress-bar{background:var(--console-line)}.console-build progress::-webkit-progress-value{background:var(--console-accent)}.console-build>p:last-child{color:var(--console-muted);margin:13px 0 0;font:10px monospace}.console-mode-gui .console-breadcrumb,.console-mode-gui .console-input-row,.console-mode-gui .console-content{animation:.45s cubic-bezier(.22,1,.36,1) both console-workspace-arrive}@keyframes console-wire{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes console-workspace-arrive{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}@media (max-width:650px){.console-mode-text{border-radius:12px 12px 0 0;width:100%}.legacy-terminal{min-height:min(540px,70dvh);font-size:12px}.legacy-transcript{padding:18px}.legacy-prompt{gap:4px 8px;padding:12px 17px}.legacy-prompt label{width:100%;font-size:10px}.legacy-prompt input{font-size:16px}.legacy-prompt button{width:44px;height:40px}.legacy-footer{padding:10px 17px max(14px,env(safe-area-inset-bottom));font-size:8px}.console-build{min-height:420px;padding:22px}.console-build h3{font-size:30px}}@keyframes console-page{0%{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes console-blink{0%,65%{opacity:1}66%,to{opacity:.1}}@media (max-width:650px){.console-close{width:44px;height:44px}.console-breadcrumb button{min-width:36px;min-height:36px}.sahi-console{border-bottom:0;border-radius:16px 16px 0 0;width:100%;max-height:91dvh;margin:auto 0 0}.console-window{max-height:91dvh}.console-top{padding:12px 17px}.console-local{display:none}.console-input-row{gap:10px;margin:7px 18px 17px}.console-input-row input{letter-spacing:-.4px;font-size:16px}.console-breadcrumb{padding:13px 18px 0}.console-browser{grid-template-columns:1fr;min-height:300px}.console-result-column{border-right:0}.console-preview{display:none}.console-results{max-height:42dvh;padding:0 8px 8px}.console-results>button{padding:15px 10px}.console-result-copy strong{font-size:14px}.console-result-copy small{font-size:11px}.console-list-heading{padding-left:18px;padding-right:18px}.console-editorial{min-height:300px;padding:6px 22px 25px}.console-editorial>h3,.console-notebook-page h3{font-size:34px}.console-facts>div{grid-template-columns:1fr;gap:4px}.console-screen-project>.console-project-preview{grid-template-columns:1fr}.console-screen-project .console-project-image{min-height:0;max-height:230px}.console-project-copy{padding:20px 22px}.console-document{display:none}.console-screen-resume .console-editorial{padding-right:22px}.console-palettes{gap:8px}.console-palettes button{padding:9px}.console-help button{grid-template-columns:82px 1fr 12px;font-size:11px}.console-notebook-page{margin:0 14px 18px;padding:22px 17px}.console-feedback{padding:12px 18px}.console-footer{padding:12px 18px max(15px,env(safe-area-inset-bottom));gap:12px}.console-footer-note{display:none}}@media (prefers-reduced-motion:reduce){.sahi-console,.sahi-console *,.console-launch{transition:none!important;animation:none!important}}.sahi-console:has(.console-shell-window){background:#0b0e0c;border-radius:5px}.console-shell-window .console-top{background:#141713}.console-shell-window .console-local{letter-spacing:.05em}.console-shell-window .legacy-terminal{background:#0b0e0c}.legacy-transcript{height:450px;padding:20px 24px 30px}.legacy-prompt{background:0 0;border:0;gap:5px 8px;margin-top:14px;padding:0}.legacy-prompt:focus-within{border:0}.legacy-prompt label{color:#bdc5b9;font-size:12px}.terminal-input-wrap{flex:1;min-width:110px;position:relative}.legacy-prompt .terminal-input-wrap input{width:100%;padding:0;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.terminal-ghost{pointer-events:none;white-space:pre;color:#73806e;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;position:absolute;top:0;left:0}.terminal-ghost>span{visibility:hidden}.legacy-prompt button{border:0}.terminal-boot{background:#0b0e0c;flex-direction:column;min-height:0;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;display:flex;position:relative}.terminal-boot-scroll{color:#bcc5b8;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:var(--console-line)transparent;height:450px;min-height:180px;padding:20px 24px;overflow:hidden auto}.terminal-boot-scroll>div{white-space:pre-wrap}.terminal-boot .legacy-echo{font:inherit;color:#edf0e8;margin:0 0 14px}.terminal-boot .boot-ok{color:var(--console-accent)}.terminal-block{color:var(--console-accent);animation:1s step-end infinite terminal-cursor}.terminal-boot .boot-wireframe{opacity:.8;pointer-events:none;background:#0b0e0c;width:170px;height:78px;position:absolute;bottom:62px;right:24px;box-shadow:0 0 0 8px #0b0e0c}.terminal-boot .legacy-footer button{color:var(--console-accent);font:inherit;background:0 0;border:0;padding:0}@keyframes terminal-cursor{50%{opacity:0}}@media (max-width:650px){.legacy-transcript,.terminal-boot-scroll{height:min(58dvh,480px);padding:16px}.terminal-input-wrap{min-width:100%}.legacy-prompt .terminal-input-wrap input,.terminal-ghost{font-size:16px}.legacy-prompt button{position:absolute;right:16px}.terminal-boot{font-size:11px}.terminal-boot .boot-wireframe{opacity:.5;width:105px;height:60px;right:16px}}@media (prefers-reduced-motion:reduce){.terminal-block{animation:none}}.console-shell-window .console-top{background:#252422;min-height:44px;padding-block:8px}.console-shell-window .console-identity h2{text-transform:none;letter-spacing:0;font:12px ui-monospace,SFMono-Regular,Consolas,monospace}.console-shell-window .console-signal{display:none}.console-shell-window .legacy-welcome p{font:inherit;letter-spacing:0;color:#c9cec5;margin-bottom:18px}.legacy-prompt label span,.legacy-echo>span{color:var(--console-accent);font-weight:600}.legacy-prompt label em,.legacy-echo>em{color:#a9b9ca;font-style:normal}.terminal-boot .boot-wireframe{box-sizing:border-box;grid-template-rows:8px minmax(0,1fr);gap:8px;height:112px;padding:10px;bottom:62px;overflow:hidden}.terminal-boot .boot-wireframe>div{grid-template-rows:repeat(4,minmax(0,1fr));gap:5px;min-height:0}.terminal-boot .boot-wireframe>div i{height:100%;min-height:0}.terminal-boot .boot-wireframe>b{min-height:0;display:block}@media (max-width:650px){.terminal-boot .boot-wireframe{gap:6px;height:84px;padding:8px}}.console-shell-panel{height:min(540px,70dvh);min-height:0;max-height:calc(88dvh - 64px);overflow:hidden}.console-shell-panel:not([hidden]){flex-direction:column;display:flex}.console-shell-panel>.legacy-terminal{flex:1;height:100%;min-height:0}.console-shell-window .console-top{flex-shrink:0}.legacy-welcome>.terminal-wordmark{color:var(--console-accent);white-space:pre;letter-spacing:0;margin-bottom:22px;font-size:clamp(8px,1.8vw,12px);line-height:1.15}@media (max-width:700px){:is(:root:has(.case-study) .console-launch,.case-study .fluid-toggle){translate:0 var(--project-controls-offset,0px);transition:translate .38s cubic-bezier(.22,1,.36,1),background .25s,transform .25s,opacity .3s,visibility .3s}:root:has(.case-study[data-header-visible=true]){--project-controls-offset:80px}.case-study .site-header .case-back{white-space:nowrap;margin-left:auto}}@media (prefers-reduced-motion:reduce){:is(:root:has(.case-study) .console-launch,.case-study .fluid-toggle){transition:none}}.terminal-completions{border-left:1px solid var(--console-line);font:inherit;margin:0 0 14px;padding:4px 0}.terminal-completions button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;justify-content:space-between;gap:12px;padding:5px 12px;display:flex}.terminal-completions button.is-selected,.terminal-completions button:hover{background:color-mix(in srgb,var(--console-accent)9%,transparent)}.terminal-completions .completion-rest{color:var(--console-muted)}.terminal-completions small{color:var(--console-accent);font:inherit;opacity:.65;flex-shrink:0}.floating-console{z-index:110;border-radius:8px;width:min(780px,100vw - 24px);max-height:calc(100dvh - 90px);margin:0;position:fixed;inset:max(16px,9dvh) auto auto max(12px,50vw - 440px);box-shadow:0 24px 80px #0009}.floating-console[hidden]{display:none}.floating-console.is-front{z-index:112}.floating-workspace{width:min(900px,100vw - 24px);top:max(28px,15dvh);left:max(12px,50vw - 350px)}.floating-console .console-window{max-height:calc(100dvh - 90px)}.floating-console .console-top{flex-shrink:0}.floating-console .console-shell-panel{height:min(540px,100dvh - 146px);max-height:calc(100dvh - 146px)}.floating-titlebar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.floating-titlebar:active{cursor:grabbing}.floating-window-controls{gap:4px;margin-left:12px;display:flex}.floating-window-controls .console-close{flex-shrink:0}.floating-workspace .console-content{min-height:0}.console-session-dock{z-index:114;bottom:max(14px,env(safe-area-inset-bottom));border:1px solid var(--portfolio-line,#44382f);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181a1bee;border-radius:12px;gap:4px;padding:5px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0006}.console-session-dock button{min-height:38px;color:var(--portfolio-muted,#b2a397);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:6px 12px;font:11px/1.3 monospace;display:flex}.console-session-dock button[aria-pressed=true]{color:#eee;background:#ffffff0b}.console-session-dock button:hover{background:#ffffff12}.console-session-dock button>span{color:var(--portfolio-accent,#ffc39e);font-size:16px}.console-session-dock i{background:var(--portfolio-accent,#ffc39e);border-radius:50%;width:4px;height:4px}.console-session-dock button:focus-visible{outline:2px solid var(--portfolio-accent,#ffc39e)}@keyframes floating-window-arrive{0%{opacity:0}to{opacity:1}}@media (max-width:700px){.floating-console,.floating-workspace{width:calc(100vw - 24px);max-height:calc(100dvh - 150px);top:76px;left:12px}.floating-workspace{top:90px}.floating-console .console-window{max-height:calc(100dvh - 150px)}.floating-console .console-shell-panel{height:min(540px,100dvh - 206px);max-height:calc(100dvh - 206px)}.floating-console .console-top{padding:10px 12px}.floating-console .console-identity{gap:8px;min-width:0}.floating-console .console-identity h2{letter-spacing:.3px;font-size:10px}.floating-console .console-local{display:none}}@media (prefers-reduced-motion:reduce){.floating-console:not([hidden]){animation:none}}.floating-console:not([hidden]){animation:none}.floating-console[data-window-motion]{z-index:113;pointer-events:none;transform-origin:50%;will-change:transform,opacity}@media (max-width:700px){.console-session-dock{max-width:calc(100vw - 78px);left:12px;right:auto;transform:none}.console-session-dock button{gap:6px;padding:6px 8px;font-size:10px}}.genie-visual{z-index:113;pointer-events:none;position:fixed;inset:0;overflow:hidden}.genie-strip{transform-origin:0 0;will-change:transform;pointer-events:none;position:absolute;overflow:hidden}.genie-visual *,.genie-visual :before,.genie-visual :after{caret-color:#0000!important;transition:none!important;animation:none!important}.genie-visual .floating-console{display:block!important}.floating-app{width:min(940px,100vw - 24px);top:max(30px,12dvh);left:max(12px,50vw - 430px)}.app-content{color:#ecece8;background:#111416;flex-direction:column;height:min(620px,100dvh - 170px);min-height:0;display:flex;overflow:hidden}.app-content:focus{outline:none}.app-toolbar{border-bottom:1px solid var(--console-line);flex-shrink:0;align-items:center;gap:10px;padding:10px 14px;font:11px/1.4 monospace;display:flex}.app-toolbar button,.app-toolbar a{border:1px solid var(--console-line);color:var(--console-accent);white-space:nowrap;background:#ffffff08;border-radius:5px;padding:7px 10px;text-decoration:none}.app-toolbar button:disabled{opacity:.3;cursor:default}.app-toolbar>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--console-muted);flex:1;overflow:hidden}.browser-toolbar{gap:5px}.browser-toolbar input{border:1px solid var(--console-line);color:#e6edf3;min-width:0;font:inherit;background:#080b0d;border-radius:5px;flex:1;padding:8px}.app-iframe{background:#0d1117;border:0;flex:1;width:100%;min-height:0}.browser-status{color:var(--console-muted);border-bottom:1px solid var(--console-line);flex-shrink:0;padding:5px 14px;font:10px/1.5 monospace}.app-navigation-error{color:#ffd7b8;background:#38291f;justify-content:space-between;gap:12px;padding:12px 14px;font-size:12px;display:flex}.app-navigation-error button{color:inherit;background:0 0;border:0}.file-tab-bar{border-bottom:1px solid var(--console-line);flex-shrink:0;gap:2px;padding:6px 8px 0;display:flex;overflow-x:auto}.file-tab-bar button{white-space:nowrap;color:var(--console-muted);background:0 0;border:0;border-radius:5px 5px 0 0;padding:10px 12px;font:11px monospace}.file-tab-bar button[aria-selected=true]{color:var(--console-accent);box-shadow:inset 0 -2px var(--console-accent);background:#ffffff08}.file-tab{border-radius:5px 5px 0 0;display:flex}.file-tab:has(>button[aria-selected=true]){box-shadow:inset 0 -2px var(--console-accent);background:#ffffff08}.file-tab>button[aria-selected=true]{box-shadow:none;background:0 0}.file-tab:has(>button[aria-selected=true])>button{color:var(--console-accent)}.file-tab>button:last-child{padding:6px}.file-view-body{flex:1;min-height:0;overflow:auto}.file-directory{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:24px;display:grid}.file-directory button{color:inherit;border:1px solid var(--console-line);text-align:left;background:#ffffff03;border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;display:flex}.file-directory button:hover{background:color-mix(in srgb,var(--console-accent)8%,transparent)}.file-directory button>span{color:var(--console-accent);margin-bottom:10px;font:22px monospace}.file-directory strong{font-size:13px;font-weight:500}.file-directory small{color:var(--console-muted);font:10px monospace}.file-source{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:28px;font:12px/1.9 monospace}.file-view-body .console-notebook-page{margin:18px}.console-session-dock{scrollbar-width:none;max-width:calc(100vw - 28px);overflow-x:auto}.console-session-dock button{flex-shrink:0}@media (max-width:700px){.floating-app{width:calc(100vw - 24px);top:80px;left:12px}.app-content{height:min(620px,100dvh - 210px)}.app-toolbar{gap:5px;padding:8px}.app-toolbar button,.app-toolbar a{padding:7px}.browser-toolbar input{font-size:12px}.file-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px}.file-directory button{padding:14px 10px}.file-source{padding:18px}.console-session-dock{max-width:calc(100vw - 78px)}}.genie-document-surface{color:#ffc39e;background:#202326;place-items:center;width:100%;height:100%;min-height:400px;font:18px monospace;display:grid}.pdf-renderer{background:#242729;flex-direction:column;flex:1;min-height:0;display:flex}.pdf-controls{border-bottom:1px solid var(--console-line);flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:7px 12px;font:11px monospace;display:flex}.pdf-controls>span{color:var(--console-muted);margin-right:auto}.pdf-controls button{color:#ededed;background:#ffffff08;border:0;border-radius:4px;padding:6px 10px}.pdf-controls button:disabled{opacity:.3}.pdf-pages-scroll{flex:1;min-height:0;position:relative;overflow:auto}.pdf-pages{flex-direction:column;align-items:center;gap:18px;min-width:fit-content;padding:16px;display:flex}.pdf-page{background:#fff;position:relative;box-shadow:0 4px 20px #0005}.pdf-page canvas{display:block}.pdf-accessible-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pdf-loading,.pdf-error{text-align:center;color:#b2a397;padding:16px;font:12px/1.6 monospace}.console-session-dock .dock-app-name{font:inherit;color:inherit}@media (max-width:700px){.console-session-dock.has-document-apps button{justify-content:center;gap:0;width:38px;padding:5px;position:relative}.console-session-dock.has-document-apps .dock-app-name{display:none}.console-session-dock.has-document-apps i{width:4px;height:4px;position:absolute;bottom:3px;left:calc(50% - 2px)}}.terminal-welcome-line{color:#eceee8}.terminal-welcome-line strong,.terminal-path-accent,.terminal-command-accent{color:var(--console-accent,#ffc39e)}.terminal-welcome-line strong{font-weight:600}.terminal-session-auth{color:color-mix(in srgb,var(--console-accent,#ffc39e)62%,#b5c5b6)}.boot-ssh-row{animation:none}@media (prefers-reduced-motion:reduce){.boot-ssh-row{animation:none}}.file-shell-source{color:#e1e6df;margin:0;padding:22px 20px 22px 54px;font:12px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-x:auto}.file-shell-source li{white-space:pre;padding-left:12px}.file-shell-source li::marker{color:#64716d;font-size:10px}.file-shell-source code{font:inherit}.shell-comment{color:#8b9a90}.shell-string{color:#b6cba1}.shell-keyword{color:var(--console-accent)}.shell-variable{color:#a9c3d9}.legacy-entry,.terminal-boot-scroll>div{transition:none;animation:none}
/*# sourceMappingURL=b9448423ef606383.css.map*/