:root{--color-paper:#e8e8e3;--color-charcoal:#1b1a18;--color-media-black:#000;--skills-ticker-bg:var(--color-media-black);--feed-wire:color-mix(in srgb,var(--color-paper) 46%,transparent);--feed-wire-back:color-mix(in srgb,var(--color-paper) 13%,transparent);--feed-wire-active:color-mix(in srgb,var(--color-paper) 62%,transparent);--feed-type-glow:color-mix(in srgb,var(--color-paper) 42%,transparent);--feed-glow-strong:color-mix(in srgb,var(--color-paper) 82%,transparent);--feed-glow-soft:color-mix(in srgb,var(--color-paper) 24%,transparent);--feed-trail-green:color-mix(in srgb,var(--screen-glitch-cool) 55%,var(--game-signal));--feed-trail-amber:color-mix(in srgb,var(--game-signal) 72%,var(--color-paper));--feed-trail-cyan:color-mix(in srgb,var(--screen-glitch-cool) 70%,var(--color-paper));--feed-trail-rose:color-mix(in srgb,var(--screen-glitch-warm) 68%,var(--color-paper));--feed-trail-violet:color-mix(in srgb,var(--screen-glitch-warm) 64%,var(--screen-glitch-cool));--feed-surface-light:color-mix(in srgb,var(--color-paper) 10%,transparent);--feed-surface-mid:color-mix(in srgb,var(--color-paper) 3%,transparent);--feed-surface-shade:color-mix(in srgb,var(--color-charcoal) 46%,transparent);--cursor-light:color-mix(in srgb,var(--color-paper) 3%,transparent);--terminal-code:color-mix(in srgb,var(--color-paper) 17%,transparent);--terminal-signal:color-mix(in srgb,var(--game-signal) 29%,transparent);--terminal-disrupted:color-mix(in srgb,var(--color-paper) 62%,transparent);--screen-glitch-cool:#7bd9df;--screen-glitch-warm:#df789d;--game-signal:#d9aa69;--game-signal-soft:color-mix(in srgb,var(--game-signal) 18%,transparent);--game-signal-line:color-mix(in srgb,var(--game-signal) 52%,transparent);--game-panel:color-mix(in srgb,var(--color-charcoal) 95%,var(--color-paper));--game-glow:color-mix(in srgb,var(--game-signal) 28%,transparent);--desktop-brand-active:#f3a15d;--desktop-brand-glow:color-mix(in srgb,var(--desktop-brand-active) 65%,transparent);--desktop-brand-halo:color-mix(in srgb,var(--desktop-brand-active) 24%,transparent);--boot-screen:color-mix(in srgb,var(--color-charcoal) 82%,black);--boot-monitor-edge:color-mix(in srgb,var(--color-paper) 38%,var(--color-charcoal));--boot-track:color-mix(in srgb,var(--color-paper) 40%,transparent);--desktop-bg:radial-gradient(ellipse at 70% 48%,color-mix(in srgb,var(--color-paper) 13%,var(--color-charcoal)),var(--color-charcoal) 75%);--desktop-bar:color-mix(in srgb,var(--color-charcoal) 94%,var(--color-paper));--desktop-line:color-mix(in srgb,var(--color-paper) 11%,transparent);--desktop-selection:color-mix(in srgb,var(--color-paper) 9%,transparent);--desktop-shadow:color-mix(in srgb,var(--color-charcoal) 45%,transparent);--desktop-folder-back:color-mix(in srgb,var(--color-paper) 62%,var(--color-charcoal));--desktop-folder-edge:color-mix(in srgb,var(--color-paper) 80%,var(--color-charcoal));--desktop-folder-face:color-mix(in srgb,var(--color-paper) 77%,var(--color-charcoal));--desktop-wallpaper-type:color-mix(in srgb,var(--color-paper) 74%,var(--color-charcoal));--desktop-orbit:color-mix(in srgb,var(--color-paper) 8%,transparent);--desktop-menu-rule:color-mix(in srgb,var(--color-paper) 7%,transparent);--desktop-dock-line:color-mix(in srgb,var(--color-paper) 22%,transparent);--desktop-dock:color-mix(in srgb,var(--color-paper) 8%,var(--color-charcoal));--desktop-dock-icon:color-mix(in srgb,var(--color-paper) 6%,var(--color-charcoal));--desktop-window-border:color-mix(in srgb,var(--color-charcoal) 30%,var(--color-paper));--project-window-surface:color-mix(in srgb,var(--color-charcoal) 98%,var(--color-paper));--project-window-edge:color-mix(in srgb,var(--color-paper) 13%,transparent);--project-window-glint:color-mix(in srgb,var(--color-paper) 4%,transparent);--desktop-window-shadow:color-mix(in srgb,var(--color-charcoal) 70%,transparent);--desktop-window-bar:color-mix(in srgb,var(--color-charcoal) 5%,var(--color-paper));--desktop-photo-mat:color-mix(in srgb,var(--color-paper) 97%,white);--desktop-photo-shadow:color-mix(in srgb,var(--color-charcoal) 15%,transparent);--desktop-bezel:color-mix(in srgb,var(--color-charcoal) 35%,black);--desktop-crt-shade:color-mix(in srgb,var(--color-charcoal) 72%,transparent);--desktop-crt-edge-cool:color-mix(in srgb,#73b6cf 22%,transparent);--desktop-crt-edge-warm:color-mix(in srgb,#d48373 18%,transparent);--desktop-crt-sweep:color-mix(in srgb,var(--color-paper) 9%,transparent);--desktop-crt-sweep-edge:color-mix(in srgb,var(--color-paper) 15%,transparent);--desktop-crt-glint:color-mix(in srgb,var(--color-paper) 5%,transparent);--grain-opacity:.6;--color-ink:var(--color-charcoal);--color-muted-light:color-mix(in srgb,var(--color-charcoal) 65%,var(--color-paper));--color-muted-dark:color-mix(in srgb,var(--color-paper) 58%,var(--color-charcoal));--color-dot-light:color-mix(in srgb,var(--color-charcoal) 35%,var(--color-paper));--color-dot-dark:color-mix(in srgb,var(--color-paper) 68%,var(--color-charcoal));--color-rule-light:color-mix(in srgb,var(--color-charcoal) 19%,transparent);--color-rule-dark:color-mix(in srgb,var(--color-paper) 19%,transparent);--color-bg:var(--color-charcoal);--color-text:var(--color-paper);--color-muted:var(--color-muted-dark);--color-rule:var(--color-rule-dark);--color-inverse-bg:var(--color-paper);--color-inverse-text:var(--color-ink);--section-title-dot:var(--color-dot-dark)}@media(max-width:767px){:root{--grain-opacity:.2}}.home-experience,[data-color-theme=light]{--color-bg:var(--color-paper);--color-text:var(--color-ink);--color-muted:var(--color-muted-light);--color-rule:var(--color-rule-light);--color-inverse-bg:var(--color-charcoal);--color-inverse-text:var(--color-paper);--section-title-dot:var(--color-dot-light);color-scheme:light}@font-face{font-family:"Alibaba PuHuiTi 3";src:url(/fonts/AlibabaPuHuiTi-3-55-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3";src:url(/fonts/AlibabaPuHuiTi-3-95-ExtraBold.woff2) format("woff2");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3";src:url(/fonts/AlibabaPuHuiTi-3-65-Medium.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3";src:url(/fonts/AlibabaPuHuiTi-3-75-SemiBold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:"Alibaba PuHuiTi 3";src:url(/fonts/AlibabaPuHuiTi-3-85-Bold.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:KH Teka;font-feature-settings:"ss01","ss07";src:url(/fonts/KHTekaTRIAL-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F}@font-face{font-family:KH Teka;font-feature-settings:"ss01","ss07";src:url(/fonts/KHTekaTRIAL-Medium.woff2) format("woff2");font-style:normal;font-weight:500 600;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F}@font-face{font-family:KH Teka;font-feature-settings:"ss01","ss07";src:url(/fonts/KHTekaTRIAL-Bold.woff2) format("woff2");font-style:normal;font-weight:700 800;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F}@font-face{font-family:KH Teka;font-feature-settings:"ss01","ss07";src:url(/fonts/KHTekaTRIAL-Black.woff2) format("woff2");font-style:normal;font-weight:900;font-display:swap;unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F}@font-face{font-family:"Uranus Pixel 11Px";src:url(/fonts/UranusPixel11Px.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+2E80-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF}@font-face{font-family:Silkscreen;src:url(/fonts/Silkscreen-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:PoxiaoPixel;src:url(/fonts/PoxiaoPixel.woff2?v=c3fa8f9e90a5) format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--font-english:"PoxiaoPixel";--font-chinese:"PoxiaoPixel";--font-body:"PoxiaoPixel",sans-serif;--font-display:var(--font-body);--font-screen:var(--font-body)}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-body);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.relative{position:relative}.inline{display:inline}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:var(--font-body);font-weight:600;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:32px;scrollbar-gutter:stable}body{margin:0;background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}button{cursor:pointer;font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0}::-moz-selection{background:var(--color-inverse-bg);color:var(--color-inverse-text)}::selection{background:var(--color-inverse-bg);color:var(--color-inverse-text)}.skip-link{position:fixed;top:-100px;left:20px;z-index:10000;padding:12px 20px;background:var(--color-inverse-bg);color:var(--color-inverse-text)}.skip-link:focus{top:15px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}:root{--page-pad:clamp(24px,1.9vw,40px);--grid-gutter:clamp(16px,1.25vw,24px);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:48px;--space-5:96px;--closing-content-gap:32px;--home-bg:var(--color-charcoal);--closing-bg:var(--home-bg);--closing-text:var(--color-text);--closing-muted:var(--color-muted);--motion-feedback:.12s;--motion-glide:.65s;--ease-glide:cubic-bezier(.16,1,.35,1)}.site-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));-moz-column-gap:var(--grid-gutter);column-gap:var(--grid-gutter);width:100%;padding-inline:var(--page-pad)}.route-status{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:var(--page-pad);outline:none}@media(max-width:767px){:root{--page-pad:16px;--grid-gutter:12px;--closing-content-gap:24px}html{scroll-padding-top:80px;-webkit-text-size-adjust:100%}}:root:not([data-keyboard-navigation=true]) :focus-visible{outline:none!important}.loading-state{display:grid;place-items:center;min-height:180px;padding:32px;color:var(--color-muted);font-family:var(--font-body);font-size:14px;letter-spacing:.08em}.screen-menu{position:absolute;z-index:40;top:38px;left:5%;right:5%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:64px;padding:0 0 16px;color:var(--color-paper);font-family:var(--font-body);font-weight:400}.screen-menu-brand{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-width:44px;min-height:44px}.screen-menu-brand-mark{display:block;width:17px;height:22px;transform-origin:50% 50%;background:var(--color-paper);-webkit-mask:url(/brand/logo.svg) center/contain no-repeat;mask:url(/brand/logo.svg) center/contain no-repeat;transition:background-color .18s}.screen-menu-brand[aria-current=page]{filter:drop-shadow(0 0 3px var(--desktop-brand-glow)) drop-shadow(0 0 9px var(--desktop-brand-halo))}.screen-menu-brand[aria-current=page] .screen-menu-brand-mark{background:var(--desktop-brand-active)}.screen-menu-brand:is(:hover,:focus-visible) .screen-menu-brand-mark{animation:screen-brand-turn .42s var(--ease-glide) both}.screen-menu[data-paused=true] .screen-menu-brand-mark{animation-play-state:paused}@keyframes screen-brand-turn{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.screen-menu>nav{display:flex;align-items:center;gap:36px}.screen-menu>nav>a{display:flex;align-items:center;gap:7px;min-width:44px;min-height:44px;font-family:var(--font-screen);font-size:18px;font-weight:400;line-height:1;letter-spacing:.035em;text-transform:uppercase;text-decoration:none;color:var(--color-muted);transition:color .15s}.screen-nav-cursor{display:inline-block;width:.65em;opacity:0;transform:translate(-3px);transition:opacity .15s,transform .15s}.screen-menu>nav>a:hover,.screen-menu>nav>a:focus-visible,.screen-menu>nav>a[aria-current=page]{color:var(--color-paper)}.screen-menu>nav>a:hover .screen-nav-cursor,.screen-menu>nav>a:focus-visible .screen-nav-cursor,.screen-menu>nav>a[aria-current=page] .screen-nav-cursor{opacity:1;transform:none}.screen-menu time{display:flex;align-items:center;justify-self:end;white-space:nowrap;font-family:var(--font-screen);font-size:20px;font-weight:400;line-height:1.2;text-transform:uppercase;color:var(--color-muted)}.screen-clock-value{display:flex;align-items:baseline;gap:12px}@media(max-width:1000px){.screen-menu{gap:16px}.screen-menu>nav{gap:32px}.screen-menu>nav>a{font-size:16px}.screen-menu time{font-size:18px}.screen-clock-value{gap:10px}}@media(max-width:767px){.screen-menu{top:24px;left:7%;right:7%;min-height:92px;grid-template-columns:1fr auto;gap:4px 8px;padding:0 0 10px}.screen-menu-brand-mark{width:13px;height:17px}.screen-menu time{grid-column:2;grid-row:1;font-size:17px}.screen-clock-value{gap:10px}.screen-menu>nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:16px}.screen-menu>nav>a{font-size:15px;gap:5px}}@media(max-width:374px){.screen-menu>nav>a{font-size:13px;letter-spacing:0;gap:3px}.screen-menu time{font-size:15px}.screen-menu>nav{gap:10px}}@media(prefers-reduced-motion:reduce){.screen-menu>nav>a,.screen-nav-cursor{transition:none}.screen-menu-brand:is(:hover,:focus-visible) .screen-menu-brand-mark{animation:none;transform:none}}@media(max-height:500px){.screen-menu{top:8px;padding-bottom:8px}}@media(max-height:500px)and (max-width:767px){.screen-menu{min-height:88px;padding-bottom:0}}.glitch-text{position:relative;display:inline-block;max-width:100%;vertical-align:baseline}.glitch-text-main{display:block}.glitch-text[data-scrambling=true]>.glitch-text-main{opacity:0}.glitch-text-scramble{position:absolute;inset:0;display:block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:inherit}@media(prefers-reduced-motion:reduce){.glitch-text>.glitch-text-main{opacity:1}.glitch-text-scramble{display:none}}.screen-menu-label{display:inline-flex;align-items:center;gap:7px}.desktop-screen-shell:is([data-screen-entry=waiting],[data-screen-entry=navigation],[data-screen-entry=waiting-ticker]) .skills-ticker{opacity:0}.desktop-screen-shell:is([data-screen-entry=waiting],[data-screen-entry=ticker-first]) .screen-menu{opacity:0}.desktop-screen-shell:is([data-screen-entry=waiting],[data-screen-entry=ticker-first],[data-screen-entry=navigation]) .transition-content{opacity:0}.desktop-screen-shell[data-desktop-handoff=true] .transition-content{opacity:1}.desktop-screen-shell[data-screen-entry=waiting] .skills-ticker-track{animation-play-state:paused}@media(max-width:767px){.screen-menu-label{gap:5px}}@media(max-width:374px){.screen-menu-label{gap:3px}}.system-boot{position:absolute;inset:0;z-index:10;background:var(--boot-screen);color:var(--color-paper);font-family:var(--font-body);font-weight:400;outline:none}.boot-log{position:absolute;top:clamp(44px,7svh,88px);left:7%;right:7%;font-size:clamp(12px,1.2vw,16px);line-height:1.9;letter-spacing:.025em;color:var(--color-muted)}.boot-log-line{margin:0;min-height:1lh;white-space:pre-wrap;overflow-wrap:anywhere}.boot-log-line:first-child,.boot-log-line:last-of-type{color:var(--color-paper)}.boot-caret{display:inline-block;width:.5em;height:1em;margin-left:.15em;vertical-align:-.12em;background:var(--color-paper);animation:boot-caret-blink .8s steps(1,end) infinite}.boot-log-line[data-typing=true] .boot-caret{animation:none}.boot-online{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:36px 7%;pointer-events:none}.boot-online h2{margin:0;font-size:clamp(22px,2.4vw,32px);font-weight:400;line-height:1.3;letter-spacing:.14em}.boot-online .boot-system-name{width:12ch;height:1.3em;white-space:nowrap;text-align:center;pointer-events:none}.boot-system-name>span{display:inline-block;opacity:0;transform:translateY(5px) scaleY(.2);transform-origin:50% 100%;clip-path:inset(100% 0 0);transition:opacity .16s,transform .24s cubic-bezier(.2,.8,.2,1),clip-path .24s}.boot-system-name[data-visible=true]>span{opacity:1;transform:none;clip-path:inset(0)}.boot-enter{display:flex;flex-direction:column;align-items:center;width:clamp(240px,32vw,390px);max-width:100%;padding:0;border:0;background:none;color:var(--color-paper);font:inherit;pointer-events:auto;transition:transform .18s ease-out}.boot-online{--boot-reveal-duration:2.2s}.boot-computer{position:relative;display:flex;flex-direction:column;align-items:center;width:100%}.boot-computer:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-paper);box-shadow:0 0 9px var(--game-glow);opacity:0;pointer-events:none;z-index:4}.boot-online[data-connected=false] .boot-computer{animation:boot-computer-arrive var(--boot-reveal-duration) steps(1,end) both}.boot-online[data-connected=false] .boot-computer:before{animation:boot-carrier-acquire var(--boot-reveal-duration) ease-out both}.boot-online[data-connected=false] h2{animation:boot-name-connect var(--boot-reveal-duration) steps(1,end) both}.boot-online[data-connected=false] .boot-monitor-screen{animation:boot-display-sync var(--boot-reveal-duration) steps(1,end) both}.boot-monitor-screen:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;background:linear-gradient(to bottom,transparent 18%,var(--screen-glitch-cool) 18% 19.5%,transparent 19.5% 57%,var(--screen-glitch-warm) 57% 59%,transparent 59% 78%,var(--color-paper) 78% 79%,transparent 79%)}.boot-online[data-connected=false] .boot-monitor-screen:after{animation:boot-signal-burst var(--boot-reveal-duration) steps(1,end) both}.boot-online[data-connected=false] :is(.boot-preview-menu,.boot-preview-code){animation:boot-interface-connect var(--boot-reveal-duration) steps(1,end) both}.boot-online[data-connected=false] .boot-host-status{opacity:0}.boot-online[data-connected=true] .boot-host-status{animation:boot-label-connect .28s ease-out both}.boot-monitor{display:block;width:100%;padding:7px 7px 0;border:2px solid var(--boot-monitor-edge);border-radius:3px;background:var(--boot-screen);box-shadow:0 12px 28px var(--desktop-shadow);transition:border-color .16s,box-shadow .16s}.boot-monitor-screen{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--desktop-bg);border:1px solid var(--desktop-line);isolation:isolate}.boot-monitor-chin{display:flex;height:13px;align-items:center;justify-content:flex-end;padding-right:5px}.boot-monitor-chin>i{width:3px;height:3px;background:var(--game-signal)}.boot-monitor-neck{width:14%;height:16px;background:var(--boot-monitor-edge);clip-path:polygon(30% 0,70% 0,85% 100%,15% 100%)}.boot-monitor-base{width:42%;height:5px;border-top:1px solid var(--boot-monitor-edge);background:var(--desktop-line)}.boot-enter[data-highlight=true]:enabled:hover{transform:translateY(-4px)}.boot-enter[data-highlight=true]:enabled:hover .boot-monitor{border-color:var(--game-signal);box-shadow:0 12px 28px var(--desktop-shadow),0 0 0 3px var(--game-signal-soft)}.boot-enter:focus-visible{outline:none}.boot-enter:active{transform:translateY(-1px)}.boot-enter:disabled{pointer-events:none}.boot-preview-menu{position:absolute;top:8%;left:8%;right:8%;display:flex;align-items:center;justify-content:center;gap:8%;font-size:clamp(5px,.6vw,8px);text-transform:uppercase;line-height:1.3}.boot-preview-menu>i{position:absolute;left:0;width:5px;height:7px;background:var(--game-signal);-webkit-mask:url(/brand/logo.svg) center/contain no-repeat;mask:url(/brand/logo.svg) center/contain no-repeat}.boot-preview-code{position:absolute;inset:23% 8% 14%;display:flex;flex-direction:column;justify-content:space-between;text-align:justify;color:var(--terminal-code);font-size:clamp(5px,.6vw,8px);line-height:1;letter-spacing:.3em;z-index:-1}.boot-host-status{display:flex;align-items:center;gap:9px;margin:0;font-size:clamp(11px,1vw,14px);letter-spacing:.12em;line-height:1.4;color:var(--color-muted)}.boot-host-status>i{width:5px;height:5px;background:var(--game-signal);box-shadow:0 0 8px var(--game-glow)}.boot-loading{position:absolute;left:7%;right:7%;bottom:max(7.5%,36px)}.boot-progress-label{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:14px;font-size:clamp(13px,1.25vw,16px);line-height:1.4;font-variant-numeric:tabular-nums}.boot-progress-track{height:20px;background:repeating-linear-gradient(to right,var(--boot-track) 0 4px,transparent 4px 10px) left center/auto 2px repeat-x}.boot-progress-fill{height:100%;background:repeating-linear-gradient(to right,var(--color-paper) 0 2px,transparent 2px 10px)}.system-boot:is([data-state=entering],[data-state=released]) .boot-online{transform-origin:var(--boot-enter-origin-x,50%) var(--boot-enter-origin-y,50%);animation:boot-enter-screen .78s cubic-bezier(.55,.04,.35,1) both}.system-boot:is([data-state=entering],[data-state=released]) :is(.boot-system-name,.boot-host-status){animation:none;opacity:0;transition:opacity .14s}.system-boot:is([data-state=entering],[data-state=released]) .boot-preview-menu{animation:boot-preview-handoff .78s ease-in both}.system-boot:is([data-state=entering],[data-state=released]) .boot-preview-code{animation:boot-code-handoff .78s ease-in both}.system-boot[data-state=released]{animation:boot-surface-release .22s ease-out both;pointer-events:none}.system-boot[data-running=false] .boot-caret,.system-boot[data-running=false] .boot-log-line,.system-boot[data-running=false] .boot-online{animation-play-state:paused}.system-boot[data-running=false] .boot-log,.system-boot[data-running=false] .boot-online *,.system-boot[data-running=false] .boot-monitor-screen:after,.system-boot[data-running=false] .boot-computer:before{animation-play-state:paused}.system-boot:is([data-state=entering],[data-state=released]) .boot-monitor-screen:after,.system-boot:is([data-state=entering],[data-state=released]) .boot-computer:before{animation:none;opacity:0}@keyframes boot-caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes boot-computer-arrive{0%,8%{clip-path:inset(49.7% 45%);transform:none}16%{clip-path:inset(49.7% 0)}23%{clip-path:inset(15% 0 70%);transform:translate(-2px)}30%{clip-path:inset(0 0 52%);transform:none}36%{clip-path:inset(30% 0 26%);transform:translate(2px)}43%{clip-path:inset(0 0 18%);transform:none}51%{clip-path:inset(0);transform:translate(-1px)}62%,to{clip-path:inset(-12%);transform:none}}@keyframes boot-display-sync{0%,26%{transform:scaleY(.015);filter:brightness(.5)}34%{transform:translate(-3px) skew(-1deg);filter:drop-shadow(3px 0 var(--screen-glitch-cool))}43%{transform:translate(2px);filter:drop-shadow(-2px 0 var(--screen-glitch-warm));clip-path:inset(12% 0 9%)}52%{transform:none;filter:brightness(.65);clip-path:inset(0)}61%{transform:translate(-1px);filter:drop-shadow(2px 0 var(--screen-glitch-cool))}72%,to{transform:none;filter:none;clip-path:inset(0)}}@keyframes boot-signal-burst{0%,32%{opacity:0}34%{opacity:.6;transform:translateY(-9px) scaleX(1.08)}43%{opacity:.35;transform:translateY(12px) scaleX(.97)}52%{opacity:0}61%{opacity:.3;transform:translateY(-3px)}72%,to{opacity:0;transform:none}}@keyframes boot-carrier-acquire{0%{opacity:0;transform:scaleX(.01)}8%{opacity:.8;transform:scaleX(.1)}18%{opacity:.8;transform:scaleX(1)}28%,to{opacity:0;transform:scaleX(1)}}@keyframes boot-interface-connect{0%,48%{opacity:0;clip-path:inset(50% 0)}55%{opacity:.4;clip-path:inset(0 0 65%)}64%{opacity:.7;clip-path:inset(35% 0 15%)}74%,to{opacity:1;clip-path:inset(0)}}@keyframes boot-name-connect{0%,58%{opacity:0;clip-path:inset(0 100% 0 0)}64%{opacity:1;clip-path:inset(0 65% 0 0)}72%{clip-path:inset(0 28% 0 0)}82%,to{opacity:1;clip-path:inset(0)}}@keyframes boot-label-connect{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes boot-enter-screen{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(var(--boot-enter-x,0),var(--boot-enter-y,0),0) scale(var(--boot-enter-scale,4))}}@keyframes boot-preview-handoff{0%,65%{opacity:1}to{opacity:0}}@keyframes boot-code-handoff{0%,65%{opacity:1}to{opacity:.18}}@keyframes boot-surface-release{0%{opacity:1}to{opacity:0}}@media(max-width:767px){.boot-log{top:max(48px,8svh);left:9%;right:9%;font-size:12px;line-height:2}.boot-loading{left:9%;right:9%;bottom:max(8%,36px)}.boot-progress-track{height:18px}.boot-online{gap:24px}.boot-online h2{font-size:24px}.boot-enter{width:min(250px,76vw)}}@media(max-height:480px){.boot-log{top:24px;font-size:11px;line-height:1.6}.boot-loading{bottom:26px}.boot-progress-label{margin-bottom:8px}.boot-online{gap:14px}.boot-online h2{font-size:20px}.boot-enter{width:200px}.boot-monitor-neck{height:10px}}@media(prefers-reduced-motion:reduce){.system-boot,.boot-log,.boot-log-line,.boot-online,.boot-caret,.boot-online *,.boot-monitor-screen:after,.boot-computer:before{animation:none!important}.boot-enter,.boot-enter>span{transition:none}.boot-system-name>span{transition:none}}:root{--desktop-crt-edge-blur:1.6px;--desktop-crt-softness-mask:radial-gradient(ellipse at 50% 50%,transparent 58%,var(--color-charcoal) 98%)}.desktop-screen-effects{position:absolute;inset:0;z-index:6;pointer-events:none;border-radius:inherit}.desktop-screen-defs{position:absolute;pointer-events:none}.desktop-crt-glass{position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 50% 45%,transparent 47%,var(--desktop-crt-shade) 100%),linear-gradient(120deg,var(--desktop-crt-glint),transparent 40%);box-shadow:inset 0 0 3px 2px var(--desktop-crt-glint),inset 0 0 34px var(--desktop-crt-shade)}.desktop-screen-effects.is-framed{position:absolute;inset:0;z-index:60;overflow:hidden;border-radius:40px}.desktop-screen-bezel{position:absolute;inset:0}@media(max-width:767px){.desktop-crt-glass{background:radial-gradient(ellipse at 50% 45%,transparent 55%,var(--desktop-crt-shade) 100%)}}.desktop-crt-sweep{position:absolute;top:0;left:0;width:100%;height:22svh;background:linear-gradient(to bottom,transparent,var(--desktop-crt-sweep) 45%,var(--desktop-crt-sweep) 55%,transparent);animation:desktop-refresh-sweep 9s linear infinite;will-change:transform;pointer-events:none}.desktop-crt-sweep[data-running=false]{animation-play-state:paused}@keyframes desktop-refresh-sweep{0%{transform:translateY(-30svh)}to{transform:translateY(130svh)}}@media(prefers-reduced-motion:reduce){.desktop-crt-sweep{display:none;animation:none}}.desktop-crt-edge-softness{position:absolute;inset:0;border-radius:inherit;backdrop-filter:blur(var(--desktop-crt-edge-blur));-webkit-backdrop-filter:blur(var(--desktop-crt-edge-blur));mask-image:var(--desktop-crt-softness-mask);-webkit-mask-image:var(--desktop-crt-softness-mask);pointer-events:none}.desktop-screen-rim{position:absolute;inset:0;width:100%;height:100%;filter:blur(.9px);pointer-events:none}:root{--desktop-screen-inset:12px;--desktop-screen-height:calc(100svh - 2 * var(--desktop-screen-inset));--folder-header-height:82px;--screen-menu-space:148px;--screen-footer-font-size:clamp(16px,1.2vw,20px)}html:has(.desktop-screen-shell){height:100%;overflow:hidden;scrollbar-gutter:auto}body,#root{height:100%;overflow:hidden}body:has(.desktop-screen-shell){background:var(--desktop-bezel)}.desktop-screen-shell{position:fixed;top:var(--desktop-screen-inset);left:var(--desktop-screen-inset);right:var(--desktop-screen-inset);height:var(--desktop-screen-height);isolation:isolate;background:var(--desktop-bg);border-radius:40px;overflow:hidden}.desktop-screen-viewport{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;transform-origin:50% 50%;will-change:transform}.desktop-screen-viewport::-webkit-scrollbar{display:none}html[data-scroll-locked=true] .desktop-screen-viewport{overflow:hidden}.desktop-dialog-layer{position:absolute;inset:0;z-index:100;pointer-events:none}.desktop-controls-layer{position:absolute;inset:0;z-index:40;pointer-events:none}.desktop-dialog-layer .ui-dialog-overlay{position:absolute;inset:0}.desktop-dialog-layer .ui-dialog-content{position:absolute;pointer-events:auto}.desktop-media-layer{position:absolute;inset:0;z-index:50;pointer-events:none;transform-origin:50% 50%}.desktop-screen-viewport>.transition-content{min-height:100%}.desktop-screen-shell .desktop-monitor{padding:0;min-height:0;background:none}.desktop-screen-shell .desktop-monitor .siana-desktop{height:var(--desktop-screen-height);min-height:0;clip-path:none;border-radius:0;box-shadow:none}.desktop-screen-shell .desktop-folder-page{min-height:var(--desktop-screen-height);padding-top:var(--screen-menu-space)}.desktop-screen-shell .siana-desktop .desktop-workspace{height:100%;padding-top:calc(var(--screen-menu-space) + 16px)}.desktop-screen-shell .siana-desktop .desktop-file{min-height:134px;padding:14px 7px;gap:12px;justify-content:center}.desktop-app-name{display:block;font-size:16px;font-weight:500;line-height:1.35;text-align:center;letter-spacing:-.015em}.desktop-screen-shell .project-desktop-return{display:none}.desktop-screen-shell .project-detail:not(.is-embedded){--project-nav-space:var(--screen-menu-space)}@media(max-width:767px){:root{--desktop-screen-inset:6px;--screen-menu-space:154px}.desktop-screen-shell .siana-desktop .desktop-file{min-height:120px;gap:10px}.desktop-app-name{font-size:15px}}@media(max-width:767px)and (max-height:650px){.desktop-screen-shell .siana-desktop .desktop-workspace{padding-top:142px}.desktop-screen-shell .siana-desktop .desktop-file{min-height:100px;gap:8px;padding:10px 7px}.desktop-screen-shell .desktop-file .desktop-folder{width:68px;height:54px}.desktop-app-name{font-size:14px}}.desktop-screen-viewport{filter:url(#desktop-content-lens);scroll-padding-top:calc(var(--screen-menu-space) + 20px);scroll-padding-bottom:44px;mask-image:linear-gradient(to bottom,transparent 0,transparent 78px,black var(--screen-menu-space),black calc(100% - 44px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 78px,black var(--screen-menu-space),black calc(100% - 44px),transparent 100%)}.desktop-screen-viewport[data-reduced-motion=true]{filter:none;will-change:auto}@media(max-width:767px){.desktop-screen-viewport{mask-image:linear-gradient(to bottom,transparent 0,transparent 118px,black 164px,black calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 118px,black 164px,black calc(100% - 28px),transparent 100%)}}@media(max-width:767px){.desktop-screen-shell{clip-path:url(#desktop-crt-curve)}.desktop-screen-viewport{filter:none;will-change:auto}.desktop-screen-effects.is-framed{z-index:110}.desktop-crt-edge-softness,.desktop-dialog-layer .ui-dialog-overlay{backdrop-filter:none;-webkit-backdrop-filter:none}}.desktop-screen-shell .siana-desktop .desktop-file:hover .desktop-folder,.desktop-screen-shell .siana-desktop .desktop-file:focus-visible .desktop-folder{transform:none}@media(max-height:500px){:root{--screen-menu-space:100px}.desktop-screen-viewport{mask-image:linear-gradient(to bottom,transparent 0,transparent 58px,black var(--screen-menu-space),black calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 58px,black var(--screen-menu-space),black calc(100% - 28px),transparent 100%)}}@media(max-height:500px)and (max-width:767px){:root{--screen-menu-space:116px}}@media(hover:none),(pointer:coarse){.desktop-screen-viewport{filter:none;will-change:auto}.desktop-crt-edge-softness,.desktop-dialog-layer .ui-dialog-overlay{backdrop-filter:none;-webkit-backdrop-filter:none}}.ui-dialog-overlay{position:fixed;inset:0;z-index:200;pointer-events:auto;background:color-mix(in srgb,var(--color-charcoal) 65%,transparent)}.ui-dialog-content{position:fixed;top:50%;left:50%;translate:-50% -50%;z-index:201;width:calc(100vw - 48px);max-width:512px;max-height:calc(100svh - 48px);overflow:auto;padding:24px;border-radius:16px;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);outline:none}.ui-dialog-header{display:flex;flex-direction:column;gap:6px}.ui-dialog-title{font-weight:700;line-height:1.1;letter-spacing:-.045em}.ui-dialog-description{color:var(--color-muted)}.ui-dialog-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-rule)}.ui-dialog-close{position:absolute;top:16px;right:16px;padding:8px;border:0;border-radius:50%;background:none;color:inherit}.ui-dialog-close:is(:hover,:focus-visible){background:var(--color-rule)}.arrow-icon{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:middle}.app-arrow-icon{width:16px;height:16px}.action-row{--action-icon-size:16px;--action-gap:4px;--action-shift:10px;--action-press-shift:13px;--action-end-space:16px;--action-divider:var(--color-rule);display:flex;align-items:center;color:inherit;background:none;border:0;padding:0;font:inherit;text-align:left;text-decoration:none;overflow:hidden;transition:background-color var(--motion-feedback,.12s) ease-out,color var(--motion-feedback,.12s) ease-out}.action-row-content{display:flex;align-items:center;gap:var(--action-gap);width:100%;min-width:0}.action-row-label{display:block;min-width:0;transition:transform var(--motion-glide,.65s) var(--ease-glide,cubic-bezier(.16,1,.35,1))}.action-row-arrow{width:var(--action-icon-size);height:var(--action-icon-size);transition:transform var(--motion-glide,.65s) var(--ease-glide,cubic-bezier(.16,1,.35,1)),opacity .3s ease-out,filter .3s ease-out}.action-row-trailing{display:grid;align-items:center;flex-shrink:0;overflow:hidden}.action-row-trailing>*{grid-area:1/1;justify-self:end}.action-row-trailing-fallback{transform:translate(0);transition:transform var(--motion-glide,.65s) var(--ease-glide,cubic-bezier(.16,1,.35,1)),opacity .3s ease-out}.action-row:is(:active,:focus-visible,[aria-pressed=true]) .action-row-trailing-fallback{transform:translate(calc(100% + 16px));opacity:0;transition-delay:0ms,80ms}.action-row--divided{border-bottom:1px dotted var(--action-divider)}.action-row:is(:active,:focus-visible,[aria-pressed=true]){background:var(--color-inverse-bg);color:var(--color-inverse-text);border-color:var(--color-inverse-bg)}.action-row:is(:focus-visible,[aria-pressed=true]) .action-row-label{transform:translate(var(--action-shift))}.action-row:active .action-row-label{transform:translate(var(--action-press-shift))}.action-row--arrow-hover .action-row-arrow{opacity:0;filter:blur(4px);transform:translate(-25px)}.action-row--arrow-hover:is(:active,:focus-visible,[aria-pressed=true]) .action-row-arrow{opacity:1;filter:blur(0);transform:translate(-10px)}.action-row--arrow-always:is(:active,:focus-visible) .action-row-arrow{transform:translate(var(--action-shift))}@media(hover:hover)and (pointer:fine){.action-row:hover{background:var(--color-inverse-bg);color:var(--color-inverse-text);border-color:var(--color-inverse-bg)}.action-row:hover:not(:active) .action-row-label{transform:translate(var(--action-shift))}.action-row:hover .action-row-trailing-fallback{transform:translate(calc(100% + 16px));opacity:0;transition-delay:0ms,80ms}.action-row--arrow-hover:hover .action-row-arrow{opacity:1;filter:blur(0);transform:translate(-10px)}.action-row--arrow-always:hover .action-row-arrow{transform:translate(var(--action-shift))}}.action-row--navigation{--action-icon-size:clamp(38px,3.1vw,62px);flex:1;align-items:center;min-height:clamp(70px,5.6vw,112px);padding:9px 0;font-family:var(--font-body);font-size:clamp(44px,4vw,80px);font-weight:700;line-height:1;letter-spacing:-.055em}.action-row--navigation .action-row-content{justify-content:space-between}.action-row--contact,.action-row--project-index{--action-icon-size:22px;width:100%;min-height:40px;padding:6px var(--action-end-space) 6px 0;font-family:var(--font-body);font-size:clamp(24px,2vw,36px);font-weight:800;line-height:1.15;letter-spacing:-.035em;-webkit-text-stroke:.35px currentColor}.action-row--category{--action-icon-size:14px;--action-end-space:12px;min-height:40px;padding:10px var(--action-end-space) 10px 0;font-size:14px;line-height:1.3}.action-row--category .action-row-label{white-space:nowrap;flex-shrink:0}.action-row--copy{width:100%;min-height:48px;padding:7px var(--action-end-space) 7px 0}.action-row--copy .action-row-label{width:100%}.action-row--back{--action-icon-size:14px;display:inline-flex;padding:2px var(--action-end-space) 2px 0}.action-row--works{--action-icon-size:1.05em;width:100%;min-height:clamp(80px,7.875vw,160px);padding:24px 0;font-family:var(--font-body);font-size:clamp(36px,3.5vw,72px);font-weight:700;line-height:1;letter-spacing:-.055em;cursor:pointer}.action-row--works .action-row-content{justify-content:space-between}.action-row--project-next{--action-icon-size:.9em;width:100%;padding:16px 0;font-family:var(--font-body);font-size:clamp(48px,6.25vw,112px);font-weight:700;line-height:1.1;letter-spacing:-.055em}.action-row--project-next .action-row-content{justify-content:space-between}.action-row--project-next .action-row-trailing-fallback{padding-inline-end:.055em}@media(prefers-reduced-motion:reduce){.action-row,.action-row-label,.action-row-arrow,.action-row-trailing-fallback{transition:none;transition-delay:0ms!important}.action-row .action-row-label,.action-row .action-row-arrow,.action-row .action-row-trailing-fallback{transform:none!important;filter:none!important}}.action-row:disabled{cursor:default;pointer-events:none}@media(max-width:767px){.action-row--navigation{min-height:64px;font-size:clamp(40px,10vw,56px);--action-icon-size:28px}.action-row--navigation.action-row--arrow-always{padding-inline-end:var(--action-end-space)}.action-row--category,.action-row--back,.action-row--contact,.action-row--project-index{min-height:44px}.action-row--social{font-size:clamp(17px,4.5vw,24px);--action-icon-size:18px}.action-row--works{font-size:clamp(28px,8vw,44px);min-height:80px}.action-row--project-next{font-size:clamp(30px,8vw,52px);line-height:1.15}.action-row--project-next .action-row-content{align-items:flex-start;gap:20px}}.screen-window-close.window-close{display:grid;place-items:center;flex:none;width:28px;height:28px;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-paper);transition:color .15s}.screen-window-close.window-close:is(:hover,:focus-visible){color:var(--game-signal);background:transparent}.screen-window-close svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}@media(max-width:767px),(pointer:coarse){.screen-window-close.window-close{width:44px;height:44px}}@media(prefers-reduced-motion:reduce){.screen-window-close.window-close{transition:none}}.window-frame.ui-dialog-content{display:flex;flex-direction:column;padding:0;overflow:hidden;width:min(calc(100vw - 192px),calc((100svh - 176px) * 4 / 3));max-width:1200px;height:auto;max-height:none;aspect-ratio:4 / 3;border:1px solid var(--game-signal-line);border-radius:0;background:linear-gradient(135deg,var(--project-window-glint),transparent 34%),var(--project-window-surface);box-shadow:0 24px 80px var(--desktop-window-shadow),0 0 24px var(--game-signal-soft)}.window-frame .desktop-window-bar{position:relative;display:flex;align-items:center;justify-content:space-between;flex:none;min-height:40px;padding:6px 16px;gap:12px;border:0;background:var(--game-panel);color:var(--color-paper)}.window-frame .desktop-window-bar .ui-dialog-title{flex:1;min-width:0;font-family:var(--font-body);font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.015em;overflow-wrap:anywhere}.window-frame .desktop-window-body{flex:1;min-height:0;max-height:none;margin:0;padding:0;overflow:auto;overscroll-behavior:contain}.window-frame :focus-visible{outline-color:var(--game-signal)}.window-frame.ui-dialog-content[data-window-kind=wechat]{width:min(340px,calc(100vw - 48px));max-width:340px;aspect-ratio:auto;max-height:calc(100svh - 96px);overflow:visible;background:transparent;border:0;box-shadow:none}.window-frame.ui-dialog-content[data-window-kind=demo]{--demo-screen-safe:calc(var(--desktop-screen-inset) + 24px);width:calc(100vw - 2 * var(--demo-screen-safe));height:calc(100svh - 2 * var(--demo-screen-safe));max-width:none;max-height:none;aspect-ratio:auto}@media(pointer:coarse){.window-frame .desktop-window-bar{min-height:44px;padding-block:0}}@media(max-width:767px){.window-frame.ui-dialog-content{width:min(calc(100vw - 48px),calc((100svh - 96px) * 4 / 3))}.window-frame .desktop-window-bar{min-height:44px;padding:0 10px;gap:8px}.window-frame .desktop-window-bar .ui-dialog-title{font-size:11px}.window-frame.ui-dialog-content[data-window-kind=demo]{--demo-screen-safe:calc(var(--desktop-screen-inset) + 16px)}}.tilted-card{position:relative;width:100%;perspective:800px}.tilted-card-surface{width:100%;transform-origin:center;transform-style:preserve-3d}.wechat-dialog{max-width:340px;padding:0;background:transparent;overflow:visible}.wechat-dialog-surface{padding:24px;border-radius:16px;background:var(--color-bg);color:var(--color-text)}.wechat-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-inline:calc(100% * 4 / 49)}.wechat-dialog-header h2{font-size:28px;font-weight:700;line-height:1.1;letter-spacing:-.045em}.wechat-qr{display:block;width:100%;height:auto;margin-top:16px;color:var(--color-ink);border-radius:8px}.wechat-qr.is-transparent{color:var(--color-paper);border-radius:0;margin-top:8px}.wechat-dialog-description{margin-top:8px;text-align:center;font-size:14px;font-weight:500;line-height:1.4;color:var(--color-muted)}.wechat-window-surface{overflow:hidden;border:1px solid var(--game-signal-line);background:var(--project-window-surface);box-shadow:0 24px 80px var(--desktop-window-shadow),0 0 24px var(--game-signal-soft)}.wechat-window-artwork{margin:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding:8px 8px 14px}.wechat-window-artwork .wechat-qr{max-width:min(100%,calc(100svh - 192px));margin:0 auto;shape-rendering:auto;color:var(--color-paper)}.wechat-window-description{margin-top:4px;text-align:center;font-size:10px;line-height:1.6;color:var(--color-muted)}@media(max-width:767px){.wechat-dialog-header h2{font-size:26px}.wechat-qr{max-width:calc(100svh - 192px);margin-inline:auto}.wechat-window-artwork .wechat-qr{margin-inline:auto}}.wechat-dialog.ui-dialog-content{border-radius:0}.wechat-dialog .wechat-dialog-surface{border:1px solid var(--game-signal-line);border-radius:0;background:var(--game-panel);color:var(--color-paper)}.wechat-dialog .wechat-dialog-header h2{font-family:var(--font-screen);font-size:19px;font-weight:400;letter-spacing:0}.wechat-dialog .wechat-dialog-description{font-family:var(--font-screen);font-size:10px;line-height:1.6;color:var(--color-muted-dark)}.contact-inventory{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:40px 0 16px}.contact-inventory .contact-slot{grid-column:span 2;position:relative;min-width:0;min-height:164px;align-items:stretch;padding:22px 30px 20px 22px;border:1px solid var(--project-window-edge);background:var(--game-panel);color:var(--color-text);font-weight:400;letter-spacing:0;-webkit-text-stroke:0;touch-action:manipulation}.contact-inventory .contact-slot:nth-child(-n+2){grid-column:span 3;min-height:180px}.contact-slot .action-row-content{justify-content:space-between;align-items:center;gap:12px}.contact-slot .action-row-label{flex:1;min-width:0}.contact-slot-label{display:block;font-size:clamp(30px,3.2vw,46px);line-height:1.2;letter-spacing:-.035em}.contact-slot-value{display:block;min-height:2.8em;margin-top:12px;font-size:13px;line-height:1.4;overflow-wrap:anywhere;color:var(--color-muted)}.contact-inventory .contact-slot:is(:active,:focus-visible){background:var(--color-inverse-bg);color:var(--color-inverse-text);border-color:var(--color-inverse-bg)}.contact-slot:is(:active,:focus-visible) .contact-slot-value{color:inherit}.contact-inventory .contact-slot .contact-slot-glyph{display:block;width:20px;height:20px;flex:none}.contact-slot .action-row-trailing{align-self:flex-end;width:24px;height:28px;overflow:visible;color:var(--game-signal)}.contact-slot .action-row-trailing-fallback{transition:transform .22s var(--ease-glide)}.contact-slot:is(:active,:focus-visible) .action-row-trailing{color:inherit}.contact-inventory .contact-slot:is(:active,:focus-visible) .action-row-trailing-fallback{transform:translateY(-3px);opacity:1}@media(hover:hover)and (pointer:fine){.contact-inventory .contact-slot:hover{background:var(--color-inverse-bg);color:var(--color-inverse-text);border-color:var(--color-inverse-bg)}.contact-slot:hover .contact-slot-value,.contact-slot:hover .action-row-trailing{color:inherit}.contact-inventory .contact-slot:hover .action-row-trailing-fallback{transform:translateY(-3px);opacity:1}}.contact-inventory-status{font-size:12px;line-height:1.5;min-height:18px;color:var(--game-signal)}@media(min-width:768px)and (max-width:1000px){.contact-inventory .contact-slot{padding-inline:18px}}@media(max-width:767px){.contact-inventory{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:28px}.contact-inventory .contact-slot,.contact-inventory .contact-slot:nth-child(-n+2){grid-column:span 1;min-height:160px;padding:18px 18px 16px 14px}.contact-inventory .contact-slot:last-child{grid-column:1 / -1;min-height:128px}.contact-slot-label{font-size:clamp(25px,6.3vw,36px)}.contact-slot-value{font-size:12px;min-height:2.8em}.contact-slot .action-row-content{gap:4px}}@media(max-width:374px){.contact-inventory{grid-template-columns:minmax(0,1fr)}.contact-inventory .contact-slot,.contact-inventory .contact-slot:nth-child(-n+2){min-height:128px}}.desktop-screen-shell .siana-desktop .desktop-workspace.desktop-workspace-carousel{padding:var(--screen-menu-space) 5% 104px;display:flex;align-items:center;justify-content:center;z-index:1}.desktop-folder-stage{width:100%;height:100%;max-height:620px;display:flex;flex-direction:column;align-items:center;gap:20px;min-height:0;--folder-width:clamp(210px,27vw,320px);--folder-step:clamp(210px,28vw,360px);--folder-shift:.38s}.desktop-screen-shell .siana-desktop .desktop-files.desktop-folder-carousel{position:relative;display:block;width:100%;height:auto;flex:1;min-height:0;margin:0;perspective:1200px;isolation:isolate;touch-action:pan-y pinch-zoom;-webkit-user-select:none;-moz-user-select:none;user-select:none}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file{position:absolute;left:50%;top:50%;translate:-50% -50%;width:var(--folder-width);min-height:0;padding:12px 8px;gap:28px;border-color:transparent;background:none;transform-origin:50% 50%;transform:translate3d(0,-8px,60px);z-index:3;opacity:1;filter:brightness(1);transition:transform var(--folder-shift) var(--ease-glide),filter var(--folder-shift) ease-out}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="-1"]{transform:translate3d(calc(-1 * var(--folder-step)),24px,-110px) rotateY(20deg) rotate(-13deg) scale(.88);z-index:1;filter:brightness(.55)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="1"]{transform:translate3d(var(--folder-step),24px,-110px) rotateY(-20deg) rotate(13deg) scale(.88);z-index:1;filter:brightness(.55)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="2"]{transform:translate3d(calc(var(--folder-step) * 1.6),40px,-220px) scale(.7);opacity:0;visibility:hidden;pointer-events:none}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file:hover,.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file:focus-visible{background:none;border-color:transparent}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file:focus-visible{outline:none}.desktop-folder-carousel .desktop-file:focus-visible .desktop-app-name{color:var(--game-signal)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file:hover{filter:brightness(.85)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="0"]:hover{filter:brightness(1)}.desktop-folder-float{display:block;width:100%;transform-origin:50% 50%;transform-style:preserve-3d}.desktop-folder-entry{display:block;width:100%;transform-origin:50% 65%}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file .desktop-folder{width:100%;height:auto;aspect-ratio:86 / 68;margin:0;filter:drop-shadow(0 20px 18px var(--desktop-shadow))}.desktop-folder-carousel .desktop-folder-tab{left:2%;width:43%;height:25%;border-radius:9px 12px 0 0}.desktop-folder-carousel .desktop-folder-back{inset:13% 1% 1%;border-radius:4px 12px 9px 9px}.desktop-folder-carousel .desktop-folder-paper{left:8%;right:8%;top:21%;height:60%;border-radius:4px}.desktop-folder-carousel .desktop-folder-front{inset:31% 0 0;border-radius:5px 6px 11px 11px;transform:perspective(540px) rotateX(-9deg)}.desktop-folder-carousel .desktop-folder-front svg{width:18%;height:auto;aspect-ratio:1}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="0"]:hover .desktop-folder{transform:translateY(-6px)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-app-name{font-size:16px;letter-spacing:.08em;line-height:1.5}.desktop-folder-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex:none;position:relative;z-index:4}.desktop-folder-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--color-muted);touch-action:manipulation;transition:color .12s}.desktop-folder-controls button:hover,.desktop-folder-controls button:focus-visible{color:var(--game-signal)}.desktop-folder-position{display:flex;align-items:center;gap:12px}.desktop-folder-position i{width:6px;height:6px;border:1px solid var(--color-muted);background:transparent;opacity:.5;transition:opacity .12s,background-color .12s}.desktop-folder-position i[data-selected=true]{background:var(--game-signal);border-color:var(--game-signal);opacity:1;box-shadow:0 0 8px var(--game-glow)}@media(max-width:767px){.desktop-screen-shell .siana-desktop .desktop-workspace.desktop-workspace-carousel{padding:164px 0 92px}.desktop-folder-stage{--folder-width:clamp(190px,54vw,240px);--folder-step:clamp(160px,50vw,250px);gap:12px;max-height:560px}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file{gap:24px}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="-1"]{transform:translate3d(calc(-1 * var(--folder-step)),20px,-90px) rotateY(24deg) rotate(-13deg) scale(.88);filter:brightness(.5)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file[data-slot="1"]{transform:translate3d(var(--folder-step),20px,-90px) rotateY(-24deg) rotate(13deg) scale(.88);filter:brightness(.5)}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-app-name{font-size:14px}.desktop-folder-carousel .desktop-file:not([data-slot="0"]) .desktop-app-name{opacity:0}}@media(max-height:650px){.desktop-screen-shell .siana-desktop .desktop-workspace.desktop-workspace-carousel{padding-top:var(--screen-menu-space);padding-bottom:70px}.desktop-folder-stage{--folder-width:min(25vw,30svh);gap:0}.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file{gap:16px}}@media(prefers-reduced-motion:reduce){.desktop-folder-stage{--folder-shift:0ms}.desktop-folder-position i,.desktop-folder-controls button,.desktop-screen-shell .siana-desktop .desktop-folder-carousel .desktop-file .desktop-folder{transition:none}}@media(prefers-reduced-motion:no-preference){.desktop-folder-stage[data-ready=false],.transition-content[aria-busy=true] .desktop-folder-stage{visibility:hidden}.desktop-folder-stage{--folder-arrive-duration:2.2s}.transition-content[aria-busy=false] .desktop-folder-stage[data-revealing=true] .desktop-folder-entry{animation:desktop-folder-materialize var(--folder-arrive-duration) cubic-bezier(.3,.6,.3,1) var(--folder-arrive-delay) both}.transition-content[aria-busy=false] .desktop-folder-stage[data-revealing=true] .desktop-app-name{animation:desktop-folder-name var(--folder-arrive-duration) steps(1,end) var(--folder-arrive-delay) both}.desktop-folder-stage[data-revealing=true] .desktop-file:before{content:"";position:absolute;inset:0 0 30px;pointer-events:none;background:linear-gradient(var(--game-signal-line),var(--game-signal-line)) left top/20px 1px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) left top/1px 20px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) right top/20px 1px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) right top/1px 20px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) left bottom/20px 1px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) left bottom/1px 20px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) right bottom/20px 1px no-repeat,linear-gradient(var(--game-signal-line),var(--game-signal-line)) right bottom/1px 20px no-repeat;opacity:0;animation:desktop-folder-lock var(--folder-arrive-duration) ease-out var(--folder-arrive-delay) both}.desktop-folder-stage[data-revealing=true] .desktop-file:after{content:"";position:absolute;top:12px;left:8px;right:8px;height:1px;background:var(--game-signal);box-shadow:0 0 12px var(--game-glow);pointer-events:none;opacity:0;animation:desktop-folder-scan var(--folder-arrive-duration) linear var(--folder-arrive-delay) both}.transition-content[aria-busy=false] .desktop-folder-stage[data-revealing=true] .desktop-folder-controls{animation:desktop-controls-connect .6s ease-out 1.9s both}.transition-content[aria-busy=false] .desktop-terminal{animation:desktop-background-arrive .16s ease-out both}.desktop-folder-stage[data-parallax=false] .desktop-folder-entry,.desktop-folder-stage[data-parallax=false] .desktop-app-name,.desktop-folder-stage[data-parallax=false] .desktop-file:before,.desktop-folder-stage[data-parallax=false] .desktop-file:after,.desktop-folder-stage[data-parallax=false] .desktop-folder-controls{animation-play-state:paused!important}.desktop-terminal[data-running=false]{animation-play-state:paused}}@keyframes desktop-folder-materialize{0%,10%{clip-path:inset(49.5% 0);transform:perspective(900px) translateY(44px) rotateX(14deg) scale(.84)}22%{clip-path:inset(0 0 64%);transform:perspective(900px) translateY(32px) rotateX(10deg) scale(.9)}34%{clip-path:inset(30% 0 12%);transform:perspective(900px) translateY(18px) rotateX(6deg) scale(.94)}45%{clip-path:inset(0);transform:perspective(900px) translateY(10px) rotateX(2deg) scale(.98)}54%{clip-path:polygon(0 0,100% 0,100% 64%,0 64%,0 68%,100% 68%,100% 100%,0 100%);transform:translate(-3px,6px) scale(.99)}65%{clip-path:inset(-20%);transform:none}78%{clip-path:inset(-20%);transform:translateY(-2px) scale(1.006)}to{clip-path:inset(-20%);transform:none}}@keyframes desktop-folder-lock{0%{opacity:0;transform:scale(.88)}12%,40%{opacity:1;transform:scale(1)}65%{opacity:.4;transform:scale(1.03)}82%,to{opacity:0;transform:scale(1.04)}}@keyframes desktop-folder-scan{0%,8%{opacity:0;transform:translateY(0)}14%{opacity:.75}64%{opacity:.45;transform:translateY(calc(var(--folder-width) * .72))}76%,to{opacity:0;transform:translateY(calc(var(--folder-width) * .8))}}@keyframes desktop-folder-name{0%,60%{clip-path:inset(0 100% 0 0)}68%{clip-path:inset(0 68% 0 0)}76%{clip-path:inset(0 30% 0 0)}86%,to{clip-path:inset(0)}}@keyframes desktop-controls-connect{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes desktop-background-arrive{0%{opacity:0}to{opacity:1}}@media(max-width:767px)and (min-height:501px)and (max-height:650px){.desktop-folder-stage{--folder-width:min(clamp(190px,54vw,240px),calc((var(--desktop-screen-height) - var(--screen-menu-space) - 160px) * 1.26))}}.desktop-terminal{position:absolute;z-index:0;inset:110px 5% 48px;display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:12px;overflow:hidden;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--terminal-code);font-family:var(--font-screen);font-size:10px;line-height:24px;letter-spacing:.04em;mask-image:linear-gradient(to bottom,transparent,black 12%,black 85%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,black 12%,black 85%,transparent)}.terminal-column{position:relative;overflow:visible;min-width:0;animation:matrix-fracture 17s steps(1,end) infinite}.terminal-column:nth-child(2n){animation-delay:-6s;animation-duration:19s}.terminal-column:nth-child(3n){animation-delay:-12s;animation-duration:23s}.terminal-column:nth-child(5n){animation-delay:-3s;animation-duration:13s}.terminal-column-flow{animation:terminal-flow 42s linear infinite;animation-delay:-12s}.terminal-code-copy>span{display:block;white-space:pre;height:24px}.terminal-fragment{position:relative;display:inline-block;white-space:pre;width:3ch;transform:translate(var(--matrix-dx,0px),var(--matrix-dy,0px)) rotate(var(--matrix-turn,0deg)) scale(var(--matrix-scale,1));opacity:var(--matrix-opacity,1);transition:transform .65s var(--ease-glide),opacity .65s ease-out,color .18s}.terminal-code-copy>span[data-route=true]{color:var(--terminal-signal)}.terminal-fragment[data-disrupted=true]{color:var(--terminal-disrupted);transition:transform 85ms ease-out,color 85ms}.terminal-column:nth-child(2n) .terminal-column-flow{animation-duration:51s;animation-delay:-28s}.terminal-column:nth-child(3n) .terminal-column-flow{animation-duration:62s;animation-delay:-37s}.terminal-column:nth-child(4n) .terminal-column-flow{animation-direction:reverse;animation-delay:-4s}.desktop-terminal[data-running=false] .terminal-column-flow,.desktop-terminal[data-running=false] .terminal-column{animation-play-state:paused}@keyframes terminal-flow{to{transform:translateY(-50%)}}@keyframes matrix-fracture{0%,86%,92%,to{transform:none;opacity:1;clip-path:inset(0)}87%{transform:translate(6px);opacity:.65;clip-path:inset(12% 0 32%)}88%{transform:translate(-4px);opacity:1;clip-path:inset(0)}89%{transform:translateY(14px);opacity:.2;clip-path:inset(38% 0 10%)}90%{transform:translate(3px);opacity:.7;clip-path:inset(0)}91%{transform:none;opacity:.3;clip-path:inset(0)}}@media(min-width:768px)and (max-width:1000px){.desktop-terminal{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px}.terminal-column:nth-child(n+13){display:none}}@media(max-width:767px){.desktop-terminal{inset:164px 6% 54px;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;font-size:8px;line-height:22px}.terminal-column:nth-child(n+7){display:none}.terminal-code-copy>span{height:22px}}@media(prefers-reduced-motion:reduce){.terminal-column,.terminal-column-flow{animation:none;transform:none;opacity:1;clip-path:none}.terminal-code-copy:nth-child(2){display:none}.terminal-fragment{transition:none}}.terminal-fragment[data-burst=true]{transition:transform .3s cubic-bezier(.1,.7,.15,1),opacity .4s,color 90ms;transition-delay:var(--matrix-flight-delay,0ms)}.terminal-fragment[data-burst=true]:after{content:attr(data-splinter);position:absolute;left:0;top:0;font-size:.7em;opacity:.6;animation:matrix-splinter .48s ease-out var(--matrix-flight-delay,0ms) both}@keyframes matrix-splinter{0%{transform:none;opacity:.6}to{transform:translate(calc(var(--matrix-dx) * -.45),calc(var(--matrix-dy) * .5 - 14px)) rotate(45deg);opacity:0}}@media(prefers-reduced-motion:no-preference){.transition-content[aria-busy=true] .desktop-terminal,.transition-content[aria-busy=true] .terminal-code-copy{opacity:0}.transition-content[aria-busy=false] .terminal-code-copy{animation:matrix-characters-load .42s steps(1,end) calc(90ms + var(--matrix-arrive-delay)) backwards}.terminal-column:before{content:"";position:absolute;top:0;left:35%;width:1px;height:80%;background:linear-gradient(transparent,var(--terminal-disrupted),transparent);opacity:0}.transition-content[aria-busy=false] .terminal-column:before{animation:matrix-carrier-load .28s ease-out var(--matrix-arrive-delay) backwards}.desktop-terminal[data-running=false] .terminal-code-copy,.desktop-terminal[data-running=false] .terminal-column:before{animation-play-state:paused}}@keyframes matrix-characters-load{0%,16%{opacity:0}24%{opacity:.25}37%{opacity:1}47%{opacity:.15}64%{opacity:.8}78%{opacity:.4}to{opacity:1}}@keyframes matrix-carrier-load{0%{opacity:0;transform:scaleY(.1)}25%{opacity:.6;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.experience-cover{position:absolute;inset:0;display:block;width:100%;height:100%}.experience-placeholder{position:absolute;left:12px;top:12px;padding:4px 6px;background:color-mix(in srgb,var(--color-charcoal) 66%,transparent);color:var(--color-paper);font-size:10px;line-height:1.3;font-weight:500}.project-cover{--cover-fade:.2s;--cover-rise:.85s;--cover-ease:cubic-bezier(.2,1,.36,1);position:absolute;inset:0;overflow:hidden;perspective:900px}.project-cover-frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--cover-fade) ease-out;pointer-events:none}.project-cover-frame[data-current=true]{opacity:1;z-index:1}.project-cover-backdrop{position:absolute;inset:-48px;width:calc(100% + 96px);max-width:none;height:calc(100% + 96px);filter:blur(22px);pointer-events:none}.project-cover .experience-cover{-o-object-fit:contain;object-fit:contain}.project-cover-static{opacity:1;transition:opacity var(--cover-fade) ease-out;pointer-events:none}.project-cover-shade{position:absolute;inset:0;background:var(--color-ink);opacity:0;transition:opacity var(--cover-fade) ease-out;pointer-events:none}.project-cover-preview{position:absolute;inset:6%;opacity:0;transform:translateY(85%) rotateX(18deg) scale(.95);transform-origin:center bottom;transition:transform var(--cover-rise) var(--cover-ease),opacity .15s ease-out;pointer-events:none}.project-cover-preview-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:6px;-o-object-fit:contain;object-fit:contain}.project-cover[data-active=true] .project-cover-static{opacity:0}.project-cover[data-shaded=true] .project-cover-shade{opacity:.6}.project-cover[data-active=true] .project-cover-preview{opacity:1;transform:translateY(0) rotateX(0) scale(1)}.project-cover .experience-placeholder{z-index:2}.project-cover[data-treatment=black],.project-cover[data-treatment=black] .project-cover-shade{background:var(--color-media-black)}@media(prefers-reduced-motion:reduce){.project-cover-frame,.project-cover-static,.project-cover-shade,.project-cover-preview{transition:none}.project-cover-preview{transform:none}}.project-cover.is-program-preview{--cover-fade:1s}.is-program-preview .project-cover-preview{inset:0;transform:none;transition:opacity 1s ease}.is-program-preview .project-cover-preview-image{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;border-radius:0}.is-program-preview[data-active=true] .project-cover-preview{transform:none}@media(max-width:767px){.project-cover{isolation:isolate;clip-path:inset(0);perspective:none}}.desktop-folder-page .program-project{min-width:0;padding:0}.desktop-folder-page .project-file .program-project-link{padding:0;min-height:0;align-items:stretch;border-radius:0;text-align:left;background:none}.desktop-folder-page .program-project .project-file-link.program-project-link:hover,.desktop-folder-page .program-project .project-file-link.program-project-link:focus-visible{background:none}.program-preview-window{display:block;border:1px solid var(--project-window-edge);background:var(--project-window-surface);box-shadow:0 8px 20px var(--desktop-shadow);transition:transform .42s var(--ease-glide),box-shadow .42s ease,border-color .2s ease}.program-window-chrome{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;color:var(--color-muted);border-bottom:1px solid var(--desktop-menu-rule)}.program-window-date{display:flex;align-items:center;gap:7px}.program-window-chrome .project-file-date,.program-window-chrome .project-file-meta{margin:0;font-size:10px;white-space:nowrap}.program-preview-media{display:block;position:relative;aspect-ratio:16 / 10;overflow:hidden}.program-window-footer{display:flex;align-items:flex-start;gap:12px;min-height:0;padding:10px 14px;border-top:1px solid var(--desktop-menu-rule)}.program-window-caption{flex:1;min-width:0}.program-window-footer .arrow-icon{flex:none;width:13px;height:13px;margin-top:4px;color:var(--color-muted)}.program-project-link .program-window-footer .project-file-name{display:block;width:100%;max-width:none;margin:0;font-size:14px;font-weight:500;line-height:1.55;text-align:left;text-wrap:pretty;overflow-wrap:anywhere}.program-window-footer .project-file-status{display:block;margin-top:6px;font-size:10px;line-height:1.4}.program-project-link[data-interacting=true] .program-preview-window{transform:translateY(-6px);border-color:var(--desktop-dock-line);box-shadow:0 20px 36px var(--desktop-window-shadow)}.program-project-link:active .program-preview-window{transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.program-preview-window{transition:none}.program-project-link[data-interacting=true] .program-preview-window,.program-project-link:active .program-preview-window{transform:none}}.project-page-ruler{position:absolute;z-index:4;top:50%;right:0;width:44px;height:min(calc(100% - 24px),max(44px,calc(var(--ruler-pages) * 8px)));transform:translateY(-50%);mix-blend-mode:difference;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:ns-resize;outline:none}.project-page-ruler[data-visible=false]{visibility:hidden;pointer-events:none}.project-page-lines{position:absolute;inset:0;display:flex;flex-direction:column;pointer-events:none}.project-page-tick{display:flex;flex:1;min-height:0;align-items:center;justify-content:flex-end}.project-page-tick>span{display:block;flex:none;width:34px;height:min(4px,calc(100% - 2px));color:var(--color-paper);background:repeating-linear-gradient(to left,currentColor 0 4px,transparent 4px 6px);clip-path:inset(0 0 0 30px)}:root[data-keyboard-navigation=true] .project-page-ruler:focus-visible .project-page-lines{outline:1px solid var(--color-paper);outline-offset:2px}.project-page-preview{position:absolute;right:44px;top:0;z-index:5;margin:0;padding:3px;border:1px solid color-mix(in srgb,var(--color-paper) 36%,transparent);background:var(--project-window-surface);box-shadow:inset 0 0 0 1px var(--desktop-line),2px 2px 0 var(--color-media-black);color:var(--color-paper);pointer-events:none}.project-page-preview[data-animated=true]{animation:project-preview-enter .12s steps(3,end)}.project-page-preview:after{content:"";position:absolute;right:-10px;top:calc(var(--preview-anchor,50%) - 1px);width:10px;height:2px;background:var(--color-paper);mix-blend-mode:difference}.project-page-preview-image{position:relative;display:grid;place-items:center;overflow:hidden;background:var(--color-media-black)}.project-page-preview-image img{display:block;width:100%;height:100%;min-height:0;-o-object-fit:contain;object-fit:contain;opacity:0}.project-page-preview-image[data-state=ready] img{opacity:1}.project-page-preview-image>span{position:absolute;font:10px/1.4 var(--font-screen);color:var(--color-muted)}@keyframes project-preview-enter{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:translate(0)}}.project-scroll-area{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.project-window .project-scroll-area .desktop-window-body{position:relative;flex:1;min-width:0;min-height:0;overflow:auto;scrollbar-width:none}.project-window .project-scroll-area .desktop-window-body::-webkit-scrollbar{display:none}@media(max-width:767px){.project-scroll-area{isolation:isolate;clip-path:inset(0)}.project-window .project-scroll-area .desktop-window-body{overflow-x:hidden;overflow-y:auto}}.hint-badge{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:6px;background:var(--color-inverse-bg);color:var(--color-inverse-text);font-family:var(--font-body);font-size:clamp(14px,1.171875vw,20px);font-weight:600;line-height:1.25;letter-spacing:-.025em;white-space:nowrap;pointer-events:none}.hint-badge .arrow-icon{width:14px;height:14px}.cursor-hint-anchor{position:fixed;left:0;top:0;z-index:60;display:block;width:-moz-max-content;width:max-content;max-width:calc(100vw - 16px);pointer-events:none;transform:translate3d(var(--hint-x,8px),var(--hint-y,8px),0)}.cursor-hint{opacity:0;visibility:hidden;clip-path:inset(0 100% 0 0 round 6px);transform:scale(.92);transform-origin:left center;transition:clip-path .45s cubic-bezier(.16,1,.3,1),opacity .2s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1),visibility 0s .45s}.cursor-hint-anchor[data-edge=left] .cursor-hint{clip-path:inset(0 0 0 100% round 6px);transform-origin:right center}.cursor-hint-label{display:inline-flex;align-items:center;gap:6px;opacity:0;transform:translateY(4px);transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.cursor-hint-anchor[data-visible=true] .cursor-hint{clip-path:inset(0 0 0 0 round 6px);transform:scale(1);opacity:1;visibility:visible;transition-delay:0s}.cursor-hint-anchor[data-visible=true] .cursor-hint-label{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.cursor-hint,.cursor-hint-label{transition:none;transform:none}}.cursor-hint-anchor[data-appearance=focus]{mix-blend-mode:difference}.cursor-hint-anchor[data-appearance=focus] .hint-badge.cursor-hint{max-width:100%;padding:6px 0;border-radius:0;background:transparent;color:var(--color-paper);font-family:var(--font-screen);font-size:clamp(14px,1.1vw,18px);font-weight:400;letter-spacing:.025em;text-shadow:none;white-space:normal}.cursor-hint-anchor[data-appearance=focus] .cursor-hint-label{display:block;overflow-wrap:anywhere}.project-next{width:100%;padding:clamp(24px,5vw,64px);color:var(--color-paper);background:var(--project-window-surface)}.project-next-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:clamp(24px,5vw,64px);min-height:280px;touch-action:manipulation}.project-next-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px;min-width:0}.project-next-eyebrow{display:flex;flex-wrap:wrap;gap:4px 8px;color:var(--color-muted-dark);font-size:11px;letter-spacing:.06em}.project-next-title{display:flex;align-items:center;gap:16px;font-size:clamp(24px,3.2vw,46px);line-height:1.4}.project-next-title svg{width:24px;height:24px;flex-shrink:0;transition:transform .18s var(--ease-glide)}.project-next-program{position:relative;overflow:clip;display:flex;min-width:0;flex-direction:column;border:1px solid var(--project-window-edge);border-radius:5px;background:var(--desktop-bar);box-shadow:0 12px 28px var(--desktop-shadow);transform:perspective(900px) rotateY(-7deg) rotate(2deg);transition:transform .24s var(--ease-glide),border-color .18s}.project-next-chrome,.project-next-status{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:10px;line-height:1.4;color:var(--color-muted-dark)}.project-next-chrome>span{min-width:0;overflow-wrap:anywhere;text-wrap:pretty}.project-next-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;isolation:isolate}.project-next-focus{position:absolute;inset:12px;z-index:3;pointer-events:none;color:var(--game-signal);opacity:0;background:linear-gradient(currentColor,currentColor) top left/18px 1px no-repeat,linear-gradient(currentColor,currentColor) top left/1px 18px no-repeat,linear-gradient(currentColor,currentColor) top right/18px 1px no-repeat,linear-gradient(currentColor,currentColor) top right/1px 18px no-repeat,linear-gradient(currentColor,currentColor) bottom left/18px 1px no-repeat,linear-gradient(currentColor,currentColor) bottom left/1px 18px no-repeat,linear-gradient(currentColor,currentColor) bottom right/18px 1px no-repeat,linear-gradient(currentColor,currentColor) bottom right/1px 18px no-repeat;transition:opacity .16s}.project-next-link[data-interacting=true] .project-next-program{transform:perspective(900px) rotateY(0) rotate(0) translateY(-4px);border-color:var(--game-signal-line)}.project-next-link[data-interacting=true] .project-next-focus{opacity:1}.project-next-link[data-interacting=true] .project-next-title{color:var(--game-signal)}.project-next-link[data-interacting=true] .project-next-title svg{transform:translate(5px)}.project-next-link:active .project-next-program{transform:scale(.985)}.project-outro.is-embedded{container-type:inline-size;min-height:0;padding:0;background:var(--project-window-surface)}.project-outro.is-embedded .project-next{padding:clamp(24px,5vw,48px)}@media(max-width:767px){.project-next-link{grid-template-columns:minmax(0,1fr);gap:28px;min-height:0}.project-next-copy{gap:12px}.project-next-title{font-size:24px}.project-next-program{width:100%;max-width:400px;justify-self:center;transform:rotate(-2deg)}}@media(prefers-reduced-motion:reduce){.project-next-program,.project-next-focus,.project-next-title svg{transition:none;transform:none!important}}@media(max-height:500px){.project-outro.is-embedded .project-next{padding:12px}.project-outro.is-embedded .project-next-link{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);min-height:0;gap:24px}.project-outro.is-embedded .project-next-program{width:min(100%,40svh);justify-self:end}}@container (max-width:600px){.project-outro.is-embedded .project-next{padding:10px}.project-outro.is-embedded .project-next-link{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:12px;min-height:0}.project-outro.is-embedded .project-next-copy{gap:8px}.project-outro.is-embedded .project-next-title{font-size:16px;gap:6px;line-height:1.4}.project-outro.is-embedded .project-next-title svg{width:12px;height:12px;flex-shrink:0}.project-outro.is-embedded .project-next-eyebrow{font-size:8px;letter-spacing:0}.project-outro.is-embedded .project-next-chrome,.project-outro.is-embedded .project-next-status{font-size:8px;line-height:1.2;padding:5px 6px;gap:6px}.project-outro.is-embedded .project-next-media{aspect-ratio:3/2}.project-outro.is-embedded .project-next-focus{inset:6px}}.project-next-status>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-next-title>span{min-width:0;overflow-wrap:anywhere;text-wrap:pretty}.project-next-hint{position:absolute;inset:0;z-index:202;pointer-events:none;mix-blend-mode:difference;color:var(--color-paper)}@media(prefers-reduced-motion:no-preference){.project-next[data-revealed=false] :is(.project-next-copy,.project-next-program){opacity:0}.project-next[data-revealed=true] .project-next-copy{animation:project-next-decode .32s steps(1,end) both}.project-next[data-revealed=true] .project-next-program{animation:project-next-acquire .85s cubic-bezier(.2,.7,.2,1) .16s both}.project-next[data-revealed=true] .project-next-program:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 48%,var(--game-signal-line) 50%,transparent 52%);animation:project-next-scan .85s ease-out .16s both}.project-next[data-running=false] :is(.project-next-copy,.project-next-program),.project-next[data-running=false] .project-next-program:after{animation-play-state:paused}}@keyframes project-next-decode{0%,15%{opacity:.15}30%{opacity:.8}45%{opacity:.3}65%,to{opacity:1}}@keyframes project-next-acquire{0%{opacity:0;clip-path:inset(49.8% 0)}16%{opacity:1;clip-path:inset(47% 0)}40%{clip-path:inset(28% 0)}70%,to{opacity:1;clip-path:inset(0)}}@keyframes project-next-scan{0%{opacity:0;transform:translateY(-50%)}20%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(50%)}}.project-outro{--project-end-progress:0;--project-outro-edge-space:24px;position:relative;z-index:1;min-height:clamp(280px,34svh,380px);display:flex;flex-direction:column;padding:var(--project-outro-edge-space) 0 0;background:var(--color-bg);color:var(--color-text)}.project-outro .project-outro-meta{align-items:start;margin-bottom:48px}.project-outro-surface{width:100%}.project-gate-hint{position:absolute;z-index:6;left:50%;bottom:24px;translate:-50% 0;white-space:nowrap;pointer-events:none;color:var(--color-paper);mix-blend-mode:difference;font:14px/1.5 var(--font-screen);letter-spacing:.04em}.project-gate-hint.is-interactive{bottom:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:8px 12px;border:0;background:transparent;touch-action:manipulation}.project-gate-hint.is-interactive[data-active=true]{pointer-events:auto}.project-outro-meta>.action-row{grid-column:1/7;width:-moz-max-content;width:max-content;max-width:100%;justify-self:start}.project-outro-tag{grid-column:8/13;justify-self:end;margin-top:calc(max(6px,calc(20px - clamp(13.8px,1.15vw,20.7px))) + clamp(4.8px,.4vw,7.2px) - 2.8px);font-size:14px;font-weight:500;line-height:1.15;opacity:0;transform:translateY(6px);transition:opacity .24s ease-out,transform .32s var(--ease-glide);transition-delay:.18s}.project-outro[data-visible=true] .project-outro-tag{opacity:1;transform:translateY(0)}.project-outro-progress{display:block;flex-shrink:0;height:4px;background:var(--color-rule);overflow:hidden;pointer-events:none}.project-outro-progress-fill{display:block;height:100%;background:currentColor;transform:scaleX(var(--project-end-progress));transform-origin:left center}@media(prefers-reduced-motion:reduce){.project-outro-tag{opacity:1;transform:none;transition:none}}@media(max-width:767px){.project-outro{min-height:260px;--project-outro-edge-space:24px;padding-bottom:env(safe-area-inset-bottom)}.project-outro .project-outro-meta{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:32px;align-items:center}.project-outro-meta>.action-row{grid-column:1}.project-outro-tag{grid-column:2;margin-top:0;font-size:12px}}.project-demo{position:relative;display:flex;flex:1;min-height:0;overflow:hidden;background:var(--project-window-surface)}.project-demo iframe{display:block;width:100%;height:100%;flex:1;min-height:0;border:0;opacity:0}.project-demo[data-ready=true] iframe{opacity:1}.project-demo-entry{display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;padding:0;color:var(--color-paper);font-family:var(--font-screen)}.demo-notice{box-sizing:content-box;width:-moz-fit-content;width:fit-content;max-width:min(calc(100% - (2*clamp(24px,6vw,72px))),540px);margin:auto;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(24px,6vw,72px)}.demo-notice-mark{font-size:44px;line-height:1;color:var(--game-signal)}.demo-notice-copy{display:flex;flex-direction:column;gap:12px}.demo-notice-description{display:grid;gap:8px;list-style:disc;padding-left:1.25em;font-family:var(--font-screen);font-weight:400;font-size:16px;line-height:1.8;text-wrap:pretty}.demo-notice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;width:100%;margin-top:28px}.demo-notice-actions .action-row{--action-icon-size:18px;--action-shift:4px;--action-press-shift:6px;min-height:48px;padding:12px 20px;font-size:14px}.demo-notice-enter.action-row{background:var(--game-signal);color:var(--color-charcoal)}.demo-notice-actions .action-row-content{gap:8px}.demo-notice-enter.action-row:is(:hover,:focus-visible){background:var(--color-paper);color:var(--color-charcoal)}.demo-notice-source.action-row{color:var(--color-charcoal);background:var(--color-paper)}.demo-notice-source .action-row-arrow{rotate:-45deg}.demo-notice-source.action-row:is(:hover,:focus-visible){background:var(--game-signal);color:var(--color-charcoal)}@media(max-width:767px){.demo-notice-description{font-size:14px}.demo-notice-actions{gap:12px;margin-top:24px}.demo-notice-actions .action-row{padding-inline:16px}}.project-demo-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:14px;color:var(--color-paper);font-family:var(--font-screen);text-align:center;background:radial-gradient(ellipse at center,var(--game-signal-soft),transparent 56%),var(--project-window-surface)}.demo-boot-mark{font-size:58px;line-height:1;color:var(--game-signal);text-shadow:0 0 18px var(--game-glow);margin-bottom:10px}.demo-boot-mark>span{animation:demo-boot-blink .8s steps(2,end) infinite}.demo-boot-name{font-size:20px;letter-spacing:.16em}.demo-boot-status{font-size:12px;color:var(--color-muted);margin-top:2px}.demo-boot-progress{display:flex;gap:5px;margin-top:14px;padding:6px;border:1px solid var(--game-signal-line)}.demo-boot-progress>i{width:10px;height:13px;background:var(--game-signal);opacity:.12}.demo-boot-progress>i[data-filled=true]{opacity:1}.demo-boot-caption{font-size:16px;line-height:1.5;letter-spacing:.1em;min-height:24px;color:var(--color-paper)}.demo-boot-caption button{font:inherit;color:var(--game-signal);background:none;border:0;padding:6px 12px}.project-demo[data-running=false] .project-demo-loading *{animation-play-state:paused}@keyframes demo-boot-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.project-demo-loading *{animation:none!important}}.project-demo-entry{container-type:size;scrollbar-width:none}.project-demo-entry::-webkit-scrollbar{display:none}.demo-entry-panel{position:relative;min-height:100cqh;flex-shrink:0;overflow:clip}.demo-entry-panel-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:100cqh;padding-bottom:56px}.demo-entry-next{flex-shrink:0}.demo-entry-next .project-outro{width:100%;flex-shrink:0}.desktop-folder-page{min-height:100svh;padding:110px var(--page-pad) 64px;background:transparent;color:var(--color-text);outline:none}.folder-page-heading{padding-bottom:35px;border-bottom:1px solid var(--color-rule)}.folder-page-heading h1{display:flex;align-items:baseline;justify-content:space-between;gap:24px;font-size:clamp(38px,5vw,65px);font-weight:600;letter-spacing:-.065em;line-height:1.15;text-wrap:balance}.folder-page-heading h1>.folder-page-count{flex:none;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0}@media(max-width:767px){.desktop-folder-page{padding:88px 24px 40px}.folder-page-heading{padding-bottom:25px}.folder-page-heading h1{font-size:40px}}.desktop-folder-page{padding:124px clamp(48px,4vw,70px) 80px}.desktop-folder-page .project-file-link:not(.is-placeholder):hover,.desktop-folder-page .project-file-link:focus-visible{background:var(--desktop-selection)}@media(max-width:767px){.desktop-folder-page{padding:98px 30px 64px}}.siana-desktop{position:relative;isolation:isolate;min-height:660px;height:100svh;overflow:clip;background:var(--desktop-bg);color:var(--color-paper);font-weight:400}.desktop-workspace{position:relative;height:calc(100% - 46px);padding:58px 46px 130px}.desktop-files{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,124px);gap:28px 23px;width:-moz-max-content;width:max-content}.desktop-file{display:flex;align-items:center;flex-direction:column;padding:12px 7px 14px;border:1px solid transparent;border-radius:8px;background:none;color:inherit;text-align:center;min-height:138px;transition:background-color .16s,border-color .16s;touch-action:manipulation}.desktop-file:hover,.desktop-file:focus-visible{background:var(--desktop-selection);border-color:var(--desktop-line)}.desktop-file:hover .desktop-folder,.desktop-file:focus-visible .desktop-folder{transform:translateY(-4px) rotate(-3deg)}.desktop-file:active .desktop-folder{transform:translateY(-1px) scale(.97)}.desktop-folder{position:relative;display:block;width:86px;height:68px;flex:none;margin-bottom:17px;filter:drop-shadow(0 9px 8px var(--desktop-shadow));transition:transform .22s var(--ease-glide)}.desktop-folder-tab{position:absolute;left:2px;top:0;width:37px;height:17px;border-radius:6px 7px 0 0;background:var(--desktop-folder-back);transform:skew(5deg)}.desktop-folder-back{position:absolute;inset:9px 1px 1px;border-radius:3px 7px 6px 6px;background:var(--desktop-folder-back);border-top:1px solid var(--desktop-folder-edge)}.desktop-folder-paper{position:absolute;left:7px;right:7px;top:14px;height:41px;border-radius:3px;background:var(--color-paper);transform:rotate(-5deg);box-shadow:0 0 1px var(--desktop-shadow)}.desktop-folder-front{position:absolute;inset:21px 0 0;display:flex;align-items:center;justify-content:center;border:1px solid var(--desktop-folder-edge);border-radius:3px 4px 7px 7px;background:linear-gradient(165deg,var(--color-paper),var(--desktop-folder-face));color:var(--color-charcoal);transform:perspective(160px) rotateX(-9deg);transform-origin:bottom;box-shadow:inset 0 1px var(--color-paper)}.desktop-folder-front svg{opacity:.65}.desktop-bottom{position:absolute;left:27px;right:27px;bottom:22px;display:flex;align-items:end;justify-content:space-between;gap:20px;min-height:78px}.desktop-copyright{margin-left:auto;font-size:10px;color:var(--color-muted-dark);padding-bottom:6px;white-space:nowrap}.desktop-projects,.desktop-contact{padding:38px 44px 24px}.project-files{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:44px 0 37px}.project-file{position:relative;padding:0 6px}.project-file-link{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 8px 20px;border-radius:8px;min-height:220px;transition:background-color .15s}.project-file-link:not(.is-placeholder):hover,.project-file-link:focus-visible{background:var(--color-rule)}.project-file-link:hover .desktop-folder{transform:translateY(-5px) rotate(-4deg)}.project-file-name{font-size:14px;font-weight:500;line-height:1.6;text-wrap:balance;max-width:210px}.project-file-meta{font-size:10px;margin-top:7px;color:var(--color-muted)}.project-file-date{font-size:10px;margin-top:5px;color:var(--color-muted)}.is-placeholder{opacity:.6}.desktop-contact{padding-bottom:35px}.desktop-contact :is(h1,h2){display:flex;align-items:center;gap:20px}.desktop-contact :is(h1,h2)>svg{width:45px;height:45px}@media(min-width:1700px){.desktop-workspace{padding:80px 70px}.desktop-files{gap:40px}.desktop-file{min-height:155px}}@media(max-width:1000px){.desktop-workspace{padding:43px 28px 130px}.desktop-files{grid-template-columns:repeat(2,110px);gap:24px 15px}.desktop-projects,.desktop-contact{padding:30px}}@media(max-width:767px){.siana-desktop{min-height:620px}.desktop-workspace{height:calc(100% - 48px);padding:32px 24px 130px}.desktop-files{grid-template-columns:repeat(2,116px);gap:15px 30px;margin:0 auto}.desktop-file{min-height:137px}.desktop-folder{width:80px;height:64px}.desktop-bottom{left:16px;right:16px;bottom:18px;min-height:82px}.desktop-copyright{position:absolute;bottom:0;left:50%;transform:translate(-50%);font-size:9px;padding:0}.desktop-projects,.desktop-contact{padding:27px 23px 22px}.project-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 10px;padding:27px 0}.project-file{padding:0}.project-file-link{padding:12px 0;min-height:210px}.project-file-name{font-size:12px;max-width:130px}.project-file-meta,.project-file-date{font-size:9px}.desktop-contact :is(h1,h2){font-size:36px;gap:12px}.desktop-contact :is(h1,h2)>svg{width:30px;height:30px}}@media(max-width:374px){.desktop-files{gap:12px 15px;grid-template-columns:repeat(2,110px)}.desktop-file{min-height:127px}.desktop-workspace{padding-top:24px}.project-files{grid-template-columns:1fr}.project-file-link{min-height:205px}.project-file-name{max-width:220px}}@media(max-height:650px)and (min-width:768px){.siana-desktop{min-height:520px}.desktop-workspace{padding-top:24px}.desktop-files{gap:6px 15px}.desktop-file{min-height:120px}}@media(max-width:767px){.project-file-name{max-width:100%}}.siana-desktop .desktop-files{grid-template-columns:104px;gap:10px;margin:0}.siana-desktop .desktop-file{min-height:100px;padding:14px 7px}.desktop-file .desktop-folder{margin-bottom:0}@media(min-width:1700px){.siana-desktop .desktop-files{gap:17px}.siana-desktop .desktop-file{min-height:110px}}@media(max-width:767px){.siana-desktop .desktop-files{grid-template-columns:92px;gap:9px}.siana-desktop .desktop-file{min-height:91px;padding:12px 5px}}@media(max-height:650px)and (min-width:768px){.siana-desktop .desktop-files{gap:4px}.siana-desktop .desktop-file{min-height:82px;padding:7px}.desktop-file .desktop-folder{width:72px;height:58px}}.desktop-monitor{padding:12px;background:var(--desktop-bezel);min-height:100svh}.desktop-monitor .siana-desktop{height:calc(100svh - 24px);min-height:620px;clip-path:url(#desktop-crt-curve);border-radius:40px;box-shadow:inset 0 0 80px var(--desktop-crt-shade)}.desktop-monitor .desktop-workspace{height:calc(100% - 60px)}.desktop-monitor .desktop-bottom{left:40px;right:40px;bottom:28px}.desktop-monitor .desktop-copyright{padding-right:12px;font-size:var(--screen-footer-font-size);line-height:1.2}@media(max-width:767px){.desktop-monitor{padding:6px}.desktop-monitor .siana-desktop{height:calc(100svh - 12px);min-height:620px}.desktop-monitor .desktop-workspace{height:calc(100% - 56px)}.desktop-monitor .desktop-bottom{left:16px;right:16px;bottom:22px}.desktop-monitor .desktop-copyright{padding-right:0}}@media(max-height:650px)and (min-width:768px){.desktop-monitor .siana-desktop{min-height:520px}}.desktop-monitor .desktop-workspace{height:calc(100% - 82px)}.desktop-monitor .desktop-bottom{bottom:44px;right:52px}@media(max-width:767px){.desktop-monitor .desktop-workspace{height:calc(100% - 64px)}.desktop-monitor .desktop-bottom{bottom:22px;right:16px}}.desktop-folder-page>.desktop-projects,.desktop-folder-page>.desktop-contact{max-width:1440px;margin:0 auto;padding:0}.desktop-folder-page .project-files{gap:40px;padding:64px 0}.desktop-folder-page .project-file-link{min-height:0;padding:16px;align-items:center}.desktop-folder-page .project-file-name{width:100%;max-width:none;text-align:left;text-wrap:pretty;overflow-wrap:anywhere}.project-file-status{align-self:flex-start;margin-top:8px;font-size:10px;color:var(--color-muted)}@media(max-width:767px){.desktop-folder-page .project-files{padding:35px 0;gap:24px 12px}.desktop-folder-page .project-file-link{min-height:0;padding:12px 8px}}.desktop-folder-page .program-project-files{gap:40px 28px}@media(max-width:767px){.desktop-folder-page .program-project-files{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:36px}}.section-title{display:flex;align-items:baseline;gap:12px;font-size:20px;font-weight:600;line-height:24px}.section-title>.section-title-dot{flex:none;width:13px;height:13px;border-radius:50%;background:var(--section-title-dot)}.about-page{overflow-anchor:none;--about-section-space:var(--space-5);--about-body-size:clamp(18px,1.55vw,24px);--about-detail-size:clamp(14px,1.2vw,20px);--about-columns:minmax(0,.382fr) minmax(0,.618fr);font-family:var(--font-body)}.about-content{position:relative;isolation:isolate;background:transparent;color:var(--color-text);font-family:var(--font-body)}.about-intro,.about-section{position:relative;z-index:1}.about-intro{padding-top:clamp(144px,13vw,208px);padding-bottom:var(--about-section-space);align-items:baseline;isolation:isolate;background:transparent;color:var(--color-text)}.about-intro.site-grid,.about-section.site-grid{grid-template-columns:var(--about-columns)}.about-intro.site-grid{row-gap:var(--closing-content-gap)}.about-intro>.section-title,.about-intro-body{position:relative;z-index:1}.about-page :is(.about-intro,.about-section)>.section-title{font-size:clamp(18px,1.1vw,22px)}.about-intro>.section-title{grid-column:1;grid-row:1}.about-intro-body{grid-column:2;grid-row:1;min-width:0}.about-prose{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--about-body-size);font-weight:600;line-height:1.65;text-wrap:pretty}.about-section.site-grid{padding-block:var(--space-4);align-items:baseline}.about-section:before{content:"";position:absolute;top:0;left:var(--page-pad);right:var(--page-pad);border-top:1px solid var(--color-rule)}.about-section>.section-title{grid-column:1;grid-row:1}.about-section-body{grid-column:2;grid-row:1;min-width:0}.about-fact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.65fr) max-content;gap:var(--space-2);align-items:baseline;font-size:var(--about-body-size);line-height:1.5}.about-fact-row>*{min-width:0;font:inherit;overflow-wrap:anywhere}.about-experience+.about-experience{padding-top:var(--space-3);margin-top:var(--space-3);border-top:1px solid var(--color-rule)}.about-fact-row>.about-date{font-size:var(--about-detail-size);color:var(--color-muted);white-space:nowrap;text-align:right}.about-secondary{font-size:var(--about-detail-size);font-weight:600;line-height:1.6;color:var(--color-muted)}.about-awards{margin:0}.about-award{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-block:var(--space-2);border-bottom:1px solid var(--color-rule);font-size:var(--about-body-size);line-height:1.35}.about-award:first-child{padding-top:0}.about-award:last-child{padding-bottom:0;border-bottom:0}.about-award dd{margin:0;text-align:right}.about-section.about-skills{align-items:center}.about-skill-tools{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);list-style:none;margin:0;padding:0}.about-skill-tools li{display:flex;flex:none}.about-tool-icon{display:block;width:40px;height:40px;background:var(--color-text);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.about-skill-tools [data-tool=figma] .about-tool-icon{width:26.75px}@media(min-width:768px)and (max-width:1100px){.about-skill-tools{gap:clamp(4px,1vw,12px)}}@media(max-width:767px){.about-page{--about-columns:minmax(0,1fr);--about-section-space:64px;--about-body-size:17px;--about-detail-size:13px}.about-intro{padding-top:112px}.about-intro.site-grid,.about-section.site-grid{row-gap:24px}.about-intro>.section-title,.about-section>.section-title{grid-column:1;grid-row:auto}.about-page :is(.about-intro,.about-section)>.section-title{font-size:16px}.about-intro-body,.about-section-body{grid-column:1;grid-row:auto}.about-prose{line-height:1.7}.about-section.site-grid{padding-block:32px}.about-fact-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.about-fact-row>:first-child{grid-column:1/-1}.about-fact-row>.about-date{grid-column:2;grid-row:2}.about-award{display:block;padding-block:16px}.about-award dd{text-align:left;margin-top:8px}.about-skill-tools{display:grid;grid-template-columns:repeat(4,40px);justify-content:space-between;gap:24px 16px}.about-skill-tools li{justify-content:center}}.about-folder-content{max-width:1440px;margin:0 auto}.about-page .about-intro.site-grid{padding:48px 0 var(--about-section-space)}.about-page .about-section.site-grid{padding-inline:0}.about-page .about-section:before{left:0;right:0}@media(max-width:767px){.about-page .about-intro.site-grid{padding-top:32px}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}:root{--route-glitch-duration:.46s}.transition-content main:focus{outline:none}.page-transition{position:fixed;inset:var(--desktop-screen-inset);z-index:200;border-radius:40px;overflow:hidden;clip-path:url(#desktop-crt-curve);opacity:0;visibility:hidden;pointer-events:none;background:linear-gradient(0deg,transparent 0 23%,var(--screen-glitch-cool) 23% 23.6%,transparent 23.6% 64%,var(--screen-glitch-warm) 64% 65.2%,transparent 65.2%),repeating-linear-gradient(90deg,transparent 0 13px,var(--color-paper) 13px 15px,transparent 15px 29px,var(--screen-glitch-cool) 29px 32px,transparent 32px 47px),repeating-linear-gradient(0deg,var(--color-media-black) 0 2px,transparent 2px 4px);background-blend-mode:screen,overlay,normal}.page-transition.is-active{visibility:visible;pointer-events:auto}html[data-page-transition=glitch] .desktop-screen-viewport{view-transition-name:screen-signal}html[data-page-transition=glitch] .page-transition{view-transition-name:screen-interference;opacity:1}html[data-page-transition=glitch] .desktop-screen-effects.is-framed{view-transition-name:screen-glass}html[data-page-transition=glitch] .desktop-crt-edge-softness{view-transition-name:screen-edge}html[data-page-transition=glitch] .global-grain{opacity:.12}html[data-page-transition=glitch]::view-transition-group(root){animation:none}html[data-page-transition=glitch]::view-transition-old(root){animation:none;opacity:0}html[data-page-transition=glitch]::view-transition-new(root){animation:none;opacity:1}html[data-page-transition=glitch]::view-transition-group(screen-signal),html[data-page-transition=glitch]::view-transition-group(screen-interference){animation:none}html[data-page-transition=glitch]::view-transition-group(screen-glass){animation:none;z-index:4}html[data-page-transition=glitch]::view-transition-old(screen-glass){animation:none;opacity:0}html[data-page-transition=glitch]::view-transition-new(screen-glass){animation:none;opacity:1;mix-blend-mode:normal}html[data-page-transition=glitch]::view-transition-group(screen-signal){z-index:1}html[data-page-transition=glitch]::view-transition-group(screen-interference){z-index:2}html[data-page-transition=glitch]::view-transition-group(screen-signal),html[data-page-transition=glitch]::view-transition-group(screen-interference){overflow:clip;border-radius:40px;clip-path:url(#desktop-crt-curve)}html[data-page-transition=glitch]::view-transition-group(screen-edge){animation:none;z-index:3;border-radius:40px;backdrop-filter:blur(var(--desktop-crt-edge-blur));-webkit-backdrop-filter:blur(var(--desktop-crt-edge-blur));mask-image:var(--desktop-crt-softness-mask);-webkit-mask-image:var(--desktop-crt-softness-mask)}html[data-page-transition=glitch]::view-transition-old(screen-edge),html[data-page-transition=glitch]::view-transition-new(screen-edge){animation:none;opacity:0}html[data-page-transition=glitch]::view-transition-old(screen-signal),html[data-page-transition=glitch]::view-transition-new(screen-signal),html[data-page-transition=glitch]::view-transition-new(screen-interference){mix-blend-mode:normal;animation-duration:var(--route-glitch-duration);animation-timing-function:steps(1,end);animation-fill-mode:both}html[data-page-transition=glitch]::view-transition-old(screen-signal){animation-name:screen-channel-out}html[data-page-transition=glitch]::view-transition-new(screen-signal){animation-name:screen-channel-in}html[data-page-transition=glitch]::view-transition-old(screen-interference){animation:none;opacity:0}html[data-page-transition=glitch]::view-transition-new(screen-interference){animation-name:screen-static-burst;mix-blend-mode:screen}@keyframes screen-channel-out{0%{opacity:1;transform:none;filter:none;clip-path:inset(0)}8%{transform:translate(-2px);filter:contrast(1.8) brightness(.6);clip-path:polygon(0 0,100% 0,100% 22%,0 22%,0 27%,100% 27%,100% 66%,0 66%)}17%{transform:translate(3px);filter:sepia(1) saturate(2) hue-rotate(145deg);clip-path:inset(43% 0 38%)}26%{opacity:.8;transform:translate(-3px);filter:contrast(1.6);clip-path:inset(12% 0 81%)}39%{opacity:1;transform:translate(2px);clip-path:inset(68% 0 18%);filter:none}48%,to{opacity:0;transform:none}}@keyframes screen-channel-in{0%,14%{opacity:0}16%{opacity:1;transform:translate(3px);clip-path:inset(24% 0 57%);filter:contrast(1.5) brightness(1.2)}25%{transform:translate(-2px);clip-path:polygon(0 0,100% 0,100% 44%,0 44%,0 49%,100% 49%,100% 100%,0 100%);filter:sepia(.7) saturate(2) hue-rotate(275deg)}35%{transform:none;clip-path:inset(0);filter:brightness(.8)}47%{transform:translate(2px);clip-path:polygon(0 0,100% 0,100% 69%,0 69%,0 75%,100% 75%,100% 100%,0 100%);filter:contrast(1.2)}57%{transform:translate(-1px);clip-path:inset(0);filter:none}72%,to{opacity:1;transform:none;clip-path:inset(0);filter:none}}@keyframes screen-static-burst{0%,6%{opacity:0;clip-path:inset(0)}8%{opacity:.65;clip-path:inset(18% 0 73%);transform:translate(-2px)}15%{opacity:.2;clip-path:inset(42% 0 39%);transform:translate(2px)}22%{opacity:.55;clip-path:inset(63% 0 25%)}28%{opacity:0}39%{opacity:.4;clip-path:inset(31% 0 65%);transform:none}45%{opacity:0}59%{opacity:.25;clip-path:inset(72% 0 25%)}65%,to{opacity:0;transform:none}}@media(prefers-reduced-motion:reduce){.page-transition{display:none}}@media(max-width:767px){html[data-page-transition=glitch]::view-transition-group(screen-edge){backdrop-filter:none;-webkit-backdrop-filter:none}}.global-grain{position:fixed;top:-25vh;left:-25vw;width:150vw;height:150vh;z-index:1000;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:url(/textures/grain.svg) repeat;opacity:var(--grain-opacity);will-change:transform;animation:global-grain-shift .5s steps(1,end) infinite}.global-grain[data-paused=true]{animation-play-state:paused}@keyframes global-grain-shift{0%,to{transform:translateZ(0)}17%{transform:translate3d(-5%,-10%,0)}33%{transform:translate3d(3%,-15%,0)}50%{transform:translate3d(12%,9%,0)}67%{transform:translate3d(9%,4%,0)}83%{transform:translate3d(-1%,7%,0)}}@media(prefers-reduced-motion:reduce){.global-grain{animation:none;will-change:auto;transform:none}}.cursor-light{display:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}html:has(.system-boot[data-input-ready=false]),html:has(.system-boot[data-input-ready=false]) *{cursor:none!important}html:has(.system-boot[data-input-ready=false]) .cursor-light{visibility:hidden}@media(hover:hover)and (pointer:fine){html.has-cursor-light,html.has-cursor-light *{cursor:none!important}.cursor-light{display:block}.cursor-light-glow,.cursor-light-dot{position:fixed;top:0;left:0;pointer-events:none;opacity:0;transform:translate3d(var(--cursor-x,0px),var(--cursor-y,0px),0);transition:opacity .16s}.cursor-light-glow{width:96px;height:96px;margin:-48px 0 0 -48px;z-index:990;border-radius:50%;background:radial-gradient(circle,var(--cursor-light),transparent 70%);transition:opacity .22s}.cursor-light-dot{box-sizing:border-box;width:4px;height:4px;margin:-2px 0 0 -2px;z-index:1001;border:1px solid var(--color-paper);background:var(--color-paper);mix-blend-mode:difference;transition:opacity .16s,width 90ms,height 90ms,margin 90ms,background-color 90ms}.cursor-light[data-active=true] .cursor-light-glow,.cursor-light[data-active=true] .cursor-light-dot{opacity:1}.cursor-light[data-glow=false] .cursor-light-glow{opacity:0}.cursor-light[data-interactive=true] .cursor-light-dot{width:20px;height:20px;margin:-10px 0 0 -10px;border-width:2px;background:transparent}.cursor-light[data-interactive=true] .cursor-light-dot:after{content:"";position:absolute;width:4px;height:4px;top:6px;left:6px;background:var(--color-paper)}.cursor-light[data-pressed=true] .cursor-light-dot{width:10px;height:10px;margin:-5px 0 0 -5px;background:var(--color-paper)}.cursor-light[data-pressed=true] .cursor-light-dot:after{display:none}}@media(prefers-reduced-motion:reduce){.cursor-light-glow,.cursor-light-dot{transition:none}}.screen-menu>nav>a[aria-current=page],.screen-menu>nav>a:hover,.screen-menu>nav>a:focus-visible{color:var(--game-signal);text-shadow:0 0 14px var(--game-glow)}.screen-menu .screen-nav-cursor{color:var(--game-signal)}.desktop-screen-shell .folder-page-heading h1{font-family:var(--font-screen);font-size:clamp(30px,4vw,52px);font-weight:400;line-height:1.4;letter-spacing:-.04em;text-transform:uppercase;min-height:calc(clamp(38px,5vw,65px)*1.15)}.desktop-screen-shell .folder-page-heading h1>.folder-page-count{font-family:var(--font-screen);font-size:inherit;letter-spacing:inherit;color:inherit}.desktop-screen-shell .folder-page-heading{border-color:var(--desktop-line)}.desktop-screen-shell .section-title{font-family:var(--font-screen);font-size:16px;font-weight:400;letter-spacing:0;text-transform:uppercase}.desktop-screen-shell .section-title>.section-title-dot{width:8px;height:8px;border-radius:0;background:var(--game-signal);box-shadow:0 0 12px var(--game-glow)}.desktop-copyright{font-family:var(--font-screen);font-size:11px;font-weight:400;letter-spacing:0}.siana-desktop .desktop-file{border-radius:0;transition:border-color .16s,background-color .16s}.siana-desktop .desktop-file:hover,.siana-desktop .desktop-file:focus-visible{border-color:var(--game-signal-line);background:var(--game-signal-soft)}.siana-desktop .desktop-app-name{font-family:var(--font-screen);font-size:12px;font-weight:400;text-transform:uppercase;line-height:1.8;letter-spacing:.03em}.siana-desktop .desktop-folder{filter:drop-shadow(0 8px 12px var(--desktop-shadow))}.siana-desktop .desktop-folder-front svg{opacity:1}.siana-desktop .desktop-file:hover .desktop-folder-front,.siana-desktop .desktop-file:focus-visible .desktop-folder-front{border-color:var(--game-signal-line)}.program-preview-window{border-color:var(--desktop-dock-line);position:relative}.program-window-chrome{background:var(--game-panel)}.program-window-chrome .project-file-date,.program-window-chrome .project-file-meta{font-family:var(--font-screen);font-size:9px;line-height:1.5;text-transform:uppercase}.program-project-link[data-interacting=true] .program-preview-window{border-color:var(--game-signal-line);box-shadow:0 12px 32px var(--desktop-window-shadow),0 0 14px var(--game-signal-soft)}.program-project-link[data-interacting=true] .program-window-chrome,.program-project-link[data-interacting=true] .program-window-footer .arrow-icon{color:var(--game-signal)}.project-scroll-thumb{border-radius:0}.ui-dialog-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.desktop-screen-shell a:focus-visible,.desktop-screen-shell button:focus-visible{outline-color:var(--game-signal)}@media(max-width:767px){.desktop-screen-shell .folder-page-heading h1{font-size:28px;min-height:46px;letter-spacing:-.045em}.desktop-screen-shell .section-title{font-size:14px}.siana-desktop .desktop-app-name{font-size:11px}.program-window-chrome .project-file-date,.program-window-chrome .project-file-meta{font-size:9px}}@media(prefers-reduced-motion:reduce){.screen-menu>nav>a{text-shadow:none}}
