.entry{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:grid;place-items:center;z-index:1}@media(pointer:fine){.entry,.entry *{cursor:none}}.entry__stack{display:flex;flex-direction:column;align-items:center;gap:clamp(2rem,5vh,3.4rem);padding:1rem;transform:translateY(-3vh)}.entry-headline{font-size:clamp(2.2rem,5.6vw,4.3rem);font-weight:300;letter-spacing:.01em;text-align:center;min-height:1.4em}.hl-char{position:relative;display:inline;white-space:pre}.hl-hey{color:var(--white);font-style:italic;font-weight:200}.hl-name{color:var(--lavender)}.hl-char--pending{visibility:hidden}.hl-char--in{display:inline-block;animation:char-in .42s cubic-bezier(.24,.6,.2,1) both}@keyframes char-in{0%{opacity:0;filter:blur(7px);transform:translateY(8px)}to{opacity:1;filter:blur(0);transform:none}}.entry-headline__chars{animation:chroma-shimmer 6s ease-in-out infinite}@keyframes chroma-shimmer{0%,90%,to{text-shadow:none}93%{text-shadow:2px 0 rgba(205,180,246,.4),-2px 0 rgba(255,255,255,.3)}96%{text-shadow:-1.5px 0 rgba(205,180,246,.32),1.5px 0 rgba(255,255,255,.24)}}.hl-caret{display:inline-block;width:3px;height:.95em;margin-left:.12em;background:var(--lavender);vertical-align:text-bottom;animation:caret-blink .85s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.hl-caret--morph{animation:caret-morph .42s cubic-bezier(.5,0,.4,1) forwards}@keyframes caret-morph{0%{opacity:1}55%{width:16px;height:16px;border-radius:50%;background:transparent;box-shadow:0 0 0 2px var(--lavender),0 0 18px 2px #cdb4f6cc;transform:translateY(30px);opacity:1}to{width:16px;height:16px;border-radius:50%;background:transparent;box-shadow:0 0 0 2px var(--lavender),0 0 24px 4px #cdb4f600;transform:translateY(90px) scale(1.6);opacity:0}}.avatar{position:relative;width:clamp(150px,19vw,205px);aspect-ratio:1;opacity:0;transition:opacity .7s ease}.avatar--lit{opacity:1}.avatar__ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg 268deg,rgba(205,180,246,.35) 290deg,#f3ecff 324deg,rgba(205,180,246,.35) 350deg,transparent 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 3.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 3.5px));filter:drop-shadow(0 0 4px rgba(216,195,250,.8))}.avatar--lit .avatar__ring{animation:ring-orbit 5s linear infinite}@keyframes ring-orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.avatar__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:50%;object-fit:cover;-webkit-user-select:none;user-select:none}.login-zone{padding:18px 30px}.login-btn{position:relative;border-radius:999px;background:linear-gradient(180deg,#fff,#eceaf1);padding:.72rem 1.9rem .72rem 2.3rem;box-shadow:0 6px 22px #ffffff1f,0 12px 34px #0000008c,inset 0 -3px 6px #0000001f,inset 0 2px 3px #ffffffe6;animation:btn-float 3.4s ease-in-out infinite;transition:box-shadow .25s ease,transform .25s ease}.login-btn:hover{box-shadow:0 10px 30px #cdb4f647,0 18px 44px #0009,inset 0 -3px 6px #0000001f,inset 0 2px 3px #ffffffe6}@keyframes btn-float{0%,to{translate:0 -3px}50%{translate:0 3px}}.login-btn__inner{display:flex;align-items:center;gap:.55rem}.login-btn__text{font-size:1.5rem;font-weight:300;color:#111;letter-spacing:.02em;line-height:1}.login-btn__cursor{overflow:visible;margin-top:2px}.login-arrow{animation:arrow-autoclick 3.8s ease-in-out infinite;transform-origin:28px 28px}.spark{opacity:.35;transform-origin:19px 14px;animation:spark-autoflash 3.8s ease-in-out infinite}@keyframes arrow-autoclick{0%,82%,96%,to{transform:none}87%{transform:translate(2px,3px) scale(.92)}92%{transform:translate(.5px,.5px)}}@keyframes spark-autoflash{0%,80%,98%,to{opacity:.35;transform:scale(1)}87%,92%{opacity:1;transform:scale(1.14)}}.login-btn:hover .login-arrow{animation:arrow-autoclick-hover 1.5s ease-in-out infinite}.login-btn:hover .spark{animation:spark-autoflash-hover 1.5s ease-in-out infinite}@keyframes arrow-autoclick-hover{0%,55%,90%,to{transform:none}68%{transform:translate(3px,4px) scale(.88) rotate(-4deg)}80%{transform:translate(.5px,.5px)}}@keyframes spark-autoflash-hover{0%,50%,95%,to{opacity:.4;transform:scale(1)}68%,80%{opacity:1;transform:scale(1.25)}}.entry-cursor{position:fixed;top:0;left:0;z-index:100;opacity:0;pointer-events:none;transition:opacity .25s ease;will-change:transform}.entry-cursor svg{display:block;margin:-10px 0 0 -13px}.ec-arrow{transition:transform .12s ease;transform-origin:28px 28px}.ec-spark{opacity:0;transition:opacity .15s ease;transform-origin:19px 14px}.entry-cursor--press .ec-arrow{transform:translate(2px,3px) scale(.9)}.entry-cursor--press .ec-spark{opacity:1}.burst-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:50;pointer-events:none}.entry-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 2px,transparent 2px 5px),linear-gradient(0deg,rgba(205,180,246,.12) 10%,transparent 30%,rgba(255,255,255,.1) 48%,transparent 65%,rgba(205,180,246,.1) 85%),#e2d5f91a;animation:flash-slices .16s steps(3) forwards}@keyframes flash-slices{0%{transform:translate(0);opacity:1}33%{transform:translate(-14px)}66%{transform:translate(11px);opacity:.85}to{transform:translate(0);opacity:0}}@media(prefers-reduced-motion:reduce){.entry-headline__chars,.login-btn,.spark,.login-arrow,.avatar--lit .avatar__ring{animation:none}.hl-char--in{animation-duration:1ms}}.glitch-wipe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;display:flex;flex-direction:column}.glitch-wipe--fade{background:#000;opacity:0}.glitch-wipe__slice{flex:1 0 auto;height:10.4%;margin-top:-.4%;background:var(--wipe-bg);transform:scaleX(0);box-shadow:inset 2px 0 #cdb4f666,inset -2px 0 #ffffff4d;will-change:transform}.education{min-height:100vh;max-width:1240px;margin:0 auto;padding:clamp(6rem,15vh,9rem) clamp(1.25rem,5vw,4rem) clamp(4rem,10vh,6rem);display:flex;align-items:center}.education__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5.5rem);width:100%;align-items:start}.edu-col{opacity:0;transform:translateY(46px);transition:opacity .6s ease,transform .65s cubic-bezier(.3,.7,.2,1)}.education--in .edu-col{opacity:1;transform:none}.education--reduced .edu-col,.education--reduced .edu-pill{transition:none}.edu-col__logo-chip{display:inline-flex;align-items:center;background:var(--logo-chip-bg);border-radius:12px;padding:.8rem 1.2rem;margin-bottom:1.6rem;min-height:96px;transition:transform .35s cubic-bezier(.3,.7,.2,1),box-shadow .3s ease}.edu-col__logo-chip img{max-height:84px;width:auto;max-width:100%;object-fit:contain}.edu-col__logo-chip:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 30px #cdb4f659}[data-theme=light] .edu-col__logo-chip:hover{box-shadow:0 12px 30px #5a46822e}[data-theme=light] .edu-col{padding:1.4rem 1.5rem 1.6rem;border-radius:22px;background:linear-gradient(155deg,#ffffffe6,#f6f0ff99);border:1px solid rgba(205,180,246,.35);box-shadow:0 16px 40px #5a468214;transition:opacity .6s ease,transform .65s cubic-bezier(.3,.7,.2,1),box-shadow .4s ease}[data-theme=light] .education--in .edu-col:hover{box-shadow:0 22px 52px #5a468224,0 0 28px #cdb4f64d}[data-theme=light] .edu-col__logo-chip{padding:0}.edu-col__name{display:flex;align-items:center;gap:.6rem;font-size:clamp(1.3rem,2vw,1.6rem);font-weight:700;color:var(--lavender);transition:text-shadow .3s ease}[data-theme=light] .edu-col__name{color:#7d5fc0}.edu-col:hover .edu-col__name{text-shadow:0 0 16px rgba(205,180,246,.75)}.edu-col__bullet{width:28px}.edu-col:hover .edu-col__bullet{animation:bullet-nudge .7s ease-in-out infinite}@keyframes bullet-nudge{0%,to{transform:translate(0)}50%{transform:translate(5px)}}.edu-col__degree{margin-top:.5rem;font-size:1.1rem;color:var(--fg);transition:transform .3s cubic-bezier(.3,.7,.2,1)}.edu-col:hover .edu-col__degree{transform:translate(4px)}.edu-col__period{margin-top:.2rem;font-size:.98rem;color:var(--muted)}.edu-col__subjects{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem .55rem;margin-top:1.5rem}.edu-pill{opacity:0;transform:scale(.55) translateY(10px)}.education--in .edu-pill{opacity:1;transform:none;transition:opacity .4s ease,transform .45s cubic-bezier(.34,1.56,.5,1),box-shadow .25s ease}@media(max-width:760px){.education{min-height:auto}.education__grid{grid-template-columns:1fr;gap:3.5rem}.edu-col__logo-chip img{max-height:64px}}.experience{position:relative;min-height:100vh;display:flex;align-items:center;padding:clamp(6rem,14vh,8rem) clamp(1.25rem,6vw,5rem);overflow:hidden}.experience__inner{position:relative;max-width:880px;margin:0 auto;width:100%}[data-theme=light] .experience__inner:before{content:"";position:absolute;top:-2.5rem;right:-3rem;bottom:-2.5rem;left:-3rem;border-radius:28px;background:linear-gradient(150deg,#cdb4f629,#cdb4f60a 60%);box-shadow:0 20px 60px #5a46821a;z-index:-1;pointer-events:none}.experience__logo{width:clamp(220px,26vw,320px);opacity:0;transform:translateY(30px);transition:opacity .55s ease,transform .6s cubic-bezier(.3,.7,.2,1)}[data-theme=light] .experience__logo{background:#101014;border-radius:10px;padding:.9rem 1.2rem}.experience--in .experience__logo{opacity:1;transform:none}.experience__role{margin-top:2.2rem;font-size:clamp(1.15rem,1.9vw,1.45rem);font-weight:700;color:var(--fg);opacity:0;transform:translateY(24px);transition:opacity .5s ease .12s,transform .55s cubic-bezier(.3,.7,.2,1) .12s}.experience--in .experience__role{opacity:1;transform:none}.experience__text{margin-top:1.3rem;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.75;color:var(--fg);text-align:justify;opacity:0;transform:translateY(24px);transition:opacity .5s ease .22s,transform .55s cubic-bezier(.3,.7,.2,1) .22s}.experience--in .experience__text{opacity:1;transform:none}.experience__skills{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem .55rem;margin-top:2.2rem}.exp-pill{opacity:0;transform:scale(.55) translateY(10px)}.experience--in .exp-pill{opacity:1;transform:none;transition:opacity .4s ease,transform .45s cubic-bezier(.34,1.56,.5,1),box-shadow .25s ease}.experience--reduced .experience__logo,.experience--reduced .experience__role,.experience--reduced .experience__text,.experience--reduced .exp-pill{transition:none}.experience__signature{position:absolute;left:clamp(.8rem,3vw,2.5rem);bottom:1.5rem;width:clamp(130px,14vw,190px);opacity:.92;pointer-events:none}[data-theme=light] .experience__signature{filter:drop-shadow(0 0 1px rgba(90,70,130,.7)) drop-shadow(0 2px 8px rgba(90,70,130,.35))}.juggler{position:absolute;right:clamp(.8rem,3vw,2.5rem);bottom:clamp(7rem,14vh,9.5rem);width:clamp(120px,13vw,180px);pointer-events:none}.juggler__art{width:100%;opacity:.9;animation:juggler-bob 1.5s ease-in-out infinite}@keyframes juggler-bob{0%,to{transform:translateY(0) rotate(-1.5deg)}25%{transform:translateY(3px) rotate(0)}50%{transform:translateY(0) rotate(1.5deg)}75%{transform:translateY(3px) rotate(0)}}.juggler__balls{position:absolute;left:50%;top:-12%;width:62%;height:62%;transform:translate(-50%)}.juggler__ball{position:absolute;bottom:0;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#f3ecff,var(--lavender) 62%,#a888e0);box-shadow:0 0 10px #cdb4f6bf;animation:juggle-arc 1.5s ease-in-out infinite}.juggler__ball--1{animation-delay:0s}.juggler__ball--2{animation-delay:-.5s}.juggler__ball--3{animation-delay:-1s}@keyframes juggle-arc{0%{left:4%;bottom:2%;transform:scale(.86)}25%{left:30%;bottom:78%;transform:scale(1.06)}50%{left:74%;bottom:92%;transform:scale(1)}70%{left:92%;bottom:8%;transform:scale(.88)}85%{left:48%;bottom:0%;transform:scale(.8)}to{left:4%;bottom:2%;transform:scale(.86)}}@media(prefers-reduced-motion:reduce){.juggler__art,.juggler__ball{animation:none}.juggler__balls{display:none}}@media(max-width:760px){.experience{min-height:auto;padding-bottom:12rem}.experience__signature{width:110px}.experience__juggler{width:100px}}.projects{position:relative;min-height:100vh;overflow:hidden;padding:clamp(4rem,10vh,6rem) clamp(1rem,4vw,3rem)}.projects__stage{position:relative;width:100%;height:max(72vh,560px);perspective:1100px}.folder-zone{position:absolute}.folder{will-change:transform}.folder__bob{animation:folder-bob 3.6s ease-in-out infinite}.projects--reduced .folder__bob{animation:none}@keyframes folder-bob{0%,to{translate:0 -5px}50%{translate:0 6px}}.folder__tilt{position:relative;transform-style:preserve-3d;will-change:transform}.folder__btn{position:relative;display:block;padding:0;cursor:none}@media(pointer:coarse){.folder__btn{cursor:pointer}}.folder__img{position:relative;width:clamp(150px,15vw,210px);transition:filter .35s ease;filter:drop-shadow(0 14px 22px rgba(0,0,0,.5))}[data-theme=light] .folder__img{filter:drop-shadow(0 14px 22px rgba(90,70,130,.28))}.folder-zone--open .folder__img{filter:drop-shadow(0 24px 34px rgba(0,0,0,.65)) drop-shadow(0 0 20px color-mix(in srgb,var(--accent) 50%,transparent))}.folder__logo{position:absolute;left:50%;top:58%;width:62%;margin-left:-31%;translate:0 -50%;will-change:transform;filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));animation:logo-drift 4.4s ease-in-out infinite;transition:scale .35s cubic-bezier(.34,1.56,.5,1),filter .3s ease}.projects--reduced .folder__logo{animation:none}@keyframes logo-drift{0%,to{margin-top:-3px}50%{margin-top:4px}}.folder-zone--open .folder__logo{scale:1.12;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45)) drop-shadow(0 0 16px color-mix(in srgb,var(--accent) 65%,transparent))}.project-card{position:absolute;top:-4%;width:250px;padding:.8rem .9rem .85rem;background:var(--card-bg);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid color-mix(in srgb,var(--accent) 55%,var(--card-border));border-radius:14px;box-shadow:0 18px 40px #00000073,0 0 22px color-mix(in srgb,var(--accent) 20%,transparent);opacity:0;transform:scale(.45);pointer-events:none;transition:transform .4s cubic-bezier(.34,1.56,.5,1),opacity .26s ease;z-index:5}.project-card--right{left:calc(100% - 10px);transform-origin:left 35%}.project-card--left{right:calc(100% - 10px);transform-origin:right 35%}.folder-zone--open .project-card{opacity:1;transform:scale(1);pointer-events:auto}.project-card__glimpse{width:100%;height:130px;object-fit:cover;object-position:top;border-radius:8px;border:1px solid var(--card-border);background:#fff}.project-card__glimpse--empty{display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,var(--card-bg))}.project-card__glimpse--empty img{width:60%}.project-card__name{margin-top:.6rem;font-size:1.15rem;font-weight:700;color:var(--fg)}.project-card__blurb{margin-top:.25rem;font-size:.88rem;line-height:1.5;color:var(--muted)}.project-card__link{margin-top:.55rem;font-size:.95rem;color:var(--lavender);padding:.2rem 0;border-bottom:1px solid transparent;transition:border-color .25s ease,letter-spacing .25s ease;cursor:none}[data-theme=light] .project-card__link{color:#7d5fc0}@media(pointer:coarse){.project-card__link{cursor:pointer}}.project-card__link:hover,.project-card__link:focus-visible{border-color:var(--lavender);letter-spacing:.03em}@media(max-width:760px){.projects{min-height:auto}.projects__stage{height:auto;display:flex;flex-direction:column;align-items:center;gap:3rem;padding-bottom:2rem}.folder-zone{position:static;display:flex;flex-direction:column;align-items:center}.folder__img{width:min(56vw,240px)}.project-card,.project-card--left,.project-card--right{position:static;width:min(82vw,310px);margin-top:.9rem;transform-origin:top center}}.skills{position:relative;min-height:100vh;height:100vh;display:flex;flex-direction:column;padding:clamp(4.5rem,11vh,6rem) clamp(1.25rem,4vw,3rem) 1.5rem;max-width:1320px;margin:0 auto;overflow:visible}.skills__topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:clamp(.6rem,1.8vh,1.2rem);padding-left:clamp(0px,9vw,128px);padding-top:clamp(.4rem,1.6vh,1.1rem)}.skills__cta{font-size:clamp(.92rem,1.15vw,1.05rem);color:var(--fg);opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .55s cubic-bezier(.3,.7,.2,1)}.skills--in .skills__cta{opacity:1;transform:none}.skills__controls{display:flex;align-items:center;gap:.6rem}.skills__btn{font-size:.95rem;letter-spacing:.06em;color:var(--fg);padding:.35rem .85rem;border-radius:999px;border:1px solid transparent;transition:color .25s ease,transform .28s cubic-bezier(.34,1.56,.5,1),background .25s ease,border-color .25s ease,box-shadow .25s ease}.skills__btn:hover,.skills__btn:focus-visible{color:var(--lavender);transform:translate(3px);background:#cdb4f61f;border-color:#cdb4f673;box-shadow:0 0 16px #cdb4f64d}.skills__btn--reset:hover,.skills__btn--reset:focus-visible{transform:translate(-3px) rotate(-2deg)}[data-theme=light] .skills__btn:hover{color:#7d5fc0}.skills__rows{flex:1;display:flex;flex-direction:column;justify-content:space-evenly;gap:clamp(.5rem,1.6vh,1.2rem);padding-right:clamp(0px,7vw,104px);min-height:0}.skill-row{display:grid;grid-template-columns:clamp(104px,11vw,132px) 1fr;gap:clamp(.8rem,2.2vw,1.8rem);align-items:center;opacity:0;transform:translate(-40px);transition:opacity .55s ease,transform .6s cubic-bezier(.3,.7,.2,1)}.skills--in .skill-row{opacity:1;transform:none}.skills--reduced .skill-row,.skills--reduced .skills__cta{transition:none}.skill-folder-cell{position:relative;display:grid;place-items:center}.skill-folder{position:relative;padding:0;cursor:none;transition:filter .3s ease,transform .3s cubic-bezier(.34,1.56,.5,1)}@media(pointer:coarse){.skill-folder{cursor:pointer}}.skill-folder:hover,.skill-folder:focus-visible{transform:translateY(-3px);filter:drop-shadow(0 0 16px rgba(205,180,246,.6))}.skill-folder:hover .skill-folder__img{animation:folder-eager .55s ease-in-out infinite}@keyframes folder-eager{0%,to{transform:rotate(0)}30%{transform:rotate(-2.5deg)}70%{transform:rotate(2.5deg)}}.skill-folder__img{width:clamp(88px,9vw,116px);display:block}.skill-folder__label{position:absolute;left:50%;top:62%;transform:translate(-50%,-50%);font-size:.98rem;font-weight:700;color:#1c1425;pointer-events:none;white-space:nowrap}.skill-folder__label--glow{position:static;transform:none;pointer-events:auto;color:var(--fg);font-size:1.2rem;animation:label-glow 2.6s ease-in-out infinite}@keyframes label-glow{0%,to{text-shadow:0 0 10px rgba(205,180,246,.55)}50%{text-shadow:0 0 26px rgba(205,180,246,1),0 0 46px rgba(205,180,246,.45)}}.skills--reduced .skill-folder__label--glow{animation:none;text-shadow:0 0 16px rgba(205,180,246,.8)}.skill-row__pills{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem .4rem}.skill-pill{padding:.24rem .75rem;font-size:clamp(.78rem,.95vw,.9rem);animation:pill-pop .45s cubic-bezier(.34,1.56,.5,1) both}.skills--reduced .skill-pill{animation:none}@keyframes pill-pop{0%{opacity:0;transform:scale(.5) translateY(12px) rotate(-2deg)}to{opacity:1;transform:none}}.skills__trash{position:absolute;right:clamp(.9rem,2vw,1.7rem);bottom:clamp(7rem,13.5vh,9rem);width:clamp(50px,4.4vw,64px);transform-origin:bottom center;transition:filter .3s ease}.skills__trash:hover{filter:drop-shadow(0 0 14px rgba(205,180,246,.5))}.skills__trash-can{width:100%}.skills__recycle{position:absolute;left:50%;top:56%;width:44%;transform:translate(-50%,-50%);opacity:.9}.skills-flying-paper{position:fixed;width:44px;height:44px;object-fit:contain;z-index:60;pointer-events:none;filter:drop-shadow(0 6px 12px rgba(0,0,0,.4))}@media(max-width:900px){.skills{height:auto;min-height:100vh;padding-bottom:12rem}.skills__rows{padding-right:0;justify-content:flex-start;gap:1.4rem}}@media(max-width:760px){.skill-row{grid-template-columns:1fr;gap:.6rem}.skill-folder-cell{justify-content:start;place-items:start}.skill-folder__img{width:92px}.skills__trash{width:50px;bottom:6.5rem}}.home{background:var(--bg);min-height:100vh}.top-clock{position:fixed;top:1.3rem;left:1.6rem;z-index:22;font-size:1.15rem;color:var(--fg);letter-spacing:.02em}.theme-toggle{position:fixed;top:1.3rem;right:1.6rem;z-index:22;display:flex;align-items:center;gap:.55rem;font-size:1rem}.theme-toggle__label{color:var(--soft);transition:color .3s ease}.theme-toggle__label--on{color:var(--fg);transition:color .3s ease}.theme-toggle__track{position:relative;width:52px;height:26px;border-radius:999px;background:#2a2333;border:1px solid rgba(205,180,246,.4);transition:background .3s ease}[data-theme=light] .theme-toggle__track{background:#e9e2f6}.theme-toggle__thumb{position:absolute;top:2px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--lavender);box-shadow:0 1px 6px #0006;transition:transform .3s cubic-bezier(.34,1.56,.5,1)}.theme-toggle__track--light .theme-toggle__thumb{transform:translate(25px)}.nav{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:center;padding:1.6rem 2rem 1rem;background:linear-gradient(var(--nav-fade),transparent);transition:transform .45s cubic-bezier(.3,.7,.2,1),opacity .4s ease,filter .4s ease}.nav--hidden{transform:translateY(-110%);opacity:0;filter:blur(5px)}.nav__list{display:flex;gap:clamp(2rem,7vw,5.6rem);list-style:none}.nav__link{position:relative;display:inline-flex;align-items:center;gap:.45rem;font-size:1.25rem;font-weight:400;letter-spacing:.02em;color:var(--fg);padding:.35rem .15rem;transition:transform .3s cubic-bezier(.34,1.56,.5,1),text-shadow .3s ease}.nav__link:hover,.nav__link:focus-visible{transform:translateY(-2px);text-shadow:0 0 18px rgba(205,180,246,.85)}.nav__icon{width:24px;height:24px;object-fit:contain;animation:nav-icon-in .45s cubic-bezier(.34,1.56,.5,1)}@keyframes nav-icon-in{0%{opacity:0;transform:scale(.4) rotate(-20deg)}to{opacity:1;transform:none}}.top-clock{transition:text-shadow .3s ease}.top-clock:hover{text-shadow:0 0 16px rgba(205,180,246,.8)}.theme-toggle__track:hover{box-shadow:0 0 16px #cdb4f680}.nav__link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--lavender);transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.3,.7,.2,1)}.nav__link:hover:after,.nav__link--active:after{transform:scaleX(1)}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(1.4rem,3.5vh,2.4rem);overflow:hidden;padding:6rem 1rem 3rem}.hero__bio{max-width:62ch;text-align:center;font-size:clamp(1rem,1.55vw,1.3rem);line-height:1.6;color:var(--fg);transition:opacity .4s ease,filter .4s ease}.hero__hint{font-size:clamp(.95rem,1.3vw,1.15rem);color:var(--fg);opacity:.85;animation:hint-pulse 3.2s ease-in-out infinite;transition:opacity .4s ease,filter .4s ease}.hero--lens .hero__bio,.hero--lens .hero__hint{opacity:0;filter:blur(5px);pointer-events:none}[data-theme=light] .home{background:linear-gradient(180deg,#fdfbff,#f8f4ff 55%,#fdfbff)}[data-theme=light] .stage-frame:before{content:"";position:absolute;top:-9%;right:-9%;bottom:-9%;left:-9%;border-radius:36px;background:radial-gradient(60% 60% at 50% 50%,rgba(205,180,246,.32),transparent 72%);filter:blur(30px);z-index:-1;pointer-events:none}[data-theme=light] .stage>.stage__img:not(.stage__ghost){filter:grayscale(1);transition:filter .4s ease}[data-theme=light] .lens__glass{filter:none}@keyframes hint-pulse{0%,to{opacity:.55}50%{opacity:.95}}.dust-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.stage-frame{position:relative;width:min(58vw,880px);aspect-ratio:1800 / 1012;perspective:950px}@media(max-width:820px){.stage-frame{width:92vw}}.stage{position:relative;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.stage__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.stage__ghost{opacity:0;pointer-events:none}.stage--glitch .stage__ghost--r{opacity:.55;filter:sepia(1) hue-rotate(215deg) saturate(2.4) brightness(1.1);animation:glitch-slice-a .17s steps(3) both}.stage--glitch .stage__ghost--c{opacity:.5;filter:grayscale(1) brightness(1.85);animation:glitch-slice-b .17s steps(3) both}.stage--glitch>.stage__img:first-child{animation:glitch-jitter .17s steps(2) both}@keyframes glitch-slice-a{0%{clip-path:inset(6% 0 74% 0);transform:translate(8px)}40%{clip-path:inset(48% 0 34% 0);transform:translate(-6px)}75%{clip-path:inset(78% 0 6% 0);transform:translate(10px)}to{clip-path:inset(30% 0 58% 0);transform:translate(-3px)}}@keyframes glitch-slice-b{0%{clip-path:inset(62% 0 22% 0);transform:translate(-9px)}40%{clip-path:inset(12% 0 70% 0);transform:translate(7px)}75%{clip-path:inset(40% 0 44% 0);transform:translate(-11px)}to{clip-path:inset(84% 0 4% 0);transform:translate(5px)}}@keyframes glitch-jitter{0%{transform:translate(-3px)}50%{transform:translate(3px)}to{transform:translate(0)}}.lens{position:absolute;top:0;left:0;width:250px;height:175px;border:2px solid rgba(255,255,255,.92);border-radius:18px;overflow:hidden;opacity:0;pointer-events:none;background:#ffffff0d;box-shadow:0 0 26px #ffffff14,inset 0 0 30px #ffffff0d;will-change:transform,opacity}.lens__glass{position:absolute;top:0;left:0;max-width:none;filter:grayscale(1);will-change:transform}[data-theme=light] .lens{border-color:#7d5fc0cc;background:#ffffff38;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);box-shadow:0 12px 34px #5a468247,0 0 0 1px #cdb4f666,inset 0 0 24px #cdb4f61f}[data-theme=light] .lens__plus path{stroke:#7d5fc0}.lens--touch{pointer-events:auto;touch-action:none}.lens__plus{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.9}.lens-label--touch{pointer-events:auto}.lens-label{position:absolute;top:0;left:0;opacity:0;pointer-events:none;font-size:clamp(1.9rem,3vw,2.7rem);font-weight:400;letter-spacing:.02em;color:#fff;white-space:nowrap;will-change:transform,opacity;text-shadow:0 0 24px rgba(0,0,0,.9)}[data-theme=light] .lens-label{color:var(--fg);text-shadow:0 0 20px rgba(255,255,255,.9)}.cross-cursor{position:fixed;top:0;left:0;z-index:100;opacity:0;pointer-events:none;transition:opacity .25s ease;will-change:transform}.cursor--pulse svg{animation:cursor-pulse .22s ease-out}@keyframes cursor-pulse{40%{transform:scale(.72)}to{transform:scale(1)}}.contacts-dock{position:fixed;left:1.6rem;bottom:1.5rem;z-index:21;transition:opacity .45s ease,transform .45s ease}.contacts-dock--hidden{opacity:0;transform:translateY(14px);pointer-events:none}.contacts-dock__title{display:flex;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:400;color:var(--fg);margin-bottom:.7rem}.contacts-dock__link{width:22px;transition:transform .4s cubic-bezier(.3,.7,.2,1)}.contacts-dock__title:hover .contacts-dock__link{transform:rotate(-24deg) scale(1.15)}.contacts-dock__row{display:flex;align-items:center;gap:.7rem}.contact{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;transition:transform .3s cubic-bezier(.34,1.56,.5,1),box-shadow .3s ease}.contact img{width:40px;height:40px;object-fit:contain}.contact--cv img{width:52px;height:46px}.contact:hover,.contact:focus-visible{animation:contact-wiggle .45s ease-in-out}.contact--in:hover{box-shadow:0 8px 22px #0a66c273,0 0 0 2px #0a66c28c}.contact--mail:hover{box-shadow:0 8px 22px #2196f373,0 0 0 2px #2196f38c}.contact--tel:hover{box-shadow:0 8px 22px #34c75973,0 0 0 2px #34c7598c}.contact--cv:hover{box-shadow:0 8px 22px #cdb4f680,0 0 0 2px #cdb4f699}@keyframes contact-wiggle{0%,to{transform:scale(1) translateY(0) rotate(0)}35%{transform:scale(1.08) translateY(-5px) rotate(-4deg)}70%{transform:scale(1.05) translateY(-3px) rotate(3deg)}}.close-btn{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--muted);border:1px solid transparent;flex:none;transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s cubic-bezier(.34,1.56,.5,1)}.close-btn:hover,.close-btn:focus-visible{color:var(--fg);background:#cdb4f629;border-color:#cdb4f680;transform:rotate(90deg)}.astrid{position:fixed;right:1.5rem;bottom:1.4rem;z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:.8rem}.astrid__fab{width:86px;padding:0;transition:transform .3s cubic-bezier(.34,1.56,.5,1),filter .3s ease;animation:fab-float 3.6s ease-in-out infinite}.astrid__fab:hover,.astrid__fab:focus-visible{transform:scale(1.07) rotate(-3deg);filter:drop-shadow(0 0 18px rgba(205,180,246,.7))}@keyframes fab-float{0%,to{translate:0 -3px}50%{translate:0 3px}}.astrid__panel{width:min(360px,calc(100vw - 2.5rem));height:min(460px,68vh);display:flex;flex-direction:column;background:var(--card-bg);border:1px solid var(--card-border);border-radius:18px;box-shadow:0 24px 60px #0000008c,0 0 30px #cdb4f624;overflow:hidden;animation:panel-in .35s cubic-bezier(.34,1.56,.5,1);transform-origin:bottom right}[data-theme=light] .astrid__panel{background:#ffffffdb;backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border-color:#cdb4f699;box-shadow:0 24px 60px #5a468238,0 0 30px #cdb4f64d}@keyframes panel-in{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.astrid__head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .8rem .7rem 1.1rem;border-bottom:1px solid var(--card-border);background:linear-gradient(120deg,rgba(205,180,246,.2),transparent 65%)}.astrid__name{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;letter-spacing:.02em;color:var(--fg)}.astrid__dot{width:8px;height:8px;border-radius:50%;background:#6ee7a5;box-shadow:0 0 10px #6ee7a5e6;animation:astrid-pulse 2.4s ease-in-out infinite}@keyframes astrid-pulse{0%,to{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.astrid__body{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem}.astrid__hint{font-size:.92rem;color:var(--muted);line-height:1.55}.astrid__msg{max-width:88%;padding:.58rem .85rem;border-radius:14px;font-size:.92rem;line-height:1.55;animation:msg-in .3s cubic-bezier(.3,.7,.2,1);white-space:pre-wrap}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.astrid__msg--user{align-self:flex-end;background:var(--lavender);color:#1c1425;border-bottom-right-radius:4px}.astrid__msg--bot{align-self:flex-start;background:#cdb4f624;color:var(--fg);border-bottom-left-radius:4px}[data-theme=light] .astrid__msg--bot{background:#f3ecff}.astrid__typing{display:flex;gap:4px;padding:.75rem .9rem}.astrid__typing span{width:6px;height:6px;border-radius:50%;background:var(--lavender);animation:typing-dot 1s ease-in-out infinite}.astrid__typing span:nth-child(2){animation-delay:.15s}.astrid__typing span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.astrid__suggestions{display:flex;flex-wrap:wrap;gap:.45rem;padding:0 1rem .8rem}.astrid__chip{font-size:.8rem;padding:.35rem .75rem;border-radius:999px;border:1px solid rgba(205,180,246,.5);color:var(--fg);transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.astrid__chip:hover,.astrid__chip:focus-visible{background:var(--lavender);color:#1c1425;transform:translateY(-2px);box-shadow:0 6px 16px #cdb4f673}.astrid__inputrow{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid var(--card-border)}.astrid__input{flex:1;min-width:0;background:#cdb4f614;border:1px solid var(--card-border);border-radius:10px;padding:.5rem .75rem;color:var(--fg);font-family:inherit;font-size:.92rem;transition:border-color .25s ease,box-shadow .25s ease}[data-theme=light] .astrid__input{background:#faf7ff}.astrid__input:focus{outline:none;border-color:var(--lavender);box-shadow:0 0 0 3px #cdb4f638}.astrid__send{width:40px;flex:none;border-radius:10px;background:var(--lavender);color:#1c1425;font-size:1.15rem;transition:transform .25s cubic-bezier(.34,1.56,.5,1),opacity .2s ease}.astrid__send:hover:not(:disabled){transform:scale(1.08)}.astrid__send:disabled{opacity:.45}.home-shortcut{position:fixed;top:3.4rem;left:1.6rem;z-index:21;width:96px;border-radius:12px;overflow:hidden;padding:0;border:1px solid rgba(205,180,246,.45);background:#000;box-shadow:0 8px 22px #00000073;transition:opacity .4s ease,transform .35s cubic-bezier(.34,1.56,.5,1),box-shadow .3s ease}[data-theme=light] .home-shortcut{box-shadow:0 8px 22px #5a468247}.home-shortcut img{display:block;width:100%}.home-shortcut__hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:.85rem;letter-spacing:.08em;color:#fff;background:#140e1e8c;opacity:0;transition:opacity .25s ease}.home-shortcut:hover,.home-shortcut:focus-visible{transform:scale(1.07);box-shadow:0 12px 30px #00000080,0 0 20px #cdb4f680}.home-shortcut:hover .home-shortcut__hint,.home-shortcut:focus-visible .home-shortcut__hint{opacity:1}.home-shortcut--hidden{opacity:0;transform:translate(-16px);pointer-events:none}.garden{position:relative;display:flex;align-items:center}.garden__toggle{width:30px;height:30px;display:grid;place-items:center;font-size:.95rem;border-radius:9px;opacity:.75;filter:saturate(.85);transition:transform .3s cubic-bezier(.34,1.56,.5,1),opacity .25s ease,box-shadow .3s ease}.garden__toggle:hover,.garden__toggle:focus-visible{opacity:1;transform:scale(1.18) rotate(-6deg);box-shadow:0 0 14px #f7d34573}.garden__panel{position:absolute;bottom:calc(100% + 14px);left:-60px;width:min(490px,calc(100vw - 3rem));padding:.7rem .85rem .75rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;box-shadow:0 20px 50px #00000080,0 0 26px #cdb4f624;animation:panel-in .35s cubic-bezier(.34,1.56,.5,1);transform-origin:bottom left;z-index:30}[data-theme=light] .garden__panel{background:#ffffffe6;backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border-color:#cdb4f699;box-shadow:0 20px 50px #5a468238,0 0 26px #cdb4f64d}.garden__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.55rem}.garden__title{font-size:.95rem;color:var(--fg)}.garden__plot{display:block;width:100%;height:auto;border-radius:10px;border:1px solid rgba(107,68,35,.4);background:linear-gradient(180deg,#a0c88233,#6b442329);cursor:pointer;image-rendering:pixelated;transition:box-shadow .3s ease}.garden__plot:hover{box-shadow:inset 0 0 0 1px #f7d34599,0 0 18px #f7d34547}.garden__plot--done,.garden__plot--done:hover{cursor:default;box-shadow:none}.garden__hint{margin-top:.5rem;font-size:.78rem;color:var(--soft);text-align:center}.garden__hint--celebrate{color:#d9a521;animation:garden-cheer .6s cubic-bezier(.34,1.56,.5,1)}@keyframes garden-cheer{0%{transform:scale(.85);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@media(max-width:760px){.garden__panel{left:auto;right:-3.2rem;width:min(420px,calc(100vw - 2rem))}.home-shortcut{top:3rem;left:1rem;width:74px}}.footer{padding:2.5rem 1rem 3rem;text-align:center;font-size:.85rem;letter-spacing:.12em;color:var(--soft)}@media(max-width:1160px){.nav{padding-top:3.6rem}}@media(max-width:600px){.nav{padding:3.4rem .6rem .7rem}.nav__list{gap:clamp(.9rem,4.2vw,1.6rem)}.nav__link{font-size:.98rem;letter-spacing:.01em}.nav__icon{width:18px;height:18px}.lens-label{font-size:1.35rem}.hero{padding-top:7rem}.top-clock{font-size:.95rem;top:.9rem;left:1rem}.theme-toggle{top:.9rem;right:1rem;font-size:.85rem}.chatbot__fab{width:72px}}@media(max-width:760px){.contacts-dock{position:static;padding:2rem 1.5rem 0}.contacts-dock--hidden{opacity:1;transform:none;pointer-events:auto}.chatbot__fab{width:72px}}@media(prefers-reduced-motion:reduce){.chatbot__fab,.hero__hint{animation:none}}.project-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:var(--bg);overflow-y:auto;overscroll-behavior:contain}[data-theme=light] .project-page{background:radial-gradient(800px 420px at 12% 0%,rgba(205,180,246,.16),transparent 62%),radial-gradient(900px 480px at 88% 100%,rgba(205,180,246,.13),transparent 62%),#fff}.project-page__inner{max-width:1080px;margin:0 auto;padding:clamp(1.2rem,4vh,2.5rem) clamp(1.25rem,4vw,3rem) 4rem}.project-page__topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.project-page__back{display:inline-flex;align-items:center;gap:.45rem;font-size:1rem;color:var(--lavender);padding:.4rem .2rem;opacity:0;translate:-14px 0;transition:opacity .4s ease .1s,translate .4s ease .1s,letter-spacing .25s ease,text-shadow .25s ease}[data-theme=light] .project-page__back{color:#7d5fc0}.project-page__back:hover{letter-spacing:.03em;text-shadow:0 0 12px rgba(205,180,246,.8)}.project-page--in .project-page__back{opacity:1;translate:0 0}.project-page__bar{display:flex;align-items:center;gap:1.4rem;margin-top:1.4rem;opacity:0;translate:0 20px;transition:opacity .5s ease .12s,translate .5s cubic-bezier(.3,.7,.2,1) .12s}.project-page--in .project-page__bar{opacity:1;translate:0 0}.project-page__bar-logo{width:clamp(90px,10vw,130px);filter:drop-shadow(0 4px 12px rgba(0,0,0,.3)) drop-shadow(0 0 14px color-mix(in srgb,var(--accent) 30%,transparent));animation:bar-logo-drift 4.2s ease-in-out infinite}@keyframes bar-logo-drift{0%,to{translate:0 -3px}50%{translate:0 3px}}@media(prefers-reduced-motion:reduce){.project-page__bar-logo{animation:none}}.project-page__title{font-size:clamp(2rem,4.5vw,3.1rem);font-weight:700;color:var(--fg);line-height:1.1}.project-page__blurb{margin-top:.35rem;font-size:clamp(.95rem,1.4vw,1.1rem);color:var(--muted);max-width:60ch}.project-page__accent-line{width:160px;height:2px;margin-top:1rem;background:linear-gradient(90deg,var(--accent),transparent);transform:scaleX(0);transform-origin:left center;transition:transform .6s cubic-bezier(.3,.7,.2,1) .35s}.project-page--in .project-page__accent-line{transform:scaleX(1)}.workspace{margin-top:1.6rem;border-radius:16px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--card-border));background:#fff;box-shadow:0 24px 60px #0006,0 0 30px color-mix(in srgb,var(--accent) 18%,transparent);opacity:0;translate:0 30px;transition:opacity .55s ease .25s,translate .6s cubic-bezier(.3,.7,.2,1) .25s}[data-theme=light] .workspace{box-shadow:0 22px 54px #5a468238,0 0 30px color-mix(in srgb,var(--accent) 16%,transparent)}.project-page--in .workspace{opacity:1;translate:0 0}.workspace__frame{display:block;width:100%;height:min(72vh,760px);border:0;background:#fff}.workspace--placeholder{display:grid;place-items:center;gap:1rem;padding:4rem 2rem;background:color-mix(in srgb,var(--accent) 7%,var(--card-bg));text-align:center}.workspace--placeholder img{width:min(46vw,220px);opacity:.85}.workspace--placeholder p{color:var(--muted);font-size:1.05rem}.project-page__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem;opacity:0;translate:0 20px;transition:opacity .5s ease .4s,translate .5s cubic-bezier(.3,.7,.2,1) .4s}.project-page--in .project-page__actions{opacity:1;translate:0 0}.action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:999px;font-size:.98rem;color:var(--fg);border:1.5px solid color-mix(in srgb,var(--accent) 55%,var(--card-border));background:color-mix(in srgb,var(--accent) 10%,transparent);transition:transform .3s cubic-bezier(.34,1.56,.5,1),box-shadow .3s ease,background .3s ease}.action-btn:hover,.action-btn:focus-visible{transform:translateY(-3px);background:color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:0 10px 24px #0000004d,0 0 18px color-mix(in srgb,var(--accent) 40%,transparent)}.action-btn--ghost{border-style:dashed;background:transparent}.project-page__todo{color:var(--muted);font-style:italic}@media(max-width:620px){.project-page__bar{flex-direction:column;align-items:flex-start;gap:.9rem}.workspace__frame{height:64vh}}:root{--bg: #000000;--fg: #ffffff;--muted: #b9b3c6;--soft: #6f6684;--white: #ffffff;--lavender: #cdb4f6;--lavender-soft: #e2d5f9;--lavender-dim: #9d86c9;--pink: #f0a8c0;--hair-red: #d94f5c;--ink: #26202e;--card-bg: rgba(10, 8, 14, .92);--card-border: #262033;--nav-fade: rgba(0, 0, 0, .85);--wipe-bg: #050505;--pill-bg: #ffffff;--pill-fg: #141118;--pill-border: rgba(20, 17, 24, .85);--logo-chip-bg: #ffffff;--font: "Calibri", "Carlito", "Segoe UI", system-ui, -apple-system, sans-serif}[data-theme=light]{--bg: #fdfbff;--fg: #141118;--muted: #4d4759;--soft: #8a8496;--card-bg: rgba(255, 255, 255, .86);--card-border: #e0d5f4;--nav-fade: rgba(253, 251, 255, .94);--wipe-bg: #f2eefa;--pill-bg: #f6f0ff;--pill-fg: #141118;--pill-border: #cdb4f6;--logo-chip-bg: transparent}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);scrollbar-color:#2a2333 var(--bg)}body{background:var(--bg);color:var(--fg);font-family:var(--font);overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background .35s ease,color .35s ease}body.locked{overflow:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .4s ease;background:radial-gradient(760px 420px at 4% 0%,rgba(196,168,244,.45),transparent 62%),radial-gradient(700px 400px at 98% 14%,rgba(205,180,246,.36),transparent 62%),radial-gradient(1000px 520px at 50% 102%,rgba(196,168,244,.4),transparent 64%),radial-gradient(560px 360px at 90% 86%,rgba(240,168,192,.18),transparent 62%)}[data-theme=light] body:before{opacity:1}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .4s ease;background-image:radial-gradient(ellipse 120% 80% at 50% 50%,transparent 55%,rgba(150,120,200,.09) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.32'/%3E%3C/svg%3E");background-size:cover,120px 120px;mix-blend-mode:multiply}[data-theme=light] body:after{opacity:.5}img{display:block;max-width:100%}button{font-family:inherit;border:none;background:none;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--lavender);color:#000}:focus-visible{outline:2px solid var(--lavender);outline-offset:4px;border-radius:4px}@media(pointer:fine){.home,.home *{cursor:none}}.pill{display:inline-block;padding:.32rem .95rem;border-radius:999px;background:var(--pill-bg);color:var(--pill-fg);border:1.5px solid var(--pill-border);font-size:.95rem;line-height:1.35;box-shadow:0 2px 10px #00000040;transition:transform .25s cubic-bezier(.34,1.56,.5,1),box-shadow .25s ease}[data-theme=light] .pill{box-shadow:0 2px 10px #cdb4f64d}.pill:hover{transform:translateY(-3px) scale(1.04);border-color:var(--lavender);box-shadow:0 8px 20px #cdb4f673,0 0 18px #cdb4f68c}@media(prefers-reduced-motion:reduce){.pill,.pill:hover{transform:none;transition:box-shadow .2s ease}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
