:root{--bg-main:#1e0b36;--bg-surface:#2e1554;--bg-card:#2e1554c7;--bg-card-hover:#3a1c68d9;--bg-glass:#1e0b36bf;--bg-alternate:#18082c99;--border-subtle:#ffffff17;--border-color:#ffffff1a;--border-hover:#ff2d9280;--border-active:#35e0ff80;--accent-primary:#ff2d92;--accent-primary-light:#ff70b8;--accent-secondary:#35e0ff;--accent-secondary-dark:#00b0d4;--accent-emerald:#10b981;--accent-emerald-light:#34d399;--text-primary:#fdf3ff;--text-secondary:#e6c8ff;--text-muted:#b39cc9;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px;--font-main:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--shadow-sm:0 2px 8px #00000040;--shadow-md:0 6px 20px -2px #00000059;--shadow-lg:0 16px 36px -4px #00000080;--shadow-glow:0 0 25px #ff2d9233;--shadow-cyan-glow:0 0 25px #35e0ff33;--transition-fast:.2s cubic-bezier(.16, 1, .3, 1);--transition-normal:.3s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-padding-top:86px}body{font-family:var(--font-main);background-color:var(--bg-main);color:var(--text-primary);background-image:radial-gradient(#ffffff0d 1px, transparent 1px), radial-gradient(at 0% 0%, color-mix(in srgb, var(--accent-primary) 16%, transparent) 0px, transparent 45%), radial-gradient(at 100% 20%, color-mix(in srgb, var(--accent-secondary) 13%, transparent) 0px, transparent 40%), radial-gradient(at 50% 80%, color-mix(in srgb, var(--accent-primary) 8%, transparent) 0px, transparent 50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:28px 28px,100% 100%,100% 100%,100% 100%;min-height:100dvh;line-height:1.7;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--accent-primary) 35%, var(--bg-surface));border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--accent-primary) 55%, var(--bg-surface))}h1,h2,h3,h4,h5,h6{color:var(--text-primary);letter-spacing:-.025em;font-weight:700;line-height:1.25}a{color:inherit;transition:var(--transition-fast);text-decoration:none}button{cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;outline:none;font-family:inherit}input,textarea,select{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:.95rem;transition:border-color .25s,box-shadow .25s,background-color .25s}input:focus,textarea:focus,select:focus{border-color:var(--accent-primary-light);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-primary) 25%, transparent)}.container{max-width:1200px;margin:0 auto;padding:0 28px}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color .25s,box-shadow .25s,background-color .25s;position:relative}.about-feature-card,.skill-card,.project-card,.timeline-content{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .25s cubic-bezier(.16,1,.3,1),background-color .25s}@media (hover:hover) and (pointer:fine){.about-feature-card:hover,.skill-card:hover,.project-card:hover,.timeline-content:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg), var(--shadow-glow);background:var(--bg-card-hover);transform:translateY(-4px)}}.gradient-text{background:linear-gradient(135deg, #fff 0%, var(--accent-primary-light) 50%, var(--accent-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-text-cyan{background:linear-gradient(135deg, #fff 0%, var(--accent-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.badge{border-radius:var(--radius-full);letter-spacing:.01em;font-size:.82rem;font-weight:600;font-family:var(--font-mono);transition:var(--transition-fast);align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.badge-status{background:color-mix(in srgb, var(--accent-emerald) 14%, transparent);color:var(--accent-emerald-light);border:1px solid color-mix(in srgb, var(--accent-emerald) 30%, transparent);box-shadow:0 0 15px color-mix(in srgb, var(--accent-emerald) 16%, transparent)}.badge-tag{background:color-mix(in srgb, var(--accent-primary) 14%, transparent);color:var(--accent-primary-light);border:1px solid color-mix(in srgb, var(--accent-primary) 26%, transparent)}.badge-outline{color:var(--text-secondary);border:1px solid var(--border-subtle);background:#ffffff0a;font-size:.78rem}.badge-outline:hover{background:color-mix(in srgb, var(--accent-primary) 10%, transparent);color:var(--text-primary);border-color:color-mix(in srgb, var(--accent-primary) 30%, transparent)}.pulse-dot{background-color:var(--accent-emerald-light);border-radius:50%;width:8px;height:8px;animation:2.2s cubic-bezier(.4,0,.6,1) infinite pulse-ring;display:inline-block;box-shadow:0 0 #34d399b3}@keyframes pulse-ring{0%{box-shadow:0 0 #34d399b3}70%{box-shadow:0 0 0 8px #34d39900}to{box-shadow:0 0 #34d39900}}.btn-primary{background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-secondary) 110%);color:#fff;border-radius:var(--radius-md);letter-spacing:-.01em;box-shadow:0 4px 18px color-mix(in srgb, var(--accent-primary) 35%, transparent);border:1px solid #ffffff1f;justify-content:center;align-items:center;gap:10px;padding:13px 26px;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary:hover{box-shadow:0 8px 25px color-mix(in srgb, var(--accent-primary) 50%, transparent);background:linear-gradient(135deg, var(--accent-primary-light) 0%, var(--accent-secondary) 140%);color:#fff;border-color:#ffffff40;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);letter-spacing:-.01em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;justify-content:center;align-items:center;gap:10px;padding:13px 26px;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-secondary:hover{border-color:color-mix(in srgb, var(--accent-primary) 45%, transparent);color:#fff;background:#ffffff1a;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.btn-secondary:active{transform:translateY(0)}.btn-sm{border-radius:var(--radius-sm);gap:8px;padding:9px 18px;font-size:.88rem}.btn-icon{border-radius:var(--radius-md);border:1px solid var(--border-color);width:42px;height:42px;color:var(--text-secondary);background:#ffffff0a;justify-content:center;align-items:center;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-icon:hover{background:color-mix(in srgb, var(--accent-primary) 18%, transparent);border-color:var(--accent-primary-light);color:#fff;box-shadow:0 4px 15px color-mix(in srgb, var(--accent-primary) 30%, transparent);transform:translateY(-2px)}.btn-danger{color:#f87171;border-radius:var(--radius-sm);background:#ef44441f;border:1px solid #ef444440;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-size:.88rem;font-weight:600;display:inline-flex}.btn-danger:hover{background:#ef444438;border-color:#ef444473;transform:translateY(-2px)}.portfolio-root{min-height:100dvh;position:relative}.top-nav{background:var(--bg-glass,#0f172ae0);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border-color);z-index:1000;justify-content:space-between;align-items:center;gap:20px;height:72px;padding:0 28px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 24px #00000047}.top-nav-brand{flex-shrink:0;align-items:center;gap:12px;display:flex}.top-nav-logo-icon{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;width:42px;height:42px;font-size:1rem;font-weight:800;font-family:var(--font-mono);border:1px solid #fff3;border-radius:14px;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 4px 16px #00000059}.top-nav-logo-icon.nav-logo-avatar{object-fit:cover;background:var(--bg-surface);border-radius:9999px}.top-nav-brand:hover .top-nav-logo-icon{box-shadow:0 6px 20px var(--accent-primary);transform:scale(1.06)rotate(-4deg)}.top-nav-brand-name{color:var(--text-primary);white-space:nowrap;font-size:1.05rem;font-weight:700}.top-nav-menu{flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.top-nav-link{border-radius:var(--radius-md);color:var(--text-secondary);background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:9px 14px;font-size:.92rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.top-nav-link:hover{color:var(--text-primary);background:var(--bg-card-hover);border-color:var(--border-hover);transform:translateY(-2px)}.top-nav-link.active{color:#fff;background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));box-shadow:0 4px 18px color-mix(in srgb, var(--accent-primary) 55%, transparent);border-color:#ffffff40}.top-nav-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.mobile-menu-btn{border-radius:var(--radius-md);width:42px;height:42px;color:var(--text-primary);border:1px solid var(--border-color);background:#ffffff0d;justify-content:center;align-items:center;display:none}.mobile-menu-btn:hover{border-color:var(--border-hover);background:#ffffff1a}.mobile-nav{z-index:999;background:var(--bg-glass,#0f172af7);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border-color);padding:12px;animation:.3s cubic-bezier(.16,1,.3,1) slideInDown;position:fixed;top:72px;left:0;right:0;box-shadow:0 16px 36px #00000059}.mobile-nav ul{flex-direction:column;gap:4px;list-style:none;display:flex}.mobile-nav .top-nav-link{width:100%;padding:12px 14px}[data-theme=light] .top-nav{background:var(--bg-glass,#ffffffeb);border-bottom:1px solid var(--border-color);box-shadow:0 4px 24px #0000000f}[data-theme=light] .top-nav-link:hover{color:var(--accent-primary);background:#0000000d}[data-theme=light] .top-nav-link.active{color:#fff}[data-theme=light] .mobile-nav{background:var(--bg-glass,#fffffff7)}section{padding:120px 0;position:relative;overflow:hidden}.section-alternate{background:var(--bg-alternate);border-top:1px solid #ffffff0a;border-bottom:1px solid #ffffff0a}.section-header{text-align:center;margin-bottom:64px;animation:.7s cubic-bezier(.16,1,.3,1) both fadeInUp}.section-subtitle{text-transform:uppercase;letter-spacing:.12em;color:var(--accent-secondary);font-size:.82rem;font-weight:700;font-family:var(--font-mono);background:color-mix(in srgb, var(--accent-secondary) 8%, transparent);border-radius:var(--radius-full);border:1px solid color-mix(in srgb, var(--accent-secondary) 22%, transparent);align-items:center;gap:8px;margin-bottom:14px;padding:6px 14px;display:inline-flex}.section-title{letter-spacing:-.03em;margin-bottom:16px;font-size:clamp(2rem,3.8vw,2.85rem);font-weight:800;line-height:1.15}.section-desc{max-width:680px;color:var(--text-secondary);margin:0 auto;font-size:1.1rem;line-height:1.7}.hero-section{align-items:center;min-height:100dvh;padding-top:80px;padding-bottom:80px;display:flex;position:relative}.hero-grid{grid-template-columns:1.25fr .75fr;align-items:center;gap:60px;display:grid}.hero-content{flex-direction:column;gap:24px;display:flex}.hero-badge-wrap{display:flex}.hero-title{letter-spacing:-.035em;font-size:clamp(2.85rem,5.5vw,4.25rem);font-weight:800;line-height:1.1}.hero-subtitle{color:var(--accent-primary-light);letter-spacing:-.01em;font-size:1.35rem;font-weight:500}.hero-tagline{color:var(--text-secondary);max-width:580px;font-size:1.125rem;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:8px;display:flex}.hero-socials{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;padding-top:16px;display:flex}.socials-label{color:var(--text-muted);margin-right:4px;font-size:.88rem;font-weight:500}.hero-card{text-align:center;padding:36px 28px;position:relative;overflow:hidden}.hero-card-glow-orb{background:radial-gradient(circle, color-mix(in srgb, var(--accent-primary) 28%, transparent) 0%, transparent 70%);pointer-events:none;border-radius:50%;width:140px;height:140px;position:absolute;top:-50px;right:-50px}.hero-avatar-wrap{width:130px;height:130px;margin:0 auto 24px;position:relative}.hero-avatar-glow{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));opacity:.45;filter:blur(14px);border-radius:50%;animation:3.5s infinite pulse-ring;position:absolute;inset:-8px}.hero-avatar{background:linear-gradient(135deg, color-mix(in srgb, var(--bg-surface) 85%, var(--accent-secondary)) , var(--bg-surface));width:100%;height:100%;font-size:2.5rem;font-weight:800;font-family:var(--font-mono);color:#fff;border:2px solid #ffffff29;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0006}.hero-profile-meta{margin-bottom:24px}.hero-profile-name{margin-bottom:6px;font-size:1.45rem;font-weight:700}.hero-profile-location{color:var(--text-secondary);align-items:center;gap:6px;font-size:.92rem;font-weight:500;display:inline-flex}.hero-stats-grid{border-top:1px solid var(--border-subtle);grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px;padding-top:20px;display:grid}.hero-stat-box{border:1px solid var(--border-subtle);border-radius:var(--radius-md);text-align:center;transition:var(--transition-fast);background:#ffffff08;padding:14px 10px}.hero-stat-box:hover{background:color-mix(in srgb, var(--accent-primary) 10%, transparent);border-color:color-mix(in srgb, var(--accent-primary) 30%, transparent)}.hero-stat-value{font-size:1.55rem;font-weight:800;font-family:var(--font-mono)}.hero-stat-label{color:var(--text-muted);margin-top:4px;font-size:.8rem;font-weight:500}.about-features-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:32px;margin-bottom:48px;display:grid}.about-feature-card{flex-direction:column;padding:36px 30px;display:flex}.about-feature-icon-wrap{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent-primary) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent-primary) 26%, transparent);width:52px;height:52px;color:var(--accent-primary-light);box-shadow:0 4px 14px color-mix(in srgb, var(--accent-primary) 18%, transparent);transition:var(--transition-fast);justify-content:center;align-items:center;margin-bottom:22px;display:flex}.about-feature-card:hover .about-feature-icon-wrap{border-color:var(--accent-primary-light);background:color-mix(in srgb, var(--accent-primary) 24%, transparent);color:#fff;transform:scale(1.1)}.about-feature-title{margin-bottom:14px;font-size:1.25rem;font-weight:700}.about-feature-desc{color:var(--text-secondary);font-size:.98rem;line-height:1.7}.about-full-card{padding:40px}.about-full-header{align-items:center;gap:10px;margin-bottom:20px;display:flex}.about-full-header h3{font-size:1.35rem;font-weight:700}.about-full-text{color:var(--text-secondary);white-space:pre-line;font-size:1.05rem;line-height:1.85}.skills-filter{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-bottom:48px;display:flex}.filter-btn{border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--text-secondary);background:#ffffff0a;padding:9px 20px;font-size:.9rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1)}.filter-btn:hover{color:#fff;border-color:color-mix(in srgb, var(--accent-primary) 45%, transparent);background:color-mix(in srgb, var(--accent-primary) 12%, transparent);transform:translateY(-2px)}.filter-btn.active{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;box-shadow:0 4px 18px color-mix(in srgb, var(--accent-primary) 40%, transparent);border-color:#0000;transform:translateY(-2px)}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:20px;display:grid}.skill-card{border-radius:var(--radius-md);align-items:flex-start;gap:16px;min-width:0;padding:20px 22px;display:flex;overflow:hidden}.skill-icon-wrap{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent-primary) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent-primary) 26%, transparent);width:46px;height:46px;color:var(--accent-primary-light);transition:var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.skill-card:hover .skill-icon-wrap{background:color-mix(in srgb, var(--accent-primary) 26%, transparent);color:#fff;border-color:var(--accent-primary-light);transform:scale(1.08)}.skill-info{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex;overflow:hidden}.skill-info .skill-name{color:var(--text-primary);word-break:break-word;overflow-wrap:break-word;margin:0;font-size:1rem;font-weight:700;line-height:1.35}.skill-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.skill-meta .badge-tag{white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;max-width:100%;padding:3px 10px;font-size:.72rem;line-height:1.25;overflow:hidden}.skill-level-text{color:var(--text-muted);font-size:.76rem;font-weight:600;font-family:var(--font-mono);white-space:nowrap;flex-shrink:0}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:32px;display:grid}.project-card{border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.project-header{background:linear-gradient(135deg, color-mix(in srgb, var(--bg-surface) 70%, var(--accent-primary)) 0%, var(--bg-surface) 100%);border-bottom:1px solid var(--border-subtle);align-items:flex-start;height:120px;padding:20px 24px;display:flex;position:relative}.project-header-top{justify-content:space-between;align-items:center;width:100%;display:flex}.project-category-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080!important}.project-header-icons{align-items:center;gap:8px;display:flex}.project-featured-badge{padding:4px 10px;font-size:.76rem}.project-corner-icon{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--accent-secondary);transition:var(--transition-fast);background:#ffffff14;border:1px solid #ffffff1f;justify-content:center;align-items:center;display:flex}.project-card:hover .project-corner-icon{background:color-mix(in srgb, var(--accent-secondary) 22%, transparent);color:#fff;border-color:var(--accent-secondary);transform:rotate(5deg)}.project-body{flex-direction:column;flex-grow:1;gap:18px;padding:28px 24px;display:flex}.project-title{font-size:1.35rem;font-weight:700;line-height:1.3}.project-desc{color:var(--text-secondary);flex-grow:1;font-size:.96rem;line-height:1.65}.project-tags{flex-wrap:wrap;gap:8px;display:flex}.project-links{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:12px;padding-top:14px;display:flex}.contact-value-link{color:#fff;word-break:break-all;font-size:.98rem;font-weight:600}.timeline{max-width:860px;margin:0 auto;padding-left:36px;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--accent-primary), var(--accent-secondary), color-mix(in srgb, var(--accent-primary) 12%, transparent));width:2px;position:absolute;top:10px;bottom:10px;left:12px}.timeline-item{margin-bottom:44px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-dot{background:var(--bg-main);border:3px solid var(--accent-primary);width:24px;height:24px;box-shadow:0 0 14px color-mix(in srgb, var(--accent-primary) 60%, transparent);z-index:2;transition:var(--transition-fast);border-radius:50%;position:absolute;top:16px;left:-36px}.timeline-item:hover .timeline-dot{border-color:var(--accent-secondary);box-shadow:0 0 20px color-mix(in srgb, var(--accent-secondary) 75%, transparent);transform:scale(1.25)}.timeline-content{border-radius:var(--radius-lg);padding:28px 30px}.timeline-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.timeline-role{color:#fff;margin-bottom:4px;font-size:1.3rem;font-weight:700}.timeline-company{color:var(--accent-secondary);align-items:center;gap:6px;font-size:.98rem;font-weight:600;display:inline-flex}.timeline-period-badge{flex-shrink:0}.timeline-location{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:16px;font-size:.88rem;display:flex}.timeline-description{color:var(--text-secondary);margin-bottom:16px;font-size:.98rem;line-height:1.7}.timeline-highlights{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding-top:12px;list-style:none;display:flex}.timeline-highlight-item{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:.92rem;line-height:1.6;display:flex}.highlight-icon{color:var(--accent-emerald-light);flex-shrink:0;margin-top:3px}.contact-grid{grid-template-columns:1fr 1.35fr;align-items:stretch;gap:40px;display:grid}.contact-info-panel,.contact-form-panel{height:100%;padding:36px 32px}.contact-panel-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.contact-panel-title{font-size:1.45rem;font-weight:700}.contact-panel-desc{color:var(--text-secondary);margin-bottom:30px;font-size:.98rem;line-height:1.7}.contact-card-info{border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:var(--transition-fast);background:#ffffff08;align-items:center;gap:16px;margin-bottom:18px;padding:18px 20px;display:flex}.contact-card-info:hover{background:color-mix(in srgb, var(--accent-primary) 9%, transparent);border-color:color-mix(in srgb, var(--accent-primary) 30%, transparent);transform:translate(4px)}.contact-icon{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent-primary) 14%, transparent);width:44px;height:44px;color:var(--accent-primary-light);flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-detail-text{flex-grow:1}.contact-label{color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono);margin-bottom:2px}.contact-value-link{color:#fff;font-size:.98rem;font-weight:600}.contact-value-link:hover{color:var(--accent-secondary)}.contact-value-text{color:#fff;font-size:.98rem;font-weight:600}.contact-socials-block{border-top:1px solid var(--border-subtle);margin-top:36px;padding-top:24px}.contact-socials-label{color:var(--text-muted);margin-bottom:14px;font-size:.9rem;font-weight:500}.contact-socials-list{gap:12px;display:flex}.contact-success-box{border-radius:var(--radius-md);text-align:center;background:#10b9811f;border:1px solid #10b9814d;padding:32px 24px}.contact-success-title{color:var(--accent-emerald-light);margin-bottom:8px;font-size:1.3rem;font-weight:700}.contact-success-desc{color:var(--text-secondary);font-size:.98rem;line-height:1.6}.contact-submit-btn{width:100%;margin-top:12px}.contact-error-box{border-radius:var(--radius-sm);color:var(--accent-danger-light,#fca5a5);background:#ef44441f;border:1px solid #ef444459;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;font-size:.9rem;font-weight:500;display:flex}.footer{border-top:1px solid var(--border-subtle);background:color-mix(in srgb, var(--bg-main) 88%, #000 12%);text-align:center;padding:56px 0}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-brand{align-items:center;gap:12px;display:flex}.footer-logo-icon{width:34px;height:34px;font-size:.92rem}.footer-brand-name{font-size:1.05rem;font-weight:700}.footer-copy{color:var(--text-muted);font-size:.92rem}.admin-shell{min-height:100dvh;display:flex}.admin-sidebar{background:var(--bg-glass,#0f172aeb);-webkit-backdrop-filter:blur(24px);border-right:1px solid var(--border-color);z-index:1000;flex-direction:column;justify-content:space-between;align-items:center;width:76px;padding:20px 0 16px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:4px 0 24px #00000040}.admin-sidebar-top{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.admin-sidebar-logo{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;width:46px;height:46px;box-shadow:0 4px 16px color-mix(in srgb, var(--accent-primary) 50%, transparent);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-sidebar-menu{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.admin-sidebar-btn{width:46px;height:46px;color:var(--text-secondary);background:0 0;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.admin-sidebar-btn:hover{color:var(--text-primary);background:var(--bg-card-hover);border-color:var(--border-hover);transform:translateY(-2px)}.admin-sidebar-btn.active{color:#fff;background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));box-shadow:0 4px 18px color-mix(in srgb, var(--accent-primary) 55%, transparent);border-color:#ffffff40}.admin-sidebar-badge{border-radius:var(--radius-full);background:var(--accent-emerald);color:#fff;border:2px solid var(--bg-main);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.68rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.admin-sidebar-bottom{border-top:1px solid var(--border-color);flex-direction:column;align-items:center;gap:8px;width:100%;padding-top:16px;display:flex}.admin-sidebar-tooltip{background:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-sm);border:1px solid var(--border-color);pointer-events:none;white-space:nowrap;opacity:0;visibility:hidden;z-index:1100;padding:6px 12px;font-size:.8rem;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)translate(-6px);box-shadow:0 8px 24px #0006}.admin-sidebar-btn:hover .admin-sidebar-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)translate(0)}.admin-content{flex:1;max-width:none;margin-left:76px;padding:36px 28px 80px}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px;display:flex}[data-theme=light] .admin-sidebar{background:var(--bg-glass,#ffffffeb);border-right:1px solid var(--border-color);box-shadow:4px 0 24px #0000000f}[data-theme=light] .admin-sidebar-btn:hover{color:var(--accent-primary);background:#0000000d}[data-theme=light] .admin-sidebar-btn.active{color:#fff}[data-theme=light] .admin-sidebar-tooltip{color:var(--text-primary);background:#fff;box-shadow:0 6px 20px #0000001f}.form-group{margin-bottom:22px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:.88rem;font-weight:600;display:block}.form-row{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.toast{z-index:2000;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--accent-emerald);color:#fff;border-radius:var(--radius-md);background:#0f172af5;align-items:center;gap:12px;padding:14px 24px;animation:.3s cubic-bezier(.16,1,.3,1) slideInUpToast;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 12px 35px #00000080}@keyframes slideInUpToast{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.hero-grid{grid-template-columns:1fr;gap:48px}.hero-card{width:100%;max-width:480px;margin:0 auto}.contact-grid{grid-template-columns:1fr;gap:36px}}@media (width<=900px){.top-nav-menu{display:none}.mobile-menu-btn{display:inline-flex}}@media (width<=768px){section{padding:80px 0}.hero-section{padding-top:130px;padding-bottom:70px}.container{padding:0 18px}.top-nav{padding:0 16px}.section-header{margin-bottom:44px}.section-title{font-size:2rem}.projects-grid{grid-template-columns:1fr}.project-links{flex-direction:column;width:100%}.project-links a,.project-links button{justify-content:center;width:100%}.skills-grid,.form-row{grid-template-columns:1fr}.timeline{padding-left:28px}.timeline-dot{width:20px;height:20px;top:18px;left:-28px}.timeline-card-header{flex-direction:column;align-items:flex-start}.timeline-content{padding:22px 18px}.about-feature-card,.about-full-card{padding:24px 20px}.contact-info-panel,.contact-form-panel{padding:24px 18px}.hero-actions{flex-direction:column;width:100%}.hero-actions .btn-primary,.hero-actions .btn-secondary{justify-content:center;width:100%}input[type=text],input[type=email],input[type=password],textarea,select{font-size:16px!important}.toast{justify-content:center;max-width:none;bottom:16px;left:16px;right:16px}.admin-header{flex-direction:column;align-items:flex-start;gap:16px}.admin-header>div:last-child{width:100%}.admin-sidebar{border-right:none;border-top:1px solid var(--border-color);flex-direction:row;justify-content:space-between;width:auto;height:64px;padding:6px 10px;inset:auto 0 0;box-shadow:0 -4px 24px #00000040}.admin-sidebar-top{flex-direction:row;justify-content:space-between;gap:4px}.admin-sidebar-logo{display:none}.admin-sidebar-menu{flex-direction:row;gap:2px;overflow-x:auto}.admin-sidebar-btn{flex-shrink:0;width:42px;height:48px}.admin-sidebar-tooltip{display:none}.admin-sidebar-bottom{border-top:none;border-left:1px solid var(--border-color);flex-direction:row;gap:2px;padding-top:0;padding-left:8px}.admin-content{margin-left:0;padding:28px 16px 96px}}@media (width<=480px){.hero-title{font-size:2.1rem;line-height:1.15}.hero-subtitle{font-size:1.15rem}.hero-tagline{font-size:1rem}.skills-filter{gap:6px;margin-bottom:32px}.filter-btn{padding:7px 14px;font-size:.8rem}.footer-content{text-align:center;flex-direction:column;justify-content:center}.footer-brand,.footer-socials{justify-content:center}}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=light] body{background-image:radial-gradient(#0000000a 1px, transparent 1px), radial-gradient(at 0% 0%, color-mix(in srgb, var(--accent-primary) 8%, transparent) 0px, transparent 45%), radial-gradient(at 100% 20%, color-mix(in srgb, var(--accent-secondary) 7%, transparent) 0px, transparent 40%), radial-gradient(at 50% 80%, color-mix(in srgb, var(--accent-primary) 5%, transparent) 0px, transparent 50%);color:var(--text-primary)}[data-theme=light] ::-webkit-scrollbar-track{background:var(--bg-main)}[data-theme=light] ::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--accent-primary) 30%, var(--bg-surface))}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--accent-primary) 50%, var(--bg-surface))}[data-theme=light] .glass-panel{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 4px 20px -2px #0000000f}[data-theme=light] .gradient-text{background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-primary) 55%, var(--accent-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=light] .gradient-text-cyan{background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=light] .project-header{background:linear-gradient(135deg, color-mix(in srgb, var(--bg-surface) 70%, var(--accent-primary)) 0%, var(--bg-surface) 100%)}[data-theme=light] .project-category-badge{border:1px solid #0000001a;color:var(--text-primary)!important;background:#ffffffe6!important}[data-theme=light] .badge-outline{color:var(--text-secondary);background:#0000000a;border:1px solid #0000001a}[data-theme=light] .badge-tag{background:color-mix(in srgb, var(--accent-primary) 9%, transparent);color:var(--accent-primary);border:1px solid color-mix(in srgb, var(--accent-primary) 22%, transparent)}[data-theme=light] .filter-btn{color:var(--text-secondary);background:#0000000a;border-color:#00000014}[data-theme=light] .filter-btn:hover{color:var(--text-primary);background:#00000014}[data-theme=light] .contact-value-link,[data-theme=light] .contact-value-text{color:var(--text-primary)}[data-theme=light] .footer{background:var(--bg-surface);border-top:1px solid var(--border-color)}.contact-action-buttons{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.message-item-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff05;margin-bottom:16px;padding:22px 24px;transition:all .2s}.message-item-card.unread{border-left:4px solid var(--accent-primary);background:color-mix(in srgb, var(--accent-primary) 6%, transparent)}.message-item-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.message-sender-name{color:var(--text-primary);font-size:1.05rem;font-weight:700}.message-sender-email{color:var(--accent-secondary);font-size:.85rem;font-family:var(--font-mono)}.message-date{color:var(--text-muted);font-size:.8rem}.message-subject{color:var(--text-primary);margin-bottom:8px;font-size:.95rem;font-weight:600}.message-body{color:var(--text-secondary);white-space:pre-wrap;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#00000026;margin-bottom:14px;padding:14px 16px;font-size:.9rem;line-height:1.6}[data-theme=light] .message-body{background:#00000008}.message-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.empty-state{text-align:center;color:var(--text-muted);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg);padding:40px 20px;font-size:.95rem}.content-visibility-auto{content-visibility:auto;contain-intrinsic-size:auto 800px}@media (prefers-reduced-motion:reduce){.content-visibility-auto{content-visibility:visible}}
/*$vite$:1*/