@import url(https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=JetBrains+Mono:wght@400;500;600;700&display=swap);:root{--font-heading:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-code:"JetBrains Mono","Fira Code",monospace;--text-xl:clamp(2.75rem,5vw,4.5rem);--text-lg:clamp(2rem,3.5vw,3rem);--text-md:clamp(1.375rem,2.5vw,2rem);--text-base:clamp(1rem,1.5vw,1.125rem);--text-sm:0.875rem;--text-xs:0.75rem;--fw-light:300;--fw-normal:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-tight:1.1;--lh-snug:1.3;--lh-normal:1.6;--ls-tight:-0.02em;--ls-snug:-0.01em;--ls-wide:0.05em;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--section-padding:5rem;--radius-sm:0.375rem;--radius-md:0.75rem;--radius-lg:1.25rem;--radius-xl:2rem;--radius-full:9999px;--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--z-base:1;--z-raised:10;--z-nav:100;--z-overlay:200;--z-modal:300;--z-toast:400;--z-top:9999;--ease-out:cubic-bezier(0.0,0.0,0.2,1);--ease-in-out:cubic-bezier(0.4,0.0,0.2,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--duration-fast:150ms;--duration-normal:250ms;--duration-slow:400ms;--palette-sky-400:#38bdf8;--palette-sky-500:#0ea5e9;--palette-rose-400:#fb7185;--palette-rose-500:#f43f5e;--palette-amber-400:#facc15;--palette-amber-500:#eab308;--palette-slate-50:#f8fafc;--palette-slate-100:#f1f5f9;--palette-slate-200:#e2e8f0;--palette-slate-300:#cbd5e1;--palette-slate-400:#94a3b8;--palette-slate-500:#64748b;--palette-slate-600:#475569;--palette-slate-700:#334155;--palette-slate-800:#1e293b;--palette-slate-900:#0f172a;--palette-slate-950:#020617;--color-bg:var(--palette-slate-50);--color-bg-subtle:var(--palette-slate-100);--color-surface:#fff;--color-surface-raised:#fff;--bg-primary:var(--color-bg);--bg-gradient:linear-gradient(135deg,var(--palette-slate-50) 0%,var(--palette-slate-100) 100%);--color-text:var(--palette-slate-800);--color-heading:var(--palette-slate-900);--color-text-muted:var(--palette-slate-500);--color-text-faint:var(--palette-slate-400);--text-primary:var(--color-heading);--text-secondary:var(--color-text);--text-tertiary:var(--color-text-muted);--color-accent-1:var(--palette-sky-400);--color-accent-2:var(--palette-rose-400);--color-detail:var(--palette-amber-400);--color-accent-1-rgb:56,189,248;--color-accent-2-rgb:251,113,133;--color-detail-rgb:250,204,21;--color-accent-1-light:#38bdf81a;--color-accent-1-medium:#38bdf833;--color-accent-1-strong:#38bdf859;--color-accent-2-light:#fb71851a;--color-accent-2-medium:#fb718533;--color-accent-2-strong:#fb718559;--color-detail-light:#facc151a;--color-detail-medium:#facc1533;--color-detail-strong:#facc1559;--gradient-primary:linear-gradient(135deg,var(--palette-sky-400) 0%,var(--palette-rose-400) 100%);--gradient-secondary:linear-gradient(135deg,var(--palette-rose-400) 0%,var(--palette-amber-400) 100%);--gradient-accent:linear-gradient(135deg,var(--palette-amber-400) 0%,var(--palette-rose-400) 100%);--color-border:#0f172a1a;--color-border-strong:#0f172a33;--color-shadow:#0f172a14;--color-shadow-strong:#0f172a29;--shadow-sm:0 1px 3px var(--color-shadow),0 1px 2px var(--color-shadow);--shadow-md:0 4px 12px var(--color-shadow);--shadow-lg:0 10px 30px var(--color-shadow),0 4px 10px var(--color-shadow);--shadow-xl:0 20px 60px var(--color-shadow-strong);--glass-bg:#ffffffa6;--glass-border:#fffc;--glass-shadow:0 8px 32px #0f172a14;--glass-blur:blur(16px);--nav-dot-inactive:#0f172a40;--nav-dot-active:var(--palette-sky-400);--nav-dot-hover:var(--palette-sky-500);--nav-bg:#ffffffbf;--nav-border:#ffffffe6;--button-bg:var(--gradient-primary);--button-text:#fff;--button-border:var(--palette-sky-400);--button-shadow:0 4px 14px #38bdf84d;--btn-h-sm:2.25rem;--btn-h-md:2.75rem;--btn-h-lg:3.25rem;--btn-px-sm:1.1rem;--btn-px-md:1.75rem;--btn-px-lg:2.25rem;--btn-radius:9999px;--btn-font-size:0.9rem;--btn-font-weight:650;--btn-letter-spacing:0.025em;--btn-transition:transform 160ms var(--ease-out),box-shadow 160ms var(--ease-out),background 160ms var(--ease-out),border-color 160ms var(--ease-out),color 160ms var(--ease-out);--btn-primary-bg:var(--gradient-primary);--btn-primary-text:#fff;--btn-primary-shadow:0 4px 18px #38bdf859;--btn-primary-shadow-h:0 8px 28px #38bdf880;--btn-ghost-bg:#0000;--btn-ghost-border:var(--palette-sky-400);--btn-ghost-text:var(--palette-sky-400);--btn-ghost-bg-h:var(--color-accent-1-light);--btn-focus-ring:0 0 0 3px #38bdf859;--card-bg:#ffffffe6;--card-border:#fffc;--card-shadow:0 4px 20px #0f172a14;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--success-bg:#10b98114;--warning-bg:#f59e0b14;--error-bg:#ef444414;--icon-color:var(--palette-sky-400);--accent:var(--palette-sky-400);--accent-hover:var(--palette-sky-500);--accent-primary:var(--palette-sky-400);--accent-muted:var(--color-accent-1-light)}[data-theme=dark]{--color-bg:var(--palette-slate-900);--color-bg-subtle:var(--palette-slate-800);--color-surface:var(--palette-slate-800);--color-surface-raised:#253352;--bg-primary:var(--color-bg);--bg-gradient:linear-gradient(135deg,var(--palette-slate-900) 0%,var(--palette-slate-800) 100%);--color-text:#e2e8f0;--color-heading:#f1f5f9;--color-text-muted:#94a3b8;--color-text-faint:#64748b;--text-primary:var(--color-heading);--text-secondary:var(--color-text);--text-tertiary:var(--color-text-muted);--color-accent-1:#56cfff;--color-accent-2:#ff91a4;--color-detail:#ffd84d;--color-accent-1-rgb:86,207,255;--color-accent-2-rgb:255,145,164;--color-detail-rgb:255,216,77;--color-accent-1-light:#56cfff1f;--color-accent-1-medium:#56cfff38;--color-accent-1-strong:#56cfff61;--color-accent-2-light:#ff91a41f;--color-accent-2-medium:#ff91a438;--color-accent-2-strong:#ff91a461;--color-detail-light:#ffd84d1f;--color-detail-medium:#ffd84d38;--color-detail-strong:#ffd84d61;--gradient-primary:linear-gradient(135deg,#56cfff,#ff91a4);--gradient-secondary:linear-gradient(135deg,#ff91a4,#ffd84d);--gradient-accent:linear-gradient(135deg,#ffd84d,#ff91a4);--color-border:#f8fafc1a;--color-border-strong:#f8fafc2e;--color-shadow:#0000004d;--color-shadow-strong:#00000080;--shadow-sm:0 1px 3px var(--color-shadow);--shadow-md:0 4px 12px var(--color-shadow);--shadow-lg:0 10px 30px var(--color-shadow);--shadow-xl:0 20px 60px var(--color-shadow-strong);--glass-bg:#0f172a8c;--glass-border:#f8fafc1a;--glass-shadow:0 8px 32px #0000004d;--glass-blur:blur(16px);--nav-dot-inactive:#f8fafc40;--nav-dot-active:#56cfff;--nav-dot-hover:#7dd8ff;--nav-bg:#0f172abf;--nav-border:#f8fafc1a;--button-bg:var(--gradient-primary);--button-text:var(--palette-slate-900);--button-border:#56cfff;--button-shadow:0 4px 14px #56cfff4d;--btn-primary-shadow:0 4px 18px #56cfff59;--btn-primary-shadow-h:0 8px 28px #56cfff80;--btn-ghost-border:#56cfff;--btn-ghost-text:#56cfff;--btn-ghost-bg-h:var(--color-accent-1-light);--btn-focus-ring:0 0 0 3px #56cfff59;--card-bg:#1e293bd9;--card-border:#f8fafc1a;--card-shadow:0 4px 20px #0000004d;--success-bg:#10b98126;--warning-bg:#f59e0b26;--error-bg:#ef444426;--icon-color:#56cfff;--accent:#56cfff;--accent-hover:#7dd8ff;--accent-primary:#56cfff;--accent-muted:var(--color-accent-1-light)}:root{--max-width:1200px;--section-padding:clamp(4rem,8vw,6rem);--container-px:clamp(1rem,4vw,2rem);--card-padding:1.5rem;--card-radius:1.25rem;--button-radius:9999px;--input-radius:0.75rem;--hover-lift:translateY(-3px);--grid-gap:1.5rem;--grid-gap-lg:2rem;--grid-columns:12}.btn,.card,.cta-button,.cv-download-btn,.glass-card,.nav-dot,.social-link,.theme-toggle,a,button{transition:background-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out)}.app-container,.app-root,.card,.glass-card,.section,[class*=-section],body{transition:background-color var(--duration-slow) var(--ease-in-out),color var(--duration-slow) var(--ease-in-out),border-color var(--duration-slow) var(--ease-in-out)}h1,h2{color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin-bottom:var(--space-6)}h3{font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);margin-bottom:var(--space-4)}h4,h5,h6{color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-md);font-weight:var(--fw-semibold);line-height:var(--lh-snug);margin-bottom:var(--space-3)}li,p{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-normal);margin-bottom:var(--space-4)}a{color:var(--accent)}a:hover{color:var(--accent-hover)}.glass-card{backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:1.25rem;border-radius:var(--card-radius)}.glass-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);transform:var(--hover-lift)}.btn{background:var(--button-bg);border-radius:9999px;border-radius:var(--button-radius);box-shadow:var(--button-shadow);color:var(--button-text);font-size:var(--text-sm);font-weight:var(--fw-semibold);gap:var(--space-2);letter-spacing:.02em;padding:.75rem 1.75rem}.btn:after{background:linear-gradient(#ffffff26,#0000);content:"";inset:0;opacity:0;position:absolute;transition:opacity var(--duration-fast) var(--ease-out)}.btn:hover{transform:translateY(-3px);transform:var(--hover-lift)}.btn:hover:after{opacity:1}.glass-input{backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);background:var(--glass-bg);border:1px solid var(--color-border);border-radius:.75rem;border-radius:var(--input-radius);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);padding:var(--space-3) var(--space-4);width:100%}.glass-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}.glass-input::placeholder{color:var(--color-text-faint)}:focus-visible{animation:focus-ring .3s ease-out;border-radius:4px;box-shadow:0 0 0 4px rgba(var(--neon-500-rgb),.3);outline:2px solid var(--neon-500);outline-offset:4px;transition:box-shadow .2s cubic-bezier(.4,0,.2,1),outline-offset .2s cubic-bezier(.4,0,.2,1)}@keyframes focus-ring{0%{box-shadow:0 0 0 0 rgba(var(--neon-500-rgb),0);outline-offset:0}to{box-shadow:0 0 0 4px rgba(var(--neon-500-rgb),.3);outline-offset:4px}}.skip-link{background:var(--color-background);border-radius:0 0 8px 8px;box-shadow:0 4px 12px #0000001a;color:var(--color-text);font-weight:500;left:50%;padding:1rem 2rem;position:fixed;text-align:center;top:-100%;transform:translateX(-50%);transition:top .3s cubic-bezier(.4,0,.2,1);z-index:9999}.skip-link:focus{outline-offset:0;top:0}@media (forced-colors:active){:root{--color-primary:CanvasText;--color-text:CanvasText;--color-background:Canvas;--color-border:CanvasText}*{border-color:CanvasText}a,button{forced-color-adjust:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.animated,.button-ripple,.hover-lift,.section-animated{animation:none!important;transform:none!important;transition:none!important}}[aria-busy=true]{cursor:progress}[aria-disabled=true]{cursor:not-allowed;opacity:.6}[aria-hidden=true]{display:none!important}.interactive-card{cursor:pointer;position:relative}.interactive-card:focus-within{outline:2px solid var(--neon-500);outline-offset:4px;transform:scale(1.02);transition:transform .2s cubic-bezier(.4,0,.2,1),outline-offset .2s cubic-bezier(.4,0,.2,1)}.interactive-card:focus-within:after{animation:tooltip-fade .3s ease-out forwards;background:var(--color-background);border-radius:4px;bottom:-30px;box-shadow:0 2px 8px #0000001a;content:"Press Enter to view details";font-size:.875rem;left:50%;opacity:0;padding:var(--spacing-xs) 12px;position:absolute;transform:translateX(-50%)}@keyframes tooltip-fade{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.card-3d{transform:rotateX(var(--rotate-x)) rotateY(var(--rotate-y));transition:transform .2s cubic-bezier(.4,0,.2,1)}.card-3d,.card-3d:focus-within{--rotate-x:0deg;--rotate-y:0deg}.card-3d:focus-within{outline:2px solid var(--neon-500);outline-offset:8px}.card-3d[data-key-nav=true]{transition:transform .1s linear}.button,a,button,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px;padding:.5rem;position:relative}.button:focus-visible,a:focus-visible,button:focus-visible{transform:scale(1.05);transition:transform .2s cubic-bezier(.4,0,.2,1)}.sr-live,.sr-only-focusable:not(:focus){clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sr-live{pointer-events:none}[aria-live=assertive],[aria-live=polite]{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[aria-busy=true]{position:relative}[aria-busy=true]:after{clip:auto;background:var(--color-background);border-radius:4px;box-shadow:0 2px 8px #0000001a;content:attr(data-loading-text);height:auto;padding:var(--spacing-sm);position:absolute;width:auto;z-index:1}[role=progressbar]{position:relative}[role=progressbar]:after{clip:auto;color:var(--color-text);content:attr(aria-valuenow) "%";font-size:.875rem;height:auto;margin-top:4px;position:absolute;right:0;top:100%;width:auto}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-ms-overflow-style:none;font-family:var(--font-body);font-size:16px;font-weight:var(--fw-normal);line-height:var(--lh-normal);scrollbar-width:none;text-rendering:optimizeLegibility}html::-webkit-scrollbar{display:none}body{background-color:var(--color-bg);color:var(--color-text);min-height:100vh;min-width:320px}h1{color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight)}h2{font-size:var(--text-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-snug)}h2,h3{color:var(--color-heading);font-family:var(--font-heading);line-height:var(--lh-snug)}h3{font-size:var(--text-md)}h3,h4{font-weight:var(--fw-semibold)}h4{color:var(--color-heading);font-family:var(--font-heading);line-height:var(--lh-snug)}h4,p{font-size:var(--text-base)}p{font-weight:var(--fw-normal);line-height:var(--lh-normal)}a,p{font-family:var(--font-body)}a{color:var(--color-accent-1);font-weight:var(--fw-medium);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--color-accent-2)}code,pre{font-family:var(--font-code);font-size:var(--text-sm)}.container{max-width:1200px;max-width:var(--max-width,1200px);padding:0 1.25rem;padding:0 var(--container-px,1.25rem)}.section{background-color:var(--color-bg);padding:5rem 0;padding:var(--section-padding,5rem) 0}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn{border-radius:var(--btn-radius);font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);gap:.5rem;height:var(--btn-h-md);letter-spacing:var(--btn-letter-spacing);line-height:1;outline:none;padding:0 var(--btn-px-md);transition:var(--btn-transition);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus-visible{box-shadow:var(--btn-focus-ring)}.btn:active{transform:scale(.97) translateY(1px)!important}.btn-sm{font-size:.8rem;height:var(--btn-h-sm);padding:0 var(--btn-px-sm)}.btn-lg{font-size:1rem;height:var(--btn-h-lg);padding:0 var(--btn-px-lg)}.btn-primary{background:var(--btn-primary-bg);box-shadow:var(--btn-primary-shadow);color:var(--btn-primary-text)}.btn-primary:hover{box-shadow:var(--btn-primary-shadow-h);color:var(--btn-primary-text);transform:translateY(-2px)}.btn-primary .btn-arrow{transition:transform .16s var(--ease-out)}.btn-primary:hover .btn-arrow{transform:translateX(4px)}.btn-ghost{background:var(--btn-ghost-bg);border:1.5px solid var(--btn-ghost-border);box-shadow:none;color:var(--btn-ghost-text)}.btn-ghost:hover{background:var(--btn-ghost-bg-h);box-shadow:var(--btn-primary-shadow);color:var(--btn-ghost-text)}.btn-text{background:#0000;border:none;color:var(--color-accent-1);font-size:inherit;height:auto;padding:.25rem .5rem}.btn-text:hover{color:var(--color-accent-2);text-decoration:underline}.btn-icon{border-radius:12px;height:var(--btn-h-md);padding:0;width:var(--btn-h-md)}.section-heading{color:var(--color-heading);font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin-bottom:.75rem;text-align:center}.section-heading:after{background:var(--gradient-primary);border-radius:var(--radius-full);content:"";display:block;height:3px;margin:.65rem auto 0;opacity:.85;width:3.5rem}.section-subheading{color:var(--color-text-muted);font-family:var(--font-body);font-size:clamp(.95rem,1.6vw,1.1rem);font-weight:var(--fw-normal);line-height:var(--lh-normal);margin:0 auto 3.5rem;max-width:560px;text-align:center}.intro{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:0 2rem;position:relative}.intro:before{background:#080014fa;content:"";inset:0;pointer-events:none;position:absolute;transition:background 1.6s cubic-bezier(.22,1,.36,1);z-index:1}.intro--entered:before{background:#08001480}.intro-scroll-overlay{background:#000;opacity:0;z-index:2}.intro-bg-canvas,.intro-scroll-overlay{inset:0;pointer-events:none;position:absolute}.intro-bg-canvas{z-index:0}.intro-neural{height:100%;width:100%}.intro-glow{border-radius:50%;filter:blur(90px);pointer-events:none;position:absolute;z-index:3}.intro-glow--1{animation:glowPulse 8s ease-in-out infinite alternate;background:#a028ff40;height:55vw;right:-10%;top:-15%;width:55vw}.intro-glow--2{animation:glowPulse 10s ease-in-out infinite alternate-reverse;background:#d25aff33;bottom:-10%;height:40vw;left:-5%;width:40vw}@keyframes glowPulse{0%{opacity:.35;transform:scale(1)}to{opacity:.55;transform:scale(1.15)}}.intro-container{grid-gap:5rem;align-items:center;display:grid;gap:5rem;grid-template-columns:1fr auto;margin:0 auto;max-width:1200px;padding:6rem 0 4rem;position:relative;width:100%;z-index:4}.intro-text{display:flex;flex-direction:column;gap:0}.intro-chip{align-items:center;background:#34d39914;border:1px solid #34d3994d;border-radius:999px;color:#34d399;display:inline-flex;font-size:.78rem;font-weight:600;gap:.5rem;letter-spacing:.04em;margin-bottom:1.5rem;padding:.35rem .9rem;width:-webkit-fit-content;width:fit-content}.intro-chip-dot{animation:chipPulse 2s ease-in-out infinite;background:#34d399;border-radius:50%;box-shadow:0 0 6px #34d399;flex-shrink:0;height:7px;width:7px}@keyframes chipPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.intro-greeting{color:#ffffffbf;font-size:clamp(1rem,2vw,1.2rem);font-weight:500;letter-spacing:.02em;margin:0 0 .35rem}.intro-name-wrap{display:flex;flex-direction:column;line-height:.92;margin-bottom:1.75rem;perspective:600px}.intro-name-line{display:flex;gap:.02em}.intro-name-char{color:#f1f5f9;display:inline-block;font-family:Inter,sans-serif;font-family:var(--font-heading,"Inter",sans-serif);font-size:clamp(4.5rem,10vw,8rem);font-weight:900;letter-spacing:-.04em;line-height:1}.intro-name-line:first-child .intro-name-char{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text}.intro-role-wrap{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;min-height:2.5rem}.intro-role-prefix{color:#ffffffb8;white-space:nowrap}.intro-role-prefix,.intro-typing{font-size:clamp(.95rem,1.8vw,1.15rem)}.intro-typing{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-family:JetBrains Mono,Fira Code,monospace;font-weight:600}.intro-bio{color:#ffffffb8;font-size:clamp(.9rem,1.6vw,1.05rem);line-height:1.7;margin:0 0 2.25rem;max-width:520px}.intro-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.875rem;margin-bottom:2rem}.intro-btn{align-items:center;border:none;border-radius:var(--btn-radius);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:.95rem;font-weight:700;gap:.5rem;height:var(--btn-h-lg);letter-spacing:.02em;padding:0 var(--btn-px-lg);text-decoration:none;transition:var(--btn-transition);white-space:nowrap}.intro-btn--primary{background:var(--btn-primary-bg);box-shadow:var(--btn-primary-shadow);color:#fff;overflow:hidden;position:relative}.intro-btn--primary:before{background:linear-gradient(105deg,#0000 40%,#ffffff2e 50%,#0000 60%);border-radius:inherit;content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .4s var(--ease-out)}.intro-btn--primary:hover:before{transform:translateX(100%)}.intro-btn--primary:hover{box-shadow:var(--btn-primary-shadow-h);color:#fff;transform:translateY(-3px)}.intro-btn--primary svg{flex-shrink:0;transition:transform .16s var(--ease-out)}.intro-btn--primary:hover svg{transform:translateX(4px)}.intro-btn--outline{background:#0000;border:1.5px solid var(--btn-ghost-border);color:var(--btn-ghost-text)}.intro-btn--outline:hover{background:var(--btn-ghost-bg-h);box-shadow:var(--btn-primary-shadow);color:var(--btn-ghost-text);transform:translateY(-3px)}.intro-btn:active{transform:scale(.97) translateY(0)!important}.intro-socials{align-items:center;display:flex;gap:.75rem}.intro-social-link{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;color:#f1f5f9;display:flex;height:44px;justify-content:center;text-decoration:none;transition:all .25s ease;width:44px}.intro-social-link:hover{background:#6366f133;border-color:#6366f166;box-shadow:0 8px 20px #6366f140;color:#8b5cf6;transform:translateY(-3px)}.intro-social-link svg{height:20px;width:20px}.intro-image-side{flex-shrink:0}.intro-image-side,.orbit-system{align-items:center;display:flex;justify-content:center}.orbit-system{height:340px;position:relative;width:340px}.orbit-ring{animation:orbitSpin 8s linear infinite;border:1.5px dashed #6366f140;border-radius:50%;inset:0;position:absolute}.orbit-ring--slow{animation-direction:reverse;animation-duration:14s;border-color:#8b5cf626;inset:-28px}@keyframes orbitSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.orbit-traveller{animation:orbitCounterSpin 8s linear infinite;left:50%;position:absolute;top:-22px;transform:translateX(-50%)}.orbit-ring--slow .orbit-traveller{animation-direction:normal;animation-duration:14s;top:-14px}@keyframes orbitCounterSpin{0%{transform:translateX(-50%) rotate(0deg)}to{transform:translateX(-50%) rotate(-1turn)}}.orbit-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:2px solid #ffffff26;border-radius:50%;box-shadow:0 4px 20px #6366f18c;color:#fff;display:flex;height:44px;justify-content:center;width:44px}.orbit-dot{background:#8b5cf6;background:var(--color-accent-2,#8b5cf6);border-radius:50%;box-shadow:0 0 8px #8b5cf6;box-shadow:0 0 8px var(--color-accent-2,#8b5cf6);display:block;height:10px;width:10px}.profile-wrap{position:relative;z-index:2}.profile-gradient-border{animation:profileFloat 5s ease-in-out infinite;background:var(--gradient-primary);border-radius:50%;box-shadow:0 20px 60px #6366f159,0 0 0 1px #6366f11f;height:260px;padding:3px;width:260px}@keyframes profileFloat{0%,to{box-shadow:0 20px 60px #6366f159;transform:translateY(0)}50%{box-shadow:0 30px 80px #6366f180;transform:translateY(-10px)}}.profile-inner{background:var(--color-bg);overflow:hidden}.profile-img,.profile-inner{border-radius:50%;height:100%;width:100%}.profile-img{display:block;object-fit:cover}.intro-stat{align-items:center;animation:statFloat 4s ease-in-out infinite;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0f;background:var(--glass-bg,#ffffff0f);border:1px solid #ffffff1f;border:1px solid var(--glass-border,#ffffff1f);border-radius:14px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;padding:.6rem 1rem;position:absolute;z-index:5}.intro-stat strong{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:800;line-height:1}.intro-stat span{color:#94a3b8;color:var(--color-text-secondary,#94a3b8);font-size:.68rem;font-weight:600;letter-spacing:.08em;margin-top:.1rem;text-transform:uppercase}.intro-stat--tl{animation-delay:0s;left:-20px;top:-10px}.intro-stat--br{animation-delay:2s;bottom:-10px;right:-20px}@keyframes statFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.intro-scroll-hint{align-items:center;bottom:2rem;display:flex;flex-direction:column;gap:.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.intro-scroll-line{animation:scrollLine 2s ease-in-out infinite;background:linear-gradient(180deg,#0000,#6366f1,#0000);background:linear-gradient(to bottom,#0000,var(--color-accent-1,#6366f1),#0000);height:48px;width:1px}@keyframes scrollLine{0%{opacity:.2;transform:scaleY(.5) translateY(-8px)}50%{opacity:1;transform:scaleY(1) translateY(0)}to{opacity:.2;transform:scaleY(.5) translateY(8px)}}.intro-scroll-label{color:#64748b;color:var(--color-text-secondary,#64748b);font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}[data-theme=light] .intro-glow--1{opacity:.25}[data-theme=light] .intro-glow--2{opacity:.2}[data-theme=light] .intro-chip{background:#05966912;border-color:#05966940;color:#059669}[data-theme=light] .intro-chip-dot{background:#059669;box-shadow:0 0 6px #059669}[data-theme=light] .orbit-ring{border-color:#6366f133}[data-theme=light] .profile-gradient-border{box-shadow:0 20px 60px #6366f133}[data-theme=light] .intro-stat{background:#ffffffd9;border-color:#0000000f;box-shadow:0 8px 24px #00000014}@media (max-width:900px){.intro-container{gap:3rem;grid-template-columns:1fr;padding:5rem 0 4rem;text-align:center}.intro-text{align-items:center;order:2}.intro-image-side{order:1}.intro-actions,.intro-chip,.intro-name-line,.intro-socials{justify-content:center}.intro-bio{margin-left:auto;margin-right:auto;text-align:center}.orbit-system{height:280px;width:280px}.profile-gradient-border{height:210px;width:210px}}@media (max-width:480px){.intro{padding:0 1.25rem}.intro-container{gap:2rem;padding:4rem 0 3rem}.orbit-system{height:220px;width:220px}.profile-gradient-border{height:170px;width:170px}.orbit-ring--slow{inset:-20px}.intro-stat--tl{left:-10px;top:-5px}.intro-stat--br{bottom:-5px;right:-10px}.intro-btn{font-size:.9rem;padding:.75rem 1.5rem}.intro-actions{flex-direction:column;width:100%}.intro-btn{justify-content:center;width:100%}}@media (max-height:600px) and (max-width:900px){.intro-container{grid-template-columns:1fr 1fr;padding:2rem 0;text-align:left}.intro-text{align-items:flex-start;order:1}.intro-image-side{order:2}.orbit-system{height:200px;width:200px}.profile-gradient-border{height:150px;width:150px}}@media (prefers-reduced-motion:reduce){.intro-chip-dot,.intro-glow--1,.intro-glow--2,.intro-scroll-line,.intro-stat,.orbit-ring,.orbit-traveller,.profile-gradient-border{animation:none}.intro-name-char{transition:none}}.about{padding:5rem 0;position:relative}.about-bio{color:var(--color-text);font-size:clamp(1rem,2vw,1.15rem);line-height:1.8;margin:0 auto 3rem;max-width:760px;text-align:center}.interests-card{background:var(--card-bg);border:1px solid var(--card-border);color:var(--color-text)}.interests-card .card-title{color:var(--color-accent-1)}.section-title{color:var(--color-heading);margin-bottom:4rem;text-align:center}.about-content{grid-gap:3rem;align-items:center;display:grid;gap:3rem}@media (min-width:900px){.about-content{grid-template-columns:1fr 1fr}}.about-image{display:flex;justify-content:center}.about-pic{border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;max-width:400px;transition:transform .3s ease;width:100%}.about-pic:hover{transform:scale(1.02)}.about-info{display:flex;flex-direction:column;gap:2rem}.edu-icon,.strength-icon{align-items:center;background-color:var(--color-bg-subtle);border-radius:50%;box-shadow:var(--shadow-sm);display:inline-flex;height:50px;justify-content:center;margin-bottom:1rem;padding:.5rem;transition:transform .2s var(--ease-out);width:50px}.edu-icon img,.strength-icon img{color:var(--color-text);height:24px;width:24px}.strengths-list{color:var(--color-text);list-style:none}.strengths-list li{color:var(--color-text);padding:.5rem 0 .5rem 1.5rem;position:relative}.strengths-list li:before{color:var(--color-accent-1);content:"\2022";font-weight:700;left:0;position:absolute}.education-content{color:var(--color-text)}.degree{color:var(--color-heading);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.university{color:var(--color-text-muted);font-size:.9rem;margin-bottom:1rem}.coursework{color:var(--color-text);line-height:1.6}@media (max-width:767px){.about{padding:3rem 0}.section-title{font-size:2rem;margin-bottom:2rem}.about-content{gap:2rem}.about-info{gap:1.25rem}.info-card{padding:1.25rem}}@media (max-width:480px){.about-bio{font-size:.95rem;margin-bottom:2rem}.about-content{gap:1.5rem}.about-info{gap:1rem}.info-card{padding:1rem}.about-pic{max-width:280px}}.about.section-hidden{opacity:0;transform:translateY(60px) scale(.96)}.about.section-visible{opacity:1;transform:translateY(0) scale(1);transition-duration:1s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.about .section-title.stagger-item{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.4,0,.2,1)}.about .section-title.section-visible{opacity:1;transform:translateY(0);transition-delay:.1s}.about .about-image.stagger-item{opacity:0;transform:translateX(-60px) scale(.9)}.about.section-visible .about-image.stagger-item{opacity:1;transform:translateX(0) scale(1);transition-delay:.2s;transition-duration:1s}.about .about-info.stagger-item{opacity:0;transform:translateX(60px)}.about.section-visible .about-info.stagger-item{opacity:1;transform:translateX(0);transition-delay:.3s;transition-duration:.9s}.about .info-card.stagger-item{opacity:0;transform:translateY(40px) scale(.95)}.about.section-visible .info-card.stagger-item:first-child{opacity:1;transform:translateY(0) scale(1);transition-delay:.4s;transition-duration:.8s}.about.section-visible .info-card.stagger-item:nth-child(2){opacity:1;transform:translateY(0) scale(1);transition-delay:.6s;transition-duration:.8s}.about.section-visible .about-pic{transition:transform .3s ease}.about.section-visible .about-pic:hover{transform:scale(1.05) rotate(2deg)}.about.section-visible .info-card{transition:all .3s ease}.about.section-visible .info-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-10px)}.about.section-visible .strengths-list li{animation:slideInLeft .5s ease forwards;opacity:0;transform:translateX(20px)}.about.section-visible .strengths-list li:first-child{animation-delay:.8s}.about.section-visible .strengths-list li:nth-child(2){animation-delay:.9s}.about.section-visible .strengths-list li:nth-child(3){animation-delay:1s}.about.section-visible .strengths-list li:nth-child(4){animation-delay:1.1s}.about.section-visible .strengths-list li:nth-child(5){animation-delay:1.2s}.about.section-visible .strengths-list li:nth-child(6){animation-delay:1.3s}@keyframes slideInLeft{to{opacity:1;transform:translateX(0)}}.about.section-visible .education-content p{animation:fadeInUp .6s ease forwards;opacity:0;transform:translateY(15px)}.about.section-visible .education-content .degree{animation-delay:.9s}.about.section-visible .education-content .university{animation-delay:1s}.about.section-visible .education-content .modules{animation-delay:1.1s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.about.section-visible .edu-icon,.about.section-visible .strength-icon{transition:transform .3s ease}.about.section-visible .info-card:hover .edu-icon,.about.section-visible .info-card:hover .strength-icon{transform:scale(1.1) rotate(5deg)}.about .card-title{opacity:0;transform:translateY(20px);transition:all .6s ease}.about.section-visible .strengths-card .card-title{opacity:1;transform:translateY(0);transition-delay:.7s}.about.section-visible .education-card .card-title{opacity:1;transform:translateY(0);transition-delay:.8s}@media (max-width:768px){.about.section-hidden{transform:translateY(40px) scale(.98)}.about .about-image.stagger-item{transform:translateY(-30px) scale(.95)}.about .about-info.stagger-item{transform:translateY(30px)}.about.section-visible .about-image.stagger-item,.about.section-visible .about-info.stagger-item{transform:translateY(0) scale(1)}}.info-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1.25rem;border-radius:var(--card-radius,1.25rem);box-shadow:var(--shadow-md);padding:2rem}.strengths-card{background:linear-gradient(135deg,var(--color-accent-1-light),var(--color-accent-2-light));border:1px solid var(--color-accent-1-medium);color:var(--color-text)}.education-card{background:var(--card-bg);border:1px solid var(--card-border);color:var(--color-text)}.card-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.card-title,.strengths-card .card-title{color:var(--color-heading)}.education-card .card-title{color:var(--color-accent-1)}.projects-section{background:var(--color-bg);padding:5rem 2rem;position:relative}.projects-section:before{background:radial-gradient(circle at 70% 30%,var(--color-accent-2-light) 0,#0000 55%),radial-gradient(circle at 25% 75%,var(--color-accent-1-light) 0,#0000 55%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.projects-container{margin:0 auto;max-width:var(--max-width);position:relative;width:100%;z-index:1}.projects-header{margin-bottom:3rem;text-align:center}.projects-title{color:var(--color-heading);display:block;font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin:0 0 .75rem}.projects-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);content:"";display:block;height:3px;margin:.65rem auto 0;opacity:.85;width:3.5rem}.projects-subtitle{color:var(--color-text-muted);font-size:var(--text-base);font-weight:var(--fw-normal);line-height:var(--lh-normal);margin:.75rem auto 0;max-width:560px}.project-filter{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2.5rem}.filter-btn{background:#0000;border:1px solid var(--color-border);border-radius:var(--btn-radius);color:var(--color-text-muted);cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-medium);height:var(--btn-h-sm);opacity:.65;padding:0 var(--btn-px-sm);text-transform:capitalize;transition:var(--btn-transition)}.filter-btn:hover{background:var(--color-accent-1-light);border-color:var(--btn-ghost-border);color:var(--btn-ghost-text);opacity:1;transform:translateY(-1px)}.filter-btn.active{background:var(--btn-primary-bg);border-color:#0000;box-shadow:var(--btn-primary-shadow);color:#fff;font-weight:var(--fw-semibold);opacity:1}.filter-btn:focus-visible{box-shadow:var(--btn-focus-ring);opacity:1}.projects-grid{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0}@media (max-width:1023px){.projects-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}}@media (max-width:639px){.projects-grid{gap:1.25rem;grid-template-columns:1fr}}.projects-empty{font-weight:var(--fw-medium);padding:4rem 2rem;text-align:center}.projects-empty,.projects-loading{color:var(--color-text-muted);font-size:var(--text-base)}.projects-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:5rem 2rem}.projects-loading__spinner{animation:projects-spin .75s linear infinite;border-top-color:#7c3aed;border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-accent-1,#7c3aed);display:block;height:2.25rem;width:2.25rem}@keyframes projects-spin{to{transform:rotate(1turn)}}@media (max-width:768px){.projects-section{padding:4rem 1.25rem}.project-filter,.projects-header{margin-bottom:2rem}.project-filter{gap:.5rem}.filter-btn{font-size:.8rem;padding:.4rem 1rem}}@media (prefers-reduced-motion:reduce){.filter-btn{transition:none}}:root{--transition-smooth:cubic-bezier(0.4,0,0.2,1);--transition-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);--transition-duration:0.8s;--transition-duration-fast:0.4s;--transition-duration-slow:1.2s;--transform-gpu:translate3d(0,0,0)}.section-animated{backface-visibility:hidden;-webkit-backface-visibility:hidden;contain:layout style paint;transform:translateZ(0);transform:var(--transform-gpu);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1),box-shadow .8s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-duration) var(--transition-smooth),transform var(--transition-duration) var(--transition-smooth),box-shadow var(--transition-duration) var(--transition-smooth);will-change:transform,opacity}.section-hidden{opacity:0;pointer-events:none;transform:translateY(50px)}.section-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.fade-up{opacity:0;transform:translateY(50px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-bounce)}.fade-up.section-visible{opacity:1;transform:translateY(0)}.fade-down{opacity:0;transform:translateY(-50px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-bounce)}.fade-down.section-visible{opacity:1;transform:translateY(0)}.fade-left{opacity:0;transform:translateX(-50px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-bounce)}.fade-left.section-visible{opacity:1;transform:translateX(0)}.fade-right{opacity:0;transform:translateX(50px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-bounce)}.fade-right.section-visible{opacity:1;transform:translateX(0)}.scale-in{opacity:0;transform:scale(.95);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-bounce)}.scale-in.section-visible{opacity:1;transform:scale(1)}.slide-up{opacity:0;transform:translateY(100px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .8s var(--transition-smooth),transform .8s var(--transition-bounce)}.slide-up.section-visible{opacity:1;transform:translateY(0)}.zoom-fade{opacity:0;transform:scale(1.1);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .8s var(--transition-smooth),transform .8s var(--transition-bounce)}.zoom-fade.section-visible{opacity:1;transform:scale(1)}.flip-up{opacity:0;transform:perspective(1000px) rotateX(-30deg);transform-origin:bottom;transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.68,-.55,.265,1.55);transition:opacity .8s var(--transition-smooth),transform .8s var(--transition-bounce)}.flip-up.section-visible{opacity:1;transform:perspective(1000px) rotateX(0)}.hover-lift{transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-duration-fast) var(--transition-smooth),box-shadow var(--transition-duration-fast) var(--transition-smooth)}.hover-lift:hover{box-shadow:0 20px 40px #0000001a;transform:translateY(-4px)}.progress-bar{transform-origin:left;transition:transform .4s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-duration-fast) var(--transition-smooth)}.breadcrumb-enter{opacity:0;transform:translateX(-10px)}.breadcrumb-enter-active{opacity:1;transform:translateX(0);transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-duration-fast) var(--transition-smooth),transform var(--transition-duration-fast) var(--transition-smooth)}.stagger-children .stagger-item{opacity:0;transform:translateY(30px);transition:all .4s cubic-bezier(.68,-.55,.265,1.55);transition:all var(--transition-duration-fast) var(--transition-bounce);will-change:opacity,transform}.stagger-children.section-visible .stagger-item{opacity:1;transform:translateY(0)}.stagger-children.section-visible .stagger-item:first-child{transition-delay:.1s}.stagger-children.section-visible .stagger-item:nth-child(2){transition-delay:.2s}.stagger-children.section-visible .stagger-item:nth-child(3){transition-delay:.3s}.stagger-children.section-visible .stagger-item:nth-child(4){transition-delay:.4s}.stagger-children.section-visible .stagger-item:nth-child(5){transition-delay:.5s}.stagger-children.section-visible .stagger-item:nth-child(6){transition-delay:.6s}.stagger-children.section-visible .stagger-item:nth-child(7){transition-delay:.7s}.stagger-children.section-visible .stagger-item:nth-child(8){transition-delay:.8s}.stagger-children.section-visible .stagger-item:nth-child(9){transition-delay:.9s}.stagger-children.section-visible .stagger-item:nth-child(10){transition-delay:1s}.scroll-trigger{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.68,-.55,.265,1.55);transition:opacity var(--transition-duration) var(--transition-smooth),transform var(--transition-duration) var(--transition-bounce)}.scroll-trigger.in-view{opacity:1;transform:translateY(0)}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.68,-.55,.265,1.55);transition:opacity var(--transition-duration) var(--transition-smooth),transform var(--transition-duration) var(--transition-bounce)}.modal-backdrop{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#000000a6;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:999999}.modal-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:90vh;max-width:860px;outline:none;overflow:hidden;position:relative;width:100%}.modal-container:before{background:var(--gradient-primary);content:"";display:block;flex-shrink:0;height:3px}.modal-close{align-items:center;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text);cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s var(--ease-out);width:36px;z-index:10}.modal-close:hover{background:var(--color-accent-1-light);border-color:var(--color-accent-1-medium);color:var(--color-accent-1);transform:scale(1.08)}.modal-close:active{transform:scale(.95)}.modal-close:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}.modal-content{flex:1 1;overflow-y:auto;padding:2rem;scrollbar-color:var(--color-border) #0000;scrollbar-width:thin}.modal-content::-webkit-scrollbar{width:5px}.modal-content::-webkit-scrollbar-track{background:#0000}.modal-content::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--color-accent-1)}.modal-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.75rem;padding-right:2.5rem}.modal-title{color:var(--color-heading);font-family:var(--font-heading);font-size:clamp(1.375rem,3vw,2rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-snug);margin:0}.status-badge{border-radius:var(--radius-full);flex-shrink:0;font-size:var(--text-xs);font-weight:var(--fw-semibold);padding:.3rem .85rem;text-transform:capitalize;white-space:nowrap}.status-completed{background:#10b9811f;border:1px solid #10b98140;color:var(--color-success)}.status-in-progress{background:var(--color-accent-1-light);border:1px solid var(--color-accent-1-medium);color:var(--color-accent-1)}.status-archived{background:var(--color-bg-subtle);border:1px solid var(--color-border);color:var(--color-text-muted)}.modal-screenshots{margin-bottom:1.75rem}.screenshots-grid{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.screenshot-container{aspect-ratio:16/10;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;position:relative}.screenshot-image{cursor:zoom-in;display:block;height:100%;object-fit:cover;transition:transform .3s var(--ease-out);width:100%}.screenshot-image:hover{transform:scale(1.04)}.modal-description{margin-bottom:1.75rem}.modal-description p{color:var(--color-text);font-size:var(--text-base);line-height:var(--lh-normal);margin:0}.modal-technologies{margin-bottom:1.75rem}.modal-technologies h3{color:var(--color-text-muted);font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);margin:0 0 .75rem;text-transform:uppercase}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background:var(--color-accent-1-light);border:1px solid var(--color-accent-1-medium);border-radius:var(--radius-full);color:var(--color-accent-1);font-size:var(--text-xs);font-weight:var(--fw-medium);padding:.3rem .75rem;transition:background .2s ease,border-color .2s ease}.tech-tag:hover{background:var(--color-accent-1-medium)}.modal-details{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:1.75rem}.detail-item{display:flex;flex-direction:column;gap:.2rem}.detail-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:var(--ls-wide);text-transform:uppercase}.detail-label,.detail-value{font-weight:var(--fw-semibold)}.detail-value{color:var(--color-heading);font-size:var(--text-sm)}.modal-actions{border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:.75rem;padding-top:1.25rem}.action-button{align-items:center;border:1px solid #0000;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);gap:.5rem;padding:.65rem 1.4rem;text-decoration:none;transition:transform .2s var(--ease-out),box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.action-button:hover{transform:translateY(-2px)}.action-button:active{transform:translateY(0)}.action-button:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}.action-button.primary{background:var(--gradient-primary);box-shadow:0 4px 14px var(--color-accent-1-medium);color:#fff}.action-button.primary:hover{box-shadow:0 6px 20px var(--color-accent-1-strong)}.action-button.secondary{background:#0000;border-color:var(--color-border-strong);color:var(--color-text)}.action-button.secondary:hover{background:var(--color-accent-1-light);border-color:var(--color-accent-1-medium);color:var(--color-accent-1)}@media (max-width:768px){.modal-backdrop{align-items:flex-end;padding:1rem}.modal-container{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:95vh}.modal-content{padding:1.5rem}.modal-title{font-size:1.375rem}.modal-header{align-items:flex-start;flex-direction:column;gap:.5rem}.screenshots-grid{grid-template-columns:1fr}.modal-details{gap:1rem}.modal-actions,.modal-details{flex-direction:column}.action-button{justify-content:center;width:100%}}@media (max-width:480px){.modal-content{padding:1.25rem}}@media (prefers-reduced-motion:reduce){.action-button,.modal-close,.screenshot-image{transition:none}}.fullscreen-overlay{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000e6;cursor:zoom-out;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:99999}.fullscreen-image{border-radius:var(--radius-md);box-shadow:0 25px 50px -12px #00000080;cursor:default;max-height:90vh;max-width:90vw;object-fit:contain;-webkit-user-select:none;user-select:none}.fullscreen-close{align-items:center;background:#00000080;border:1px solid #fff3;border-radius:var(--radius-full);color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:1.5rem;top:1.5rem;transition:all .2s ease;width:44px;z-index:100000}.fullscreen-close:hover{background:#ffffff1a;transform:scale(1.1)}.fullscreen-close:active{transform:scale(.95)}@media (max-width:768px){.fullscreen-overlay{padding:1rem}.fullscreen-image{max-height:95vh;max-width:95vw}.fullscreen-close{height:36px;right:1rem;top:1rem;width:36px}}.project-card{animation:cardFadeIn .5s var(--ease-out) forwards;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);display:flex;flex-direction:column;opacity:0;overflow:hidden;position:relative;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),border-color .3s var(--ease-out);width:100%}@keyframes cardFadeIn{to{opacity:1}}.project-card:hover{border-color:var(--color-accent-1-medium);box-shadow:var(--shadow-lg),0 0 0 1px var(--color-accent-1-medium),0 12px 40px var(--color-accent-1-light);transform:translateY(-6px)}.project-card-accent{background:var(--gradient-primary);flex-shrink:0;height:3px}.project-card-image-wrap{aspect-ratio:16/9;flex-shrink:0;overflow:hidden;position:relative;width:100%}.project-card-image{display:block;height:100%;object-fit:cover;transition:transform .4s var(--ease-out);width:100%}.project-card:hover .project-card-image{transform:scale(1.04)}.project-card-image-overlay{background:linear-gradient(to bottom,#0000 50%,var(--color-bg) 100%);inset:0;opacity:.4;pointer-events:none;position:absolute}.project-card-body{display:flex;flex:1 1;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem .75rem}.project-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.project-card-title{color:var(--color-heading);flex:1 1;font-family:var(--font-heading);font-size:clamp(1rem,2vw,1.25rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-snug);margin:0}.project-card-badge{border-radius:var(--radius-full);flex-shrink:0;font-size:var(--text-xs);font-weight:var(--fw-semibold);padding:.2rem .65rem;text-transform:capitalize;white-space:nowrap}.badge-completed{background:#10b9811f;border:1px solid #10b98140;color:var(--color-success)}.badge-in-progress{background:var(--color-accent-1-light);border:1px solid var(--color-accent-1-medium);color:var(--color-accent-1)}.badge-archived{background:var(--color-bg-subtle);border:1px solid var(--color-border);color:var(--color-text-muted)}.project-card-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--color-text);display:-webkit-box;flex:1 1;font-size:var(--text-sm);line-height:var(--lh-normal);margin:0;overflow:hidden}.project-card-tags{display:flex;flex-wrap:wrap;gap:.375rem}.project-card-tag{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--fw-medium);padding:.2rem .6rem;transition:color .2s ease,border-color .2s ease,background .2s ease;white-space:nowrap}.project-card:hover .project-card-tag{background:var(--color-accent-1-light);border-color:var(--color-accent-1-medium);color:var(--color-accent-1)}.tag-more{border-style:dashed!important;color:var(--color-text-faint)!important}.project-card-footer{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-top:.75rem;padding:.75rem 1.5rem 1.25rem}.project-card-year{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide)}.project-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.card-btn{align-items:center;background:none;border:1px solid #0000;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-size:var(--text-xs);font-weight:var(--fw-semibold);gap:.35rem;padding:.4rem .9rem;text-decoration:none;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),background .2s ease,color .2s ease,border-color .2s ease;white-space:nowrap}.card-btn:hover{transform:translateY(-2px)}.card-btn:active{transform:translateY(0)}.card-btn-primary{background:var(--gradient-primary);border-color:#0000;box-shadow:0 2px 8px var(--color-accent-1-medium);color:#fff}.card-btn-primary:hover{box-shadow:0 4px 16px var(--color-accent-1-strong)}.card-btn-ghost{background:#0000;border-color:var(--color-border-strong);color:var(--color-text)}.card-btn-ghost:hover{background:var(--color-accent-1-light);border-color:var(--color-accent-1-medium);color:var(--color-accent-1)}.card-btn:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}@media (prefers-reduced-motion:reduce){.card-btn,.project-card,.project-card-image,.project-card-tag{animation:none;transition:none}.project-card{opacity:1}}.project-card-admin-overlay{display:flex;gap:.4rem;opacity:0;pointer-events:none;position:absolute;right:.6rem;top:.6rem;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease;z-index:10}.project-card:hover .project-card-admin-overlay{opacity:1;pointer-events:auto;transform:translateY(0)}.card-admin-btn{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:700;gap:.3rem;letter-spacing:.02em;padding:.35rem .7rem;transition:all .18s ease;white-space:nowrap}.card-admin-btn--edit{background:#6366f1d9;box-shadow:0 2px 10px #6366f180;color:#fff}.card-admin-btn--edit:hover{background:#6366f1;box-shadow:0 4px 14px #6366f1a6;transform:translateY(-1px)}.card-admin-btn--delete{background:#ef4444cc;box-shadow:0 2px 10px #ef444466;color:#fff}.card-admin-btn--delete:hover{background:#ef4444;box-shadow:0 4px 14px #ef44448c;transform:translateY(-1px)}.admin-panel{align-items:center;animation:admin-panel-slide-in .4s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0f0f19d9;border:1px solid #6366f159;border-radius:14px;box-shadow:0 8px 32px #00000080,inset 0 0 0 1px #6366f11a,0 0 20px #6366f11f;display:flex;gap:.5rem;left:50%;padding:.5rem .75rem;position:fixed;top:1rem;transform:translateX(-50%);z-index:8000}@keyframes admin-panel-slide-in{0%{opacity:0;transform:translateX(-50%) translateY(-16px) scale(.95)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.admin-panel-badge{align-items:center;color:#a5b4fc;display:flex;font-size:.75rem;font-weight:700;gap:.45rem;letter-spacing:.08em;padding:0 .25rem;text-transform:uppercase;white-space:nowrap}.admin-panel-dot{animation:admin-dot-pulse 2s ease infinite;background:#34d399;border-radius:50%;box-shadow:0 0 6px #34d399;flex-shrink:0;height:7px;width:7px}@keyframes admin-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.admin-panel-divider{background:#ffffff1f;height:24px;margin:0 .25rem;width:1px}.admin-panel-btn{align-items:center;border:none;border-radius:9px;cursor:pointer;display:flex;font-family:inherit;font-size:.8rem;font-weight:600;gap:.4rem;padding:.45rem .9rem;transition:all .2s ease;white-space:nowrap}.admin-panel-btn--add{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 3px 10px #6366f166;color:#fff}.admin-panel-btn--add:hover{box-shadow:0 5px 16px #6366f18c;transform:translateY(-1px)}.admin-panel-btn--add:active{transform:translateY(0)}.admin-panel-btn--logout{background:#ef44441a;border:1px solid #ef444433;color:#f87171}.admin-panel-btn--logout:hover{background:#ef44442e;border-color:#ef444466;transform:translateY(-1px)}[data-theme=light] .admin-panel{background:#ffffffeb;border-color:#6366f14d;box-shadow:0 8px 32px #0000001f,0 0 20px #6366f114}[data-theme=light] .admin-panel-badge{color:#6366f1}[data-theme=light] .admin-panel-divider{background:#0000001a}@media (max-width:480px){.admin-panel{gap:.35rem;padding:.4rem .6rem;top:.5rem}.admin-panel-badge{font-size:.7rem}.admin-panel-btn{font-size:.75rem;padding:.4rem .65rem}}.pf-backdrop{align-items:center;animation:pf-fade-in .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:9000}@keyframes pf-fade-in{0%{opacity:0}to{opacity:1}}.pf-modal{animation:pf-slide-in .32s cubic-bezier(.34,1.4,.64,1);background:linear-gradient(145deg,#141423f7,#0f0f1cfa);border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 30px 70px #0009,0 0 40px #6366f114;display:flex;flex-direction:column;max-height:90vh;max-width:640px;overflow:hidden;width:100%}@keyframes pf-slide-in{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.pf-header{border-bottom:1px solid #ffffff12;gap:1rem;padding:1.5rem 1.75rem 1.25rem}.pf-header,.pf-header-icon{align-items:center;display:flex;flex-shrink:0}.pf-header-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;box-shadow:0 4px 14px #6366f166;color:#fff;height:44px;justify-content:center;width:44px}.pf-title{color:#f1f5f9;color:var(--color-text-primary,#f1f5f9);font-size:1.15rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .15rem}.pf-subtitle{font-size:.8rem;margin:0}.pf-close-btn,.pf-subtitle{color:#94a3b8;color:var(--color-text-secondary,#94a3b8)}.pf-close-btn{align-items:center;background:#ffffff0f;border:none;border-radius:9px;cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;margin-left:auto;transition:all .2s ease;width:34px}.pf-close-btn:hover{background:#ffffff1f;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9)}.pf-form{display:flex;flex:1 1;flex-direction:column;min-height:0}.pf-scroll-body{display:flex;flex:1 1;flex-direction:column;gap:1.1rem;overflow-y:auto;padding:1.5rem 1.75rem;scrollbar-color:#ffffff1a #0000;scrollbar-width:thin}.pf-scroll-body::-webkit-scrollbar{width:5px}.pf-scroll-body::-webkit-scrollbar-track{background:#0000}.pf-scroll-body::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.pf-row{display:flex;gap:1rem}.pf-row--2>*{flex:1 1;min-width:0}.pf-field{display:flex;flex-direction:column;gap:.4rem}.pf-label{color:#94a3b8;color:var(--color-text-secondary,#94a3b8);font-size:.78rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.pf-required{color:#f87171;margin-left:2px}.pf-input,.pf-select,.pf-textarea{background:#ffffff0a;border:1px solid #ffffff17;border-radius:10px;box-sizing:border-box;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9);font-family:inherit;font-size:.9rem;outline:none;padding:.7rem .9rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.pf-input::placeholder,.pf-textarea::placeholder{color:#94a3b873}.pf-input:focus,.pf-select:focus,.pf-textarea:focus{border-color:#6366f1a6;box-shadow:0 0 0 3px #6366f12e}.pf-input--error{border-color:#ef44448c!important;box-shadow:0 0 0 3px #ef44441f!important}.pf-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m1 1 5 6 5-6' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;cursor:pointer;padding-right:2.25rem}.pf-select option{background:#1e1e2e;color:#f1f5f9}.pf-textarea{line-height:1.55;min-height:90px;resize:vertical}.pf-error{color:#f87171;font-size:.75rem}.pf-tags-preview{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.pf-tag-preview{background:#6366f126;border:1px solid #6366f140;border-radius:5px;color:#a5b4fc;font-size:.72rem;font-weight:500;padding:.2rem .55rem}.pf-footer{border-top:1px solid #ffffff12;flex-shrink:0;gap:1rem;justify-content:flex-end;padding:1rem 1.75rem 1.5rem}.pf-footer,.pf-saved-banner{align-items:center;display:flex}.pf-saved-banner{color:#34d399;font-size:.82rem;font-weight:600;gap:.4rem;margin-right:auto}.pf-footer-actions{display:flex;gap:.65rem}.pf-btn{border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:.65rem 1.3rem;transition:all .2s ease}.pf-btn--primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 4px 14px #6366f159;color:#fff;min-width:130px}.pf-btn--primary:hover:not(:disabled){box-shadow:0 6px 20px #6366f180;transform:translateY(-1px)}.pf-btn--primary:disabled{cursor:not-allowed;opacity:.65}.pf-btn--ghost{background:#ffffff0d;border:1px solid #ffffff1a;color:#94a3b8;color:var(--color-text-secondary,#94a3b8)}.pf-btn--ghost:hover{background:#ffffff1a;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9)}[data-theme=light] .pf-modal{background:linear-gradient(145deg,#fff,#f8fafc);border-color:#00000014;box-shadow:0 30px 70px #00000026}[data-theme=light] .pf-header{border-bottom-color:#00000012}[data-theme=light] .pf-footer{border-top-color:#00000012}[data-theme=light] .pf-title{color:#1e293b}[data-theme=light] .pf-subtitle{color:#64748b}[data-theme=light] .pf-input,[data-theme=light] .pf-select,[data-theme=light] .pf-textarea{background:#00000008;border-color:#0000001a;color:#1e293b}[data-theme=light] .pf-input::placeholder,[data-theme=light] .pf-textarea::placeholder{color:#94a3b8}[data-theme=light] .pf-select option{background:#fff;color:#1e293b}[data-theme=light] .pf-btn--ghost{border-color:#0000001a;color:#475569}[data-theme=light] .pf-btn--ghost:hover{background:#0000000d;color:#1e293b}[data-theme=light] .pf-close-btn{color:#64748b}[data-theme=light] .pf-close-btn:hover{background:#0000000f;color:#1e293b}.pf-label-hint{font-size:.7rem;font-weight:400;letter-spacing:0;margin-left:.25rem;text-transform:none}.pf-field-hint,.pf-label-hint{color:#64748b;color:var(--color-text-tertiary,#64748b)}.pf-field-hint{font-size:.75rem;margin:0}.pf-image-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.pf-or{color:#64748b;color:var(--color-text-tertiary,#64748b);flex-shrink:0;font-size:.75rem;white-space:nowrap}.pf-input--inline{flex:1 1;min-width:140px}.pf-upload-btn{align-items:center;background:#6366f114;border:1px dashed #6366f173;border-radius:9px;color:#a5b4fc;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:.8rem;font-weight:600;gap:.4rem;padding:.55rem .9rem;transition:all .2s ease;white-space:nowrap}.pf-upload-btn:hover:not(:disabled){background:#6366f126;border-color:#6366f1b3;color:#c7d2fe}.pf-upload-btn--loading,.pf-upload-btn:disabled{cursor:not-allowed;opacity:.6}.pf-file-hidden{display:none}.pf-spinner{animation:pf-spin .7s linear infinite;border:2px solid #a5b4fc4d;border-radius:50%;border-top-color:#a5b4fc;display:inline-block;flex-shrink:0;height:14px;width:14px}@keyframes pf-spin{to{transform:rotate(1turn)}}.pf-image-preview-wrap{border:1px solid #ffffff1a;border-radius:10px;display:inline-block;max-width:100%;overflow:hidden;position:relative}.pf-image-preview{border-radius:10px;display:block;max-height:160px;object-fit:cover;width:100%}.pf-image-remove{align-items:center;background:#000000a6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:26px;justify-content:center;position:absolute;right:.4rem;top:.4rem;transition:background .2s ease;width:26px}.pf-image-remove:hover{background:#ef4444d9}.pf-screenshots-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.pf-screenshot-thumb{aspect-ratio:16/9;background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;overflow:hidden;position:relative}.pf-screenshot-img{display:block;height:100%;object-fit:cover;width:100%}.pf-screenshot-remove{align-items:center;background:#000000b3;border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;height:20px;justify-content:center;opacity:0;position:absolute;right:.25rem;top:.25rem;transition:background .2s ease;width:20px}.pf-screenshot-thumb:hover .pf-screenshot-remove{opacity:1}.pf-screenshot-remove:hover{background:#ef4444e6}[data-theme=light] .pf-upload-btn{background:#6366f112;border-color:#6366f159;color:#6366f1}[data-theme=light] .pf-upload-btn:hover:not(:disabled){background:#6366f11f;color:#4f46e5}[data-theme=light] .pf-image-preview-wrap{border-color:#0000001a}[data-theme=light] .pf-screenshot-thumb{border-color:#00000014}@media (max-width:600px){.pf-row--2{flex-direction:column}.pf-modal{max-height:95vh}.pf-scroll-body{padding:1.25rem}.pf-header{padding:1.25rem 1.25rem 1rem}.pf-footer{padding:.875rem 1.25rem 1.25rem}.pf-image-controls{align-items:stretch;flex-direction:column}.pf-input--inline{min-width:0}.pf-upload-btn{justify-content:center}}.skills-section{background:var(--color-bg);padding:5rem 2rem;position:relative}.skills-3d-background{contain:strict;height:100vh;left:0;opacity:.4;pointer-events:none;position:fixed;top:0;transform:translateZ(0);transition:opacity .3s ease-out;width:100%;will-change:transform,opacity;z-index:0}.skills-section[data-scroll=true] .skills-3d-background{transform:translate3d(0,0,0);transform:translate3d(0,calc(var(--scroll-y, 0)*-.1px),0)}@media (max-width:768px){.skills-3d-background{height:100%;opacity:.6;transform:none!important}}.skills-section:before{animation:fadeGradient .6s ease-out forwards;background:radial-gradient(circle at 30% 20%,var(--color-accent-2-light) 0,#0000 50%),radial-gradient(circle at 80% 80%,var(--color-accent-1-light) 0,#0000 50%);bottom:0;contain:strict;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;will-change:opacity;z-index:0}@keyframes fadeGradient{to{opacity:1}}@media (prefers-reduced-motion:reduce){.skills-3d-background,.skills-section,.skills-section:before{animation:none;opacity:1;transform:none!important;transition:none}}.skills-container{margin:0 auto;max-width:1200px;position:relative;z-index:1}.skills-title{color:var(--color-heading);font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin-bottom:.75rem;position:relative;text-align:center}.skills-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);content:"";display:block;height:3px;margin:.65rem auto 3.5rem;opacity:.85;width:3.5rem}.skills-grid{grid-gap:clamp(1rem,3vw,2rem);contain:layout style;display:grid;gap:clamp(1rem,3vw,2rem);grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;margin:0 auto;max-width:1000px;position:relative;z-index:1}@media (max-width:1024px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.skills-grid{grid-template-columns:1fr;grid-template-rows:auto}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.animate-on-scroll>*{opacity:0;transform:translateY(20px);transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1)}.animate-on-scroll.animate-in>*{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.animate-on-scroll,.animate-on-scroll>*{opacity:1!important;transform:none!important;transition:none!important}}.skills-ul{grid-gap:1rem;color:var(--text-secondary);contain:layout style;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));list-style:none;margin:0;padding:0}.skills-grid>*{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}.skills-grid>.in-view{opacity:1;transform:translateY(0)}.skills-grid>:first-child{transition-delay:.1s}.skills-grid>:nth-child(2){transition-delay:.2s}.skills-grid>:nth-child(3){transition-delay:.3s}.skills-grid>:nth-child(4){transition-delay:.4s}.skills-grid>:nth-child(5){transition-delay:.5s}.skills-grid>:nth-child(6){transition-delay:.6s}@media (prefers-reduced-motion:reduce){.skills-grid>*{opacity:1;transform:none;transition:none}}.skills-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px var(--color-shadow);contain:content;display:flex;flex-direction:column;overflow:hidden;padding:2rem;position:relative;transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1)}.skills-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0;transform:scaleX(.8);transition:transform .4s cubic-bezier(.4,0,.2,1)}.skills-card:hover{border-color:var(--primary-400);box-shadow:0 20px 60px var(--color-accent-2-light),0 8px 32px var(--color-shadow);transform:translate3d(0,-8px,0)}.skills-card:hover:before{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.skills-card{transform:none!important;transition:none}.skills-card:before{transform:none;transition:none}}.skills-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.skills-card-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;color:var(--text-secondary);display:flex;flex-shrink:0;height:60px;justify-content:center;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:60px}.skills-card-icon:before{background:var(--gradient-primary);border-radius:inherit;content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.skills-card-icon:hover{box-shadow:0 20px 40px var(--color-accent-1-medium);color:var(--text-primary);transform:translateY(-4px) scale(1.05)}.skills-card-icon:hover:before{opacity:.1}.skills-card-title{color:var(--text-primary);font-family:Inter,sans-serif;font-size:1.375rem;font-weight:700;letter-spacing:-.01em;margin:0}.skills-list{grid-gap:1rem;contain:layout style;display:grid;flex-grow:1;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.skills-list-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;contain:content;cursor:pointer;gap:.75rem;padding:.875rem;transform:translateZ(0);transition:transform .3s cubic-bezier(.4,0,.2,1),background-color .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow}.skills-list-item:hover{background:var(--color-accent-2-light);border-color:var(--primary-400);box-shadow:0 8px 25px var(--color-accent-2-light);transform:translate3d(0,-2px,0)}.skills-list-item{animation:slideIn .3s cubic-bezier(.4,0,.2,1) forwards;opacity:0;transform:translateX(-10px)}@keyframes slideIn{to{opacity:1;transform:translateX(0)}}.skills-list-item:first-child{animation-delay:.1s}.skills-list-item:nth-child(2){animation-delay:.15s}.skills-list-item:nth-child(3){animation-delay:.2s}.skills-list-item:nth-child(4){animation-delay:.25s}.skills-list-item:nth-child(5){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.skills-list-item{animation:none;opacity:1;transform:none;transition:none}}.skills-list-item-icon{color:var(--primary-400);flex-shrink:0;font-size:1.25rem}.skills-list-item-name{color:var(--text-primary);font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.skills-section{padding:4rem 1rem}.skills-card{padding:1.5rem}.skills-card-icon{font-size:1.25rem;height:40px;width:40px}.skills-card-title{font-size:1.125rem}.skills-list{gap:.5rem}.skills-list-item{padding:.65rem}}@media (max-width:480px){.skills-section{padding:4rem 1rem}.skills-title{margin-bottom:3rem}.skills-grid{gap:1.5rem}.skills-card{min-height:220px;padding:1.25rem}}.skills-list{display:flex;flex-direction:column;gap:.75rem}.skills-list-item{align-items:center;display:flex;justify-content:center}.skills-list-icon{font-size:2rem;margin-right:.75rem}.contact-section,.skills-list-text{color:var(--color-text)}.contact-section{background:var(--color-bg);overflow:hidden;padding:5rem 2rem;position:relative}.contact-section:before{background:radial-gradient(circle at 20% 80%,var(--color-accent-2-light) 0,#0000 50%),radial-gradient(circle at 80% 20%,var(--color-accent-1-light) 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.contact-container{margin:0 auto;max-width:1200px;position:relative;width:100%;z-index:1}.contact-heading{color:var(--color-heading);font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);margin-bottom:.75rem;position:relative;text-align:center}.contact-heading:after{background:var(--gradient-primary);border-radius:var(--radius-full);content:"";display:block;height:3px;margin:.65rem auto 3.5rem;opacity:.85;width:3.5rem}.contact-grid{grid-gap:3rem;display:grid;gap:3rem}@media (min-width:992px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-layout{grid-gap:3rem;align-items:start;display:grid;gap:3rem}@media (min-width:992px){.contact-layout{grid-template-columns:1fr 1fr}}.contact-info{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);margin:0 auto;max-width:800px}@media (max-width:768px){.contact-info{grid-template-columns:1fr;grid-template-rows:auto;max-width:600px}}.contact-item{grid-gap:1.5rem;align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px var(--color-shadow);display:grid;gap:1.5rem;overflow:hidden;padding:2rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.contact-item:before{background:var(--gradient-primary);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0}.contact-item:hover{border-color:var(--color-accent-1);box-shadow:0 20px 60px var(--color-accent-2-light),0 8px 32px var(--color-shadow);transform:translateY(-8px)}.contact-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;color:var(--text-secondary);display:flex;flex-shrink:0;height:60px;justify-content:center;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:60px}.contact-icon:before{background:var(--gradient-primary);border-radius:inherit;content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.contact-icon:hover{box-shadow:0 20px 40px var(--color-accent-1-medium);color:var(--text-primary);transform:translateY(-4px) scale(1.05)}.contact-icon:hover:before{opacity:.1}.icon{height:24px;position:relative;transition:transform .3s ease;width:24px;z-index:1}.contact-title{color:var(--text-primary);font-family:Inter,sans-serif;font-size:1.375rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.5rem}.contact-text{color:var(--text-secondary);font-size:1rem;line-height:1.5}.contact-link{color:var(--color-accent-1);font-weight:500;position:relative;text-decoration:none;transition:color .2s var(--ease-out),transform .2s var(--ease-out)}.contact-link:hover{color:var(--color-accent-2);transform:translateX(2px)}.contact-link:after{background:var(--gradient-primary);bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.contact-link:hover:after{width:100%}.contact-form-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px var(--color-shadow);overflow:hidden;padding:2.5rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.contact-form-container:before{background:var(--gradient-primary);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0}.contact-form-container:hover{border-color:var(--primary-400);box-shadow:0 20px 60px var(--color-accent-2-light),0 8px 32px var(--color-shadow);transform:translateY(-4px)}.contact-form{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px var(--color-shadow);display:flex;flex-direction:column;gap:1.5rem;overflow:hidden;padding:2.5rem;position:relative}.contact-form:before{background:var(--gradient-primary);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0}.form-heading{color:var(--text-primary);font-family:Inter,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:600;letter-spacing:.025em;margin-bottom:.75rem}.form-input,.form-label,.form-textarea{color:var(--text-primary);font-family:Inter,sans-serif;font-size:1rem}.form-input,.form-textarea{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-sizing:border-box;padding:1rem 1.25rem;transition:all .3s ease;width:100%}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-secondary);opacity:.8}.form-input:focus,.form-textarea:focus{background:var(--color-surface);border-color:var(--color-accent-1);box-shadow:0 0 0 3px var(--color-accent-1-light);outline:none;transform:translateY(-2px)}.form-textarea{min-height:120px;resize:vertical}.form-submit{background:var(--btn-primary-bg);border:none;border-radius:var(--btn-radius);box-shadow:var(--btn-primary-shadow);color:#fff;cursor:pointer;font-family:var(--font-body);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);height:var(--btn-h-md);letter-spacing:var(--btn-letter-spacing);overflow:hidden;padding:0 var(--btn-px-md);position:relative;transition:var(--btn-transition);width:100%}.form-submit:before{background:linear-gradient(105deg,#0000 40%,#ffffff26 50%,#0000 60%);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .4s var(--ease-out)}.form-submit:hover:not(:disabled):before{transform:translateX(100%)}.form-submit:disabled{cursor:not-allowed;opacity:.55}.form-submit:hover:not(:disabled){box-shadow:var(--btn-primary-shadow-h);transform:translateY(-2px)}.form-submit:focus-visible{box-shadow:var(--btn-focus-ring)}.form-status{border-radius:12px;font-size:.95rem;font-weight:500;padding:.75rem 1rem}.form-success{background:#48bb7826;border:1px solid #48bb7866;color:#68d391}.form-error{background:#ff6b6b26;border:1px solid #ff6b6b66;color:#fc8181}.submit-button{align-self:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--gradient-primary);border:none;border-radius:999px;color:#fff;cursor:pointer;font-family:var(--font-body);font-size:1rem;font-weight:var(--fw-semibold);letter-spacing:.025em;overflow:hidden;padding:.875rem 2rem;position:relative;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}.submit-button:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.submit-button:active{transform:translateY(-1px)}@media (max-width:768px){.contact-section{padding:4rem 1.25rem}.contact-grid{gap:2rem}.contact-item{gap:1rem;padding:1.25rem}.contact-icon{flex-shrink:0;height:3rem;width:3rem}.contact-title{font-size:1.125rem}.contact-form,.contact-form-container{padding:1.5rem}.contact-heading{margin-bottom:2.5rem}}@media (max-width:480px){.contact-section{padding:4rem 1rem}.contact-heading{margin-bottom:3rem}.contact-item{gap:1rem;padding:1.25rem}.contact-icon{height:3rem;width:3rem}.contact-title{font-size:1.125rem}.contact-form-container{padding:1.5rem}.form-input,.form-textarea{padding:.875rem 1rem}.submit-button{align-self:stretch;padding:.875rem 1.75rem;width:100%}}.submit-button:active{transform:translateY(0)}.pill-nav{justify-content:center;position:fixed;right:1.75rem;top:50%;transform:translateY(-50%);z-index:100;z-index:var(--z-nav,100)}.pill-nav,.pill-nav__track{align-items:center;display:flex}.pill-nav__track{backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:999px;box-shadow:var(--glass-shadow);flex-direction:column;gap:.625rem;padding:.875rem .625rem}.pill-nav__dot{align-items:center;background:#0000;border:none;border-radius:50%;cursor:pointer;display:flex;height:2rem;justify-content:center;padding:0;position:relative;width:2rem}.pill-nav__dot:focus-visible{border-radius:50%;outline:2px solid var(--accent);outline-offset:2px}.pill-nav__dot-inner{background:var(--color-text-muted);border-radius:50%;display:block;height:7px;opacity:.35;transition:width .22s cubic-bezier(0,0,.2,1),height .22s cubic-bezier(0,0,.2,1),background .22s cubic-bezier(0,0,.2,1),border-radius .22s cubic-bezier(0,0,.2,1),box-shadow .22s cubic-bezier(0,0,.2,1),opacity .22s cubic-bezier(0,0,.2,1);transition:width .22s var(--ease-out,cubic-bezier(0,0,.2,1)),height .22s var(--ease-out,cubic-bezier(0,0,.2,1)),background .22s var(--ease-out,cubic-bezier(0,0,.2,1)),border-radius .22s var(--ease-out,cubic-bezier(0,0,.2,1)),box-shadow .22s var(--ease-out,cubic-bezier(0,0,.2,1)),opacity .22s var(--ease-out,cubic-bezier(0,0,.2,1));width:7px}.pill-nav__dot:hover .pill-nav__dot-inner{background:var(--color-accent-1);background:var(--nav-dot-hover,var(--color-accent-1));box-shadow:0 0 0 3px var(--color-accent-1-light);height:9px;opacity:.75;width:9px}.pill-nav__dot.is-active .pill-nav__dot-inner{background:var(--nav-dot-active);border-radius:999px;box-shadow:0 0 0 2px var(--color-accent-1-light),0 2px 10px var(--color-accent-1-medium);height:22px;opacity:1;width:6px}.pill-nav__label{border:1px solid var(--color-border);border-radius:.75rem;border-radius:var(--radius-md,.75rem);box-shadow:var(--shadow-md);color:var(--color-text);font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:.01em;opacity:0;padding:.35rem .75rem;pointer-events:none;right:calc(100% + .75rem);transform:translateY(-50%) translateX(6px);transition:opacity .15s cubic-bezier(0,0,.2,1),transform .15s cubic-bezier(0,0,.2,1);transition:opacity .15s var(--ease-out,cubic-bezier(0,0,.2,1)),transform .15s var(--ease-out,cubic-bezier(0,0,.2,1));white-space:nowrap}.pill-nav__label,.pill-nav__label:after{background:var(--color-surface);position:absolute;top:50%}.pill-nav__label:after{border:none;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);-webkit-clip-path:polygon(0 0,100% 50%,0 100%);clip-path:polygon(0 0,100% 50%,0 100%);content:"";height:8px;right:-5px;transform:translateY(-50%);transform:translateY(-50%) rotate(-45deg);width:8px}.pill-nav__label.is-visible{opacity:1;transform:translateY(-50%) translateX(0)}@media (max-width:768px){.pill-nav{bottom:max(1.5rem,env(safe-area-inset-bottom,1.5rem));right:50%;top:auto;transform:translateX(50%)}.pill-nav__track{flex-direction:row;gap:.5rem;padding:.625rem .875rem}.pill-nav__dot.is-active .pill-nav__dot-inner{border-radius:999px;height:6px;width:20px}.pill-nav__label{bottom:calc(100% + .75rem);left:50%;right:auto;top:auto;transform:translateX(-50%) translateY(-4px)}.pill-nav__label.is-visible{transform:translateX(-50%) translateY(0)}.pill-nav__label:after{left:50%;right:auto;top:calc(100% + 4px);transform:translateX(-50%) rotate(135deg)}}@media (max-width:1024px) and (min-width:769px){.pill-nav{right:1rem}}@media (prefers-reduced-motion:reduce){.pill-nav__dot-inner,.pill-nav__label{transition:none}}.theme-toggle{align-items:center;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;display:flex;height:2.75rem;justify-content:center;position:fixed;right:1.25rem;top:1.25rem;transition:background-color .2s cubic-bezier(0,0,.2,1),border-color .2s cubic-bezier(0,0,.2,1),box-shadow .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);transition:background-color .2s var(--ease-out,cubic-bezier(0,0,.2,1)),border-color .2s var(--ease-out,cubic-bezier(0,0,.2,1)),box-shadow .2s var(--ease-out,cubic-bezier(0,0,.2,1)),transform .2s var(--ease-out,cubic-bezier(0,0,.2,1));width:2.75rem;z-index:9999;z-index:var(--z-top,9999)}.theme-toggle:hover{background:var(--color-bg-subtle);border-color:var(--color-accent-1);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.theme-toggle:active{transform:translateY(0) scale(.95)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.theme-toggle .icon-container{align-items:center;display:flex;justify-content:center;line-height:0}.theme-toggle svg{color:var(--color-text);display:block;height:1.25rem;transition:transform .35s cubic-bezier(.34,1.56,.64,1);transition:transform .35s var(--ease-spring,cubic-bezier(.34,1.56,.64,1));width:1.25rem}.theme-toggle:hover svg{transform:rotate(20deg) scale(1.05)}@media (max-width:768px){.theme-toggle{height:2.5rem;right:.875rem;top:.875rem;width:2.5rem}.theme-toggle svg{height:1.1rem;width:1.1rem}}.admin-modal-backdrop{align-items:center;animation:admin-backdrop-in .2s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}@keyframes admin-backdrop-in{0%{opacity:0}to{opacity:1}}.admin-modal-card{animation:admin-card-in .3s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(145deg,#ffffff12,#ffffff08);border:1px solid #ffffff1f;border-radius:20px;box-shadow:0 25px 60px #0009,inset 0 0 0 1px #ffffff0d,0 0 40px #6366f114;margin:1rem;max-width:440px;padding:2.5rem 2rem 1.75rem;position:relative;transition:box-shadow .3s ease;width:100%}@keyframes admin-card-in{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-modal-card.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{0%,to{transform:translateX(0)}15%{transform:translateX(-8px)}30%{transform:translateX(8px)}45%{transform:translateX(-6px)}60%{transform:translateX(6px)}75%{transform:translateX(-3px)}90%{transform:translateX(3px)}}.admin-modal-card.success{border-color:#34d39966;box-shadow:0 25px 60px #0009,0 0 30px #34d39933}.admin-modal-header{margin-bottom:2rem;text-align:center}.admin-modal-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:18px;box-shadow:0 8px 24px #6366f166;color:#fff;display:inline-flex;height:64px;justify-content:center;margin-bottom:1.25rem;width:64px}.admin-modal-title{color:#f1f5f9;color:var(--color-text-primary,#f1f5f9);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .4rem}.admin-modal-subtitle{color:#94a3b8;color:var(--color-text-secondary,#94a3b8);font-size:.875rem;margin:0}.admin-modal-form{display:flex;flex-direction:column;gap:1.25rem}.admin-input-group{display:flex;flex-direction:column;gap:.5rem}.admin-input-label{color:#94a3b8;color:var(--color-text-secondary,#94a3b8);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.admin-input{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;box-sizing:border-box;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9);font-family:inherit;font-size:1rem;outline:none;padding:.8rem 1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.admin-input:focus{border-color:#6366f1b3;box-shadow:0 0 0 3px #6366f133}.admin-input--error{border-color:#ef444499!important;box-shadow:0 0 0 3px #ef444426!important}.admin-input-error{align-items:center;color:#f87171;display:flex;font-size:.8rem;gap:.3rem;margin:0}.admin-success-banner{align-items:center;background:#34d3991f;border:1px solid #34d3994d;border-radius:8px;color:#34d399;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.6rem .9rem}.admin-modal-actions{display:flex;gap:.75rem}.admin-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-family:inherit;font-size:.9rem;font-weight:600;padding:.75rem 1.25rem;transition:all .2s ease}.admin-btn--primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 4px 15px #6366f159;color:#fff}.admin-btn--primary:hover:not(:disabled){box-shadow:0 6px 20px #6366f180;transform:translateY(-1px)}.admin-btn--primary:disabled{cursor:not-allowed;opacity:.6}.admin-btn--ghost{background:#ffffff0f;border:1px solid #ffffff1a;color:#94a3b8;color:var(--color-text-secondary,#94a3b8)}.admin-btn--ghost:hover{background:#ffffff1a;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9)}.admin-modal-hint{color:#64748b;color:var(--color-text-tertiary,#64748b);font-size:.75rem;margin:1.25rem 0 0;text-align:center}.admin-modal-hint kbd{background:#ffffff0f;border:1px solid #ffffff26;border-radius:4px;display:inline-block;font-family:monospace;font-size:.7rem;padding:.1em .4em}.admin-modal-close{align-items:center;background:#ffffff0f;border:none;border-radius:8px;color:#94a3b8;color:var(--color-text-secondary,#94a3b8);cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:32px}.admin-modal-close:hover{background:#ffffff1f;color:#f1f5f9;color:var(--color-text-primary,#f1f5f9)}[data-theme=light] .admin-modal-card{background:linear-gradient(145deg,#ffffffeb,#f8fafcd9);border-color:#0000001a;box-shadow:0 25px 60px #00000026,0 0 40px #6366f10f}[data-theme=light] .admin-modal-title{color:#1e293b}[data-theme=light] .admin-modal-subtitle{color:#64748b}[data-theme=light] .admin-input{background:#0000000a;border-color:#0000001f;color:#1e293b}[data-theme=light] .admin-btn--ghost{border-color:#0000001f;color:#475569}[data-theme=light] .admin-btn--ghost:hover{background:#0000000f;color:#1e293b}[data-theme=light] .admin-modal-close{color:#64748b}[data-theme=light] .admin-modal-close:hover{background:#00000014;color:#1e293b}body,html{-ms-overflow-style:none;background:var(--color-bg);color:var(--color-text);scrollbar-width:none}body::-webkit-scrollbar,html::-webkit-scrollbar{display:none}h1,h2,h3,h4,h5,h6{color:var(--color-heading)}p{color:var(--color-text)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.code,code{font-family:var(--font-code);font-weight:var(--fw-medium)}html{scroll-behavior:smooth}.app-container,.smooth-scroll-container{position:relative}.motion-optimized{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}.enhanced-section,.motion-div,.profile-circle-decoration,.projects-card{will-change:transform,opacity}.animation-complete{will-change:auto}body,html{height:100%}#root,.App{min-height:100vh}.app-container,.app-root{min-height:100vh;position:relative;width:100%}.app-container{overflow-x:hidden}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.container{margin:0 auto;padding:0 var(--space-4);width:var(--content-width)}.section{background:var(--surface);border-bottom:1px solid var(--glass-border);padding:var(--section-spacing-md) 0}.section:last-child{border-bottom:none}.grid{grid-gap:var(--grid-gap);gap:var(--grid-gap);width:100%}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid-cols-4{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}.section{padding:var(--section-spacing-sm) 0}}@media (max-width:640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.container{padding:0 var(--space-3)}}.text-center{text-align:center}.btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:25px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:var(--spacing-sm);justify-content:center;overflow:hidden;padding:.8rem 1.5rem;position:relative;text-decoration:none;transition:all .3s ease}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn:hover:before{left:100%}.btn-primary{background:var(--button-bg);border:1px solid var(--button-border);box-shadow:var(--button-shadow);color:var(--button-text)}.btn-primary:hover{box-shadow:0 12px 40px #00d4ff4d;transform:translateY(-2px) scale(1.02)}.btn-outline{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:2px solid var(--accent-primary);color:var(--accent-primary)}.btn-outline:hover{background:var(--accent-primary);box-shadow:0 8px 25px #00d4ff66;color:var(--primary-bg);transform:translateY(-2px)}.btn-ghost{background:#0000;border:1px solid var(--glass-border);color:var(--text-secondary)}.btn-ghost:hover{background:var(--glass-bg);border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px)}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.glass,.glass-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-card{border-radius:16px;padding:2rem;transition:all .3s ease}.glass-card:hover{box-shadow:0 20px 60px #0006;transform:translateY(-4px)}.gradient-text{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text}.animate-float{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.btn-white{background:#fff;color:var(--color-accent-1)}.btn-white:hover{background:var(--color-surface);transform:translateY(-2px)}.card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s ease}.card:hover{box-shadow:0 20px 25px -5px #0000001a;transform:translateY(-4px)}.grid{grid-gap:2rem;display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (min-width:768px){.md-grid-2{grid-template-columns:repeat(2,1fr)}.md-grid-3{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.lg-grid-3{grid-template-columns:repeat(3,1fr)}}.scroll-progress-bar{background:var(--gradient-radial);height:4px;left:0;position:fixed;top:0;z-index:1000}.main-liquid-nav{z-index:1001}.intro-neural-network{opacity:.8;pointer-events:auto}@media (max-width:768px){.smooth-scroll-container>*{padding-bottom:9rem;padding-bottom:calc(var(--section-padding, 5rem) + 4rem)}}.loading-fallback{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;font-family:var(--font-body);justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--glass-border);border:3px solid var(--glass-border);border-radius:50%;border-top-color:var(--primary-color);height:40px;margin-bottom:16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-fallback p{font-size:16px;font-weight:500;margin:0;opacity:.8}.App{contain:layout style paint;will-change:scroll-position}.section{contain:layout style}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.loading-spinner{animation:none;border-top-color:var(--primary-color)}}@media (max-width:768px){.section{padding:60px var(--spacing-lg)}.App{font-size:14px}.loading-fallback{min-height:300px}.loading-spinner{height:32px;width:32px}.loading-fallback p{font-size:14px}}@media (max-width:480px){.section{padding:40px 15px}.App{font-size:13px}.loading-fallback{min-height:250px}.loading-spinner{height:28px;width:28px}.loading-fallback p{font-size:13px}}
/*# sourceMappingURL=main.096d5e6d.css.map*/