:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background-base:#050405;--background-deep:#010101;--surface:#0b090af5;--surface-hover:#110e0ffa;--surface-strong:#080708;--text-primary:#f2eef0;--text-secondary:#c9c1c3;--text-muted:#978d90;--accent:#ff405a;--accent-rgb:255 64 90;--accent-ink:#180305;--danger:#ff8b92;--shadow-panel:0 22px 60px #00000057;--radius-xs:3px;--radius-sm:5px;--radius-md:8px;--container:1160px;--viewport-padding:clamp(16px, 4vw, 32px);--font-sans:"Onest", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-interactive:cubic-bezier(.22, 1, .36, 1);--duration-fast:.16s;--duration-interactive:.26s}:root,.page-shell,.project-card{--accent-soft:rgb(var(--accent-rgb) / .11);--accent-glow:rgb(var(--accent-rgb) / .28);--border-muted:rgb(var(--accent-rgb) / .27);--border-strong:rgb(var(--accent-rgb) / .5);--control-border:rgb(var(--accent-rgb) / .74);--focus-ring:rgb(var(--accent-rgb) / .34);--shadow-glow:0 0 24px rgb(var(--accent-rgb) / .18)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background-deep);margin:0;scroll-padding-top:88px}body{color:var(--text-primary);background:var(--background-deep);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:15px;font-weight:400;line-height:1.65}h1,h2,h3,p,ul{margin-block:0}button,input,textarea{font:inherit;margin:0}button{border:0}img,picture,svg{display:block}img{max-width:100%}a{color:inherit}button,a,input,textarea{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .22)}button:not(:disabled),a[href]{cursor:pointer}button:disabled,input:disabled,textarea:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 5px var(--focus-ring)}[data-route-heading]:focus{box-shadow:none;outline:0}::selection{color:var(--accent-ink);background:var(--accent)}h1,h2,h3,.button,.badge,.project-back,.field label{font-family:var(--font-mono)}.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}.app-icon{flex:none;width:1.12rem;height:1.12rem}.page-shell{isolation:isolate;min-height:100svh;position:relative}.page-background{z-index:-1;pointer-events:none;background:radial-gradient(70% 45% at 50% 112%, rgb(var(--accent-rgb) / .055), transparent 76%), linear-gradient(150deg, var(--background-base), var(--background-deep) 68%);position:fixed;inset:0;overflow:clip}.page-background:before{content:"";opacity:.22;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.14' filter='url(%23n)'/%3E%3C/svg%3E"),linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff07 1px,#0000 1px);background-size:180px 180px,48px 48px,48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 10% 90%,#0000);mask-image:linear-gradient(#0000,#000 10% 90%,#0000)}.page-background:after{aspect-ratio:1;content:"";opacity:.16;background:radial-gradient(circle, rgb(var(--accent-rgb) / .48), transparent 68%);filter:blur(36px);will-change:transform, opacity;border-radius:50%;width:clamp(320px,56vw,780px);animation:16s ease-in-out infinite alternate glow-drift;position:absolute;top:-18%;right:-12%;transform:translate(0,0)scale(.92)}.app-main{width:min(100%, var(--container));padding:clamp(28px, 4vw, 44px) calc(var(--viewport-padding) + env(safe-area-inset-right)) calc(clamp(52px, 6vw, 72px) + env(safe-area-inset-bottom)) calc(var(--viewport-padding) + env(safe-area-inset-left));margin-inline:auto}.page-view{gap:clamp(42px,5vw,62px);display:grid}.page-view>section,.page-view>div{min-width:0;scroll-margin-top:82px}.profile-view>section{animation:view-enter .44s var(--ease-out) both}.profile-view>section:nth-child(2){animation-delay:50ms}.profile-view>section:nth-child(3){animation-delay:90ms}.profile-view>section:nth-child(4){animation-delay:.13s}.project-view{min-height:calc(100svh - 112px)}.project-page{min-height:inherit;grid-template-rows:auto minmax(0,1fr);gap:24px;display:grid}.project-toolbar{min-width:0;animation:view-enter .38s var(--ease-out) both;justify-content:space-between;align-items:center;gap:20px;display:flex}.project-page__content{animation:view-enter .44s 55ms var(--ease-out) both;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);align-items:center;gap:clamp(34px,6vw,88px);padding-block:clamp(26px,7vh,76px);display:grid}.project-back{min-width:0;min-height:44px;color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;transition:color var(--duration-interactive) var(--ease-interactive), transform var(--duration-interactive) var(--ease-interactive);align-items:center;gap:8px;padding-inline:3px;font-size:11px;font-weight:700;line-height:1.35;text-decoration:none;display:inline-flex}.project-back__icon{width:15px;height:15px;transform:rotate(180deg)}.project-back:active{color:var(--accent);transform:translate(-1px)scale(.98)}.section-heading{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:18px;font-size:11px;font-weight:700;display:flex}.section-heading:before{content:"//";color:var(--accent);text-shadow:0 0 9px var(--accent-glow)}.section-heading .app-icon{width:16px;height:16px;color:var(--accent)}.section-heading:after{content:"";opacity:.7;background:linear-gradient(90deg, var(--accent), transparent);width:min(72px,11vw);height:1px;margin-left:3px}.surface-card,.section-surface{border:1px solid var(--border-muted);color:var(--text-primary);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff05, var(--shadow-panel);position:relative}.surface-card:before,.section-surface:before{content:"";pointer-events:none;opacity:.12;background:repeating-linear-gradient(#ffffff09 0 1px,#0000 1px 5px);position:absolute;inset:0}.surface-card{border-radius:var(--radius-sm)}.section-surface{border-radius:var(--radius-md)}.surface-card--interactive{transition:transform var(--duration-interactive) var(--ease-interactive), border-color var(--duration-interactive) var(--ease-interactive), box-shadow var(--duration-interactive) var(--ease-interactive), background-color var(--duration-interactive) var(--ease-interactive)}.surface-card--interactive:active{border-color:var(--accent);background:var(--surface-hover);box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .12), var(--shadow-panel);transform:translateY(1px)scale(.995)}.profile-hero{grid-template-columns:minmax(0,1fr) minmax(210px,.34fr);align-items:center;gap:clamp(28px,5vw,72px);padding-block:8px;display:grid}.profile-hero__copy{min-width:0}.profile-hero h1,.project-hero h1{color:var(--text-primary);letter-spacing:-.06em;overflow-wrap:anywhere;font-weight:700;line-height:1.08}.profile-hero h1{max-width:780px;text-shadow:0 0 20px rgb(var(--accent-rgb) / .14);font-size:clamp(38px,5.4vw,68px)}.profile-hero__lead{max-width:660px;color:var(--text-secondary);margin-top:clamp(28px,3vw,38px);font-size:clamp(16px,1.8vw,20px);line-height:1.62}.terminal-title{width:100%;min-width:0;display:grid}.terminal-title__measure,.terminal-title__typed{overflow-wrap:anywhere;white-space:pre-wrap;grid-area:1/1;min-width:0}.terminal-title__measure{visibility:hidden}.terminal-title__typed{position:relative}.terminal-title__cursor{vertical-align:-.04em;background:var(--accent);width:.075em;height:.88em;box-shadow:0 0 9px var(--accent-glow);margin-left:.11em;animation:.68s step-end infinite caret-blink;display:inline-block}.profile-hero__portrait{aspect-ratio:1;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-strong);width:clamp(210px,24vw,286px);box-shadow:0 0 0 7px rgb(var(--accent-rgb) / .035), 0 0 32px rgb(var(--accent-rgb) / .18);justify-self:end;display:block;position:relative;overflow:hidden}.profile-hero__portrait:before,.profile-hero__portrait:after{z-index:2;content:"";border-color:var(--accent);pointer-events:none;width:28px;height:28px;position:absolute}.profile-hero__portrait:before{border-top:1px solid;border-left:1px solid;top:10px;left:10px}.profile-hero__portrait:after{border-bottom:1px solid;border-right:1px solid;bottom:10px;right:10px}.profile-hero__portrait img{object-fit:cover;object-position:center;filter:saturate(.7)contrast(1.08);width:100%;height:100%}.badge{border:1px solid var(--border-muted);border-radius:var(--radius-xs);min-height:26px;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;background:#0000002e;align-items:center;padding:4px 9px;font-size:10px;line-height:1.2;display:inline-flex}.badge--meta{color:var(--text-muted)}.button-row{flex-wrap:wrap;gap:9px;margin-top:30px;display:flex}.profile-actions__primary,.profile-actions__social{flex-wrap:wrap;gap:9px;display:flex}.button{border-radius:var(--radius-xs);min-height:44px;color:var(--text-primary);letter-spacing:.035em;text-transform:uppercase;transition:transform var(--duration-interactive) var(--ease-interactive), border-color var(--duration-interactive) var(--ease-interactive), color var(--duration-interactive) var(--ease-interactive), background-color var(--duration-interactive) var(--ease-interactive), box-shadow var(--duration-interactive) var(--ease-interactive);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding-inline:14px;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.button:after{content:"";pointer-events:none;opacity:.13;background:repeating-linear-gradient(#0000 0 2px,#0000008c 2px 3px);position:absolute;inset:0}.button>*{z-index:1;position:relative}.button--primary{border-color:var(--accent);color:var(--accent-ink);background:var(--accent);box-shadow:0 0 18px var(--accent-glow)}.button--secondary{border-color:var(--border-strong);color:var(--accent);background:rgb(var(--accent-rgb) / .045)}.button--ghost{min-width:44px;color:var(--accent);border-color:var(--border-muted);padding-inline:0}.button--language{min-width:44px;padding-inline:10px}.button--compact{min-height:44px;font-size:11px}.button:active:not(:disabled){box-shadow:none;transform:translateY(1px)scale(.985)}.button--secondary:active:not(:disabled),.button--ghost:active:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.button:disabled{opacity:.56}.project-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:0;list-style:none;display:grid}.project-list>li{min-width:0}.project-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;min-height:196px;padding:clamp(24px,3vw,34px);text-decoration:none;display:grid;overflow:hidden}.project-card__content{min-width:0}.project-card__title{color:var(--accent);letter-spacing:-.045em;margin-bottom:16px;font-size:22px;font-weight:700}.project-card__description{max-width:410px;color:var(--text-secondary);font-size:14px;line-height:1.62}.project-card__arrow{border:1px solid rgb(var(--accent-rgb) / .38);border-radius:var(--radius-xs);width:40px;height:40px;color:var(--accent);transition:color var(--duration-interactive) var(--ease-interactive), border-color var(--duration-interactive) var(--ease-interactive), background-color var(--duration-interactive) var(--ease-interactive), transform var(--duration-interactive) var(--ease-interactive);background:0 0;place-items:center;display:grid}.experience-list{gap:11px;display:grid}.experience-card{padding:clamp(17px,2.4vw,21px)}.experience-card__header{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:44px;display:grid}.experience-card__logo{place-items:center;width:44px;height:44px;display:grid}.experience-card__logo img{object-fit:contain;width:100%;height:100%}.experience-card__company{letter-spacing:-.03em;min-width:0;font-size:16px;font-weight:700}.experience-card__bullets{border-top:1px solid var(--border-muted);color:var(--text-secondary);gap:8px;margin-top:15px;padding:15px 0 0 19px;font-size:14px;line-height:1.68;display:grid}.experience-card__bullets li{padding-left:3px}.experience-card__bullets li::marker{color:var(--accent)}.contact-surface{padding:clamp(20px,3vw,32px)}.contact-surface__intro{max-width:680px}.contact-surface__intro h3{color:var(--accent);letter-spacing:-.055em;text-shadow:0 0 14px rgb(var(--accent-rgb) / .16);margin-bottom:8px;font-size:clamp(21px,3vw,30px)}.contact-surface__intro p{color:var(--text-secondary);font-size:14px;line-height:1.65}.contact-form{gap:16px;display:grid}.contact-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{align-content:start;gap:7px;min-width:0;display:grid}.field label{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.field input,.field textarea{border:1px solid var(--control-border);border-radius:var(--radius-xs);width:100%;color:var(--text-primary);transition:border-color var(--duration-fast), box-shadow var(--duration-fast), background-color var(--duration-fast), opacity var(--duration-fast);background:#01010185;padding:12px 13px;font-size:14px;line-height:1.5}.field input{min-height:48px}.field textarea{resize:vertical;min-height:132px}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted);opacity:1}.field input:focus,.field textarea:focus{border-color:var(--accent);background:rgb(var(--accent-rgb) / .045);outline:0}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 5px var(--focus-ring), 0 0 15px rgb(var(--accent-rgb) / .15)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field input:disabled,.field textarea:disabled{opacity:.58}.field__error{color:var(--danger);font-size:13px;line-height:1.45}.contact-form__message{min-height:24px}.contact-form__message:empty{display:none}.form-error{color:var(--danger);align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;display:flex}.form-error .app-icon{margin-top:2px}.form-state{text-align:center;place-items:center;min-height:290px;padding:30px 20px;display:grid}.form-state__inner{max-width:390px}.form-state__icon{border:1px solid var(--border-strong);border-radius:var(--radius-xs);width:44px;height:44px;color:var(--accent);background:var(--accent-soft);place-items:center;margin:0 auto 14px;display:grid}.form-state h3{margin-bottom:6px;font-size:18px}.form-state p{color:var(--text-secondary);margin-bottom:18px;font-size:14px}.app-icon--spin{animation:.85s linear infinite icon-spin}.project-hero{min-width:0}.project-hero h1{text-shadow:0 0 18px rgb(var(--accent-rgb) / .17);margin-bottom:16px;font-size:clamp(38px,5vw,62px)}.project-hero__tagline{max-width:670px;color:var(--text-secondary);font-size:clamp(16px,1.7vw,18px);line-height:1.68}.project-hero .button-row{margin-top:27px}.feature-section{min-width:0}.feature-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:11px;display:grid}.feature-card{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:14px;height:100%;padding:17px;display:grid}.feature-card>div:last-child{align-self:center;min-width:0}.feature-card__icon{border:1px solid rgb(var(--accent-rgb) / .5);border-radius:var(--radius-xs);width:40px;height:40px;color:var(--accent);background:var(--accent-soft);place-items:center;display:grid}.feature-card__icon .app-icon{width:18px;height:18px}.feature-card h3{color:var(--accent);letter-spacing:-.035em;margin-bottom:6px;font-size:14px;font-weight:700}.feature-card p{color:var(--text-secondary);font-size:14px;line-height:1.62}.fade-enter-active,.fade-leave-active{transition:opacity .18s var(--ease-out), transform .18s var(--ease-out)}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(7px)}@media (hover:hover) and (pointer:fine){.project-back:hover{color:var(--accent);transform:translate(-2px)}.surface-card--interactive:hover{border-color:var(--accent);background:var(--surface-hover);box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .12), var(--shadow-panel), var(--shadow-glow);transform:translateY(-2px)}.button:hover:not(:disabled){transform:translateY(-1px)}.button--primary:hover:not(:disabled){box-shadow:0 0 28px rgb(var(--accent-rgb) / .42)}.button--secondary:hover:not(:disabled),.button--ghost:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 16px rgb(var(--accent-rgb) / .13)}.project-card:hover .project-card__arrow{border-color:var(--accent);color:var(--accent-ink);background:var(--accent);transform:translate(4px)}.field input:hover:not(:disabled),.field textarea:hover:not(:disabled){border-color:var(--accent)}}@keyframes caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}@keyframes view-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-drift{0%{opacity:.12;transform:translate(-2%,-1%)scale(.9)}to{opacity:.2;transform:translate(4%,3%)scale(1.04)}}@keyframes icon-spin{to{transform:rotate(1turn)}}@media (width<=1024px){.project-page__content{grid-template-columns:1fr;align-content:center;gap:42px}.project-hero{max-width:760px}}@media (width<=720px){.project-list{grid-template-columns:1fr}}@media (width<=640px){.page-view{gap:44px}.profile-hero{text-align:center;grid-template-columns:1fr;gap:26px}.profile-hero__portrait{order:-1;justify-self:center;width:clamp(176px,48vw,220px)}.profile-hero__portrait:before,.profile-hero__portrait:after{display:none}.profile-hero h1{font-size:clamp(35px,10.5vw,48px)}.profile-hero__lead{margin-inline:auto;font-size:16px}.button-row{justify-content:center;margin-top:25px}.section-heading{justify-content:center}.section-heading:after{display:none}.contact-form__grid,.feature-list{grid-template-columns:1fr}.contact-surface{padding:20px}.project-page__content,.project-hero{text-align:center}.project-hero__tagline{margin-inline:auto}.feature-card{text-align:left}}@media (width<=560px){.experience-card__header{grid-template-columns:56px minmax(0,1fr);grid-template-areas:"logo company""logo period";gap:4px 13px;min-height:56px}.experience-card__logo{grid-area:logo;width:56px;height:56px}.experience-card__company{grid-area:company;align-self:end}.experience-card__header .badge{grid-area:period;place-self:start;min-width:0;max-width:100%;padding-inline:7px}}@media (width<=420px){.project-toolbar{gap:12px}.project-back{font-size:10px}.profile-actions__primary .button,.project-hero .button-row>.button,.contact-form>div:last-child .button,.profile-actions__primary,.profile-actions__social{width:100%}.profile-actions__social{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.profile-actions__social .button{width:100%;min-width:0}.project-card{gap:16px;min-height:0;padding:22px 20px}.project-card__title{margin-bottom:12px}.project-card__arrow{width:36px;height:36px}.experience-card__bullets{padding-left:17px}.feature-card{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:15px}.feature-card__icon{width:38px;height:38px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
