.time-line-container>div:last-child .education__time>.education__line{display:none}:root{--theme-transition-duration: .3s;--theme-transition-timing: ease}html,body{min-height:100%}body.portfolio-shell{background:radial-gradient(circle at top,rgba(59,130,246,.12),transparent 34%),radial-gradient(circle at 85% 10%,rgba(34,211,238,.1),transparent 26%),linear-gradient(180deg,rgba(248,251,255,1) 0%,rgba(238,244,255,1) 100%)}.portfolio-app-shell{position:relative;overflow-x:clip;overflow-y:visible}.portfolio-app-shell:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 12%,rgba(96,165,250,.12),transparent 24%),radial-gradient(circle at 82% 8%,rgba(34,211,238,.08),transparent 20%);z-index:0}.portfolio-app-shell>*{position:relative;z-index:1}.aurora-section{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(96,165,250,.12),transparent 32%),radial-gradient(circle at top right,rgba(34,211,238,.1),transparent 28%),linear-gradient(135deg,rgba(7,17,31,.98) 0%,rgba(2,6,23,1) 48%,rgba(6,24,44,.98) 100%)}.hero-grid-bg:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 92%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 92%)}[data-theme=dark] body.portfolio-shell{background:radial-gradient(circle at top,rgba(59,130,246,.14),transparent 34%),radial-gradient(circle at 80% 12%,rgba(34,211,238,.1),transparent 24%),linear-gradient(180deg,#020617 0%,#050b16 100%)}[data-theme=dark] .bg-base-100,[data-theme=dark] .bg-base-200,[data-theme=dark] .bg-base-300,[data-theme=dark] .card,[data-theme=dark] .stat,[data-theme=dark] .mockup-code,[data-theme=dark] .navbar,[data-theme=dark] .drawer-content{box-shadow:inset 0 1px #94a3b80d}[data-theme=dark] .card,[data-theme=dark] .stat,[data-theme=dark] .mockup-code{border-color:#60a5fa1f}html{transition:background-color var(--theme-transition-duration) var(--theme-transition-timing)}body{transition:background-color var(--theme-transition-duration) var(--theme-transition-timing),color var(--theme-transition-duration) var(--theme-transition-timing)}.bg-base-100,.bg-base-200,.bg-base-300,.text-base-content,.border-base-300{transition:background-color var(--theme-transition-duration) var(--theme-transition-timing),color var(--theme-transition-duration) var(--theme-transition-timing),border-color var(--theme-transition-duration) var(--theme-transition-timing)}.btn,button,a{transition:background-color var(--theme-transition-duration) var(--theme-transition-timing),color var(--theme-transition-duration) var(--theme-transition-timing),border-color var(--theme-transition-duration) var(--theme-transition-timing),box-shadow var(--theme-transition-duration) var(--theme-transition-timing)}@media (prefers-reduced-motion: reduce){:root{--theme-transition-duration: 0s}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.project-card{transition:opacity .3s ease,transform .3s ease}.project-card.filtering{opacity:.7;transform:scale(.98)}.project-card.hidden{opacity:0;transform:scale(.95);pointer-events:none}.filter-transition{transition:all .3s ease}.active-filter-badge{animation:fadeInScale .3s ease}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.filter-stats span{transition:color .3s ease}.mobile-filter-toggle{transition:transform .2s ease,box-shadow .2s ease}.mobile-filter-toggle:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.projects-grid{transition:gap .3s ease}.filter-group{transition:transform .2s ease,box-shadow .2s ease}.filter-group:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.project-search-input:focus{box-shadow:0 0 0 3px rgba(var(--p),.2);transform:scale(1.02)}.toggle:checked{animation:toggleBounce .3s ease}@keyframes toggleBounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.clear-filters-btn:hover{transform:scale(1.05)}*,*:before,*:after{filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body,html,main,section,div,header,nav,aside,.drawer-overlay,.backdrop-blur-sm,.backdrop-blur-md,.backdrop-blur-lg,[class*=backdrop-blur],[style*=backdrop-filter],[style*=filter]{filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.drawer-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}@media (max-width: 768px){footer,.footer,.mobile-scroll-indicator,.touch-feedback-overlay,[style*="position: fixed"],[style*="position: sticky"]{filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transform:none!important;will-change:auto!important}body,html{filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.project-card{transition-duration:.2s}.filter-group:hover{transform:none;box-shadow:none}.btn{min-height:48px;min-width:48px;padding:.875rem 1.25rem;font-size:1rem;font-weight:500;border-radius:.5rem}.btn-sm{min-height:44px;min-width:44px;padding:.625rem 1rem;font-size:.9rem}.btn-lg{min-height:52px;min-width:52px;padding:1rem 1.5rem;font-size:1.125rem}.btn-circle{min-height:48px;min-width:48px}.btn-circle.btn-sm{min-height:44px;min-width:44px}a,button,[role=button],input,select,textarea{min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,0,0,.1)}input,select,textarea{font-size:16px;padding:.875rem;border-radius:.5rem;line-height:1.4}.mobile-menu{max-height:calc(100vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.drawer-side{z-index:50}.drawer-overlay{background-color:#00000080}.card{margin-bottom:1.25rem;border-radius:.75rem}.card-body{padding:1.25rem}h1{font-size:2.25rem;line-height:1.1;margin-bottom:1rem}h2{font-size:1.875rem;line-height:1.2;margin-bottom:.875rem}h3{font-size:1.5rem;line-height:1.3;margin-bottom:.75rem}h4{font-size:1.25rem;line-height:1.3;margin-bottom:.625rem}.container{padding-left:1.25rem;padding-right:1.25rem}.modal-box{max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);margin:1rem;border-radius:.75rem}.grid{gap:1.25rem}.stats{grid-template-columns:1fr;gap:.5rem}.stat{padding:1rem;text-align:center}.avatar .w-48{width:10rem;height:10rem}.avatar .w-64{width:12rem;height:12rem}.section-padding{padding:2rem 1.25rem}.hero{min-height:100vh;padding:2rem 1.25rem}.hero-content{max-width:100%;padding:1.25rem}}@media (max-width: 480px){.hero-content,.card-body{padding:1rem}h1{font-size:2rem;line-height:1.1}h2{font-size:1.625rem;line-height:1.2}h3{font-size:1.375rem;line-height:1.3}.btn-group{flex-direction:column;gap:.75rem}.btn-mobile-full{width:100%}.container{padding-left:1rem;padding-right:1rem}.grid{gap:1rem}.stat{padding:.75rem}.stat-value{font-size:1.5rem}.avatar .w-48{width:8rem;height:8rem}.avatar .w-64{width:10rem;height:10rem}.section-padding,.hero{padding:1.5rem 1rem}input,select,textarea{padding:.75rem}.btn{min-height:44px;padding:.75rem 1rem;font-size:.95rem}.btn-lg{min-height:48px;padding:.875rem 1.25rem;font-size:1rem}}@media (max-height: 500px) and (orientation: landscape){.hero{min-height:100vh;padding:2rem 0}.hero-content{padding:1rem}.avatar .w-48{width:6rem;height:6rem}}@supports (padding: max(0px)){.safe-area-top{padding-top:max(1rem,env(safe-area-inset-top))}.safe-area-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-area-left{padding-left:max(1rem,env(safe-area-inset-left))}.safe-area-right{padding-right:max(1rem,env(safe-area-inset-right))}}@media (hover: none) and (pointer: coarse){.hover\:scale-105:hover,.hover\:transform:hover,.group:hover .group-hover\:scale-110{transform:none}.btn:focus,.btn:active{transform:scale(.96);transition:transform .15s ease;box-shadow:0 2px 8px #00000026}.btn:active,.card:active,a:active{opacity:.85;transform:scale(.98)}.project-card:active{transform:scale(.98);transition:transform .1s ease}.nav-link:active,.mobile-nav-link:active{background-color:rgba(var(--p),.1);transform:scale(.98)}input:focus,textarea:focus,select:focus{transform:scale(1.01);box-shadow:0 0 0 3px rgba(var(--p),.2)}.stat:hover,.filter-group:hover,.project-card:hover{transform:none;box-shadow:none}}@media (min-resolution: 192dpi){.card{box-shadow:0 2px 8px #0000001a}.btn{border-width:.5px}}@media (max-width: 768px){.mobile-entrance{animation:mobileEntranceAnimation .4s ease-out forwards}@keyframes mobileEntranceAnimation{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.mobile-card-hover:active{transform:scale(.98);transition:transform .15s ease}.mobile-nav-slide{transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.mobile-nav-slide.open{transform:translate(0)}.mobile-loading{position:relative;overflow:hidden}.mobile-loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:mobileShimmer 1.5s infinite}@keyframes mobileShimmer{0%{left:-100%}to{left:100%}}.mobile-scroll-indicator{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(to right,hsl(var(--p)),hsl(var(--s)));transform:scaleX(0);transform-origin:left;transition:transform .1s ease;z-index:100}}@media (max-width: 768px){.card,.btn,.project-card,.hero-content{transform:translateZ(0);backface-visibility:hidden}.mobile-optimized{will-change:transform,opacity}@media (max-width: 480px){.complex-animation{animation:simpleFadeIn .3s ease!important}@keyframes simpleFadeIn{0%{opacity:0}to{opacity:1}}}}.mobile-only{display:none}.desktop-only{display:block}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}.mobile-full-width{width:100%!important}.mobile-center{text-align:center!important}.mobile-stack{flex-direction:column!important;gap:1rem!important}.mobile-hide{display:none!important}.mobile-text-sm{font-size:.875rem!important}.mobile-text-base{font-size:1rem!important}.mobile-text-lg{font-size:1.125rem!important}}.section-animate{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}.section-animate.animate-in{opacity:1;transform:translateY(0)}.project-grid-animate .project-card{opacity:0;transform:translateY(20px) scale(.95);transition:opacity .6s ease,transform .6s ease}.project-grid-animate.animate-in .project-card{opacity:1;transform:translateY(0) scale(1)}.project-grid-animate.animate-in .project-card:nth-child(1){transition-delay:.1s}.project-grid-animate.animate-in .project-card:nth-child(2){transition-delay:.2s}.project-grid-animate.animate-in .project-card:nth-child(3){transition-delay:.3s}.project-grid-animate.animate-in .project-card:nth-child(4){transition-delay:.4s}.project-grid-animate.animate-in .project-card:nth-child(5){transition-delay:.5s}.project-grid-animate.animate-in .project-card:nth-child(6){transition-delay:.6s}.scroll-animate{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}.scroll-animate.in-view{opacity:1;transform:translateY(0)}.hero-animate .hero-content>*{opacity:0;transform:translateY(30px);animation:heroEntranceAnimation .8s ease forwards}.hero-animate .hero-content>*:nth-child(1){animation-delay:.2s}.hero-animate .hero-content>*:nth-child(2){animation-delay:.4s}.hero-animate .hero-content>*:nth-child(3){animation-delay:.6s}.hero-animate .hero-content>*:nth-child(4){animation-delay:.8s}@keyframes heroEntranceAnimation{to{opacity:1;transform:translateY(0)}}.skills-animate .skill-item{opacity:0;transform:translate(-20px);transition:opacity .5s ease,transform .5s ease}.skills-animate.animate-in .skill-item{opacity:1;transform:translate(0)}.skills-animate.animate-in .skill-item:nth-child(1){transition-delay:.1s}.skills-animate.animate-in .skill-item:nth-child(2){transition-delay:.2s}.skills-animate.animate-in .skill-item:nth-child(3){transition-delay:.3s}.skills-animate.animate-in .skill-item:nth-child(4){transition-delay:.4s}.skills-animate.animate-in .skill-item:nth-child(5){transition-delay:.5s}.contact-form-animate .form-group{opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease}.contact-form-animate.animate-in .form-group{opacity:1;transform:translateY(0)}.contact-form-animate.animate-in .form-group:nth-child(1){transition-delay:.1s}.contact-form-animate.animate-in .form-group:nth-child(2){transition-delay:.2s}.contact-form-animate.animate-in .form-group:nth-child(3){transition-delay:.3s}.contact-form-animate.animate-in .form-group:nth-child(4){transition-delay:.4s}.content-loading{position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(var(--b2),.8) 25%,rgba(var(--b3),.8) 50%,rgba(var(--b2),.8) 75%);background-size:200% 100%;animation:contentShimmer 1.5s infinite;border-radius:.5rem;min-height:2rem}@keyframes contentShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.content-loaded{animation:contentFadeIn .5s ease forwards}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.btn.state-success{background-color:rgb(var(--su));border-color:rgb(var(--su));color:#fff;animation:successPulse .3s ease}.btn.state-error{background-color:rgb(var(--er));border-color:rgb(var(--er));color:#fff;animation:errorShake .5s ease}.btn.state-warning{background-color:rgb(var(--wa));border-color:rgb(var(--wa));color:#fff}.btn.state-info{background-color:rgb(var(--in));border-color:rgb(var(--in));color:#fff}.btn.loading-state{opacity:.7;cursor:not-allowed;pointer-events:none}@keyframes successPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}.card-interactive{transition:all .3s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.card-interactive:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #00000026}.btn-magnetic{transition:transform .1s ease}.glow-primary:hover{box-shadow:0 0 20px rgba(var(--p),.4)}.glow-secondary:hover{box-shadow:0 0 20px rgba(var(--s),.4)}.glow-accent:hover{box-shadow:0 0 20px rgba(var(--a),.4)}.progress-ring{transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .3s ease}.progress-ring .progress-bg{stroke:rgba(var(--p),.2)}.progress-ring .progress-fill{stroke:rgb(var(--p))}.spinner-dots{display:inline-flex;gap:4px}.spinner-dots .dot{width:8px;height:8px;border-radius:50%;background:rgb(var(--p));animation:dotBounce 1.4s infinite ease-in-out}.spinner-dots .dot:nth-child(1){animation-delay:-.32s}.spinner-dots .dot:nth-child(2){animation-delay:-.16s}.spinner-dots .dot:nth-child(3){animation-delay:0s}@keyframes dotBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.form-group.focused{position:relative}.form-group.focused:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:rgb(var(--p));transform:scaleX(0);animation:focusLine .3s ease forwards}.form-group.error input,.form-group.error textarea{border-color:rgb(var(--er));box-shadow:0 0 0 3px rgba(var(--er),.1)}.form-group.valid input,.form-group.valid textarea{border-color:rgb(var(--su));box-shadow:0 0 0 3px rgba(var(--su),.1)}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.05)}.hover-rotate{transition:transform .3s ease}.hover-rotate:hover{transform:rotate(5deg)}.ripple-container{position:relative;overflow:hidden}.focus-ring:focus-visible{outline:2px solid rgb(var(--p));outline-offset:2px;border-radius:4px}.smooth-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}.badge-animate{transition:all .2s ease}.badge-animate:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #00000026}.nav-item{position:relative;transition:all .3s ease}.nav-item:before{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:rgb(var(--p));transition:all .3s ease;transform:translate(-50%)}.nav-item:hover:before,.nav-item.active:before{width:100%}.tooltip-enhanced{position:relative}.tooltip-enhanced:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:4px;font-size:.875rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;z-index:1000}.tooltip-enhanced:hover:after{opacity:1;transform:translate(-50%) translateY(-4px)}@media (hover: none) and (pointer: coarse){.card-interactive:hover{transform:none;box-shadow:0 4px 12px #0000001a}.hover-lift:hover,.hover-scale:hover,.hover-rotate:hover{transform:none}.btn:active{transform:scale(.98);transition:transform .1s ease}.card:active{transform:scale(.99);transition:transform .1s ease}}@media (prefers-contrast: high){.btn{border:2px solid}.card{border:1px solid}.focus-ring:focus-visible{outline-width:3px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.skip-link{position:absolute;top:-40px;left:6px;background:hsl(var(--p));color:hsl(var(--pc));padding:8px 16px;text-decoration:none;border-radius:4px;z-index:1000;transition:top .3s ease;font-weight:600}.skip-link:focus{top:6px;outline:2px solid hsl(var(--a));outline-offset:2px}.keyboard-navigation *:focus{outline:2px solid hsl(var(--p));outline-offset:2px;border-radius:4px}.keyboard-navigation button:focus,.keyboard-navigation .btn:focus{outline:3px solid hsl(var(--a));outline-offset:2px}button:focus-visible,.btn:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid hsl(var(--p));outline-offset:2px;border-radius:4px}.project-card:focus-visible,.card:focus-visible{outline:3px solid hsl(var(--p));outline-offset:4px;transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.field-error{color:hsl(var(--er));font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.field-error:before{content:"⚠";font-weight:700}input.error,textarea.error,select.error{border-color:hsl(var(--er));box-shadow:0 0 0 3px rgba(var(--er),.1)}input.error:focus,textarea.error:focus,select.error:focus{outline-color:hsl(var(--er));box-shadow:0 0 0 3px rgba(var(--er),.2)}.required-indicator{color:hsl(var(--er));font-weight:700;margin-left:.25rem}.high-contrast .btn{border:2px solid;font-weight:600}.high-contrast .card{border:2px solid hsl(var(--bc))}.high-contrast .badge{border:1px solid;font-weight:600}.high-contrast *:focus-visible{outline-width:4px;outline-style:solid}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.project-card:hover,.card:hover,.btn:hover{transform:none!important}.loading-animation,.spinner,.spinner-dots{animation:none!important}}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:.25rem .5rem;font-size:.875rem;font-weight:600;background:hsl(var(--b3));border:1px solid hsl(var(--bc));border-radius:.375rem;box-shadow:0 1px 2px #0000001a}#live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.modal[aria-hidden=false]{display:flex!important}.modal[aria-hidden=true]{display:none!important}nav[role=navigation]{position:relative}.mobile-menu[aria-hidden=true]{display:none}.mobile-menu[aria-hidden=false]{display:block}@media (max-width: 768px){button,.btn,a,input,textarea,select,[role=button],[tabindex]{min-height:44px;min-width:44px}.btn-sm{min-height:44px;min-width:44px;padding:.5rem .75rem}.btn-circle{min-height:44px;min-width:44px}}.contrast-enhanced{--contrast-ratio: 1.2}.contrast-enhanced .text-base-content{color:hsl(var(--bc) / calc(var(--tw-text-opacity, 1) * var(--contrast-ratio)))}.focus-trap{position:relative}.focus-trap:before,.focus-trap:after{content:"";position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.announcement{position:fixed;top:20px;right:20px;background:hsl(var(--in));color:hsl(var(--inc));padding:1rem;border-radius:.5rem;box-shadow:0 4px 12px #00000026;z-index:1000;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.announcement.error{background:hsl(var(--er));color:hsl(var(--erc))}.announcement.success{background:hsl(var(--su));color:hsl(var(--suc))}.announcement.warning{background:hsl(var(--wa));color:hsl(var(--wac))}.accessible-table{border-collapse:collapse;width:100%}.accessible-table th,.accessible-table td{border:1px solid hsl(var(--bc));padding:.75rem;text-align:left}.accessible-table th{background:hsl(var(--b2));font-weight:600}.accessible-table caption{font-weight:600;margin-bottom:.5rem;text-align:left;font-size:1.125rem}.form-group{position:relative;margin-bottom:1.5rem}.form-group.focused:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:hsl(var(--p));transform:scaleX(0);animation:focusLine .3s ease forwards}@keyframes focusLine{to{transform:scaleX(1)}}.btn-accessible{position:relative;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-accessible:disabled{opacity:.6;cursor:not-allowed}.btn-accessible[aria-pressed=true]{background:hsl(var(--pf));box-shadow:inset 0 2px 4px #0000001a}.loading-accessible{position:relative}.loading-accessible:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top:2px solid hsl(var(--p));border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tooltip-accessible{position:relative}.tooltip-accessible[aria-describedby]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:4px;font-size:.875rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;z-index:1000}.tooltip-accessible:hover:after,.tooltip-accessible:focus:after{opacity:1;transform:translate(-50%) translateY(-4px)}.theme-switcher[data-astro-cid-dz5h74bc]{position:relative}.theme-toggle-btn[data-astro-cid-dz5h74bc]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.theme-toggle-btn[data-astro-cid-dz5h74bc]:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-icon[data-astro-cid-dz5h74bc]{transition:transform .3s ease-in-out}.theme-option[data-astro-cid-dz5h74bc]{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.theme-option[data-astro-cid-dz5h74bc]:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-check[data-astro-cid-dz5h74bc]{transition:opacity .2s ease-in-out}body.theme-transitioning{transition:background-color .3s ease,color .3s ease}body.theme-transitioning *{transition:background-color .3s ease,color .3s ease,border-color .3s ease!important}.dropdown-content[data-astro-cid-dz5h74bc]{animation:dropdownSlide .2s ease-out;transform-origin:bottom;max-height:300px;overflow-y:auto}.dropdown-top[data-astro-cid-dz5h74bc] .dropdown-content[data-astro-cid-dz5h74bc]{transform-origin:bottom}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-top[data-astro-cid-dz5h74bc] .dropdown-content[data-astro-cid-dz5h74bc]{bottom:100%;top:auto;margin-bottom:.5rem}.theme-buttons[data-astro-cid-dz5h74bc]{flex-wrap:wrap}.theme-buttons[data-astro-cid-dz5h74bc] .theme-option[data-astro-cid-dz5h74bc]{min-width:-moz-fit-content;min-width:fit-content}.theme-toggle-btn[data-astro-cid-dz5h74bc]:focus,.theme-option[data-astro-cid-dz5h74bc]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: var(--fallback-p,oklch(var(--p)/var(--tw-ring-opacity)));--tw-ring-opacity: .5}.sr-only[data-astro-cid-dz5h74bc]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 640px){.theme-buttons[data-astro-cid-dz5h74bc]{width:100%;flex-direction:column}.theme-buttons[data-astro-cid-dz5h74bc] .theme-option[data-astro-cid-dz5h74bc]{width:100%;justify-content:center}.dropdown-content[data-astro-cid-dz5h74bc]{width:12rem}}@media (prefers-contrast: high){.theme-option[data-astro-cid-dz5h74bc],.theme-toggle-btn[data-astro-cid-dz5h74bc]{border-width:1px;--tw-border-opacity: 1;border-color:var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)))}}@media (prefers-reduced-motion: reduce){.theme-icon[data-astro-cid-dz5h74bc],.theme-option[data-astro-cid-dz5h74bc],.theme-toggle-btn[data-astro-cid-dz5h74bc],.dropdown-content[data-astro-cid-dz5h74bc],body.theme-transitioning,body.theme-transitioning *{transition:none!important;animation:none!important}}.navbar[data-astro-cid-3ef6ksr2]{min-height:4rem}.btn-square[data-astro-cid-3ef6ksr2]{border-radius:.5rem}.btn-ghost[data-astro-cid-3ef6ksr2]:active{transform:scale(.95);transition:transform .1s ease}@supports (padding: max(0px)){.safe-area-top[data-astro-cid-3ef6ksr2]{padding-top:max(.5rem,env(safe-area-inset-top))}}.header-scrolled[data-astro-cid-3ef6ksr2]{box-shadow:0 4px 12px #0000001a;background-opacity:.98}@media (max-width: 480px){.navbar[data-astro-cid-3ef6ksr2]{padding-left:1rem;padding-right:1rem}.text-xl[data-astro-cid-3ef6ksr2]{font-size:1.125rem}}.lang-btn[data-astro-cid-a2mxz4y6]{color:hsl(var(--bc) / .6)}.lang-btn[data-astro-cid-a2mxz4y6]:hover{background-color:hsl(var(--b3));color:hsl(var(--bc))}.lang-btn[data-astro-cid-a2mxz4y6].active{background-color:hsl(var(--p) / .15);color:hsl(var(--p));border-color:hsl(var(--p) / .3);font-weight:600}.nav-link[data-astro-cid-aqudbga4]{position:relative;border-left:3px solid transparent;transition:all .2s cubic-bezier(.4,0,.2,1)}.nav-link[data-astro-cid-aqudbga4]:hover,.nav-link[data-astro-cid-aqudbga4]:focus{border-left-color:hsl(var(--p));transform:translate(2px);box-shadow:0 2px 8px #0000001a}.nav-link[data-astro-cid-aqudbga4].active{background-color:hsl(var(--p));color:hsl(var(--pc));border-left-color:hsl(var(--pc));font-weight:600}.nav-link[data-astro-cid-aqudbga4].active:hover{background-color:hsl(var(--p) / .9);transform:translate(2px)}.nav-link[data-astro-cid-aqudbga4] svg[data-astro-cid-aqudbga4]{transition:transform .2s ease}.nav-link[data-astro-cid-aqudbga4]:hover svg[data-astro-cid-aqudbga4],.nav-link[data-astro-cid-aqudbga4]:focus svg[data-astro-cid-aqudbga4]{transform:scale(1.1)}.nav-link[data-astro-cid-aqudbga4] .w-2[data-astro-cid-aqudbga4]{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:.75}50%{opacity:1}}.nav-link[data-astro-cid-aqudbga4]:focus-visible{outline:2px solid hsl(var(--p));outline-offset:2px}@media (max-width: 768px){.nav-link[data-astro-cid-aqudbga4]{padding:1rem;font-size:1.1rem}.nav-link[data-astro-cid-aqudbga4] svg[data-astro-cid-aqudbga4]{width:1.375rem;height:1.375rem}}@media (max-width: 480px){.nav-link[data-astro-cid-aqudbga4]{padding:.875rem;font-size:1rem}.nav-link[data-astro-cid-aqudbga4] svg[data-astro-cid-aqudbga4]{width:1.25rem;height:1.25rem}}@media (hover: none) and (pointer: coarse){.nav-link[data-astro-cid-aqudbga4]:hover{transform:none;box-shadow:none}.nav-link[data-astro-cid-aqudbga4]:active{transform:scale(.98);background-color:hsl(var(--b3))}.nav-link[data-astro-cid-aqudbga4].active:active{background-color:hsl(var(--p) / .8)}}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.nav-link[data-astro-cid-aqudbga4],.nav-link[data-astro-cid-aqudbga4] svg[data-astro-cid-aqudbga4]{transition:none}.nav-link[data-astro-cid-aqudbga4] .w-2[data-astro-cid-aqudbga4]{animation:none}}.drawer-side[data-astro-cid-ssfzsv2f] aside[data-astro-cid-ssfzsv2f]{border-right:1px solid hsl(var(--b3))}.sidebar-shell[data-astro-cid-ssfzsv2f]{min-height:100vh;height:100%}@media (min-width: 1024px){.drawer-side[data-astro-cid-ssfzsv2f]{overflow:visible}.sidebar-shell[data-astro-cid-ssfzsv2f]{align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto}}.drawer-overlay[data-astro-cid-ssfzsv2f]{cursor:pointer}.avatar[data-astro-cid-ssfzsv2f] .group[data-astro-cid-ssfzsv2f]:hover .ring[data-astro-cid-ssfzsv2f]{box-shadow:0 0 20px rgba(var(--p),.3)}@supports (padding: max(0px)){.safe-area-left[data-astro-cid-ssfzsv2f]{padding-left:max(1rem,env(safe-area-inset-left))}.safe-area-right[data-astro-cid-ssfzsv2f]{padding-right:max(1rem,env(safe-area-inset-right))}}@media (max-width: 768px){.drawer-side[data-astro-cid-ssfzsv2f] aside[data-astro-cid-ssfzsv2f]{width:min(20rem,calc(100vw - 3rem));max-width:calc(100vw - 3rem)}}@media (max-width: 480px){.drawer-side[data-astro-cid-ssfzsv2f] aside[data-astro-cid-ssfzsv2f]{width:min(18rem,calc(100vw - 2rem));padding-left:1rem;padding-right:1rem}}.drawer-side[data-astro-cid-ssfzsv2f] aside[data-astro-cid-ssfzsv2f]{transition:transform .3s cubic-bezier(.4,0,.2,1)}.btn-circle[data-astro-cid-ssfzsv2f]:focus-visible{outline:2px solid hsl(var(--p));outline-offset:2px}.mobile-touch-enhancer[data-astro-cid-dqgeumoc]{position:relative}.mobile-scroll-indicator[data-astro-cid-dqgeumoc]{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(to right,hsl(var(--p)),hsl(var(--s)));transform:scaleX(0);transform-origin:left;transition:transform .1s ease;z-index:100;opacity:0}.mobile-scroll-indicator[data-astro-cid-dqgeumoc].visible{opacity:1}.touch-feedback-overlay[data-astro-cid-dqgeumoc]{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;display:none}.ripple[data-astro-cid-dqgeumoc]{position:absolute;border-radius:50%;background:rgba(255,255,255,.3);transform:scale(0);animation:rippleAnimation .6s linear;pointer-events:none}@keyframes rippleAnimation{to{transform:scale(4);opacity:0}}.mobile-touch-enhancer[data-astro-cid-dqgeumoc] [data-astro-cid-dqgeumoc]{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mobile-touch-enhancer[data-astro-cid-dqgeumoc] p[data-astro-cid-dqgeumoc],.mobile-touch-enhancer[data-astro-cid-dqgeumoc] .selectable[data-astro-cid-dqgeumoc]{-webkit-user-select:text;-moz-user-select:text;user-select:text}.mobile-touch-enhancer[data-astro-cid-dqgeumoc] .btn[data-astro-cid-dqgeumoc],.mobile-touch-enhancer[data-astro-cid-dqgeumoc] .card[data-astro-cid-dqgeumoc],.mobile-touch-enhancer[data-astro-cid-dqgeumoc] a[data-astro-cid-dqgeumoc],.mobile-touch-enhancer[data-astro-cid-dqgeumoc] button[data-astro-cid-dqgeumoc]{position:relative;overflow:hidden}@media (max-width: 768px){.mobile-scroll-indicator[data-astro-cid-dqgeumoc]{display:block}}@media (min-width: 769px){.mobile-scroll-indicator[data-astro-cid-dqgeumoc]{display:none}}@media (prefers-reduced-motion: reduce){.ripple[data-astro-cid-dqgeumoc]{animation:none;opacity:0}.mobile-scroll-indicator[data-astro-cid-dqgeumoc]{transition:none}}
