/* Portfolio polish layer: safe against the existing Vite bundle. */
:root{--focus-ring:0 0 0 3px rgba(242,166,90,.24);--surface-shadow:0 1px 1px rgba(0,0,0,.18),0 18px 48px rgba(0,0,0,.16);--surface-shadow-hover:0 2px 2px rgba(0,0,0,.2),0 26px 68px rgba(0,0,0,.28)}
html{text-rendering:optimizeLegibility}body{-moz-osx-font-smoothing:grayscale}h1,h2,h3{text-wrap:balance}p,li{text-wrap:pretty}
.site-nav{transition-property:height,border-color,background-color,backdrop-filter;transition-duration:.25s;transition-timing-function:cubic-bezier(.2,0,0,1)}.site-nav__links a,.nav-cta,.language-toggle,.menu-toggle,.hero__socials a,.text-link,.project-links a,.contact-links a{transition-property:color,border-color,background-color,transform,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1)}
.nav-cta,.language-toggle,.menu-toggle,.hero__socials a,.project-links a,.portfolio-chat__toggle,.portfolio-chat__header>button,.portfolio-chat__form button{min-width:44px;min-height:44px}.nav-cta{box-shadow:0 1px 0 rgba(244,241,234,.05)}.nav-cta:hover{box-shadow:0 10px 28px rgba(0,0,0,.24)}
.button,.portfolio-chat__toggle,.portfolio-chat__form button,.portfolio-chat__prompts button{transition-property:transform,background-color,border-color,color,box-shadow,opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1)}.button:active,.portfolio-chat__toggle:active,.portfolio-chat__form button:active,.portfolio-chat__prompts button:active{transform:scale(.96)}.button--primary{box-shadow:0 10px 28px rgba(242,166,90,.16)}.button--primary:hover{box-shadow:0 16px 36px rgba(242,166,90,.26)}
:where(a,button,input,textarea):focus-visible{outline:0;box-shadow:var(--focus-ring)}.hero__visual{border-color:rgba(244,241,234,.16);box-shadow:inset 0 0 0 1px rgba(0,0,0,.22),0 30px 80px rgba(0,0,0,.18)}.visual-core{outline:1px solid rgba(0,0,0,.1);box-shadow:0 14px 38px rgba(0,0,0,.28)}.visual-label{box-shadow:0 8px 20px rgba(0,0,0,.16)}.hero__metrics strong{font-variant-numeric:tabular-nums}
.expertise-card,.stack-panel,.project-card,.portfolio-chat__panel{transition-property:background-color,border-color,box-shadow,transform,padding;transition-duration:.25s;transition-timing-function:cubic-bezier(.2,0,0,1)}.expertise-card{box-shadow:inset 0 1px 0 rgba(244,241,234,.015)}.expertise-card:hover{border-color:rgba(244,241,234,.26);box-shadow:var(--surface-shadow);transform:translateY(-3px);z-index:1}.tag-list span{transition-property:color,border-color,background-color,transform;transition-duration:.18s;transition-timing-function:cubic-bezier(.2,0,0,1)}.expertise-card:hover .tag-list span{border-color:rgba(242,166,90,.34);color:var(--ink)}.stack-panel{box-shadow:var(--surface-shadow);border-color:rgba(244,241,234,.16)}.project-card:hover{box-shadow:var(--surface-shadow-hover);border-color:rgba(244,241,234,.23)}.project-links a:hover{transform:translateY(-2px)}
.portfolio-chat__toggle{box-shadow:0 2px 2px rgba(0,0,0,.22),0 16px 34px rgba(0,0,0,.34)}.portfolio-chat__panel{border-color:rgba(244,241,234,.24);box-shadow:0 2px 2px rgba(0,0,0,.24),0 34px 90px rgba(0,0,0,.52)}.portfolio-chat__message span{border-radius:10px}.portfolio-chat__message--assistant span{border-top-left-radius:3px}.portfolio-chat__message--user span{border-bottom-right-radius:3px}
@media(max-width:800px){.section-block{padding-block:78px}.hero__metrics strong{font-size:20px}.expertise-card:hover,.project-card:hover{transform:none}.portfolio-chat{bottom:16px;right:16px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important}}
