/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Roboto Flex","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.contents{display:contents}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@font-face{font-family:Roboto Flex;src:url(/assets/fonts/roboto-flex-100_1000-normal.woff2)format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}:root{--m3-primary:#006d4c;--m3-on-primary:#e6ffef;--m3-primary-container:#89f8c7;--m3-on-primary-container:#005e41;--m3-primary-dim:#005f42;--m3-inverse-primary:#8cfbc9;--m3-secondary:#2d657d;--m3-on-secondary:#f3faff;--m3-secondary-container:#bee9ff;--m3-on-secondary-container:#1c586f;--m3-tertiary:#686100;--m3-on-tertiary:#fff9e0;--m3-tertiary-container:#fcee5d;--m3-on-tertiary-container:#5f5800;--m3-surface:#f8faf5;--m3-surface-low:#f1f5ef;--m3-surface-container:#ebefe9;--m3-surface-high:#e4eae3;--m3-surface-highest:#dee4dc;--m3-on-surface:#2e342f;--m3-on-surface-variant:#5a615b;--m3-outline:#767c76;--m3-outline-variant:#adb4ad;--m3-inverse-surface:#0c0f0c;--m3-inverse-on-surface:#9b9e99;--m3-error:#ac3434;--m3-on-error:#fff7f6;--m3-error-container:#f56965;--m3-on-error-container:#65000b;--ground:var(--m3-surface);--ink:var(--m3-on-surface);--muted:var(--m3-on-surface-variant);--primary:var(--m3-primary);--container:var(--m3-primary-container);--line:var(--m3-outline-variant);--sky:var(--m3-secondary-container)}@supports (color:color-mix(in lab, red, red)){:root{--sky:color-mix(in srgb,var(--m3-secondary-container) 55%,var(--m3-surface))}}:root{--on-dark:var(--m3-surface);--on-dark-soft:var(--m3-surface)}@supports (color:color-mix(in lab, red, red)){:root{--on-dark-soft:color-mix(in srgb,var(--m3-surface) 82%,var(--m3-on-surface))}}:root{--on-dark-muted:var(--m3-surface)}@supports (color:color-mix(in lab, red, red)){:root{--on-dark-muted:color-mix(in srgb,var(--m3-surface) 62%,var(--m3-on-surface))}}:root{--panel:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--panel:color-mix(in srgb,var(--ink) 68%,var(--m3-primary))}}:root{--panel-raised:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--panel-raised:color-mix(in srgb,var(--ink) 52%,var(--m3-primary))}}:root{--panel-hover:var(--ink)}@supports (color:color-mix(in lab, red, red)){:root{--panel-hover:color-mix(in srgb,var(--ink) 44%,var(--m3-primary))}}:root{--panel-deep:var(--m3-inverse-surface)}@supports (color:color-mix(in lab, red, red)){:root{--panel-deep:color-mix(in srgb,var(--m3-inverse-surface) 84%,var(--m3-primary))}}:root{--panel-line:var(--m3-surface)}@supports (color:color-mix(in lab, red, red)){:root{--panel-line:color-mix(in srgb,var(--m3-surface) 22%,transparent)}}:root{--ease:cubic-bezier(.2,.8,.2,1);color:var(--ink);background:var(--ground);font-family:var(--font-sans);font-synthesis:none}*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}img{max-width:100%;height:auto;display:block}p{text-wrap:pretty;margin:0 0 20px;line-height:1.8}h1,h2,h3{text-wrap:balance;letter-spacing:-.045em;margin:0;font-weight:700}h1{line-height:1.15}h2{line-height:1.22}h3{line-height:1.4}::selection{background:var(--primary);color:var(--ground)}:focus-visible{outline:3px solid var(--primary);outline-offset:5px;border-radius:6px}#main:focus{outline:none}[id]{scroll-margin-top:36px}.wrap{width:min(100% - 96px,1280px);margin-inline:auto}.skip-link{z-index:100;background:var(--ink);color:var(--ground);border-radius:30px;padding:14px 24px;position:fixed;top:-100px;left:24px}.skip-link:focus{top:16px}.site-header{justify-content:space-between;align-items:center;gap:24px;min-height:116px;display:flex}.brand{letter-spacing:-.065em;align-items:center;gap:10px;min-height:48px;font-size:23px;font-weight:750;display:flex}.brand .mark{width:35px;height:35px;color:var(--primary);transition:rotate .4s var(--ease)}.brand:hover .mark{rotate:24deg}.brand-dot{color:var(--primary)}nav{align-items:center;gap:12px;display:flex}nav a{border-radius:30px;align-items:center;gap:8px;min-height:44px;padding:9px 18px;font-size:14px;transition:background .25s,translate .25s;display:flex;position:relative}nav a:hover,nav a:focus-visible{background:var(--container);translate:0 -2px}nav a[aria-current]{background:var(--container)}.nav-dot{background:var(--m3-tertiary);border-radius:50%;width:4px;height:4px;transition:scale .25s;position:absolute;bottom:3px;left:calc(50% - 2px);scale:0}nav a:hover .nav-dot,nav a[aria-current] .nav-dot{scale:1}.nav-github{border:1px solid var(--line);margin-left:10px}.arrow{width:22px;height:22px;transition:translate .3s var(--ease),rotate .3s var(--ease);flex-shrink:0}.arrow.back{rotate:180deg}.button{background:var(--primary);min-height:58px;color:var(--ground);border-radius:32px;justify-content:space-between;align-items:center;gap:20px;padding:8px 9px 8px 27px;font-size:16px;font-weight:650;transition:background .25s,color .25s,border-radius .3s;display:inline-flex}.button:hover,.button:focus-visible{background:var(--m3-primary-dim);border-radius:18px}.button:active{scale:.98}.button-icon{background:var(--m3-on-primary);place-items:center;width:42px;height:42px;display:grid}@supports (color:color-mix(in lab, red, red)){.button-icon{background:color-mix(in srgb,var(--m3-on-primary) 14%,transparent)}}.button-icon{border-radius:50%;transition:rotate .3s}.button:hover .button-icon{rotate:-35deg}.button.secondary{background:var(--container);color:var(--ink)}.magnet{display:inline-block;position:relative}.quiet-link,.text-link,.light-link,.pill-link,.footer-link{align-items:center;gap:16px;min-height:44px;font-weight:550;display:inline-flex;position:relative}.quiet-link:after,.text-link:after,.light-link:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:scale .3s;position:absolute;bottom:4px;left:0;right:38px;scale:0 1}.quiet-link:hover:after,.text-link:hover:after,.light-link:hover:after{scale:1}.quiet-link:hover .arrow,.text-link:hover .arrow,.light-link:hover .arrow,.pill-link:hover .arrow,.footer-link:hover .arrow{translate:4px}.pill-link{border:1px solid var(--line);border-radius:28px;padding:11px 20px;font-size:14px;transition:background .25s,border-radius .25s}.pill-link:hover{background:var(--container);border-radius:15px}.section-kicker{color:var(--muted);margin-bottom:22px;font-size:14px;display:block}.hero{grid-template-columns:1.08fr 1fr;align-items:center;gap:clamp(30px,5vw,80px);padding-top:44px;padding-bottom:100px;display:grid}.hello{margin-bottom:30px;font-size:16px}.hello span{color:var(--muted);margin-left:8px;font-size:14px}.hero h1{letter-spacing:-.065em;white-space:nowrap;margin-left:-.05em;font-size:clamp(60px,6.2vw,88px);font-weight:800;line-height:1.2}.period{color:var(--primary)}.hero-intro{color:var(--muted);margin-top:30px;margin-bottom:30px;font-size:17px;line-height:1.95}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.quiet-link{font-size:14px}.hero-foot{color:var(--muted);gap:22px;margin-top:58px;font-size:12px;display:flex}.hero-foot span{align-items:center;gap:8px;display:flex}.hero-foot span:before{content:"";background:var(--m3-outline);border-radius:50%;width:5px;height:5px}.bench{background:var(--m3-surface-container);border-radius:40px 40px 64px;align-self:stretch;min-height:630px;padding:24px;position:relative}.bench-top{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:23px;padding:0 4px;font-size:12px;display:flex}.bench-top>span:first-child{align-items:center;gap:8px;display:flex}.status-dot{background:var(--m3-tertiary);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.bench-count{font-variant-numeric:tabular-nums;color:var(--ink);font-size:14px}.bench-count>span{color:var(--muted)}.connected{gap:3px;display:flex}.connected button{background:var(--m3-surface-high);border:0;border-radius:6px;min-height:52px;padding:10px 18px;font-weight:600;transition:background .25s,border-radius .3s,scale .25s}.connected button:first-child{border-radius:30px 6px 6px 30px}.connected button:last-child{border-radius:6px 30px 30px 6px}.connected button[aria-pressed=true]{background:var(--primary);color:var(--ground);border-radius:30px}.connected button:hover{background:var(--m3-surface-highest);scale:.97}.connected button[aria-pressed=true]:hover{background:var(--m3-primary-dim)}.stage-controls button{flex:1;justify-content:center;align-items:center;gap:10px;font-size:15px;display:flex}.connected button[aria-pressed=true] .step-number{color:var(--m3-tertiary-container);opacity:1}.step-number{opacity:.75;font-size:11px;font-weight:450}.bench-scene{flex-direction:column;align-items:center;height:315px;margin-top:20px;display:flex;position:relative}.source-node{z-index:2;background:var(--ground);box-shadow:0 4px 0 var(--m3-outline-variant);border-radius:18px 18px 6px;align-self:flex-start;align-items:center;gap:12px;margin-left:14px;padding:13px 14px;font-size:12px;display:flex;position:relative;rotate:-3deg}@supports (color:color-mix(in lab, red, red)){.source-node{box-shadow:0 4px 0 color-mix(in srgb,var(--m3-outline-variant) 35%,transparent)}}.doc-icon{border:1px solid var(--m3-outline-variant);border-radius:5px;flex-direction:column;gap:4px;padding:7px;display:flex}.doc-icon i{background:var(--muted);width:14px;height:1px}.doc-icon i:last-child{width:9px}.node-port{background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 3px var(--m3-surface-high);border-radius:50%;margin-left:10px}.bench-stem{border:2px dashed var(--m3-outline-variant);border-bottom:0;border-left:0;border-radius:0 30px 0 0;width:116px;height:77px;position:absolute}.stem-top{top:29px;left:40%}.stem-bottom{top:202px;left:35%;rotate:180deg}.core-node{width:215px;height:215px;color:var(--primary);position:absolute;top:50px;left:calc(50% - 106px)}.core-shape{width:100%;height:100%;filter:drop-shadow(0 7px 0 var(--m3-outline-variant))}@supports (color:color-mix(in lab, red, red)){.core-shape{filter:drop-shadow(0 7px 0 color-mix(in srgb,var(--m3-outline-variant) 62%,transparent))}}.core-label{color:var(--m3-on-primary-container);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:34px}.core-label>span:first-child{font-size:11px}.core-label b{letter-spacing:-.05em;font-size:40px;line-height:1.5}.core-symbol{font-size:25px;font-weight:500;line-height:1.2}.output-node{background:var(--panel);color:var(--on-dark);border-radius:6px 20px 20px;align-items:center;gap:12px;padding:14px 20px;font-size:12px;display:flex;position:absolute;bottom:8px;right:20px;rotate:3deg}.small-check{background:var(--container);width:22px;height:22px;color:var(--m3-on-primary-container);border-radius:50%;place-items:center;font-size:13px;display:grid}.orbit-label{color:var(--muted);font-size:11px;line-height:1.8;position:absolute;bottom:55px;left:7px;rotate:-6deg}.bench-caption{border-top:1px solid var(--line);padding:20px 6px 0}.bench-caption h2{letter-spacing:-.03em;font-size:21px}.bench-caption p{color:var(--muted);min-height:47px;margin-top:10px;margin-bottom:10px;font-size:13px}.bench-caption .text-link{gap:10px;font-size:12px}.bench-caption .arrow{width:18px}.method{background:var(--ink);color:var(--ground);border-radius:64px;padding:90px 0}.method-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px;display:grid}.method .section-kicker{color:var(--on-dark-soft)}.method h2{margin-bottom:28px;font-size:clamp(38px,4.5vw,62px)}.method-copy>p{color:var(--on-dark-soft);max-width:390px;font-size:16px}.light-link{color:var(--m3-inverse-primary);margin-top:10px;font-size:14px}.gate-demo{background:var(--panel);border:1px solid var(--panel-line);color:var(--ground);border-radius:30px;overflow:hidden}.gate-header{color:var(--on-dark-soft);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:22px 24px;font-size:11px;display:flex}.gate-header>span:last-child{color:var(--on-dark-muted)}.gate-controls{margin-bottom:24px;padding:0 24px}.gate-controls button{background:var(--panel-raised);color:var(--on-dark-soft);min-height:42px;font-size:13px}.gate-controls button[aria-pressed=true]{background:var(--container);color:var(--m3-on-primary-container)}.gate-controls button:hover{background:var(--panel-hover)}.gate-controls button[aria-pressed=true]:hover{background:var(--m3-surface)}.gate-content{padding:0 24px}.code-caption{color:var(--on-dark-muted);margin-bottom:9px;font-size:11px}.gate-content pre{white-space:pre-wrap;background:var(--panel-deep);border:1px solid var(--panel-line);overflow-wrap:anywhere;border-radius:16px;min-height:134px;margin:0 0 20px;padding:20px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.9}.rejection{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.error-code{background:var(--m3-error-container);color:var(--m3-on-error-container);border-radius:9px;margin-top:3px;padding:7px 9px;font-size:11px;display:inline-block}.rejection h3{letter-spacing:-.02em;font-size:17px}.rejection p{color:var(--on-dark-soft);max-width:260px;margin:6px 0 0;font-size:12px}.exit-code{background:var(--on-dark-muted);white-space:nowrap;border-radius:8px;margin-left:auto;padding:5px 8px;font-size:10px}.gate-note{color:var(--on-dark-soft);min-height:44px;margin-top:18px;font-size:12px}.gate-bottom{border-top:1px solid var(--panel-line);color:var(--on-dark-soft);align-items:center;gap:10px;padding:16px 24px;font-size:11px;display:flex}.gate-bottom .status-dot{background:var(--m3-inverse-primary)}.selected-work{padding-top:116px;padding-bottom:100px}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:54px;display:flex}.section-heading h2{font-size:clamp(36px,4vw,58px)}.selected-grid,.archive-grid{grid-template-columns:1fr 1fr;gap:68px 48px;display:grid}.selected-grid .project-card:nth-child(2n){translate:0 64px}.selected-grid{padding-bottom:64px}.project-card{border-radius:28px;min-width:0;display:block}.project-cover{isolation:isolate;transition:border-radius .4s var(--ease),box-shadow .4s;background:0 0;border-radius:32px;position:relative;overflow:hidden}.project-cover img{aspect-ratio:580/448;object-fit:contain;width:100%;transition:scale .6s var(--ease)}.project-open{background:var(--ground);width:46px;height:46px;color:var(--ink);transition:translate .4s var(--ease),rotate .4s;box-shadow:0 3px 10px var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:20px;right:20px;translate:0 80px}@supports (color:color-mix(in lab, red, red)){.project-open{box-shadow:0 3px 10px color-mix(in srgb,var(--ink) 27%,transparent)}}.project-card:hover .project-cover,.project-card:focus-visible .project-cover{box-shadow:0 10px 24px var(--m3-primary);border-radius:64px 24px}@supports (color:color-mix(in lab, red, red)){.project-card:hover .project-cover,.project-card:focus-visible .project-cover{box-shadow:0 10px 24px color-mix(in srgb,var(--m3-primary) 9%,transparent)}}.project-card:hover .project-cover img,.project-card:focus-visible .project-cover img{scale:1.025}.project-card:hover .project-open,.project-card:focus-visible .project-open{translate:0;rotate:-35deg}.project-heading{justify-content:space-between;align-items:center;gap:10px;margin:23px 4px 8px;display:flex}.project-meta{color:var(--muted);align-items:center;gap:16px;margin-bottom:7px;font-size:11px;display:flex}.project-meta>span{border-left:1px solid var(--m3-outline);padding-left:14px}.project-heading h3{letter-spacing:-.045em;overflow-wrap:anywhere;font-size:29px}.project-count{color:var(--muted);margin-top:22px;font-size:11px}.project-subtitle{color:var(--muted);margin:0 4px 15px;font-size:15px}.project-stack{flex-wrap:wrap;gap:7px;margin-inline:4px;display:flex}.project-stack>span{border:1px solid var(--line);color:var(--muted);border-radius:20px;padding:5px 10px;font-size:10px}.illustration-note{color:var(--muted);margin-top:40px;margin-bottom:0;font-size:12px}.lab{background:var(--sky);border-radius:64px;padding:90px 0}.lab-heading{grid-template-columns:1.2fr 1fr;align-items:end;gap:80px;margin-bottom:48px;display:grid}.lab-heading h2{font-size:clamp(36px,4vw,58px)}.lab-heading>p{max-width:400px;color:var(--muted);margin-bottom:0;font-size:16px}.lab .section-kicker{color:var(--muted)}.lab-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:80px;display:grid}.image-slot{background:#c4d7ef;border-radius:160px 160px 32px 32px;align-items:flex-end;min-height:460px;padding:38px;display:flex;position:relative;overflow:hidden}.slot-art{color:#9fb8dc;position:absolute;inset:0}.slot-flower{color:#9fb8dc;width:210px;position:absolute;top:32px;right:18px;rotate:15deg}.slot-puffy{color:#afc5e4;width:140px;position:absolute;top:115px;left:16px;rotate:-15deg}.slot-plus{color:#e4edfa;font-size:70px;font-weight:300;line-height:1;position:absolute;top:120px;right:130px}.slot-copy{z-index:1;position:relative}.slot-tag{color:#3e5274;background:#c4d7efa0;border:1px solid #667a9b;border-radius:20px;padding:6px 12px;font-size:11px}.slot-copy h3{letter-spacing:-.04em;margin:24px 0 13px;font-size:40px}.slot-copy p{color:#435774;margin:0;font-size:13px}.workflow-note{max-width:400px}.workflow-label{color:var(--muted);margin-bottom:28px;font-size:13px;display:block}.workflow-list{margin:0;padding:0;list-style:none}.workflow-list li{align-items:center;gap:28px;padding-bottom:26px;display:flex;position:relative}.workflow-list li:last-child{padding-bottom:0}.workflow-list li:not(:last-child):before{content:"";background:#91a7c6;width:1px;height:26px;position:absolute;top:44px;left:35px}.workflow-list li>span{background:#edf3fc;border:1px solid #bdcde2;border-radius:22px;place-items:center;min-width:72px;min-height:44px;font-size:14px;font-weight:650;display:grid}.workflow-list li:nth-child(2)>span{border-radius:8px 24px}.workflow-list li:nth-child(3)>span{color:#f7f8ff;background:#536b91;border-color:#536b91}.workflow-list p{color:#435774;margin:0;font-size:14px}.lab-honesty{color:var(--muted);margin-top:32px;margin-bottom:0;font-size:12px}.lab-repos{border-top:1px solid #afc3df;flex-wrap:wrap;align-items:center;gap:12px 30px;margin-top:40px;padding-top:25px;display:flex}.lab-repos>span{color:var(--muted);margin-right:auto;font-size:11px}.lab-repos a{align-items:center;gap:12px;min-height:44px;font-size:12px;transition:translate .25s;display:flex}.lab-repos a:hover{text-underline-offset:5px;text-decoration:underline;translate:0 -3px}.lab-repos .arrow{width:18px}.about-preview{grid-template-columns:1.1fr 1fr;gap:100px;padding-block:130px;display:grid}.about-preview h2{margin-bottom:30px;font-size:clamp(30px,3vw,45px);line-height:1.5}.about-preview h2>span{color:var(--muted);letter-spacing:-.035em;font-size:.7em}.about-text p{color:var(--muted);font-size:16px}.about-text .about-quote{color:var(--ink);margin-top:30px;font-size:22px;font-weight:650}.footer{background:var(--m3-surface-container);border-radius:60px 60px 0 0;padding-top:56px;padding-bottom:25px;overflow:hidden}.footer-top{justify-content:space-between;align-items:center;gap:30px;display:flex}.footer-top p{color:var(--muted);margin:0;font-size:17px;line-height:1.8}.footer-link{background:var(--m3-surface-high);border-radius:28px;padding:10px 20px;font-size:14px;transition:background .25s,border-radius .3s}.footer-link:hover{background:var(--m3-surface-highest);border-radius:16px}.footer-name{letter-spacing:-.07em;white-space:nowrap;margin:50px 0 32px;font-size:clamp(52px,10.5vw,150px);font-weight:750;line-height:1.3}.footer-name>span{color:var(--primary)}.footer-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:25px;font-size:10px;display:flex}.footer-meta a{min-height:36px;padding-block:12px}.footer-meta a:hover{text-decoration:underline}.archive-head{padding-top:64px}.archive-head h1,.about-head h1{font-size:clamp(42px,5.5vw,76px);line-height:1.3}.archive-head>p{color:var(--muted);max-width:630px;margin-top:28px;font-size:17px}.archive-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-top:48px;margin-bottom:50px;display:flex}.filters button{align-items:center;gap:10px;font-size:13px;display:flex}.filters button>span{opacity:.8;font-size:10px}.result-count{color:var(--muted);white-space:nowrap;font-size:12px}.archive-grid{padding-bottom:110px}.case-head{padding-top:35px}.breadcrumb{min-height:44px;color:var(--muted);border-radius:22px;align-items:center;gap:14px;padding:6px 14px 6px 0;font-size:14px;transition:padding .3s,background .3s;display:inline-flex}.breadcrumb:hover{background:var(--container);padding-left:12px}.case-title{justify-content:space-between;align-items:end;gap:32px;margin-top:35px;display:flex}.case-title h1{overflow-wrap:anywhere;letter-spacing:-.06em;max-width:850px;font-size:clamp(38px,6vw,86px)}.case-subtitle{margin-top:20px;margin-bottom:0;font-size:clamp(18px,2vw,25px)}.case-title .button{white-space:nowrap;font-size:14px}.case-meta{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:40px;margin-top:45px;padding:25px 0 30px;display:grid}.case-meta>div>span{color:var(--muted);font-size:11px}.case-meta p{margin:8px 0 0;font-size:13px}.case-art{margin-top:15px}.case-art>img{aspect-ratio:1.65;object-fit:contain;background:0 0;border-radius:40px;width:100%;max-height:640px}.case-art figcaption{color:var(--muted);padding:14px 0;font-size:11px}.case-body{grid-template-columns:.8fr 1fr;gap:120px;padding-block:70px;display:grid}.case-body aside>p{max-width:350px;font-size:24px;font-weight:550;line-height:1.7}.case-narrative section{margin-bottom:40px}.case-narrative section:last-child{margin:0}.case-narrative h2{margin-bottom:16px;font-size:25px}.case-narrative p{color:var(--muted);margin:0;font-size:16px}.decisions{border-top:1px solid var(--line);padding-block:45px 75px}.decisions>h2{margin-bottom:40px;font-size:30px}.decisions>div{grid-template-columns:repeat(3,1fr);gap:60px;display:grid}.decision-dot{background:var(--container);border-radius:10px 50% 50%;width:28px;height:28px;margin-bottom:24px;display:block}.decisions h3{margin-bottom:14px;font-size:20px}.decisions p{color:var(--muted);font-size:14px}.case-gate{grid-template-columns:.8fr 1fr;gap:120px;padding-block:10px 80px;display:grid}.case-gate>h2{align-self:center;font-size:32px}.next-project{border-top:1px solid var(--line);padding-block:40px 80px}.next-project>span{color:var(--muted);font-size:13px}.next-project>a{letter-spacing:-.05em;overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:20px;min-height:100px;font-size:clamp(32px,5vw,64px);font-weight:700;transition:padding .35s,border-radius .35s,background .35s;display:flex}.next-project>a .arrow{width:50px;height:50px}.next-project>a:hover{background:var(--container);border-radius:30px;padding-inline:24px}.next-project p{color:var(--muted);margin-top:10px;font-size:15px}.about-head{padding-top:65px}.about-lead{margin-top:35px;font-size:22px;line-height:1.8}.about-body{grid-template-columns:.75fr 1fr;align-items:start;gap:130px;padding-block:55px 80px;display:grid}.about-emblem{color:var(--container);max-width:350px;position:sticky;top:80px;rotate:-6deg}.about-emblem>svg{width:100%}.about-emblem>span{letter-spacing:-.08em;color:var(--primary);place-content:center;font-size:150px;font-weight:800;display:grid;position:absolute;inset:0}.about-emblem>span>span{position:absolute;bottom:60px;right:70px}.about-body h2{margin-top:25px;margin-bottom:22px;font-size:26px}.about-body p{color:var(--muted);font-size:17px}.about-body .button{margin-top:20px}.colophon{border-top:1px solid var(--line);padding:48px 0 80px}.colophon>h2{margin-bottom:30px;font-size:30px}.colophon>p{max-width:730px;color:var(--muted);font-size:14px}.colophon a{text-underline-offset:4px;text-decoration:underline}.not-found{text-align:center;padding-block:30px 110px}.lost-nodes{justify-content:center;align-items:center;max-width:600px;height:240px;margin:0 auto 20px;display:flex;position:relative}.lost-nodes svg{width:175px;color:var(--container);position:absolute;left:45px;rotate:-15deg}.lost-nodes svg:last-child{color:var(--m3-surface-high);left:auto;right:45px;rotate:15deg}.lost-nodes b{z-index:2;letter-spacing:-.09em;font-size:120px;font-weight:800;position:relative}.not-found h1{font-size:clamp(40px,4vw,56px);line-height:1.4}.not-found>p{color:var(--muted);margin-block:25px}.mobile-break{display:none}.gallery-grid{grid-template-columns:1fr 1fr;gap:36px;display:grid}.gallery-item a{display:block}.gallery-item img{aspect-ratio:4/5;object-fit:cover;border-radius:32px;width:100%;transition:border-radius .35s,scale .35s}.gallery-item a:hover img{border-radius:64px 24px;scale:.98}.gallery-item h3{margin-block:20px 12px;font-size:24px}.gallery-item p{font-size:14px}.gallery-item .text-link{display:inline-flex}.gallery-dialog{background:var(--ground);color:var(--ink);overscroll-behavior:contain;border:0;border-radius:32px;max-width:min(94vw,1000px);max-height:90dvh;margin:auto;padding:28px;position:fixed}.gallery-dialog::backdrop{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.gallery-dialog::backdrop{background:color-mix(in srgb,var(--ink) 72%,transparent)}}.gallery-dialog:not([open]){display:none}.dialog-close{float:right;background:var(--ink);width:44px;height:44px;color:var(--ground);z-index:3;border:0;border-radius:50%;font-size:28px;transition:rotate .25s;position:sticky;top:0;right:0}.dialog-close:hover{rotate:90deg}.dialog-content img{object-fit:contain;width:100%;height:auto;max-height:65vh}.dialog-content h2{margin-block:24px;font-size:28px}.params>div{border-top:1px solid var(--line);gap:20px;padding:10px 0;display:flex}.params dt{color:var(--muted)}.params dd{margin:0}.params{margin-bottom:24px}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}@view-transition{navigation:auto}::view-transition-old(root){animation:.25s ease-out depart}::view-transition-new(root){animation:arrive .45s var(--ease)}@keyframes depart{to{opacity:0;transform:translateY(-10px)}}@keyframes arrive{0%{opacity:0;transform:translateY(14px)}}@media (hover:none){.project-open{width:38px;height:38px;translate:0}.hero .quiet-link{padding-block:8px}.project-cover{border-radius:28px}.magnet{transform:none!important}}@media (min-width:1600px){.hero{padding-top:60px;padding-bottom:120px}.bench{min-height:650px}.bench-scene{height:335px}}@media (max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:30px;padding-top:30px}.hero h1{font-size:6.3vw}.hero-intro{font-size:15px}.hero-actions{gap:14px}.hero-foot{gap:14px;margin-top:32px}.bench{min-height:610px;padding:20px}.bench-caption p{min-height:60px}.source-node{margin-left:0;font-size:11px}.orbit-label{display:none}.method-grid{gap:40px}.lab-grid,.lab-heading{gap:45px}.about-preview{gap:60px}.selected-grid,.archive-grid{gap:52px 32px}.filters button{padding-inline:15px}.case-body,.case-gate{gap:65px}.about-body{gap:70px}.footer-name{font-size:10.8vw}.case-title .button{padding-left:18px}.case-title{flex-wrap:wrap;align-items:start}}@media (max-width:767px){.wrap{width:calc(100% - 40px)}.site-header{flex-wrap:wrap;align-items:center;gap:8px;min-height:92px;padding-top:17px;padding-bottom:12px}.brand{min-height:38px;font-size:21px}.brand .mark{width:29px;height:29px}nav{gap:2px}nav a{min-height:40px;padding:8px 11px;font-size:12px}.nav-github{display:none}.hero{grid-template-columns:1fr;gap:38px;padding-top:42px;padding-bottom:65px}.hello{margin-bottom:22px;font-size:14px}.hello span{font-size:12px}.hero h1{letter-spacing:-.06em;font-size:clamp(54px,11.7vw,80px);line-height:1.22}.hero-intro{margin-top:25px;margin-bottom:26px;font-size:16px}.desktop-break{display:none}.hero-actions{gap:18px}.button{gap:16px;min-height:54px;padding-left:22px;font-size:14px}.button-icon{width:38px;height:38px}.quiet-link{gap:10px;font-size:13px}.hero-foot{gap:18px;margin-top:28px;font-size:11px}.bench{border-radius:32px 32px 52px;min-height:0;padding:21px 20px 24px}.bench-top{margin-bottom:18px}.bench-scene{height:305px;margin-top:22px}.source-node{margin-left:3px;padding:11px 13px;font-size:11px}.core-node{width:204px;height:204px;left:calc(50% - 102px)}.output-node{padding:12px 15px;font-size:11px;bottom:12px;right:3px}.core-label b{font-size:36px}.bench-caption{padding-top:21px}.bench-caption p{min-height:0;margin-bottom:10px;font-size:13px}.bench-caption h2{font-size:21px}.bench-caption .text-link{font-size:12px}.method{border-radius:40px;padding:55px 0}.method-grid{grid-template-columns:1fr;gap:30px}.method h2{margin-bottom:25px;font-size:42px;line-height:1.3}.method-copy>p{max-width:none;font-size:15px}.section-kicker{margin-bottom:18px;font-size:12px}.light-link{margin-top:0;font-size:13px}.gate-header{gap:6px;padding:20px;font-size:10px}.gate-controls{margin-bottom:20px;padding:0 20px}.gate-content{padding:0 20px}.gate-content pre{min-height:126px;padding:14px;font-size:10px}.rejection{gap:10px}.rejection>div{flex:1;min-width:180px}.rejection h3{font-size:15px}.rejection p{font-size:11px}.error-code{padding:6px 7px;font-size:10px}.exit-code{margin-left:0}.gate-note{min-height:0;font-size:11px}.gate-bottom{padding:14px 20px;font-size:10px}.selected-work{padding-top:65px;padding-bottom:60px}.section-heading{flex-wrap:wrap;align-items:start;gap:20px;margin-bottom:33px}.section-heading h2{font-size:37px;line-height:1.35}.mobile-break{display:block}.section-heading .pill-link{align-self:end;gap:10px;padding:8px 14px;font-size:12px}.pill-link .arrow{width:18px}.selected-grid,.archive-grid{grid-template-columns:1fr;gap:40px;padding-bottom:0}.selected-grid .project-card:nth-child(2n){translate:0}.project-heading{margin-top:17px}.project-heading h3{font-size:27px}.project-meta{gap:12px;font-size:11px}.project-subtitle{font-size:14px}.project-stack>span{font-size:10px}.project-count{display:none}.illustration-note{margin-top:30px;font-size:11px}.lab{border-radius:40px;padding:55px 0}.lab-heading,.lab-grid{grid-template-columns:1fr;gap:28px}.lab-heading{margin-bottom:32px}.lab-heading h2{font-size:40px;line-height:1.35}.lab-heading>p{font-size:15px}.image-slot{border-radius:130px 130px 28px 28px;min-height:400px;padding:28px}.slot-copy h3{font-size:34px}.slot-copy p{font-size:11px}.slot-flower{width:180px}.slot-puffy{width:120px}.slot-plus{font-size:60px;top:108px;right:110px}.workflow-note{max-width:none;padding:5px 8px}.workflow-label{margin-bottom:22px}.workflow-list li{gap:24px;padding-bottom:24px}.workflow-list p,.workflow-list li>span{font-size:13px}.lab-honesty{margin-top:24px}.lab-repos{flex-direction:column;align-items:start;gap:8px;margin-top:30px;padding-top:20px}.lab-repos>span{margin-bottom:6px}.lab-repos a{font-size:12px}.about-preview{grid-template-columns:1fr;gap:30px;padding-block:65px}.about-preview h2{margin-bottom:20px;font-size:34px;line-height:1.45}.about-text p{font-size:15px}.about-text .about-quote{margin-bottom:0;font-size:21px}.footer{border-radius:38px 38px 0 0;padding-top:35px;padding-bottom:18px}.footer-top{flex-direction:column;align-items:start;gap:22px}.footer-top p{font-size:15px}.footer-link{padding:8px 16px;font-size:12px}.footer-name{letter-spacing:-.065em;margin:35px 0 24px;font-size:11vw}.footer-meta{flex-wrap:wrap;justify-content:start;gap:5px 18px;font-size:9px}.footer-meta>span:first-child{width:100%}.footer-meta a{min-height:36px}.archive-head{padding-top:35px}.archive-head h1,.about-head h1{font-size:clamp(35px,8.7vw,58px);line-height:1.4}.archive-head>p{margin-top:24px;font-size:15px}.archive-toolbar{margin-top:30px;margin-bottom:30px;display:block}.filters{flex-wrap:wrap;gap:6px}.filters button{gap:7px;min-height:44px;padding:10px 12px;font-size:12px}.filters button:first-child,.filters button:last-child,.filters button,.filters button[aria-pressed=true]{border-radius:20px}.result-count{margin-top:18px;font-size:11px;display:block}.archive-grid{padding-bottom:60px}.case-head{padding-top:25px}.breadcrumb{font-size:12px}.case-title{gap:22px;margin-top:25px}.case-title h1{font-size:clamp(35px,9vw,70px);line-height:1.2}.case-subtitle{margin-top:15px;font-size:18px;line-height:1.6}.case-title .section-kicker{margin-bottom:18px;font-size:11px}.case-meta{grid-template-columns:1fr;gap:18px;margin-top:30px;padding-top:20px;padding-bottom:20px}.case-meta p{font-size:12px}.case-art{margin-top:5px}.case-art>img{aspect-ratio:580/448;border-radius:24px;max-height:none}.case-art figcaption{padding-top:12px;font-size:10px}.case-body{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:40px}.case-body aside>p{max-width:none;font-size:22px}.case-narrative h2{font-size:23px}.case-narrative p{font-size:15px}.case-narrative section{margin-bottom:30px}.decisions{padding-top:35px;padding-bottom:35px}.decisions>h2{margin-bottom:30px;font-size:27px}.decisions>div{grid-template-columns:1fr;gap:10px}.decisions article{grid-template-columns:26px 1fr;gap:0 15px;display:grid}.decision-dot{width:23px;height:23px;margin-top:2px}.decisions h3{font-size:19px}.decisions p{grid-column:2;font-size:14px}.case-gate{grid-template-columns:1fr;gap:25px;padding-bottom:50px}.case-gate>h2{font-size:27px}.next-project{padding-top:30px;padding-bottom:45px}.next-project>span{font-size:12px}.next-project>a{min-height:80px;font-size:32px;line-height:1.4}.next-project>a .arrow{width:28px;height:28px}.next-project>p{font-size:13px}.about-head{padding-top:35px}.about-lead{margin-top:25px;font-size:18px}.about-body{grid-template-columns:1fr;gap:10px;padding-top:15px;padding-bottom:45px}.about-emblem{width:180px;margin:0 auto;position:relative;top:auto}.about-emblem>span{font-size:85px}.about-emblem>span>span{bottom:25px;right:30px}.about-body h2{font-size:24px}.about-body p{font-size:16px}.colophon{padding-top:35px;padding-bottom:45px}.colophon>h2{font-size:26px}.colophon>p{font-size:13px}.lost-nodes{max-width:350px;height:180px}.lost-nodes svg{width:130px;left:12px}.lost-nodes svg:last-child{right:12px}.lost-nodes b{font-size:90px}.not-found{padding-top:10px;padding-bottom:65px}.not-found h1{font-size:38px}.not-found>p{font-size:15px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-dialog{border-radius:24px;padding:18px}.dialog-content h2{font-size:24px}}@media (max-width:400px){.site-header{flex-direction:column;align-items:flex-start;gap:5px;padding-top:14px}.site-header nav{justify-content:flex-end;align-self:stretch;margin-top:-3px}.site-header nav a{padding-inline:12px;font-size:11px}.hero{padding-top:26px}.hero h1{font-size:12.2vw}.hero-actions{gap:12px}.quiet-link{font-size:12px}.button{gap:12px;padding-left:17px}.hero-foot{gap:13px;font-size:10px}.bench-top{font-size:11px}.stage-controls button{gap:7px;padding-inline:12px;font-size:14px}.gate-header>span:last-child{font-size:9px}.section-heading .pill-link{margin-top:5px}.footer-name{font-size:10.7vw}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project-card:hover .project-cover img{scale:1}.project-card:hover .project-cover{border-radius:32px}.magnet>div{transform:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.lab-aside{flex-direction:column;justify-self:end;align-items:flex-start;gap:14px;max-width:400px;display:flex}.lab-count{background:var(--container);color:var(--m3-primary-dim);letter-spacing:.02em;border-radius:999px;align-items:baseline;gap:10px;padding:10px 22px;font-size:12px;font-weight:600;display:inline-flex}.lab-count b{font-variation-settings:"wdth" 90;font-size:34px;font-weight:750;line-height:.9}.lab-aside p{color:var(--muted);margin:0;font-size:15px}.gallery-grid{grid-template-columns:minmax(0,1.26fr) minmax(0,.82fr);align-items:start;gap:46px}.gallery-item{min-width:0}.gallery-item:nth-child(2){margin-top:96px}.gallery-frame{isolation:isolate;display:block;position:relative}.gallery-frame img{aspect-ratio:3/4;object-fit:cover;width:100%;transition:border-radius .45s var(--ease),scale .45s var(--ease);border-radius:40px;display:block}.gallery-item.is-featured .gallery-frame img{aspect-ratio:4/5;border-radius:180px 180px 40px 40px}.gallery-item.is-featured .gallery-frame:hover img{border-radius:120px 120px 32px 32px;scale:1.012}.gallery-item.is-offset .gallery-frame:hover img{border-radius:56px 24px;scale:1.012}.gallery-index{background:var(--ground);border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;bottom:18px;left:18px}@supports (color:color-mix(in lab, red, red)){.gallery-index{background:color-mix(in srgb,var(--ground) 88%,transparent)}}.gallery-index{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--m3-tertiary);box-shadow:0 10px 26px var(--ink);font-size:13px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.gallery-index{box-shadow:0 10px 26px color-mix(in srgb,var(--ink) 14%,transparent)}}.gallery-caption{justify-content:space-between;align-items:flex-start;gap:24px;margin-top:20px;display:flex}.gallery-text{min-width:0}.gallery-text h3{margin:0 0 6px;font-size:24px;font-weight:650;line-height:1.2}.gallery-text p{color:var(--muted);margin:0;font-size:14px}.gallery-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.gallery-action,.gallery-copy{border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;min-height:44px;padding:0 18px;font-size:13px;font-weight:600;transition:background .25s,border-radius .3s,color .25s,border-color .25s;display:inline-flex}.gallery-action{background:var(--ink);color:var(--ground)}.gallery-action:hover{background:var(--primary);border-radius:16px}.gallery-action .arrow{width:16px}.gallery-copy{border-color:var(--m3-outline);color:var(--ink);background:0 0}.gallery-copy:hover{background:var(--container);border-radius:16px}.gallery-copy.is-done{background:var(--primary);border-color:var(--primary);color:var(--ground)}.gallery-copy.is-error{background:var(--m3-error-container);border-color:var(--m3-error);color:var(--m3-on-error-container)}.gallery-dialog{background:var(--ground);border-radius:36px;width:min(94vw,1120px);max-width:min(94vw,1120px);padding:0;overflow:hidden}.gallery-dialog>.dialog-close{float:none;z-index:5;position:absolute;top:14px;right:14px}.viewer{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);min-height:520px;max-height:88dvh;display:grid}.viewer-stage{background:var(--m3-surface-container-high);place-items:center;margin:0;padding:22px;display:grid;overflow:hidden}.viewer-stage img{object-fit:contain;border-radius:24px;width:100%;height:100%;max-height:calc(88dvh - 44px)}.viewer-panel{flex-direction:column;gap:18px;min-width:0;padding:38px 36px 32px;display:flex;overflow:auto}.viewer-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.viewer-panel h2{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.1}.viewer-tabs{background:var(--container);border-radius:999px;align-self:flex-start;gap:4px;padding:4px;display:inline-flex}.viewer-tabs button{color:var(--m3-on-primary-container);background:0 0;border:0;border-radius:999px;padding:9px 20px;font-size:13px;font-weight:600;transition:background .25s,color .25s}.viewer-tabs button[aria-selected=true]{background:var(--ground);color:var(--ink);box-shadow:0 2px 8px var(--ink)}@supports (color:color-mix(in lab, red, red)){.viewer-tabs button[aria-selected=true]{box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 10%,transparent)}}.viewer-detail p{color:var(--muted);margin:0 0 18px}.viewer-facts{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.viewer-facts div{background:var(--m3-surface-low);border-radius:18px;padding:14px 16px}.viewer-facts dt{color:var(--muted);font-size:11px}.viewer-facts dd{margin:2px 0 0;font-size:14px;font-weight:600}.viewer-workflow{flex-direction:column;flex:1;gap:14px;min-height:0;display:flex}.viewer-loading{color:var(--muted);margin:0;font-size:14px}.workflow-meta{flex-wrap:wrap;gap:6px;display:flex}.workflow-meta span{background:var(--container);color:var(--m3-primary-dim);border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600}.workflow-code{background:var(--panel-deep);color:var(--on-dark-soft);white-space:pre-wrap;overflow-wrap:anywhere;overscroll-behavior:contain;border-radius:22px;max-height:34dvh;margin:0;padding:18px;font-size:11px;line-height:1.55;overflow:auto}.workflow-foot{align-items:center;gap:14px;margin-top:auto;display:flex}.workflow-foot .button{margin-top:0}.workflow-size{color:var(--muted);font-size:11px}.copy-glyph{width:18px;height:18px}@media (max-width:900px){.lab-aside{justify-self:start;max-width:none}.gallery-grid{grid-template-columns:1fr;gap:34px}.gallery-item:nth-child(2){margin-top:0}.gallery-item.is-featured .gallery-frame img{aspect-ratio:4/5;border-radius:120px 120px 32px 32px}.gallery-caption{flex-direction:column;gap:14px}.gallery-actions{justify-content:flex-start}.gallery-dialog{width:min(94vw,720px);max-width:min(94vw,720px)}.viewer{grid-template-columns:1fr;min-height:0}.viewer-stage{padding:12px}.viewer-stage img{height:auto;max-height:40dvh}.viewer.show-workflow .viewer-stage{display:none}.viewer-panel{padding:24px 20px}.workflow-code{max-height:30dvh}}button.period{font:inherit;color:var(--primary);cursor:pointer;vertical-align:baseline;transition:scale .2s var(--ease);background:0 0;border:0;padding:0}button.period:active{scale:.86}.lab{animation:lab-in .5s var(--ease)}.notice{z-index:60;background:var(--ink);color:var(--ground);box-shadow:0 16px 40px var(--ink);border-radius:999px;padding:12px 20px;font-size:13px;position:fixed;bottom:24px;left:50%;translate:-50%}@supports (color:color-mix(in lab, red, red)){.notice{box-shadow:0 16px 40px color-mix(in srgb,var(--ink) 25%,transparent)}}.notice{animation:notice-in .3s var(--ease)}@keyframes lab-in{0%{opacity:0;translate:0 26px}to{opacity:1;translate:0}}@keyframes notice-in{0%{opacity:0;translate:-50% 12px}to{opacity:1;translate:-50%}}@media (max-width:767px){.notice{text-align:center;max-width:calc(100vw - 32px);bottom:16px}}.theme-picker{align-items:center;gap:10px;display:inline-flex}.theme-control{cursor:pointer;align-items:center;gap:6px;min-height:36px;display:inline-flex;position:relative}.theme-control input[type=color]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.theme-control:focus-within{outline:2px solid var(--primary);outline-offset:4px;border-radius:6px}.theme-swatch{border:1px solid #ffffff80;border-radius:50%;flex:none;width:13px;height:13px;box-shadow:0 0 0 1px #0000001f}.theme-reset{font:inherit;color:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;min-height:36px;padding:0;text-decoration:underline}.theme-reset:hover{color:var(--primary)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
