@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/unbounded-latin-400-normal-DxT99aXF.woff2) format("woff2"),url(/assets/unbounded-latin-400-normal-CiSqyYx3.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/unbounded-latin-700-normal-CaoNriVp.woff2) format("woff2"),url(/assets/unbounded-latin-700-normal-CZtriu5h.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/unbounded-latin-900-normal-DrIEwloP.woff2) format("woff2"),url(/assets/unbounded-latin-900-normal-4cp7xOrc.woff) format("woff")}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/outfit-latin-300-normal-CRYTwY6m.woff2) format("woff2"),url(/assets/outfit-latin-300-normal-AWLfuCom.woff) format("woff")}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-400-normal-BGsTXAXT.woff2) format("woff2"),url(/assets/outfit-latin-400-normal-DMwTpYkH.woff) format("woff")}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/outfit-latin-500-normal-DKnIMDSk.woff2) format("woff2"),url(/assets/outfit-latin-500-normal-ClnHRwRh.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff) format("woff")}:root{--sans:"Outfit",system-ui,sans-serif;--display:"Unbounded",sans-serif;--mono:"JetBrains Mono",monospace}[data-theme=dark]{--bg:#03030d;--bg2:#06060f;--surface:rgba(255,255,255,.04);--border:rgba(255,255,255,.08);--borderStrong:rgba(255,255,255,.18);--text:#e8e8ff;--muted:rgba(232,232,255,.68);--dim:rgba(232,232,255,.52);--nav:rgba(3,3,13,.92);--accent:#00e5c8;--accent2:#7b6dff;--onAccent:#03030d;--vig:radial-gradient(ellipse 70% 90% at 15% 55%,rgba(3,3,13,0) 0%,rgba(3,3,13,.7) 100%)}[data-theme=light]{--bg:#f0f4ff;--bg2:#e6ecff;--surface:rgba(20,10,80,.05);--border:rgba(20,10,80,.1);--borderStrong:rgba(20,10,80,.25);--text:#080620;--muted:rgba(8,6,32,.7);--dim:rgba(8,6,32,.58);--nav:rgba(240,244,255,.94);--accent:#009988;--accent2:#5544cc;--onAccent:#fff;--vig:radial-gradient(ellipse 70% 90% at 15% 55%,rgba(240,244,255,0) 0%,rgba(240,244,255,.65) 100%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden;transition:background .4s,color .4s}::selection{background:#00e5c833}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}b{color:var(--text);font-weight:400}em{font-style:normal;color:var(--accent)}.grad{background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.outline{color:transparent;-webkit-text-stroke:1px var(--borderStrong)}.wrap{max-width:1160px;margin:0 auto;padding:0 56px;position:relative;z-index:5}.rel{position:relative}.section{position:relative;overflow:hidden;border-top:1px solid var(--border);padding:120px 0;background:var(--bg)}.section.bg2{background:var(--bg2)}.cosmic{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.slabel{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}.slabel .num{color:var(--accent);letter-spacing:.2em}.slabel .bar{width:24px;height:1px;background:var(--accent);opacity:.5}.h2{font-family:var(--display);font-weight:900;font-size:clamp(1.8rem,3.8vw,3rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:40px}.h2.big{font-size:clamp(2.6rem,5.4vw,4.8rem);line-height:.95;letter-spacing:-.03em;margin:12px 0 24px}.h3{font-family:var(--display);font-weight:800;font-size:1.3rem;margin-bottom:10px}.body{font-weight:300;font-size:.98rem;line-height:1.82;color:var(--muted);margin-bottom:16px;max-width:520px}.narrow{max-width:360px;margin-bottom:32px}.nav{position:fixed;top:0;left:0;right:0;z-index:300;display:flex;justify-content:space-between;align-items:center;padding:16px 56px;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}.nav.scrolled{background:var(--nav);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-color:var(--border)}.logo{font-family:var(--display);font-weight:900;font-size:1rem}.nav-links{display:flex;gap:32px}.nav-links span{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);cursor:pointer;transition:color .2s}.nav-links span:hover{color:var(--accent)}.nav-right{display:flex;gap:12px;align-items:center}.theme-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface);font-size:.95rem;color:var(--muted)}.pill{font-family:var(--mono);font-size:.56rem;letter-spacing:.1em;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);background:color-mix(in srgb,var(--accent) 5%,transparent);padding:7px 14px;border-radius:3px;display:flex;gap:7px;align-items:center}.dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.ham{display:flex;flex-direction:column;gap:5px;padding:6px}.ham span{display:block;width:22px;height:1.5px;background:currentColor;transition:transform .25s,opacity .25s}.ham.open span:nth-child(1){transform:rotate(45deg) translate(4px,4.5px)}.ham.open span:nth-child(2){opacity:0}.ham.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4.5px)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--nav);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px}.mobile-menu button{font-family:var(--display);font-weight:700;font-size:1.5rem;padding:12px 0}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:var(--vig)}.hero-inner{position:relative;z-index:10;padding:120px 56px 80px;max-width:1160px}.hero-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:36px;font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.hero-eyebrow .line{width:44px;height:1px;background:linear-gradient(90deg,var(--accent),transparent)}.name{font-family:var(--display);font-weight:900;line-height:.88;letter-spacing:-.025em;font-size:clamp(4rem,9.5vw,9rem);margin-bottom:32px;white-space:nowrap}.name .indent{margin-left:clamp(12px,2.5vw,48px)}.role{font-weight:300;font-size:clamp(1rem,1.9vw,1.4rem);color:var(--text);max-width:620px;margin-bottom:18px;line-height:1.4}.desc{font-weight:300;font-size:1rem;line-height:1.8;color:var(--muted);max-width:500px;margin-bottom:44px}.ctas{display:flex;gap:10px;flex-wrap:wrap}.btn-p,.btn-g{display:inline-block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;padding:14px 32px;border-radius:4px;transition:opacity .2s,transform .2s}.btn-p{background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--onAccent);font-weight:700;border:none}.btn-g{border:1px solid var(--border);color:var(--muted)}.btn-p:hover,.btn-g:hover{transform:translateY(-2px)}.btn-p.full{width:100%}.btn-p:disabled{opacity:.6;cursor:not-allowed}.a1,.a2,.a3,.a4,.a5{animation:heroIn .7s cubic-bezier(.16,1,.3,1) both}.a2{animation-delay:.1s}.a3{animation-delay:.2s}.a4{animation-delay:.28s}.a5{animation-delay:.36s}@keyframes heroIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.reveal{opacity:0;transform:translateY(12px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.reveal.in{opacity:1;transform:none}.about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:end}.kv-list{display:flex;flex-direction:column;gap:9px}.kv{display:flex;gap:16px;padding:16px 18px;border:1px solid var(--border);border-radius:4px;background:var(--surface);align-items:flex-start}.kv .k{font-family:var(--mono);font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);min-width:80px;padding-top:3px}.kv .v{font-size:.9rem;color:var(--muted);line-height:1.55}.strengths{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:20px}.strength{border:1px solid var(--border);border-radius:10px;padding:40px 36px;background:var(--surface);height:100%;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.strength .k{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:18px}.strength p{font-family:var(--display);font-weight:400;font-size:clamp(1.05rem,1.7vw,1.4rem);line-height:1.45;letter-spacing:-.01em}.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.span2{grid-column:span 2}.proj-card{position:relative;overflow:hidden;height:100%;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--border);border-radius:10px;padding:24px 22px;background:var(--surface);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .35s}.proj-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #00000059}.proj-card.featured{padding:34px 30px}.topline{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--c),var(--accent2));opacity:.7}.proj-meta{display:flex;justify-content:space-between;margin-bottom:12px;font-family:var(--mono);font-size:.54rem;letter-spacing:.12em;color:var(--dim)}.proj-meta .cat{color:var(--c);text-transform:uppercase}.proj-card h3{font-family:var(--display);font-weight:700;font-size:1.02rem;line-height:1.2;margin-bottom:10px}.proj-card.featured h3{font-size:1.45rem}.proj-card p{font-weight:300;font-size:.86rem;line-height:1.65;color:var(--muted)}.proj-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:6px;flex-wrap:wrap}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-family:var(--mono);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border:1px solid var(--border);border-radius:2px;color:var(--dim)}.year{font-family:var(--mono);font-size:.54rem;color:var(--dim)}.exp{display:grid;grid-template-columns:200px 1fr;border:1px solid var(--border);border-radius:10px;overflow:hidden}.exp-tabs{border-right:1px solid var(--border);background:#0000002e}.exp-tab{display:block;width:100%;text-align:left;padding:20px 22px;border-left:3px solid transparent;border-bottom:1px solid var(--border);color:var(--dim);transition:background .2s,color .2s}.exp-tab:last-child{border-bottom:none}.exp-tab.on{border-left-color:var(--c);background:var(--surface);color:var(--text)}.exp-tab .period{display:block;font-family:var(--mono);font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.exp-tab.on .period{color:var(--c)}.exp-tab .co{font-weight:500;font-size:.9rem}.exp-body{padding:36px 40px;animation:heroIn .35s both}.exp-role{font-family:var(--display);font-weight:700;font-size:1.4rem;margin-bottom:6px}.exp-sub{font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;color:var(--c);margin-bottom:22px}.exp-body ul{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.exp-body li{display:flex;gap:14px;font-weight:300;font-size:.94rem;line-height:1.7;color:var(--muted)}.tri{color:var(--c);font-family:var(--mono);font-size:.68rem;margin-top:4px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.crows{display:flex;flex-direction:column;gap:10px}.crow{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border:1px solid var(--border);border-radius:6px;background:var(--surface);transition:transform .2s,border-color .25s}a.crow[href]:hover{transform:translate(5px);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.crow .k{font-family:var(--mono);font-size:.52rem;letter-spacing:.13em;text-transform:uppercase;color:var(--dim);margin-bottom:3px}.crow .v{font-size:.9rem;color:var(--muted)}.crow .arrow{color:var(--accent);font-family:var(--mono);font-size:.56rem}.form-card{border:1px solid var(--border);border-radius:12px;padding:36px 32px;background:var(--surface);display:flex;flex-direction:column;gap:12px}.form-card.done{align-items:flex-start}.form-title{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.form-card label{display:flex;flex-direction:column;gap:6px;font-family:var(--mono);font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-card input,.form-card textarea{width:100%;font-family:var(--sans);font-weight:300;font-size:.92rem;letter-spacing:0;text-transform:none;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:13px 16px;outline:none;transition:border-color .2s}.form-card textarea{resize:vertical;min-height:120px;line-height:1.7}.form-card input:focus,.form-card textarea:focus{border-color:var(--accent)}.form-err{font-family:var(--mono);font-size:.62rem;color:#ff6b9a;padding:10px 14px;border:1px solid rgba(255,107,154,.3);border-radius:4px}.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}.footer{border-top:1px solid var(--border);padding:22px 56px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-family:var(--mono);font-size:.56rem;letter-spacing:.07em;color:var(--dim)}.footer a:hover,.acc{color:var(--accent)}.acc2{color:var(--accent2)}.mobile-only{display:none!important}@media (max-width:767px){.desktop-only{display:none!important}.mobile-only{display:flex!important}.wrap{padding:0 20px}.nav{padding:14px 20px}.section{padding:80px 0}.hero-inner{padding:100px 20px 60px}.hero-eyebrow{font-size:.52rem;margin-bottom:24px}.hero-eyebrow .line{width:24px}.name{font-size:clamp(1.85rem,10vw,3.4rem);letter-spacing:-.015em;margin-bottom:22px}.name .indent{margin-left:0}.desc{font-size:.9rem;margin-bottom:30px}.btn-p,.btn-g{padding:12px 22px;font-size:.58rem}.h2{font-size:clamp(1.6rem,7vw,2.2rem)}.h2.big{font-size:clamp(2.3rem,10vw,3.4rem)}.about-grid,.strengths,.contact-grid,.proj-grid,.row2{grid-template-columns:1fr;gap:40px}.strengths,.proj-grid{gap:14px}.row2{gap:12px}.span2{grid-column:span 1}.strength{padding:28px 24px}.exp{grid-template-columns:1fr}.exp-tabs{display:flex;overflow-x:auto;border-right:none;border-bottom:1px solid var(--border)}.exp-tab{flex:0 0 auto;width:auto;border-left:none;border-bottom:3px solid transparent;padding:14px 18px}.exp-tab.on{border-bottom-color:var(--c)}.exp-body,.form-card{padding:24px 20px}.footer{flex-direction:column;text-align:center;padding:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal.in{opacity:1;transform:none;transition:none}.a1,.a2,.a3,.a4,.a5,.exp-body{animation:none}.proj-card:hover,.btn-p:hover,.btn-g:hover,a.crow[href]:hover{transform:none}}.sandbox{background:var(--bg)}.sb-head{display:grid;grid-template-columns:1fr 1fr;gap:20px 80px;align-items:end;margin-bottom:32px}.sb-head .h2,.sb-head .body{margin-bottom:0}.mock-tag{grid-column:1/-1;font-family:var(--mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:#f0c060;border:1px dashed rgba(240,192,96,.35);border-radius:3px;padding:7px 12px;justify-self:start}.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.presets:has(.custom){grid-template-columns:repeat(4,1fr)}.preset{text-align:left;border:1px solid var(--border);border-radius:8px;padding:14px 16px;background:var(--surface);display:flex;flex-direction:column;gap:4px;transition:border-color .2s,background .2s;position:relative;overflow:hidden}.preset:hover{border-color:var(--borderStrong)}.preset.on{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.preset.on:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2))}.pn{font-family:var(--display);font-weight:700;font-size:.86rem}.pnote{font-family:var(--mono);font-size:.54rem;letter-spacing:.08em;color:var(--dim);text-transform:uppercase}.pres{font-size:.8rem;color:var(--muted);margin-top:4px}.pres b{color:var(--text);font-weight:500}.console{display:grid;grid-template-columns:320px 1fr;gap:14px;align-items:start}.panel{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:20px 22px}.panel-title{font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.panel-title.row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}.muted-s{color:var(--dim);letter-spacing:.06em;text-transform:none;font-size:.62rem}.controls fieldset{border:none;border-top:1px solid var(--border);padding:14px 0 4px}.controls legend{font-family:var(--mono);font-size:.52rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);padding-right:8px}.ctl{margin-bottom:14px}.ctl-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;gap:8px}.ctl-head label,.ctl-head .lbl{font-size:.84rem;color:var(--muted)}.ctl-head output{font-family:var(--mono);font-size:.74rem;color:var(--text)}.unit{color:var(--dim)}.ctl-hint{font-size:.74rem;color:#f0c060;margin-top:6px;line-height:1.45}.ctl:has(#fr) .ctl-hint{color:var(--dim)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--accent) var(--fill),var(--border) var(--fill));outline:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);box-shadow:0 0 0 3px #00e5c81f}input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--accent)}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #00e5c866}input[type=range]:focus-visible{outline:1px dashed var(--accent);outline-offset:6px}.seg{display:flex;border:1px solid var(--border);border-radius:5px;overflow:hidden}.seg button{flex:1;padding:8px 0;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);border-right:1px solid var(--border)}.seg button:last-child{border-right:none}.seg button.on{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.seg button:focus-visible,.preset:focus-visible,.qstrip button:focus-visible,.reset:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reset{font-family:var(--mono);font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border:1px solid var(--border);border-radius:4px;padding:9px 14px;width:100%;margin-top:4px}.reset:hover{color:var(--text)}.outputs{display:flex;flex-direction:column;gap:14px;min-width:0}.readout{border-left:3px solid var(--accent2)}.readout p{font-family:var(--display);font-weight:400;font-size:clamp(.95rem,1.4vw,1.12rem);line-height:1.5;letter-spacing:-.005em}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.kpi{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:6px}.kpi .k{font-family:var(--mono);font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.kpi .v{font-family:var(--display);font-weight:700;font-size:1.15rem}.kpi small{font-family:var(--sans);font-weight:300;font-size:.8rem;color:var(--dim)}.legend{display:flex;flex-wrap:wrap;gap:12px;color:var(--dim);letter-spacing:.06em;text-transform:none;font-size:.6rem}.legend span{display:inline-flex;align-items:center}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:middle}.legend .lg-demand{width:14px;height:0;border-top:1.5px dashed var(--text);border-radius:0}.chart{width:100%;height:auto;display:block}.chart .grid{stroke:var(--border);stroke-width:1}.chart .axis{font-family:var(--mono);font-size:9px;fill:var(--dim)}.chart .demand{fill:none;stroke:var(--text);stroke-width:1.5;stroke-dasharray:4 4;opacity:.8}.chart .demand-dot{fill:var(--bg);stroke:var(--text);stroke-width:1.2}.chart .gap{fill:none;stroke:#ff5fb4;stroke-opacity:.5;stroke-dasharray:2 3}.chart .col{cursor:pointer}.qstrip{display:grid;grid-template-columns:repeat(12,1fr);margin:4px 0 0 6.25%;margin-right:calc(12 / 640 * 100%)}.qstrip button{height:22px;display:flex;align-items:center;justify-content:center;border-radius:3px}.qstrip button.on{background:#ffffff0f}.dotc{width:8px;height:8px;border-radius:50%;background:var(--c);border:1px solid var(--borderStrong)}.ubars{display:flex;flex-direction:column;gap:10px}.ubar{display:grid;grid-template-columns:110px 1fr 96px;gap:12px;align-items:center;font-size:.84rem;color:var(--muted)}.ubar.bind .ul{color:var(--text)}.track{height:6px;border-radius:3px;background:var(--border);overflow:hidden}.fill{display:block;height:100%;border-radius:3px;opacity:.85;transition:width .4s cubic-bezier(.16,1,.3,1)}.uv{font-family:var(--mono);font-size:.68rem;text-align:right;color:var(--text)}.uv em{color:#ff5fb4;font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}.method{margin-top:14px;border:1px solid var(--border);border-radius:8px;padding:14px 18px;color:var(--muted)}.method summary{font-family:var(--mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);cursor:pointer}.method p{margin-top:12px;font-weight:300;font-size:.88rem;line-height:1.75;max-width:860px}[data-theme=light] .mock-tag,[data-theme=light] .ctl-hint{color:#970}@media (max-width:960px){.console{grid-template-columns:1fr}}@media (max-width:767px){.sb-head{grid-template-columns:1fr}.presets,.presets:has(.custom){grid-template-columns:1fr}.kpis{grid-template-columns:1fr 1fr}.panel{padding:16px}.ubar{grid-template-columns:84px 1fr 72px;gap:8px;font-size:.78rem}.legend{gap:8px}}@media (prefers-reduced-motion:reduce){.fill{transition:none}}.chart .yr{fill:var(--accent);opacity:.7}@media (max-width:960px){.outputs{order:-1}}.flow-card{border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,#ffffff08,#ffffff03);padding:18px 18px 8px;position:relative;overflow:hidden}[data-theme=light] .flow-card{background:#140a5008}.flow-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));opacity:.7}.flow-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.flow-top .presets{display:flex;gap:8px;margin:0;flex-wrap:wrap}.flow-top .preset{padding:9px 14px;gap:2px}.flow-top .pn{font-size:.74rem}.flow-top .pnote{font-size:.5rem}.transport{display:flex;gap:8px;align-items:center}.tbtn{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--border);border-radius:4px;padding:9px 14px;color:var(--muted)}.tbtn.play{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);min-width:96px}.tbtn:hover{color:var(--text)}.seg.small button{padding:8px 12px}.tbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.flow-box{width:100%}.flow-canvas{display:block;width:100%}.levers{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;border-top:1px solid var(--border);padding:16px 4px 6px;margin-top:6px}.levers .ctl{margin-bottom:6px}.sb-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;margin-top:14px}.sb-bottom .kpis{grid-template-columns:1fr 1fr}.drawer summary{color:var(--accent)}.drawer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-top:14px}.method-note{margin-top:18px;font-weight:300;font-size:.82rem;line-height:1.7;color:var(--muted)}.proj-grid{grid-template-columns:repeat(2,1fr)}@media (max-width:1000px){.levers{grid-template-columns:repeat(3,1fr)}.sb-bottom,.drawer-grid{grid-template-columns:1fr}}@media (max-width:767px){.flow-card{padding:12px 10px 6px}.flow-top .presets{display:grid;grid-template-columns:1fr;width:100%}.transport{width:100%}.tbtn.play{flex:1}.levers{grid-template-columns:1fr 1fr;gap:14px}}.flow-box{position:relative}.lever-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lever{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:2px;height:26px;padding:0 3px 0 8px;border:1px solid var(--border);border-radius:4px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;transition:border-color .2s,box-shadow .2s}.lever .lv-l{color:var(--dim);margin-right:6px}.lever .lv-v{color:var(--text);min-width:40px;text-align:center}.lever button{width:22px;height:20px;border-radius:3px;color:var(--accent);font-family:var(--mono);font-size:.8rem;line-height:1}.lever button:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.lever button:focus-visible{outline:1.5px solid var(--accent);outline-offset:1px}.lever.seg-l button{width:auto;padding:0 8px;font-size:.58rem;letter-spacing:.1em;color:var(--dim)}.lever.seg-l button.on{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.lever.hot{border-color:#f0c060bf;box-shadow:0 0 0 1px #f0c06040,0 0 14px #f0c06040}.lever.hot .lv-l{color:#f0c060}.eq{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;border-top:1px solid var(--border);margin-top:4px;padding:12px 6px 6px;font-family:var(--mono);font-size:.7rem;color:var(--muted)}.eq-k{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:#f0c060;border:1px solid rgba(240,192,96,.4);border-radius:3px;padding:3px 8px}.eq-k.ok{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.eq-f{color:var(--text)}.eq b{color:#f0c060;font-weight:700}.eq-d{color:var(--dim)}.sb-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:center;margin-top:22px}.readout-line{font-family:var(--display);font-weight:400;font-size:clamp(.98rem,1.5vw,1.16rem);line-height:1.5;letter-spacing:-.005em;border-left:2px solid var(--accent2);padding-left:18px}.sb-bottom .kpis{grid-template-columns:repeat(3,1fr);gap:8px}.kpi .v.amber{color:#f0c060}.kpi .v.teal{color:var(--accent)}.kpi .v{font-size:1rem}.eqs .eq-row{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid var(--border);font-family:var(--mono);font-size:.66rem;color:var(--muted)}.eqs .eq-row .eq-k{align-self:flex-start;color:var(--dim);border-color:var(--border)}.eqs .eq-row.hot .eq-k{color:#f0c060;border-color:#f0c06066}.eqs b{color:var(--text)}.flow-top .transport .mock-tag{grid-column:auto;margin-right:6px;padding:6px 10px}@media (max-width:1000px){.sb-bottom{grid-template-columns:1fr}}@media (max-width:767px){.lever{height:28px}.flow-top .transport{flex-wrap:wrap}.flow-top .transport .mock-tag{width:100%;margin:0 0 4px}.sb-bottom .kpis{grid-template-columns:repeat(3,1fr)}.kpi{padding:10px}.kpi .v{font-size:.86rem}.eq{font-size:.64rem}}.lever{flex-direction:column;align-items:stretch;gap:2px;height:auto;padding:4px 4px 3px}.lever .lv-l{margin:0 0 0 3px;font-size:.5rem;letter-spacing:.14em}.lever .lv-row{display:flex;align-items:center}.lever .lv-v{min-width:34px;font-size:.62rem}@media (max-width:767px){.flow-top .presets{display:flex;overflow-x:auto;scrollbar-width:none;gap:6px}.flow-top .preset{flex:0 0 auto;padding:8px 12px}.flow-top .preset .pnote{display:none}.lever button{width:26px;height:24px}}@media (max-width:767px){.flow-top .presets{flex-wrap:nowrap}}
