@font-face{font-family:Instrument Sans;src:url(/assets/fonts/instrument-sans-latin.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/fonts/ibm-plex-mono-regular-latin.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--desktop:#101216;--desktop-deep:#15171b;--surface:#1b1d22;--surface-raised:#252830;--surface-selected:#242b42;--surface-chrome:#22252b;--surface-hover:#282b32;--surface-pressed:#1c1f25;--separator:#30343c;--border:#414650;--control-border:#838a98;--text:#f1f1f1;--muted:#b0b4be;--accent:#6c8cff;--accent-hover:#7896ff;--accent-pressed:#5f7de8;--on-accent:#0c0d0f;--error:#ff9b9b;--success:#8bd5ab;--app-body:#1b1d22;--app-frame:#202329;--app-chrome-top:#282b32;--app-chrome-bottom:#22252b;--app-inset:#15171b;--app-edge:#414650;--app-separator:#30343c;--app-highlight:#ffffff1a;--control-face:#252830;--control-hover:#282b32;--control-pressed:#1c1f25;--dock-material:#22252bf0;--dock-material-opaque:#22252b;--palette-material:#25282ef5;--palette-material-opaque:#25282e;--overlay:#0000009e;--focus:#9db1ff;--control-highlight:#ffffff17;--shadow-control:0 1px 2px #0000003d;--shadow-pressed:inset 0 1px 2px #00000052;--shadow-inset:inset 0 2px 5px #00000042;--shadow-app:0 3px 10px #00000052, 0 22px 56px -14px #0000007a;--shadow-dock:0 2px 6px #00000047, 0 10px 24px -6px #0006;--shadow-popover:0 3px 8px #0000003d, 0 12px 28px -8px #0006;--shadow-palette:0 4px 12px #00000052, 0 28px 72px -16px #0000008f;--shadow-mobile-nav:0 -6px 18px -12px #00000059;--shadow-project:0 12px 28px #0000003d;--artwork-shadow:#0000004d;--artwork-edge:#9b9eaa;--github-mark:#fff;--font-sans:"Instrument Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-metadata:.25rem;--radius-control:.5rem;--radius-workspace:.875rem;--radius-overlay:1.125rem;--radius-app:1rem;--radius-app-body:.75rem;--duration-press:80ms;--duration-release:.14s;--duration-fast:.16s;--duration-state:.18s;--duration-history:.12s;--duration-app-open:.34s;--duration-app-close:.24s;--duration-app-switch:.28s;--duration-work:.22s;--duration-app:var(--duration-app-open);--ease-enter:cubic-bezier(.16, 1, .3, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--ease-state:cubic-bezier(.2, 0, .2, 1);--z-desktop:0;--z-desktop-content:1;--z-app:10;--z-system-bar:20;--z-dock:30;--z-popover:40;--z-skip:60;--close-glyph:#ffb0b5;--close-face:#3a272e;--close-face-hover:#50313a;--close-face-pressed:#2f2026;--close-edge:#936676;--close-highlight:#ffffff1a}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--desktop:#e5e3de;--desktop-deep:#f0eee8;--surface:#faf9f6;--surface-raised:#fff;--surface-selected:#e2e8fc;--surface-chrome:#ebe9e3;--surface-hover:#e9e7e1;--surface-pressed:#e1ded6;--separator:#dcd8cf;--border:#c6c2b9;--control-border:#747b87;--text:#202229;--muted:#565c68;--accent:#3155c6;--accent-hover:#284bb5;--accent-pressed:#2443a0;--on-accent:#fff;--error:#a52b3a;--success:#246b45;--app-body:#faf9f6;--app-frame:#eeece6;--app-chrome-top:#f6f5f1;--app-chrome-bottom:#ebe9e3;--app-inset:#f0eee8;--app-edge:#c6c2b9;--app-separator:#dcd8cf;--app-highlight:#ffffffd9;--control-face:#fff;--control-hover:#e9e7e1;--control-pressed:#e1ded6;--dock-material:#faf9f6f0;--dock-material-opaque:#faf9f6;--palette-material:#faf9f6f5;--palette-material-opaque:#faf9f6;--overlay:#20222957;--focus:#183fbd;--control-highlight:#ffffffd9;--shadow-control:0 1px 2px #20222914;--shadow-pressed:inset 0 1px 2px #25272d29;--shadow-inset:inset 0 2px 5px #25272d1f;--shadow-app:0 2px 6px #25272d17, 0 20px 48px -12px #25272d33;--shadow-dock:0 2px 4px #25272d14, 0 10px 24px -6px #25272d2e;--shadow-popover:0 2px 6px #25272d14, 0 12px 28px -8px #25272d2e;--shadow-palette:0 4px 10px #25272d1a, 0 28px 64px -16px #25272d40;--shadow-mobile-nav:0 -4px 12px -8px #25272d29;--shadow-project:0 10px 24px #20222924;--artwork-shadow:#20222929;--artwork-edge:#666b76;--github-mark:#000;--close-glyph:#98283d;--close-face:#f8e8ec;--close-face-hover:#f0d6de;--close-face-pressed:#e9c7d1;--close-edge:#a45c70;--close-highlight:#ffffffe6}*,:before,:after{box-sizing:border-box}html{background:var(--desktop);min-width:20rem}body{background:var(--desktop);min-width:20rem;min-height:100dvh;color:var(--text);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;font-size:clamp(1rem,.3vw + .95rem,1.125rem);line-height:1.55}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.2em}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.02}h1{font-size:clamp(2.5rem,7vw,6.5rem)}h2{font-size:clamp(1.35rem,3vw,2.6rem)}h3{font-size:1rem}ul,ol{margin-block:0}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}[tabindex="-1"]:focus{outline:none}::selection{background:var(--accent);color:var(--on-accent)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:var(--z-skip);background:var(--accent);color:var(--on-accent);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);font-weight:700;position:fixed;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-200%)}.skip-link:focus{transform:none}.system-label{color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;margin:0;font-size:.78rem}.availability{align-items:center;gap:var(--space-2);color:var(--text);display:inline-flex}.availability:before{content:"";background:var(--success);border-radius:50%;width:.5rem;height:.5rem}.button{border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--control-face);min-height:44px;color:var(--text);box-shadow:inset 0 1px var(--control-highlight), var(--shadow-control);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-state), border-color var(--duration-fast) var(--ease-state), color var(--duration-fast) var(--ease-state), box-shadow var(--duration-release) var(--ease-state);justify-content:center;align-items:center;padding:.6rem 1rem;font-weight:650;text-decoration:none;display:inline-flex}.button:hover{background:var(--control-hover)}.button:active{background:var(--control-pressed);box-shadow:var(--shadow-pressed);transition-duration:var(--duration-press)}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button--primary:active{background:var(--accent-pressed);border-color:var(--accent-pressed)}.action-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.state-panel{min-height:12rem;padding:var(--space-8);border:1px solid var(--border);background:var(--surface);text-align:center;place-items:center;display:grid}kbd{border:1px solid var(--control-border);border-radius:var(--radius-metadata);font-family:var(--font-mono);padding:.1rem .35rem;font-size:.75rem}.app-artwork,.system-glyph{flex:none;display:block}.app-artwork{filter:drop-shadow(0 2px 1px var(--artwork-shadow));overflow:visible}.app-artwork--github{filter:none}.app-icon .app-artwork{transition:transform var(--duration-fast) var(--ease-state)}@media (hover:hover) and (pointer:fine){.app-icon:hover .app-artwork{transform:translateY(-2px)}.app-icon:active .app-artwork{transition-duration:var(--duration-press);transform:none}}@media (prefers-reduced-motion:reduce){.app-icon .app-artwork{transform:none!important}}@media (forced-colors:active){.app-artwork{filter:none}.app-artwork path,.app-artwork rect,.app-artwork circle{forced-color-adjust:none}.app-artwork--github{--github-mark:CanvasText}}.boot{place-content:center;gap:var(--space-4);background:var(--desktop);min-height:100dvh;color:var(--text);font-family:var(--font-mono);font-size:.85rem;display:grid}.boot__line{background:var(--border);width:min(18rem,72vw);height:2px;overflow:hidden}.boot__line:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:100%;animation:.9s linear both boot-progress;display:block}@keyframes boot-progress{0%{transform:scaleX(.05)}to{transform:scaleX(1)}}.os-shell{min-height:100dvh;padding:var(--space-3);background:var(--desktop)}.system-bar{z-index:var(--z-system-bar);justify-content:space-between;align-items:center;gap:var(--space-4);border-block-end:1px solid var(--app-separator);background:var(--desktop);min-height:3.5rem;display:flex;position:sticky;inset-block-start:0}.system-bar__brand{letter-spacing:-.03em;align-items:center;min-height:44px;font-weight:750;text-decoration:none;display:inline-flex}.system-bar__controls{align-items:center;gap:var(--space-2);display:flex}.clock{color:var(--muted);font-family:var(--font-mono);white-space:nowrap;font-size:.76rem}.system-control{min-width:44px;min-height:44px;padding:0 var(--space-3);box-shadow:none;background:0 0;border-color:#0000;font-weight:400}.system-control:hover{border-color:var(--app-separator);background:var(--control-hover);box-shadow:inset 0 1px var(--control-highlight)}.system-control:active{border-color:var(--app-separator);background:var(--control-pressed);box-shadow:var(--shadow-pressed)}.system-control__text{margin-inline-start:var(--space-2)}.hire-link{min-height:44px;padding:0 var(--space-4);font-weight:700}.workspace{min-height:calc(100dvh - 4rem);padding-block-end:calc(5rem + env(safe-area-inset-bottom));position:relative}.home-layer{height:100%;min-height:0;z-index:var(--z-desktop-content);position:relative}.home-layer--covered{pointer-events:none;-webkit-user-select:none;user-select:none;overflow:hidden}.app-layer{z-index:var(--z-app);inset:0 0 calc(5rem + env(safe-area-inset-bottom));min-width:0;min-height:0;position:absolute}.desktop-home{gap:var(--space-12);min-height:calc(100dvh - 9rem);padding:clamp(2rem, 5vw, 5rem) clamp(1rem, 4vw, 4rem) var(--space-8);grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.3fr) minmax(24rem,.7fr);align-items:center;display:grid;position:relative}.desktop-home:before,.desktop-home:after{content:"";pointer-events:none;border-color:var(--control-border);width:3rem;height:3rem;position:absolute}.desktop-home:before{inset:var(--space-8) auto auto 0;border-block-start:1px solid;border-inline-start:1px solid}.desktop-home:after{inset:auto 0 var(--space-8) auto;border-block-end:1px solid;border-inline-end:1px solid}.identity-block{max-width:50rem}.identity-block h1{margin:var(--space-4) 0 var(--space-6);letter-spacing:-.065em;max-width:8ch}.identity-block__headline{max-width:21ch;font-size:clamp(1.35rem,2.4vw,2.3rem);line-height:1.15}.identity-block__description{max-width:46rem;color:var(--muted)}.identity-block__facts{gap:var(--space-3) var(--space-6);font-family:var(--font-mono);flex-wrap:wrap;margin-block-start:var(--space-8);font-size:.78rem;display:flex}.project-stack{justify-self:center;width:min(100%,31rem)}.project-stack__cards{aspect-ratio:1.48;width:calc(100% - 1rem);margin-inline:auto;position:relative}.project-stack__card{border-radius:var(--radius-workspace);box-shadow:var(--shadow-project);transform-origin:50% 85%;transition:transform .55s cubic-bezier(.22,.72,.2,1),opacity .55s;position:absolute;inset:0}.project-stack__card[data-position="0"]{z-index:3;opacity:1;transform:translate(0)scale(1)rotate(0)}.project-stack__card[data-position="1"]{z-index:2;opacity:.78;transform:translate(.75rem,.625rem)scale(.975)rotate(1.2deg)}.project-stack__card[data-position="2"]{z-index:1;opacity:.55;transform:translate(-.5625rem,1.3125rem)scale(.95)rotate(-1deg)}.project-stack__card[data-position=hidden]{z-index:0;opacity:0;visibility:hidden;transform:translateY(1.3125rem)scale(.94)}.project-stack__card.project-stack__card--outgoing{z-index:4;opacity:0;visibility:visible;pointer-events:none;transform:translate(34%,-10%)scale(.98)rotate(5deg)}.project-stack__link,.project-stack__surface{border:1px solid var(--control-border);border-radius:var(--radius-workspace);background:var(--surface);height:100%;color:var(--text);grid-template-rows:minmax(0,1fr) auto;text-decoration:none;display:grid;overflow:hidden}.project-stack__link{transition:border-color var(--duration-fast)}.project-stack__link:hover{border-color:var(--accent)}.project-stack__link:focus-visible{outline-offset:5px}.project-stack__media{border-block-end:1px solid var(--border);background:var(--desktop-deep);min-height:0;overflow:hidden}.project-stack__media img{object-fit:cover;width:100%;height:100%}.project-stack__caption{min-height:4.75rem;padding:var(--space-3) var(--space-4)}.project-stack__caption h3{margin:0 0 var(--space-1);font-size:clamp(1rem,1.4vw,1.2rem)}.project-stack__caption p{color:var(--muted);font-family:var(--font-mono);margin:0;font-size:.7rem;line-height:1.35}.desktop-home__note{color:var(--muted);grid-column:1/-1;margin:0;font-size:.78rem}.mobile-home{gap:var(--space-12);min-height:calc(100dvh - 10rem);padding:var(--space-8) 0 var(--space-16);flex-direction:column;display:flex}.mobile-identity>div{justify-content:space-between;display:flex}.mobile-identity h1{margin:var(--space-6) 0 var(--space-3);max-width:7ch;font-size:clamp(3rem,17vw,5rem)}.mobile-identity>p{max-width:22ch;font-size:1.2rem}.app-icon{gap:var(--space-2);border-radius:var(--radius-workspace);min-width:0;color:var(--text);flex-direction:column;align-items:flex-start;text-decoration:none;display:flex}.app-icon__tile{aspect-ratio:1.65;border-radius:var(--radius-workspace);background:0 0;border:1px solid #0000;place-items:center;width:100%;display:grid}.app-icon:hover .app-icon__tile{background:var(--surface-hover)}.app-icon:active .app-icon__tile{background:var(--surface-pressed)}.app-icon__label{font-size:.9rem;font-weight:650}.dock{z-index:var(--z-dock);gap:var(--space-1);border:1px solid var(--app-edge);border-radius:var(--radius-overlay);background:var(--dock-material-opaque);max-width:calc(100vw - 2rem);box-shadow:inset 0 1px var(--app-highlight), var(--shadow-dock);padding:.375rem;display:flex;position:fixed;inset-block-end:max(var(--space-3), env(safe-area-inset-bottom));inset-inline-start:50%;transform:translate(-50%)}.dock__item{display:block;position:relative}.dock__item:after{content:"";background:var(--accent);opacity:0;width:1.125rem;height:3px;transition:opacity var(--duration-state) var(--ease-state);border-radius:2px;position:absolute;inset-block-end:-.15rem;inset-inline-start:50%;transform:translate(-50%)}.dock__item--active:after{opacity:1}.app-icon--compact{align-items:center;position:relative}.app-icon--compact .app-icon__tile{aspect-ratio:1;border-radius:var(--radius-control);width:3rem;height:3rem;transition:background-color var(--duration-state) var(--ease-state)}.app-icon--compact .app-icon__label{z-index:var(--z-popover);clip:auto;border:1px solid var(--app-edge);border-radius:var(--radius-control);background:var(--control-face);width:max-content;max-width:11rem;height:auto;color:var(--text);box-shadow:var(--shadow-popover);opacity:0;visibility:hidden;pointer-events:none;font-family:var(--font-sans);transition:opacity var(--duration-fast), transform var(--duration-fast), visibility 0s linear var(--duration-fast);padding:.3rem .5rem;font-size:.75rem;font-weight:650;line-height:1.2;position:absolute;inset-block-end:calc(100% + .75rem);inset-inline-start:50%;overflow:visible;transform:translate(-50%,.25rem)}.app-icon--compact:hover .app-icon__label,.app-icon--compact:focus-visible .app-icon__label{opacity:1;visibility:visible;transition-delay:0s;transform:translate(-50%)}.dock__item--active .app-icon__tile{background:var(--surface-selected);box-shadow:inset 0 1px var(--control-highlight), var(--shadow-pressed)}.dock__item--active .app-icon:hover .app-icon__tile{background:color-mix(in srgb, var(--surface-selected) 72%, var(--control-hover))}.dock__item--active .app-icon:active .app-icon__tile{background:var(--control-pressed);box-shadow:var(--shadow-pressed)}.mobile-navigation{z-index:var(--z-dock);min-height:calc(4.5rem + env(safe-area-inset-bottom));border-block-start:1px solid var(--app-edge);background:var(--surface-chrome);padding:var(--space-1) var(--space-1) calc(var(--space-1) + env(safe-area-inset-bottom));box-shadow:var(--shadow-mobile-nav);grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;display:grid;position:fixed;inset:auto 0 0}.mobile-navigation .app-icon{border-radius:var(--radius-control);min-width:0;min-height:4rem;color:var(--muted);padding:var(--space-1) .125rem;text-align:center;transition:background-color var(--duration-state) var(--ease-state), color var(--duration-state) var(--ease-state);justify-content:center;align-items:center;gap:.125rem;position:relative}.mobile-navigation .app-icon:before{content:"";background:var(--accent);opacity:0;height:3px;transition:opacity var(--duration-state) var(--ease-state);position:absolute;inset:.125rem 24% auto}.mobile-navigation .app-icon__tile{aspect-ratio:1;border:0;width:2.25rem;height:2.25rem}.mobile-navigation .app-artwork,.mobile-navigation .app-icon:hover .app-artwork{transform:none}.mobile-navigation .app-icon__label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.72rem;line-height:1.1;overflow:hidden}.mobile-navigation .app-icon:hover{background:var(--surface-hover)}.mobile-navigation .app-icon:hover .app-icon__tile,.mobile-navigation .app-icon:active .app-icon__tile{background:0 0}.mobile-navigation .app-icon:active{background:var(--surface-pressed)}.mobile-navigation .app-icon:focus-visible{outline-offset:-3px}.mobile-navigation .app-icon--active{background:var(--surface-selected);color:var(--accent)}.mobile-navigation .app-icon--active:before{opacity:1}.mobile-navigation .app-icon--active:hover{background:var(--surface-selected)}.mobile-navigation .app-icon--active .app-icon__label{font-weight:750}.app-window{isolation:isolate;width:100%;min-width:0;height:100%;min-height:0;position:relative}.app-window__elevation{z-index:-1;border-radius:var(--radius-app);box-shadow:var(--shadow-app);pointer-events:none;position:absolute;inset:0}.app-viewport{border:1px solid var(--app-edge);border-radius:var(--radius-app);background:var(--app-frame);width:100%;height:100%;min-height:0;box-shadow:inset 0 1px var(--app-highlight);grid-template-rows:3rem minmax(0,1fr);display:grid;position:relative;overflow:hidden}.app-viewport__chrome{justify-content:space-between;align-items:center;gap:var(--space-4);border-block-end:1px solid var(--app-separator);background:linear-gradient(to bottom, var(--app-chrome-top), var(--app-chrome-bottom));min-height:3rem;padding:.125rem var(--space-1) .125rem var(--space-4);box-shadow:inset 0 1px var(--app-highlight);display:flex}.app-viewport__identity{align-items:center;gap:var(--space-2);min-width:0;display:flex}.app-viewport__identity strong{flex:none;font-size:.875rem;font-weight:600}.app-viewport__identity span{color:var(--muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.close-button{border-radius:var(--radius-control);width:44px;height:44px;color:var(--close-glyph);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.close-button__face{border:1px solid var(--close-edge);border-radius:var(--radius-control);background:var(--close-face);width:30px;height:30px;box-shadow:inset 0 1px var(--close-highlight), var(--shadow-control);transition:background-color var(--duration-fast) var(--ease-state), border-color var(--duration-fast) var(--ease-state), box-shadow var(--duration-release) var(--ease-state);place-items:center;display:grid}.close-button__face .system-glyph{transition:transform var(--duration-release) var(--ease-state)}.close-button:hover .close-button__face{border-color:color-mix(in srgb, var(--close-edge) 82%, var(--close-glyph));background:var(--close-face-hover)}.close-button:active .close-button__face{background:var(--close-face-pressed);box-shadow:var(--shadow-pressed);transition-duration:var(--duration-press)}.close-button:active .close-button__face .system-glyph{transition-duration:var(--duration-press);transform:translateY(1px)}.close-button--neutral{color:var(--muted)}.close-button--neutral .close-button__face{border-color:var(--control-border);background:var(--control-face)}.close-button--neutral:hover .close-button__face{background:var(--control-hover)}.close-button--neutral:active .close-button__face{background:var(--control-pressed)}.app-viewport__content{border-radius:0 0 var(--radius-app-body) var(--radius-app-body);background:var(--app-body);min-width:0;height:auto;min-height:0;margin:0 2px 2px;overflow:hidden}.command-palette{border:1px solid var(--app-edge);border-radius:var(--radius-overlay);background:var(--palette-material-opaque);width:min(42rem,100vw - 2rem);max-height:min(44rem,100dvh - 3rem);color:var(--text);box-shadow:inset 0 1px var(--app-highlight), var(--shadow-palette);margin:auto;padding:0}.command-palette::backdrop{background:var(--overlay)}.command-palette__head{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);display:flex}.command-palette__head label{font-weight:700}.command-palette__input{width:calc(100% - 2rem);min-height:3.25rem;margin:0 var(--space-4);border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--surface);color:var(--text);padding:var(--space-3) var(--space-4);caret-color:var(--accent)}.command-palette__input:focus-visible{border-color:var(--accent);background:var(--surface-raised);outline:none}.command-palette__input::placeholder{color:var(--muted);opacity:1}.command-palette__results{max-height:min(34rem,100dvh - 11rem);padding:var(--space-4);overflow-y:auto}.command-palette__results section+section{margin-block-start:var(--space-6)}.command-palette__results h2{color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;margin-block-end:var(--space-2);font-size:.72rem}.palette-option{justify-content:space-between;align-items:center;gap:var(--space-2);border-radius:var(--radius-control);width:100%;min-height:44px;color:var(--text);padding:var(--space-2) var(--space-3);text-align:start;cursor:pointer;background:0 0;border:0;padding-inline-start:calc(var(--space-3) + 2px);display:flex}.palette-option:hover{background:var(--surface-hover)}.palette-option--selected{border-inline-start:2px solid var(--accent);background:var(--surface-selected);padding-inline-start:var(--space-3)}.palette-option--selected:hover{background:var(--surface-selected)}.palette-option:active{background:var(--surface-pressed)}.palette-option small{color:var(--muted);flex:none}.palette-option__identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.palette-option__identity>span:last-child{overflow-wrap:anywhere}.palette-option__icon{width:24px;height:24px;color:var(--muted);flex:none;place-items:center;display:grid}.command-palette__empty{padding:var(--space-12) var(--space-4);text-align:center}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dock{background:var(--dock-material);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media (width>=64rem){.command-palette{background:var(--palette-material);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}}}.route-page{scroll-behavior:smooth;height:100%;min-height:0;scroll-padding-block:var(--space-4);scrollbar-gutter:stable;padding:var(--space-4) clamp(1rem, 2.5vw, 2rem) var(--space-6);overflow-y:auto}.route-header{justify-content:space-between;align-items:flex-end;gap:var(--space-8);max-width:none;border-block-end:1px solid var(--app-separator);margin-block-end:var(--space-4);padding-block-end:var(--space-3);display:flex}.route-header__title{flex:none;min-width:0}.route-header h1{margin:.15rem 0 0;font-size:clamp(1.9rem,3vw,2.8rem)}.route-lede{max-width:46rem;color:var(--muted);margin:0;font-size:clamp(.95rem,1.2vw,1.08rem)}.route-header--compact{min-height:3.5rem;align-items:center;margin-block-end:var(--space-3)}.route-header--compact h1{font-size:clamp(1.35rem,2vw,1.75rem)}.route-header--compact>p{color:var(--muted);font-family:var(--font-mono);margin:0;font-size:.72rem}.about-layout{gap:var(--space-8);grid-template-columns:minmax(18rem,.7fr) minmax(28rem,1.3fr);display:grid}.about-profile{border-inline-end:1px solid var(--app-separator);min-width:0;padding-inline-end:var(--space-8)}.about-profile h2,.skills-list>h2{margin-block-end:var(--space-4);font-size:clamp(1.25rem,2vw,1.65rem)}.about-profile>p{max-width:42rem;color:var(--muted)}.about-facts{gap:var(--space-3);margin:0 0 var(--space-6);border:1px solid var(--app-separator);border-radius:var(--radius-control);background:var(--app-inset);padding:var(--space-3);box-shadow:var(--shadow-inset);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.about-facts>div{min-width:0}.about-facts dt{color:var(--muted);font-family:var(--font-mono);font-size:.7rem}.about-facts dd{margin:var(--space-1) 0 0;font-weight:650}.about-layout .action-row{margin-block-start:var(--space-6)}.skills-list{min-width:0}.skills-list>div{gap:var(--space-4);border-block-start:1px solid var(--app-separator);padding-block:var(--space-3);grid-template-columns:minmax(8rem,.45fr) minmax(0,1fr);display:grid}.skills-list h3{color:var(--muted);font-family:var(--font-mono);letter-spacing:0;margin:0;font-size:.78rem}.skills-list ul{gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.skills-list li{white-space:nowrap}.service-list{border-block-start:1px solid var(--app-separator)}.service-row{gap:var(--space-6);border-block-end:1px solid var(--app-separator);grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:start;padding-block:clamp(1.35rem,3vh,2rem);display:grid}.service-row__number{color:var(--muted);font-family:var(--font-mono);font-size:.78rem}.service-row h2{margin-block-end:var(--space-2);font-size:clamp(1.35rem,2.2vw,1.9rem)}.service-row p{max-width:48rem;color:var(--muted);margin-block-end:var(--space-3)}.service-row ul{gap:var(--space-1) var(--space-6);flex-wrap:wrap;padding-inline-start:1.2rem;font-size:.9rem;display:flex}.contact-app{align-content:start;gap:var(--space-4) clamp(2rem, 6vw, 6rem);grid-template-rows:auto auto;grid-template-columns:minmax(19rem,.75fr) minmax(30rem,1.25fr);padding-block-start:clamp(1.25rem,5vh,2.5rem);display:grid;overflow-y:auto}.contact-app .route-header{border:0;grid-row:1/3;align-self:start;margin:0;padding:0;display:block}.contact-app .route-header h1{margin-block-start:var(--space-2);font-size:clamp(2.25rem,4vw,4rem)}.contact-app .route-header>p:last-child{max-width:34rem;color:var(--muted)}.contact-app__main{max-width:16ch;margin-block:var(--space-6) var(--space-4);color:var(--text);font-size:clamp(1.35rem,2.2vw,2.25rem);line-height:1.1}.contact-actions{border-block-start:1px solid var(--app-separator);align-self:start}.contact-action{gap:var(--space-4);border-block-end:1px solid var(--app-separator);min-height:5.5rem;padding:var(--space-3);transition:background-color var(--duration-fast) var(--ease-state), box-shadow var(--duration-release) var(--ease-state);grid-template-columns:2.25rem 1fr auto;align-items:center;text-decoration:none;display:grid}.contact-action:hover{background:var(--control-hover);box-shadow:inset 0 1px var(--control-highlight)}.contact-action:active{background:var(--control-pressed);box-shadow:var(--shadow-pressed);transition-duration:var(--duration-press)}.contact-action span,.contact-action small{color:var(--muted);font-family:var(--font-mono);font-size:.7rem}.contact-action strong{font-size:clamp(1.05rem,1.6vw,1.4rem)}.contact-action--primary strong{color:var(--accent)}.profile-links{gap:var(--space-6);grid-column:2;align-self:start;display:flex}.profile-links a{padding-block:var(--space-2);text-decoration:none;display:inline-flex;position:relative}.profile-links a:after{content:"";transform-origin:0;height:1px;transition:transform var(--duration-fast);background:currentColor;position:absolute;inset-block-end:.3rem;inset-inline:0;transform:scaleX(.25)}.profile-links a:hover,.profile-links a:focus-visible{color:var(--accent)}.profile-links a:hover:after,.profile-links a:focus-visible:after{transform:scaleX(1)}.work-app .route-header h1{font-size:clamp(2.2rem,3.6vw,3.5rem)}.project-list{border-block-start:1px solid var(--app-separator);margin:0;padding:0;list-style:none}.project-row{border-block-end:1px solid var(--app-separator)}.project-row__link{gap:var(--space-4);grid-template-columns:2rem minmax(8rem,10.5rem) minmax(16rem,1fr) auto;align-items:center;min-height:6.75rem;padding-block:.55rem;text-decoration:none;display:grid}.project-row__link:hover{background:var(--control-hover)}.project-row__link:active{background:var(--control-pressed)}.project-row__link:hover .project-row__action{color:var(--accent)}.project-row__number{color:var(--muted);font-family:var(--font-mono);align-self:start;padding-block-start:var(--space-1);font-size:.72rem}.project-row__media,.project-detail__media,.project-row__text-media,.project-detail__code{border:1px solid var(--app-separator);border-radius:var(--radius-workspace);background:var(--app-inset);box-shadow:var(--shadow-inset);overflow:hidden}.project-row__media img{aspect-ratio:16/9;object-fit:cover;width:100%}.project-row__text-media{min-height:5.75rem;padding:var(--space-3);color:var(--muted);font-family:var(--font-mono);flex-direction:column;justify-content:space-between;font-size:.64rem;display:flex}.project-row__text-media span:first-child{color:var(--text);font-size:.9rem}.project-row__content{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.project-row__content strong{font-size:clamp(1.15rem,1.7vw,1.5rem)}.project-row__content>span:not(.project-row__type,.concept-label){color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.87rem;line-height:1.35;display:-webkit-box;overflow:hidden}.project-row__type{color:var(--muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.project-row__action{white-space:nowrap;padding-inline-end:var(--space-3);font-size:.85rem;font-weight:650}.technology-list{gap:var(--space-1) var(--space-3);color:var(--muted);font-family:var(--font-mono);flex-wrap:wrap;margin:0;padding:0;font-size:.64rem;list-style:none;display:flex}.technology-list li:not(:last-child):after{content:"/";color:var(--control-border);margin-inline-start:var(--space-3)}.concept-label{border:1px solid var(--control-border);border-radius:var(--radius-metadata);width:fit-content;font-family:var(--font-mono);padding:.15rem .4rem;font-size:.64rem}.project-detail__header{gap:var(--space-6);border-block-end:1px solid var(--app-separator);grid-template-columns:minmax(0,1fr) minmax(16rem,.55fr);align-items:end;margin-block-end:var(--space-4);padding-block-end:var(--space-3);display:grid}.project-detail__header h1{max-width:15ch;margin:var(--space-1) 0 0;font-size:clamp(2rem,4vw,3.5rem)}.breadcrumb{color:var(--muted);margin-block-end:var(--space-2);display:inline-block}.project-detail__body{grid-template-columns:minmax(18rem,.75fr) minmax(24rem,1.25fr);align-items:start;gap:clamp(1.5rem,4vw,4rem);display:grid}.project-detail__description{max-width:42rem;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.4}.disclosure{margin-block:var(--space-6);border-block:1px solid var(--control-border);padding-block:var(--space-3)}.disclosure p{color:var(--muted);margin-block-end:0}.project-detail__media{padding:var(--space-2);margin:0}.project-detail__media img{object-fit:contain;width:100%;max-height:calc(100dvh - 15rem)}.project-detail__code{min-height:18rem;font-family:var(--font-mono);flex-direction:column;justify-content:space-between;padding:clamp(1.25rem,3vw,2.5rem);display:flex}.project-detail__code span,.project-detail__code p{color:var(--muted)}.project-detail__code strong{max-width:14ch;font-family:var(--font-sans);font-size:clamp(1.8rem,4vw,3.5rem);line-height:.98}.terminal-app{height:100%;min-height:0;padding:var(--space-3) var(--space-4) var(--space-4);flex-direction:column;display:flex;overflow:hidden}.terminal-app .route-header{flex:none}.terminal-surface{border:1px solid var(--app-edge);border-radius:var(--radius-control);background:var(--app-inset);min-height:0;color:var(--text);box-shadow:var(--shadow-inset);font-family:var(--font-mono);flex-direction:column;flex:1;display:flex;overflow:hidden}.terminal-output{overscroll-behavior:contain;min-height:0;padding:var(--space-4);overflow-wrap:anywhere;flex:1;overflow:auto}.terminal-output:focus-visible{outline-offset:-3px}.terminal-line{margin:0 0 var(--space-2);white-space:pre-wrap;font:inherit}.terminal-line--error{color:var(--error)}.terminal-line--success{color:var(--success)}.terminal-line--meta{color:var(--muted)}.terminal-line--input{color:var(--text)}.terminal-prompt{color:var(--accent)}.terminal-input{align-items:baseline;gap:var(--space-2);min-height:1.75rem;margin-block-start:var(--space-1);display:flex}.terminal-input label{color:var(--muted);white-space:nowrap}.terminal-input input{min-width:0;color:var(--text);caret-color:var(--accent);background:0 0;border:0;outline:none;flex:1}.terminal-input:focus-within label{color:var(--accent)}.not-found-app{align-content:center;justify-items:start;display:grid}.not-found-app h1{max-width:15ch;margin-block:var(--space-2) var(--space-4);font-size:clamp(2rem,4vw,3.5rem)}.not-found-app p:not(.system-label){color:var(--muted)}@media (width<=63.999rem){.os-shell{padding:var(--space-3) 0;--mobile-nav-height:4.5rem}.system-bar{min-height:3.5rem;padding-inline:var(--space-3)}.system-bar__controls{gap:var(--space-1)}.system-bar .clock,.system-control__text:not(.system-control__text--command),.system-control--command .system-glyph{display:none}.system-control{padding:0 var(--space-2);font-size:.75rem}.hire-link{padding-inline:var(--space-3);font-size:.85rem}.workspace{min-height:calc(100dvh - 4.5rem);padding-block-end:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom))}.workspace--home{padding-inline:var(--space-3)}.mobile-home{min-width:0;padding-block-end:var(--space-8)}.mobile-home .project-stack{width:min(100%,31rem);padding:var(--space-2) var(--space-3) var(--space-6);align-self:center;overflow:clip}.mobile-home .project-stack__cards{aspect-ratio:1.42;width:100%}.mobile-home .project-stack__card[data-position="1"]{transform:translate(.25rem,.375rem)scale(.985)rotate(.45deg)}.mobile-home .project-stack__card[data-position="2"]{transform:translate(-.2rem,.75rem)scale(.97)rotate(-.35deg)}.mobile-home .project-stack__card[data-position=hidden]{transform:translateY(.75rem)scale(.965)}.mobile-home .project-stack__card.project-stack__card--outgoing{transform:translate(12%,-4%)scale(.99)rotate(1.5deg)}.app-window{height:100%}.app-window__elevation{display:none}.app-viewport{height:100%;min-height:0;box-shadow:inset 0 1px var(--app-highlight);border-inline:0;border-radius:0}.app-viewport__chrome{min-height:3rem;position:relative}.app-viewport__identity{gap:var(--space-1)}.app-viewport__content{border-radius:0;margin:0}.route-page{height:100%;min-height:0;padding:var(--space-4) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom))}.route-header{margin-block-end:var(--space-4);display:block}.route-header h1{font-size:clamp(2rem,9vw,3.25rem)}.route-lede{margin-block-start:var(--space-3)}.route-header--compact{align-items:center;display:flex}.route-header--compact .action-row{margin-block-start:var(--space-3)}.about-layout,.project-detail__header,.project-detail__body{grid-template-columns:minmax(0,1fr)}.about-layout{gap:var(--space-8)}.about-profile,.skills-list{min-width:0}.about-profile{border-inline-end:0;border-block-end:1px solid var(--app-separator);padding:0 0 var(--space-8)}.skills-list>div{grid-template-columns:minmax(0,1fr)}.skills-list li{white-space:normal;overflow-wrap:anywhere;min-width:0}.service-row{grid-template-columns:2.5rem minmax(0,1fr)}.service-row .button{grid-column:2;justify-self:start}.contact-app{display:block}.contact-app .route-header{margin-block-end:var(--space-8)}.contact-actions,.profile-links{margin-block-end:var(--space-4)}.project-row__link{gap:var(--space-3);padding-block:var(--space-4);grid-template-columns:2rem minmax(0,1fr)}.project-row__media,.project-row__text-media,.project-row__content,.project-row__action{grid-column:2}.project-row__media{max-width:24rem}.project-row__action{justify-self:start;padding:0}.project-detail__body{gap:var(--space-8)}.project-detail__media,.project-detail__code{order:-1}.project-detail__header .technology-list{margin-block-start:var(--space-3)}.terminal-app{height:100%}.terminal-input label{text-overflow:ellipsis;max-width:7.5rem;overflow:hidden}.command-palette{border:0;border-radius:0;width:100%;max-width:none;height:100%;max-height:100%;position:fixed;inset:0}.command-palette[open]{flex-direction:column;display:flex}.command-palette__head,.command-palette__input{flex:none}.command-palette__results{min-height:0;max-height:none;flex:1;padding-block-end:calc(2rem + env(safe-area-inset-bottom))}}@media (width>=64rem){html,body,#root{height:100%;overflow:hidden}.os-shell{height:100%;min-height:0;padding:0 var(--space-3) var(--space-3);grid-template-rows:2.75rem minmax(0,1fr);display:grid;overflow:hidden}.system-bar{height:2.75rem;min-height:2.75rem}.system-bar__brand{min-height:2rem;font-size:.9rem}.system-control{min-width:2rem;min-height:2rem;padding-inline:var(--space-2);font-size:.72rem}.hire-link{min-height:2rem;padding-inline:var(--space-3);font-size:.78rem}.workspace{height:100%;min-height:0;padding-block-end:5rem;overflow:hidden}.workspace--app{overflow:visible}.workspace--app .app-layer{inset-block:1rem calc(5rem + 2px + env(safe-area-inset-bottom));inset-inline:calc(clamp(1.5rem, 2.2vw, 2rem) - var(--space-3))}.workspace--app .app-window{height:100%;min-height:0}.desktop-home{height:100%;min-height:0;padding:clamp(1.5rem, 4vh, 3rem) clamp(1rem, 4vw, 4rem) var(--space-4);gap:clamp(2rem,4vw,4rem)}.identity-block h1{font-size:clamp(3.5rem,6.2vw,5.5rem)}.identity-block__facts{margin-block-start:var(--space-6)}.project-stack{width:min(100%,29rem)}.app-viewport__chrome{min-height:3rem}.route-page{height:100%;min-height:0}}@media (width>=64rem) and (height<=44.999rem){.workspace--app .app-layer{inset-block-start:.625rem;inset-block-end:calc(4.625rem + env(safe-area-inset-bottom))}}@media (width>=64rem) and (pointer:coarse){.os-shell{grid-template-rows:3rem minmax(0,1fr)}.system-bar{height:3rem;min-height:3rem}.system-bar__brand,.system-control,.hire-link{min-height:44px}}@media (width<=24rem){.system-bar__brand{font-size:.9rem}.hire-link{padding-inline:var(--space-2)}.mobile-home{gap:var(--space-8)}.mobile-navigation .app-icon__label{font-size:.68rem}.route-header--compact{display:block}.route-header--compact .action-row{gap:var(--space-2)}.route-header--compact .button{padding-inline:var(--space-3);font-size:.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.command-palette[open]{animation:none!important;transform:none!important}.close-button__face .system-glyph{transform:none!important}.profile-links a:after{transform:none}.app-icon--compact .app-icon__label{transform:translate(-50%)}.project-stack__card{transition-duration:.18s!important}.project-stack__card[data-position="0"]{transform:scale(1)}.project-stack__card[data-position="1"]{transform:scale(.985)}.project-stack__card[data-position="2"]{transform:scale(.97)}.project-stack__card[data-position=hidden]{transform:scale(.96)}.project-stack__card.project-stack__card--outgoing{transform:scale(.98)}}@media (prefers-contrast:more){:root,:root[data-theme]{--dock-material:var(--dock-material-opaque);--palette-material:var(--palette-material-opaque);--border:var(--control-border);--separator:var(--control-border);--app-edge:var(--control-border);--app-separator:var(--control-border)}.dock,.command-palette{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (forced-colors:active){.app-viewport,.app-viewport__chrome,.app-viewport__content,.dock,.mobile-navigation,.command-palette{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:canvas}.app-window__elevation{display:none}.button,.app-icon__tile,.palette-option,.project-stack__card{box-shadow:none}.app-icon:hover .app-icon__tile,.app-icon:active .app-icon__tile,.dock__item--active .app-icon__tile,.palette-option--selected{border-color:highlight}.dock__item--active:after{forced-color-adjust:none;background:highlight}.mobile-navigation .app-icon--active{color:highlight;border:1px solid highlight}.mobile-navigation .app-icon--active:before{forced-color-adjust:none;background:highlight}.command-palette__input:focus-visible{border-color:highlight}}@keyframes direct-app-reveal{0%{opacity:0}to{opacity:1}}@keyframes fallback-route-enter{0%{opacity:0}to{opacity:1}}@keyframes history-route-enter{0%{opacity:0}to{opacity:1}}@keyframes app-open{0%{opacity:0;transform:translateY(18px)scale(.965)}35.3%{opacity:1}to{opacity:1;transform:none}}@keyframes app-elevation-open{0%,11.8%{opacity:0;transform:translateY(18px)scale(.965)}88.2%{opacity:1}to{opacity:1;transform:none}}@keyframes app-close{0%,16.7%{opacity:1;transform:none}to{opacity:0;transform:translateY(12px)scale(.975)}}@keyframes app-elevation-close{0%{opacity:1;transform:none}75%{opacity:0}to{opacity:0;transform:translateY(12px)scale(.975)}}@keyframes app-switch-old{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-4px)scale(.985)}}@keyframes app-switch-new{0%{opacity:0;transform:translateY(8px)scale(.985)}41.7%{opacity:1}to{opacity:1;transform:none}}@keyframes work-forward-old{to{opacity:0;transform:translate(-6px)}}@keyframes work-forward-new{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}@keyframes work-back-old{to{opacity:0;transform:translate(6px)}}@keyframes work-back-new{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes simple-fade-out{to{opacity:0}}@keyframes simple-fade-in{0%{opacity:0}to{opacity:1}}.app-window{animation:direct-app-reveal .16s var(--ease-enter) both}html[data-route-transition=running] .app-window{animation:none}html[data-route-fallback=open] .app-window,html[data-route-fallback=switch] .app-viewport__content,html[data-route-fallback=work-forward] .app-viewport__content,html[data-route-fallback=work-back] .app-viewport__content,html[data-route-fallback=work-crossfade] .app-viewport__content,html[data-route-fallback=crossfade] .app-viewport__content{animation:fallback-route-enter .12s var(--ease-enter) both}html[data-route-fallback=close] .home-layer{animation:none}html[data-history-motion=active] .app-window,html[data-history-motion=active] .workspace--home .home-layer{animation:history-route-enter var(--duration-history) var(--ease-state) both}@supports (view-transition-name:none){.app-viewport{view-transition-name:app-surface}.app-window__elevation{view-transition-name:app-elevation}html[data-route-motion^=work-] .app-viewport,html[data-route-motion^=work-] .app-window__elevation{view-transition-name:none}html[data-route-motion^=work-] .app-viewport__content{view-transition-name:app-content}::view-transition-old(root){mix-blend-mode:normal}::view-transition-new(root){mix-blend-mode:normal}::view-transition-old(app-surface){mix-blend-mode:normal}::view-transition-new(app-surface){mix-blend-mode:normal}::view-transition-old(app-elevation){mix-blend-mode:normal}::view-transition-new(app-elevation){mix-blend-mode:normal}::view-transition-old(app-content){mix-blend-mode:normal}::view-transition-new(app-content){mix-blend-mode:normal}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-group(app-surface){overflow:visible}::view-transition-group(app-elevation){overflow:visible}::view-transition-image-pair(app-surface){overflow:visible}::view-transition-image-pair(app-elevation){overflow:visible}html[data-route-motion=open]::view-transition-new(app-surface){animation:app-open var(--duration-app-open) var(--ease-enter) both;transform-origin:50% 60%}html[data-route-motion=open]::view-transition-new(app-elevation){animation:app-elevation-open var(--duration-app-open) var(--ease-enter) both;transform-origin:50% 60%}html[data-route-motion=close]::view-transition-old(app-surface){animation:app-close var(--duration-app-close) var(--ease-exit) both;transform-origin:50% 60%}html[data-route-motion=close]::view-transition-old(app-elevation){animation:app-elevation-close var(--duration-app-close) var(--ease-exit) both;transform-origin:50% 60%}html[data-route-motion=switch]::view-transition-old(app-surface){animation:app-switch-old .13s var(--ease-exit) both;transform-origin:50% 60%}html[data-route-motion=switch]::view-transition-old(app-elevation){animation:app-switch-old .13s var(--ease-exit) both;transform-origin:50% 60%}html[data-route-motion=switch]::view-transition-new(app-surface){animation:app-switch-new .24s 40ms var(--ease-enter) both;transform-origin:50% 60%}html[data-route-motion=switch]::view-transition-new(app-elevation){animation:app-switch-new .24s 40ms var(--ease-enter) both;transform-origin:50% 60%}html[data-route-motion=work-forward]::view-transition-old(app-content){animation:work-forward-old .1s var(--ease-exit) both}html[data-route-motion=work-forward]::view-transition-new(app-content){animation:work-forward-new var(--duration-work) var(--ease-enter) both}html[data-route-motion=work-back]::view-transition-old(app-content){animation:work-back-old .1s var(--ease-exit) both}html[data-route-motion=work-back]::view-transition-new(app-content){animation:work-back-new var(--duration-work) var(--ease-enter) both}html[data-route-motion=work-crossfade]::view-transition-old(app-content){animation:simple-fade-out .16s var(--ease-exit) both}html[data-route-motion=work-crossfade]::view-transition-new(app-content){animation:simple-fade-in .16s var(--ease-enter) both}html[data-route-motion=crossfade]::view-transition-old(app-surface){animation:simple-fade-out .1s var(--ease-exit) both}html[data-route-motion=crossfade]::view-transition-old(app-elevation){animation:simple-fade-out .1s var(--ease-exit) both}html[data-route-motion=crossfade]::view-transition-new(app-surface){animation:simple-fade-in var(--duration-state) var(--ease-enter) both}html[data-route-motion=crossfade]::view-transition-new(app-elevation){animation:simple-fade-in var(--duration-state) var(--ease-enter) both}}.command-palette[open][data-state=open]{animation:palette-open .24s var(--ease-enter) both}.command-palette[open][data-state=closing]{animation:palette-close .18s var(--ease-exit) both;pointer-events:none}@keyframes palette-open{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}@keyframes palette-close{to{opacity:0;transform:translateY(4px)scale(.99)}}@media (width<=63.999rem){@keyframes app-open{0%{opacity:0;transform:translateY(12px)}38.5%{opacity:1}to{opacity:1;transform:none}}@keyframes app-elevation-open{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes app-close{0%,16.5%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px)}}@keyframes app-elevation-close{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px)}}@keyframes app-switch-old{to{opacity:0}}@keyframes app-switch-new{0%{opacity:0}to{opacity:1}}html[data-route-motion=open]::view-transition-new(app-surface){animation-duration:.26s}html[data-route-motion=open]::view-transition-new(app-elevation){animation-duration:.26s}html[data-route-motion=close]::view-transition-old(app-surface){animation-duration:.2s}html[data-route-motion=close]::view-transition-old(app-elevation){animation-duration:.2s}html[data-route-motion=switch]::view-transition-old(app-surface){animation:simple-fade-out 90ms var(--ease-exit) both}html[data-route-motion=switch]::view-transition-old(app-elevation){animation:simple-fade-out 90ms var(--ease-exit) both}html[data-route-motion=switch]::view-transition-new(app-surface){animation:simple-fade-in .18s var(--ease-enter) both}html[data-route-motion=switch]::view-transition-new(app-elevation){animation:simple-fade-in .18s var(--ease-enter) both}@keyframes palette-open{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes palette-close{to{opacity:0;transform:translateY(4px)}}}@media (prefers-reduced-motion:reduce){.route-page{scroll-behavior:auto}.app-window{animation:none!important}::view-transition-old(root){animation:none!important;transform:none!important}::view-transition-new(root){animation:none!important;transform:none!important}::view-transition-old(app-surface){animation:none!important;transform:none!important}::view-transition-new(app-surface){animation:none!important;transform:none!important}::view-transition-old(app-elevation){animation:none!important;transform:none!important}::view-transition-new(app-elevation){animation:none!important;transform:none!important}::view-transition-old(app-content){animation:none!important;transform:none!important}::view-transition-new(app-content){animation:none!important;transform:none!important}}
