*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;overflow-x:hidden}code,pre{font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace}img{display:block;height:auto;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font-family:inherit}:root{--bg-main:#070b14;--bg-surface:#0e1526;--bg-card:#131c31;--bg-card-hover:#18233d;--bg-glass:#0e1526e0;--bg-input:#0a0f1d;--text-main:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--border-subtle:#ffffff14;--border-hover:#38bdf84d;--border-card:1px solid #ffffff14;--flutter-blue:#0284c7;--flutter-cyan:#38bdf8;--flutter-light:#7dd3fc;--indigo-accent:#6366f1;--emerald-accent:#10b981;--amber-accent:#f59e0b;--glow-primary:#38bdf826;--glow-indigo:#6366f126;--shadow-sm:0 2px 8px #00000040;--shadow-md:0 8px 24px #00000059;--shadow-lg:0 20px 48px #00000073;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--transition-fast:0.16s ease;--transition-smooth:0.25s cubic-bezier(0.16,1,0.3,1)}[data-theme=light]{--bg-main:#f8fafc;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#f1f5f9;--bg-glass:#ffffffeb;--bg-input:#fff;--text-main:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-inverse:#fff;--border-subtle:#0f172a17;--border-hover:#0284c766;--border-card:1px solid #0f172a14;--flutter-blue:#0284c7;--flutter-cyan:#0284c7;--flutter-light:#0369a1;--glow-primary:#0284c714;--glow-indigo:#6366f114;--shadow-sm:0 2px 8px #0f172a0a;--shadow-md:0 8px 24px #0f172a14;--shadow-lg:0 20px 48px #0f172a1f}body{background-color:#070b14;background-color:var(--bg-main);color:#f1f5f9;color:var(--text-main);position:relative;transition:background-color .25s cubic-bezier(.16,1,.3,1),color .25s cubic-bezier(.16,1,.3,1);transition:background-color var(--transition-smooth),color var(--transition-smooth)}.App{display:flex;flex-direction:column;min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:0 1.25rem;width:100%}.section-padding{padding:3.5rem 0}.section-padding-sm{padding:1.5rem 0 2.5rem}.section-padding-compact{padding:3rem 0}.scroll-progress-bar{background:linear-gradient(90deg,#0284c7,#38bdf8 60%,#6366f1);background:linear-gradient(90deg,var(--flutter-blue) 0,var(--flutter-cyan) 60%,var(--indigo-accent) 100%);height:3px;left:0;position:fixed;top:0;transition:width .08s ease-out;z-index:9999}.section-header-block{margin:0 auto 2.5rem;max-width:680px;text-align:center}.compact-header{margin-bottom:2rem}.section-eyebrow{background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:999px;color:#38bdf8;color:var(--flutter-cyan);display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.1em;margin-bottom:.75rem;padding:.25rem .85rem;text-transform:uppercase}.section-heading{color:#f1f5f9;color:var(--text-main);font-size:2rem;font-weight:800;letter-spacing:-.02em;line-height:1.25;margin-bottom:.65rem}.section-subtext{color:#94a3b8;color:var(--text-secondary);font-size:.95rem;line-height:1.55}.btn{align-items:center;border:1px solid #0000;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.45rem;justify-content:center;padding:.65rem 1.2rem;transition:all .16s ease;transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#0284c7,#0369a1);background:linear-gradient(135deg,var(--flutter-blue) 0,#0369a1 100%);box-shadow:0 4px 12px #0284c74d;color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#0369a1,#075985);box-shadow:0 6px 18px #0284c766;transform:translateY(-2px)}.btn-secondary{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);color:#f1f5f9;color:var(--text-main)}.btn-secondary:hover{background:#18233d;background:var(--bg-card-hover);border-color:#38bdf84d;border-color:var(--border-hover);transform:translateY(-2px)}.btn-outline{background:#0000;border:1px solid #ffffff14;border:1px solid var(--border-subtle);color:#f1f5f9;color:var(--text-main)}.btn-outline:hover{background:#38bdf826;background:var(--glow-primary);border-color:#38bdf8;border-color:var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan);transform:translateY(-2px)}.btn-sm{font-size:.785rem;padding:.45rem .85rem}.btn-block{width:100%}.navbar-header{background:#0000;left:0;position:-webkit-sticky;position:sticky;top:0;transition:all .25s cubic-bezier(.16,1,.3,1);transition:all var(--transition-smooth);width:100%;z-index:1000}.navbar-header.scrolled{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#0e1526e0;background:var(--bg-glass);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);box-shadow:0 2px 8px #00000040;box-shadow:var(--shadow-sm)}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:.85rem 1.25rem}.navbar-brand{align-items:center;display:flex;gap:.65rem;text-decoration:none}.brand-logo-circle{align-items:center;background:linear-gradient(135deg,#0284c7,#6366f1);background:linear-gradient(135deg,var(--flutter-blue) 0,var(--indigo-accent) 100%);border-radius:8px;color:#fff;display:flex;font-size:.85rem;font-weight:800;height:34px;justify-content:center;width:34px}.brand-text{display:flex;flex-direction:column}.brand-name{color:#f1f5f9;color:var(--text-main);font-size:.9rem;font-weight:700;letter-spacing:-.01em}.brand-role{color:#38bdf8;color:var(--flutter-cyan);font-size:.725rem;font-weight:500}.desktop-nav{display:flex}.nav-links-list{display:flex;gap:.4rem;list-style:none}.nav-link{border-radius:8px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-secondary);font-size:.85rem;font-weight:500;padding:.45rem .75rem;transition:all .16s ease;transition:all var(--transition-fast)}.nav-link.active,.nav-link:hover{background:#38bdf826;background:var(--glow-primary);color:#f1f5f9;color:var(--text-main)}.navbar-actions{align-items:center;display:flex;gap:.65rem}.theme-toggle-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#f1f5f9;color:var(--text-main);cursor:pointer;display:flex;font-size:.9rem;height:34px;justify-content:center;transition:all .16s ease;transition:all var(--transition-fast);width:34px}.theme-toggle-btn:hover{border-color:#38bdf8;border-color:var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan)}.theme-icon-sun{color:#f59e0b}.theme-icon-moon{color:#818cf8}.navbar-resume-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text-main);display:inline-flex;font-size:.825rem;font-weight:600;gap:.35rem;padding:.45rem .85rem;transition:all .16s ease;transition:all var(--transition-fast)}.navbar-resume-btn:hover{background:#38bdf826;background:var(--glow-primary);border-color:#38bdf8;border-color:var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan)}.mobile-menu-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;display:none;flex-direction:column;gap:5px;height:34px;justify-content:center;width:34px}.hamburger-line{background:#f1f5f9;background:var(--text-main);border-radius:2px;height:2px;width:16px}.mobile-nav-drawer{display:none}.hero-section{overflow:hidden;padding:4.5rem 0 4rem;position:relative}.hero-glow-bg{background:radial-gradient(circle,#38bdf826 0,#0000 70%);background:radial-gradient(circle,var(--glow-primary) 0,#0000 70%);filter:blur(70px);height:520px;right:2%;top:-12%;width:520px}.hero-glow-bg,.hero-glow-secondary{border-radius:50%;pointer-events:none;position:absolute;z-index:0}.hero-glow-secondary{background:radial-gradient(circle,#6366f126 0,#0000 70%);background:radial-gradient(circle,var(--glow-indigo) 0,#0000 70%);bottom:-25%;filter:blur(80px);height:440px;left:-8%;width:440px}.hero-container{grid-gap:3.5rem;align-items:center;display:grid;gap:3.5rem;grid-template-columns:1.1fr .9fr;position:relative;z-index:1}.hero-status-pill{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:999px;box-shadow:0 2px 8px #00000040;box-shadow:var(--shadow-sm);display:inline-flex;gap:.55rem;margin-bottom:1.5rem;padding:.4rem .9rem}.status-indicator-dot{height:8px;position:relative;width:8px}.status-indicator-dot,.status-indicator-dot:after{background:#10b981;background:var(--emerald-accent);border-radius:50%}.status-indicator-dot:after{animation:status-pulse 2s ease-out infinite;content:"";inset:0;position:absolute}@keyframes status-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.status-text{color:#94a3b8;color:var(--text-secondary);font-size:.8rem;font-weight:600;letter-spacing:.01em}.hero-title{color:#f1f5f9;color:var(--text-main);font-size:3.15rem;font-weight:800;letter-spacing:-.035em;line-height:1.08;margin-bottom:.85rem}.highlight-gradient{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#38bdf8,#0284c7 55%,#6366f1);background:linear-gradient(120deg,var(--flutter-cyan) 0,var(--flutter-blue) 55%,var(--indigo-accent) 100%);-webkit-background-clip:text;background-clip:text;color:#0000}.hero-subtitle{align-items:center;color:#f1f5f9;color:var(--text-main);display:flex;flex-wrap:wrap;font-size:1.35rem;font-weight:600;gap:.6rem;margin-bottom:1.15rem}.role-accent{color:#94a3b8;color:var(--text-secondary);font-weight:600}.role-divider{background:#38bdf8;background:var(--flutter-cyan);border-radius:50%;height:5px;opacity:.55;width:5px}.flutter-accent{align-items:center;color:#38bdf8;color:var(--flutter-cyan);display:inline-flex;font-weight:700;gap:.4rem}.hero-description{color:#94a3b8;color:var(--text-secondary);font-size:1rem;line-height:1.7;margin-bottom:1.85rem;max-width:545px}.hero-quick-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.tech-badge{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#94a3b8;color:var(--text-secondary);display:inline-flex;font-size:.8rem;font-weight:600;gap:.4rem;padding:.4rem .8rem;transition:all .16s ease;transition:all var(--transition-fast)}.tech-badge:hover{border-color:#38bdf84d;border-color:var(--border-hover);color:#f1f5f9;color:var(--text-main);transform:translateY(-2px)}.tech-badge i,.tech-badge svg{color:#38bdf8;color:var(--flutter-cyan)}.hero-cta-group{gap:.75rem;margin-bottom:2rem}.hero-cta-group,.hero-socials{align-items:center;display:flex;flex-wrap:wrap}.hero-socials{border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);gap:.6rem;padding-top:1.5rem}.socials-label{color:#64748b;color:var(--text-muted);font-size:.8125rem;font-weight:600}.social-icon-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:10px;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.95rem;height:38px;justify-content:center;transition:all .25s cubic-bezier(.16,1,.3,1);transition:all var(--transition-smooth);width:38px}.social-icon-btn:hover{background:#38bdf826;background:var(--glow-primary);border-color:#38bdf8;border-color:var(--flutter-cyan);box-shadow:0 8px 18px -8px #38bdf8;box-shadow:0 8px 18px -8px var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan);transform:translateY(-3px)}.location-tag{align-items:center;color:#64748b;color:var(--text-muted);display:flex;font-size:.785rem;font-weight:500;gap:.35rem;margin-left:auto}.location-tag i{color:#38bdf8;color:var(--flutter-cyan)}.hero-spotlight-wrapper{align-items:center;display:flex;flex-direction:column;gap:1.75rem;margin:0 auto;max-width:460px;width:100%}.hero-portrait-stage{display:flex;justify-content:center;padding:38px 0;position:relative;width:100%}.spotlight-portrait-ring{animation:portrait-float 6s ease-in-out infinite;background:linear-gradient(150deg,#38bdf8,#0284c7 45%,#6366f1);background:linear-gradient(150deg,var(--flutter-cyan) 0,var(--flutter-blue) 45%,var(--indigo-accent) 100%);border-radius:50%;box-shadow:0 16px 38px -14px #0284c780;height:220px;margin:0;padding:3px;position:relative;transition:box-shadow .4s ease;width:220px}@keyframes portrait-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.spotlight-portrait-inner{background:#0e1526;background:var(--bg-surface);border-radius:50%;height:100%;overflow:hidden;width:100%}.spotlight-portrait-img{display:block;height:100%;object-fit:cover;object-position:center 15%;transition:transform .5s ease;width:100%}.spotlight-portrait-ring:hover .spotlight-portrait-img{transform:scale(1.05)}.spotlight-portrait-ring:hover{box-shadow:0 20px 46px -12px #0284c7a6,0 0 24px #38bdf840}.spotlight-chip{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0e1526e0;background:var(--bg-glass);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 8px 24px #00000059;box-shadow:var(--shadow-md);display:inline-flex;font-size:.72rem;font-weight:700;gap:.4rem;padding:.4rem .7rem;position:absolute;white-space:nowrap;z-index:5}.spotlight-chip i{font-size:.78rem}.chip-top-left{animation:chip-bob-a 4.5s ease-in-out infinite;color:#38bdf8;color:var(--flutter-cyan);left:6%;top:0}.chip-bottom-right{animation:chip-bob-b 5s ease-in-out .5s infinite;bottom:0;color:#10b981;color:var(--emerald-accent);right:6%}@keyframes chip-bob-a{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes chip-bob-b{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.spotlight-code-card{background:#0b1220;border:1px solid #94a3b829;border-radius:14px;box-shadow:inset 0 1px 0 #ffffff0d;overflow:hidden;width:100%}.code-card-header{align-items:center;background:#ffffff08;border-bottom:1px solid #94a3b81f;display:flex;gap:.6rem;justify-content:space-between;padding:.6rem .9rem}.code-dots{display:flex;gap:.4rem}.code-dot{border-radius:50%;height:10px;width:10px}.dot-red{background:#ff5f56}.dot-amber{background:#ffbd2e}.dot-green{background:#27c93f}.code-filename{color:#8ea3c0;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.72rem;font-weight:600}.code-snippet{color:#c9d1d9;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace;font-size:.78rem;line-height:1.75;margin:0;overflow-x:auto;padding:1rem 1.1rem 1.1rem}.code-line{display:block;white-space:pre}.tok-key{color:#ff7b72}.tok-cls{color:#7dd3fc}.tok-str{color:#7ee787}.tok-num{color:#f0883e}.tok-fn{color:#f2cc60}.tok-anno{color:#ffcb6b;font-style:italic}.streak-widget-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000040;box-shadow:var(--shadow-sm);overflow:hidden}.social-links-quad-grid{grid-gap:1px;background:#ffffff14;background:var(--border-subtle);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.social-quad-item{align-items:center;background:#0e1526;background:var(--bg-surface);color:inherit;display:flex;gap:.85rem;padding:1rem 1.25rem;position:relative;transition:all .16s ease;transition:all var(--transition-fast)}.social-quad-item:hover{background:#18233d;background:var(--bg-card-hover)}.social-quad-icon{align-items:center;border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1.25rem;height:42px;justify-content:center;width:42px}.icon-github{background:#181717}.icon-linkedin{background:#0a66c2}.icon-email{background:#ea4335}.icon-whatsapp{background:#25d366}.social-quad-info{display:flex;flex-direction:column;overflow:hidden}.social-quad-title{color:#f1f5f9;color:var(--text-main);font-size:.85rem;font-weight:700}.social-quad-handle,.social-quad-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-quad-handle{color:#64748b;color:var(--text-muted);font-size:.775rem}.social-quad-arrow{color:#64748b;color:var(--text-muted);font-size:.75rem;margin-left:auto;transition:transform .16s ease;transition:transform var(--transition-fast)}.social-quad-item:hover .social-quad-arrow{color:#38bdf8;color:var(--flutter-cyan);transform:translate(2px,-2px)}.streak-heatmap-container{padding:1.5rem 1.5rem 1.25rem}.streak-meta-bar{align-items:center;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);display:flex;gap:2rem;margin-bottom:1.25rem;padding-bottom:.85rem}.streak-stat-badge{display:flex;flex-direction:column}.streak-stat-num{color:#38bdf8;color:var(--flutter-cyan);font-size:1.35rem;font-weight:800;line-height:1.2}.streak-stat-lbl{font-size:.75rem}.streak-months-header,.streak-stat-lbl{color:#64748b;color:var(--text-muted);font-weight:600}.streak-months-header{display:flex;font-size:.725rem;justify-content:space-between;margin-bottom:.45rem;padding:0 4px}.streak-scroll-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto;padding-bottom:.5rem}.streak-scroll-inner{min-width:680px}.streak-calendar-grid{display:flex;gap:3.5px;justify-content:space-between}.streak-calendar-col{display:flex;flex-direction:column;gap:3.5px}.streak-tile{border-radius:2px;cursor:pointer;height:12px;transition:transform .15s ease;width:12px}.streak-tile:hover{position:relative;transform:scale(1.35);z-index:10}[data-theme=dark] .streak-tile.level-0{background:#162032}[data-theme=dark] .streak-tile.level-1{background:#0c4a6e}[data-theme=dark] .streak-tile.level-2{background:#0284c7}[data-theme=dark] .streak-tile.level-3{background:#38bdf8}[data-theme=dark] .streak-tile.level-4{background:#7dd3fc}[data-theme=light] .streak-tile.level-0{background:#ebedf0}[data-theme=light] .streak-tile.level-1{background:#bae6fd}[data-theme=light] .streak-tile.level-2{background:#38bdf8}[data-theme=light] .streak-tile.level-3{background:#0284c7}[data-theme=light] .streak-tile.level-4{background:#0369a1}.streak-active-tooltip{color:#38bdf8;color:var(--flutter-cyan);font-size:.75rem;font-weight:600;margin-top:.5rem;text-align:center}.streak-footer-bar{align-items:center;border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);color:#64748b;color:var(--text-muted);display:flex;font-size:.8125rem;justify-content:space-between;margin-top:.85rem;padding-top:.75rem}.github-text-link{color:#38bdf8;color:var(--flutter-cyan);text-decoration:underline}.streak-legend{align-items:center;display:flex;font-size:.725rem;gap:4px}.legend-tile{border-radius:2px;height:10px;width:10px}[data-theme=dark] .legend-tile.level-0{background:#162032}[data-theme=dark] .legend-tile.level-1{background:#0c4a6e}[data-theme=dark] .legend-tile.level-2{background:#0284c7}[data-theme=dark] .legend-tile.level-3{background:#38bdf8}[data-theme=dark] .legend-tile.level-4{background:#7dd3fc}[data-theme=light] .legend-tile.level-0{background:#ebedf0}[data-theme=light] .legend-tile.level-1{background:#bae6fd}[data-theme=light] .legend-tile.level-2{background:#38bdf8}[data-theme=light] .legend-tile.level-3{background:#0284c7}[data-theme=light] .legend-tile.level-4{background:#0369a1}.about-section{background:#0e1526;background:var(--bg-surface);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle)}.about-grid{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1.35fr .85fr}.about-narrative-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:2rem}.narrative-heading{color:#f1f5f9;color:var(--text-main);font-size:1.35rem;font-weight:700;line-height:1.35;margin-bottom:1rem}.narrative-p{color:#94a3b8;color:var(--text-secondary);font-size:.925rem;line-height:1.6;margin-bottom:.85rem}.engineering-pillars{grid-gap:1rem;border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-top:1.5rem;padding-top:1.5rem}.pillar-item{align-items:flex-start;display:flex;gap:.75rem}.pillar-icon{align-items:center;background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:6px;color:#38bdf8;color:var(--flutter-cyan);display:flex;flex-shrink:0;font-size:.85rem;height:32px;justify-content:center;width:32px}.pillar-title{color:#f1f5f9;color:var(--text-main);font-size:.85rem;font-weight:700;margin-bottom:.2rem}.pillar-desc{color:#64748b;color:var(--text-muted);font-size:.775rem;line-height:1.4}.about-metrics-sidebar{display:flex;flex-direction:column;gap:1.5rem}.metrics-card-wrapper{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:1.5rem}.metrics-card-title{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);color:#f1f5f9;color:var(--text-main);font-size:.95rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem}.metrics-items-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.metric-box{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);display:flex;flex-direction:column;padding:.85rem .75rem;text-align:center}.metric-val{color:#38bdf8;color:var(--flutter-cyan);font-size:1.5rem;font-weight:800;line-height:1.2}.metric-lbl{color:#f1f5f9;color:var(--text-main);font-size:.8rem;font-weight:700;margin:.25rem 0 .15rem}.metric-hlp{color:#64748b;color:var(--text-muted);font-size:.7rem}.quick-info-box{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:1.5rem}.quick-info-title{color:#f1f5f9;color:var(--text-main);font-size:.95rem;font-weight:700;margin-bottom:1rem}.quick-info-list{display:flex;flex-direction:column;gap:.65rem;list-style:none}.quick-info-list li{align-items:center;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);display:flex;font-size:.8125rem;justify-content:space-between;padding-bottom:.6rem}.quick-info-list li:last-child{border-bottom:none;padding-bottom:0}.info-label{align-items:center;color:#64748b;color:var(--text-muted);display:flex;gap:.35rem}.info-label i{color:#38bdf8;color:var(--flutter-cyan)}.info-value{color:#f1f5f9;color:var(--text-main);font-weight:600}.compact-filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.filter-pill-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:999px;color:#94a3b8;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:600;gap:.45rem;padding:.45rem 1rem;transition:all .16s ease;transition:all var(--transition-fast)}.filter-pill-btn:hover{background:#18233d;background:var(--bg-card-hover);color:#f1f5f9;color:var(--text-main)}.filter-pill-btn.active{background:#0284c7;background:var(--flutter-blue);border-color:#0284c7;border-color:var(--flutter-blue);color:#fff}.filter-count{background:#ffffff26;border-radius:999px;font-size:.7rem;font-weight:700;padding:.1rem .4rem}.projects-row-grid{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(2,1fr)}.project-row-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 2px 8px #00000040;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;transition:all .16s ease;transition:all var(--transition-fast)}.project-row-card:hover{border-color:#38bdf84d;border-color:var(--border-hover);box-shadow:0 8px 24px #00000059;box-shadow:var(--shadow-md);transform:translateY(-3px)}.project-image-16-9-wrapper{aspect-ratio:16/9;background:#020617;cursor:pointer;overflow:hidden;position:relative;width:100%}.project-image-16-9{display:block;height:100%;object-fit:cover;object-position:center center;transition:transform .35s ease;width:100%}.project-image-16-9-wrapper:hover .project-image-16-9{transform:scale(1.04)}.image-hover-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#070b148c;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .16s ease;transition:opacity var(--transition-fast)}.project-image-16-9-wrapper:hover .image-hover-overlay{opacity:1}.overlay-inspect-btn{align-items:center;background:#0284c7f2;border-radius:999px;color:#fff;display:inline-flex;font-size:.8rem;font-weight:600;gap:.4rem;padding:.45rem 1rem}.card-floating-badge-bar{align-items:center;display:flex;gap:.4rem;left:10px;position:absolute;top:10px;z-index:2}.badge-tag{border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.25rem .6rem;text-transform:uppercase}.live-badge{background:#10b981e0;color:#fff}.rating-tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172ad9;border:1px solid #f59e0b66;border-radius:4px;color:#fbbf24;font-size:.7rem;font-weight:700;padding:.25rem .55rem}.project-card-body{display:flex;flex-direction:column;flex-grow:1;padding:1.25rem 1.35rem}.card-top-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.platform-tag{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#64748b;color:var(--text-muted);padding:.2rem .5rem}.card-role-pill,.platform-tag{font-size:.725rem;font-weight:600}.card-role-pill{align-items:center;color:#94a3b8;color:var(--text-secondary);display:flex;gap:.3rem}.card-role-pill i{color:#38bdf8;color:var(--flutter-cyan)}.project-card-title{color:#f1f5f9;color:var(--text-main);font-size:1.25rem;font-weight:800;letter-spacing:-.01em;margin-bottom:.2rem}.project-card-tagline{color:#38bdf8;color:var(--flutter-cyan);font-size:.825rem;font-weight:600;line-height:1.35;margin-bottom:.6rem}.project-tech-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.85rem}.tech-tag{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#94a3b8;color:var(--text-secondary);font-size:.725rem;font-weight:600;padding:.2rem .5rem}.tech-tag-more{background:#38bdf826;background:var(--glow-primary);color:#38bdf8;color:var(--flutter-cyan);font-weight:700}.project-expandable-content{overflow:hidden}.expandable-inner-box{border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.5rem;margin-bottom:.85rem;margin-top:.5rem;padding-top:.75rem}.detail-item{font-size:.8rem;line-height:1.5}.detail-label{color:#f1f5f9;color:var(--text-main);font-weight:700;margin-right:.35rem}.detail-text{color:#94a3b8;color:var(--text-secondary);display:inline}.detail-features{margin-top:.25rem}.project-features-list{display:flex;flex-direction:column;gap:.3rem;list-style:none;margin-top:.35rem}.project-features-list li{align-items:flex-start;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.785rem;gap:.45rem;line-height:1.4}.project-features-list li i{color:#10b981;color:var(--emerald-accent);font-size:.7rem;margin-top:.2rem}.project-card-actions{align-items:center;border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.75rem}.btn-toggle-expand{align-items:center;background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#38bdf8;color:var(--flutter-cyan);cursor:pointer;display:inline-flex;font-size:.775rem;font-weight:600;gap:.35rem;padding:.4rem .75rem;transition:all .16s ease;transition:all var(--transition-fast)}.btn-toggle-expand:hover{background:#38bdf840;border-color:#38bdf8;border-color:var(--flutter-cyan)}.card-direct-links{align-items:center;display:flex;gap:.35rem;margin-left:auto}.card-icon-link{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#f1f5f9;color:var(--text-main);display:flex;font-size:.85rem;height:32px;justify-content:center;transition:all .16s ease;transition:all var(--transition-fast);width:32px}.card-icon-link:hover{background:#38bdf826;background:var(--glow-primary);border-color:#38bdf8;border-color:var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan);transform:translateY(-2px)}.compact-other-block{margin-top:3.5rem}.compact-sub-header{margin-bottom:1.75rem;text-align:center}.sub-heading{font-size:1.5rem;font-weight:800;margin-bottom:.35rem}.sub-description{color:#94a3b8;color:var(--text-secondary);font-size:.875rem}.other-projects-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.other-project-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:12px;border-radius:var(--radius-md);display:flex;flex-direction:column;padding:1.25rem;transition:all .16s ease;transition:all var(--transition-fast)}.other-project-card:hover{border-color:#38bdf84d;border-color:var(--border-hover);transform:translateY(-2px)}.other-card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.project-badge{background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#38bdf8;color:var(--flutter-cyan);font-size:.7rem;font-weight:700;padding:.2rem .5rem}.other-card-links{display:flex;gap:.4rem}.icon-link-btn{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:6px;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.8rem;height:28px;justify-content:center;transition:all .16s ease;transition:all var(--transition-fast);width:28px}.icon-link-btn:hover{border-color:#38bdf8;border-color:var(--flutter-cyan);color:#38bdf8;color:var(--flutter-cyan)}.other-card-title{color:#f1f5f9;color:var(--text-main);font-size:1.1rem;font-weight:700;margin-bottom:.2rem}.other-card-desc{color:#94a3b8;color:var(--text-secondary);flex-grow:1;font-size:.8125rem;line-height:1.5;margin-bottom:.85rem}.other-card-tech{display:flex;flex-wrap:wrap;gap:.35rem}.tech-pill-sm{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:3px;color:#64748b;color:var(--text-muted);font-size:.685rem;font-weight:600;padding:.15rem .45rem}.modal-backdrop{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000bf;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1.25rem;position:fixed;z-index:2000}.modal-container{border:1px solid #38bdf84d;border:1px solid var(--border-hover);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 48px #00000073;box-shadow:var(--shadow-lg);flex-direction:column;max-height:90vh;max-width:860px;overflow-y:auto;width:100%}.modal-container,.modal-header{background:#0e1526;background:var(--bg-surface);display:flex}.modal-header{align-items:flex-start;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:1.25rem 1.5rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-badge-row{align-items:center;display:flex;gap:.45rem;margin-bottom:.35rem}.modal-title{color:#f1f5f9;color:var(--text-main);font-size:1.5rem;font-weight:800;margin-bottom:.15rem}.modal-subtitle{color:#38bdf8;color:var(--flutter-cyan);font-size:.875rem;font-weight:600}.modal-close-btn{align-items:center;background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#94a3b8;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;width:32px}.modal-close-btn:hover{background:#ef4444;color:#fff}.modal-body{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.modal-image-showcase-16-9{aspect-ratio:16/9;background:#020617;border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);overflow:hidden;width:100%}.modal-screen-img-16-9{display:block;height:100%;object-fit:cover;object-position:center center;width:100%}.modal-details-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr}.modal-section-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:8px;border-radius:var(--radius-sm);padding:1.25rem}.modal-section-title{align-items:center;color:#f1f5f9;color:var(--text-main);display:flex;font-size:.875rem;font-weight:700;gap:.45rem;margin-bottom:.4rem}.modal-section-title i{color:#38bdf8;color:var(--flutter-cyan)}.modal-text{color:#94a3b8;color:var(--text-secondary);font-size:.825rem;line-height:1.55}.modal-tech-pills{display:flex;flex-wrap:wrap;gap:.35rem}.tech-pill{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#f1f5f9;color:var(--text-main);font-size:.725rem;font-weight:600;padding:.25rem .55rem}.modal-features-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:8px;border-radius:var(--radius-sm);padding:1.25rem}.modal-features-list{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:1fr 1fr;list-style:none;margin-top:.5rem}.modal-features-list li{align-items:flex-start;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:.45rem}.modal-features-list li i{color:#10b981;color:var(--emerald-accent);font-size:.75rem;margin-top:.15rem}.modal-actions-footer{align-items:center;border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);display:flex;justify-content:space-between;padding-top:1rem}.modal-links-group{display:flex;gap:.65rem}.skills-section{background:#0e1526;background:var(--bg-surface);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle)}.skills-category-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.skill-category-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:12px;border-radius:var(--radius-md);display:flex;flex-direction:column;padding:1.75rem}.skill-cat-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.25rem}.skill-cat-icon{align-items:center;background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#38bdf8;color:var(--flutter-cyan);display:flex;flex-shrink:0;font-size:1rem;height:36px;justify-content:center;width:36px}.skill-cat-title{color:#f1f5f9;color:var(--text-main);font-size:1.1rem;font-weight:700}.skill-pills-list{display:flex;flex-wrap:wrap;gap:.5rem}.skill-item-pill{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text-main);display:inline-flex;font-size:.8125rem;font-weight:600;gap:.45rem;padding:.4rem .75rem;transition:all .16s ease;transition:all var(--transition-fast)}.skill-item-pill:hover{background:#18233d;background:var(--bg-card-hover);border-color:#38bdf8;border-color:var(--flutter-cyan);transform:translateY(-2px)}.skill-icon-img{height:16px;object-fit:contain;width:16px}.skill-icon-fa{color:#38bdf8;color:var(--flutter-cyan);font-size:.85rem}.engineering-approach-banner{align-items:center;background:#131c31;background:var(--bg-card);border:1px solid #38bdf84d;border:1px solid var(--border-hover);border-radius:12px;border-radius:var(--radius-md);display:flex;gap:1.25rem;margin-top:2.5rem;padding:1.25rem 1.5rem}.approach-badge{align-items:center;background:linear-gradient(135deg,#0284c7,#6366f1);background:linear-gradient(135deg,var(--flutter-blue) 0,var(--indigo-accent) 100%);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1.1rem;height:40px;justify-content:center;width:40px}.approach-title{color:#f1f5f9;color:var(--text-main);font-size:.95rem;font-weight:700;margin-bottom:.2rem}.approach-text{color:#94a3b8;color:var(--text-secondary);font-size:.825rem;line-height:1.5}.experience-timeline{display:flex;flex-direction:column;margin:0 auto;max-width:860px;position:relative}.timeline-card-wrapper{display:flex;gap:1.5rem;position:relative}.timeline-marker{align-items:center;display:flex;flex-direction:column;flex-shrink:0;width:20px}.marker-dot{background:#38bdf8;background:var(--flutter-cyan);border:3px solid #0e1526;border:3px solid var(--bg-surface);border-radius:50%;box-shadow:0 0 10px #38bdf8;box-shadow:0 0 10px var(--flutter-cyan);height:14px;margin-top:1.25rem;width:14px;z-index:2}.marker-line{background:#ffffff14;background:var(--border-subtle);flex-grow:1;width:2px}.timeline-card-wrapper:last-child .marker-line{display:none}.timeline-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 2px 8px #00000040;box-shadow:var(--shadow-sm);margin-bottom:1.75rem;padding:1.75rem;width:100%}.timeline-card:hover{border-color:#38bdf84d;border-color:var(--border-hover)}.timeline-card-header{align-items:flex-start;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:.85rem;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.role-and-type{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem}.timeline-role{color:#f1f5f9;color:var(--text-main);font-size:1.15rem;font-weight:800}.timeline-job-type{background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#38bdf8;color:var(--flutter-cyan);font-size:.7rem;font-weight:700;padding:.15rem .45rem}.timeline-company-row{align-items:center;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.85rem;gap:.45rem}.company-name{font-weight:600}.company-dot{color:#ffffff14;color:var(--border-subtle)}.timeline-period-badge{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:999px;color:#64748b;color:var(--text-muted);display:inline-flex;font-size:.775rem;font-weight:600;gap:.35rem;padding:.3rem .65rem}.timeline-achievements{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin-bottom:1.25rem}.timeline-achievements li{align-items:flex-start;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.55rem;line-height:1.5}.timeline-achievements li i{color:#38bdf8;color:var(--flutter-cyan);font-size:.7rem;margin-top:.3rem}.timeline-tech-row{display:flex;flex-wrap:wrap;gap:.35rem}.timeline-tech-tag{border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#64748b;color:var(--text-muted);font-size:.725rem;font-weight:600;padding:.2rem .5rem}.resume-section,.timeline-tech-tag{background:#0e1526;background:var(--bg-surface)}.resume-section{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle)}.resume-layout-grid{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1.15fr .85fr}.resume-download-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:2rem}.resume-card-header{align-items:center;display:flex;gap:.85rem;margin-bottom:1rem}.pdf-icon-badge{align-items:center;background:#ef444426;border:1px solid #ef44444d;border-radius:10px;color:#ef4444;display:flex;flex-shrink:0;font-size:1.35rem;height:44px;justify-content:center;width:44px}.resume-doc-title{color:#f1f5f9;color:var(--text-main);font-size:1.2rem;font-weight:700;margin-bottom:.15rem}.resume-doc-meta{color:#64748b;color:var(--text-muted);font-size:.775rem}.resume-summary-text{color:#94a3b8;color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin-bottom:1.5rem}.resume-cta-buttons{display:flex;flex-wrap:wrap;gap:.65rem}.resume-embedded-viewer{background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);margin-top:1.5rem;overflow:hidden}.viewer-bar{align-items:center;background:#070b14;background:var(--bg-main);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.775rem;font-weight:600;justify-content:space-between;padding:.5rem .85rem}.viewer-close-btn{background:#0000;border:none;color:#64748b;color:var(--text-muted);cursor:pointer}.viewer-close-btn:hover{color:#ef4444}.resume-iframe{border:none;height:480px;width:100%}.education-column{display:flex;flex-direction:column}.column-subtitle{align-items:center;color:#f1f5f9;color:var(--text-main);display:flex;font-size:1.1rem;font-weight:700;gap:.45rem;margin-bottom:1.25rem}.column-subtitle i{color:#38bdf8;color:var(--flutter-cyan)}.education-cards-stack{display:flex;flex-direction:column;gap:1rem}.education-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:12px;border-radius:var(--radius-md);padding:1.25rem;transition:all .16s ease;transition:all var(--transition-fast)}.education-card:hover{border-color:#38bdf84d;border-color:var(--border-hover);transform:translateY(-2px)}.edu-top-line{align-items:flex-start;display:flex;gap:.65rem;justify-content:space-between;margin-bottom:.25rem}.edu-degree{color:#f1f5f9;color:var(--text-main);font-size:.95rem;font-weight:700}.edu-badge{background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:4px;color:#38bdf8;color:var(--flutter-cyan);font-size:.685rem;font-weight:700;padding:.1rem .45rem}.edu-institution{color:#94a3b8;color:var(--text-secondary);font-size:.825rem;font-weight:600;gap:.35rem;margin-bottom:.35rem}.edu-institution,.edu-meta-row{align-items:center;display:flex}.edu-meta-row{color:#64748b;color:var(--text-muted);font-size:.775rem;gap:.75rem}.edu-note-tag{align-items:center;background:#10b9811a;border:1px solid #10b98133;border-radius:4px;color:#10b981;color:var(--emerald-accent);display:inline-flex;font-size:.725rem;font-weight:600;gap:.3rem;margin-top:.5rem;padding:.15rem .45rem;width:-webkit-fit-content;width:fit-content}.contact-section{position:relative}.contact-grid{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:.95fr 1.05fr}.primary-contact-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:2rem}.contact-card-title{color:#f1f5f9;color:var(--text-main);font-size:1.25rem;font-weight:700;margin-bottom:.35rem}.contact-card-sub{color:#94a3b8;color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:1.5rem}.contact-channels-list{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.5rem}.channel-item{align-items:center;background:#0e1526;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);color:inherit;display:flex;gap:.85rem;padding:.85rem 1rem;transition:all .16s ease;transition:all var(--transition-fast)}.channel-item:not(.static-item):hover{background:#18233d;background:var(--bg-card-hover);border-color:#38bdf8;border-color:var(--flutter-cyan);transform:translateX(3px)}.channel-icon{align-items:center;background:#38bdf826;background:var(--glow-primary);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;color:#38bdf8;color:var(--flutter-cyan);display:flex;flex-shrink:0;font-size:1rem;height:36px;justify-content:center;width:36px}.channel-info{display:flex;flex-direction:column;flex-grow:1}.channel-label{color:#64748b;color:var(--text-muted);font-size:.7rem;font-weight:600}.channel-value{color:#f1f5f9;color:var(--text-main);font-size:.875rem;font-weight:600}.channel-ext{color:#64748b;color:var(--text-muted);font-size:.75rem}.response-time-notice{align-items:center;background:#10b9811a;border:1px solid #10b98133;border-radius:6px;color:#10b981;color:var(--emerald-accent);display:flex;font-size:.775rem;gap:.45rem;padding:.5rem .85rem}.contact-form-card{background:#131c31;background:var(--bg-card);border:1px solid #ffffff14;border:var(--border-card);border-radius:16px;border-radius:var(--radius-lg);padding:2rem}.form-card-title{color:#f1f5f9;color:var(--text-main);font-size:1.25rem;font-weight:700;margin-bottom:.35rem}.form-card-desc{color:#94a3b8;color:var(--text-secondary);font-size:.85rem;margin-bottom:1.25rem}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-label{color:#94a3b8;color:var(--text-secondary);font-size:.775rem;font-weight:600}.form-label .req{color:#ef4444}.form-input,.form-textarea{background:#0a0f1d;background:var(--bg-input);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text-main);font-size:.875rem;padding:.65rem .85rem;transition:all .16s ease;transition:all var(--transition-fast);width:100%}.form-input:focus,.form-textarea:focus{border-color:#38bdf8;border-color:var(--flutter-cyan);box-shadow:0 0 0 2px #38bdf826;box-shadow:0 0 0 2px var(--glow-primary);outline:none}.form-status-alert{align-items:flex-start;border-radius:8px;border-radius:var(--radius-sm);display:flex;font-size:.8rem;gap:.5rem;padding:.65rem .85rem}.form-status-alert.status-submitting{background:#38bdf81a;border:1px solid #38bdf840;color:#38bdf8;color:var(--flutter-cyan)}.form-status-alert.status-success{background:#10b9811a;border:1px solid #10b98140;color:#10b981;color:var(--emerald-accent)}.form-status-alert.status-error{background:#ef44441a;border:1px solid #ef444440;color:#ef4444}.form-button-row{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.35rem}.btn-submit{flex-grow:1}.btn-mailto-alt{font-size:.785rem}.site-footer{background:#0e1526;background:var(--bg-surface);border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);margin-top:auto;padding:3.5rem 0 2rem}.footer-main-grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:1.4fr .8fr .8fr;margin-bottom:2.5rem}.footer-brand-block{display:flex;flex-direction:column;gap:.75rem}.footer-logo{gap:.65rem}.footer-logo,.logo-badge{align-items:center;display:flex}.logo-badge{background:linear-gradient(135deg,#0284c7,#6366f1);background:linear-gradient(135deg,var(--flutter-blue) 0,var(--indigo-accent) 100%);border-radius:6px;color:#fff;font-size:.8rem;font-weight:800;height:32px;justify-content:center;width:32px}.logo-name{color:#f1f5f9;color:var(--text-main);font-size:1.05rem;font-weight:700}.footer-bio{color:#94a3b8;color:var(--text-secondary);font-size:.85rem;line-height:1.5;max-width:420px}.footer-availability{align-items:center;color:#10b981;color:var(--emerald-accent);display:flex;font-size:.775rem;font-weight:600;gap:.45rem}.footer-avail-dot{background:#10b981;background:var(--emerald-accent);border-radius:50%;height:7px;width:7px}.footer-col-title{color:#f1f5f9;color:var(--text-main);font-size:.875rem;font-weight:700;margin-bottom:1rem}.footer-nav-links,.footer-social-links{display:flex;flex-direction:column;gap:.55rem;list-style:none}.footer-nav-links a,.footer-social-links a{align-items:center;color:#94a3b8;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:.45rem;transition:color .16s ease;transition:color var(--transition-fast)}.footer-nav-links a:hover,.footer-social-links a:hover{color:#38bdf8;color:var(--flutter-cyan)}.footer-bottom-bar{border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);color:#64748b;color:var(--text-muted);display:flex;justify-content:space-between;padding-top:1.5rem}.back-to-top-btn,.footer-bottom-bar{align-items:center;font-size:.775rem}.back-to-top-btn{background:#0000;border:none;color:#94a3b8;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-weight:600;gap:.35rem}.back-to-top-btn:hover{color:#38bdf8;color:var(--flutter-cyan)}@media (max-width:1024px){.hero-container{gap:2.75rem;grid-template-columns:1fr;text-align:center}.hero-title{font-size:2.7rem}.hero-description{margin-left:auto;margin-right:auto}.hero-cta-group,.hero-quick-tags,.hero-socials,.hero-subtitle,.location-tag{justify-content:center}.location-tag{margin-left:0;margin-top:.4rem;width:100%}.social-links-quad-grid{grid-template-columns:repeat(2,1fr)}.about-grid,.contact-grid,.projects-row-grid,.resume-layout-grid{grid-template-columns:1fr}.footer-main-grid{grid-template-columns:1fr 1fr}.footer-brand-block{grid-column:span 2}}@media (max-width:768px){.desktop-nav{display:none}.mobile-menu-btn{display:flex}.navbar-resume-btn{display:none}.mobile-nav-drawer{background:#0e1526;background:var(--bg-surface);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);box-shadow:0 20px 48px #00000073;box-shadow:var(--shadow-lg);display:block;left:0;padding:1.25rem;position:fixed;top:60px;transform:translateY(-120%);transition:transform .25s cubic-bezier(.16,1,.3,1);transition:transform var(--transition-smooth);width:100%;z-index:999}.mobile-nav-drawer.open{transform:translateY(0)}.mobile-links-list{display:flex;flex-direction:column;gap:.65rem;list-style:none}.mobile-nav-link{border-radius:8px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text-main);display:block;font-size:.95rem;font-weight:600;padding:.5rem}.mobile-nav-link.active{background:#38bdf826;background:var(--glow-primary);color:#38bdf8;color:var(--flutter-cyan)}.mobile-drawer-cta{border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);margin-top:.85rem;padding-top:.85rem}.section-padding{padding:2.75rem 0}.section-padding-sm{padding:1.5rem 0}.section-header-block{margin-bottom:2rem}.section-heading{font-size:1.65rem}.section-subtext{font-size:.875rem;margin-bottom:.5rem}.hero-section{min-height:auto;padding:2.25rem 0 2rem}.hero-container{gap:2rem}.hero-title{font-size:2.1rem;line-height:1.22}.hero-subtitle{font-size:1.1rem;justify-content:center}.hero-description{font-size:.92rem;line-height:1.6;margin-bottom:1.25rem}.hero-quick-tags{gap:.4rem;justify-content:center;margin-bottom:1.35rem}.tech-badge{font-size:.75rem;padding:.3rem .75rem}.hero-cta-group{gap:.65rem;justify-content:center;margin-bottom:1.5rem;width:100%}.hero-socials{gap:.5rem;justify-content:center;padding-top:1rem}.hero-spotlight-wrapper{gap:1.25rem;max-width:420px}.hero-portrait-stage{padding:28px 0}.spotlight-portrait-ring{height:185px;width:185px}.chip-top-left{left:2%}.chip-bottom-right{right:2%}.spotlight-code-card{border-radius:12px}.code-snippet{font-size:.68rem;line-height:1.58;padding:.75rem .85rem}.social-links-quad-grid{gap:1px;grid-template-columns:repeat(2,1fr)}.social-quad-item{padding:.85rem .9rem}.streak-heatmap-container{padding:1.25rem 1rem 1rem}.streak-meta-bar{gap:1rem;justify-content:space-between}.streak-stat-num{font-size:1.25rem}.streak-stat-lbl{font-size:.7rem}.project-row-card{margin-bottom:1.5rem}.project-card-body{padding:1.15rem}.project-card-title{font-size:1.25rem}.project-card-tagline{font-size:.85rem}.project-card-actions{flex-wrap:wrap;gap:.5rem}.btn-toggle-expand,.project-card-actions .btn-outline{flex:1 1 120px;font-size:.78rem;justify-content:center;min-height:40px;padding:.45rem .75rem}.card-direct-links{display:flex;gap:.4rem}.card-icon-link{height:38px;width:38px}.about-grid,.engineering-pillars,.form-row,.modal-details-grid,.modal-features-list,.other-projects-grid,.skills-category-grid{grid-template-columns:1fr}.about-narrative-card,.contact-form-card,.primary-contact-card,.resume-download-card{padding:1.25rem}.metrics-items-grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.metric-box{padding:.85rem .75rem}.timeline-wrapper{padding-left:1.35rem}.timeline-card{padding:1.15rem}.footer-main-grid{gap:1.75rem;grid-template-columns:1fr}.footer-brand-block{grid-column:span 1}.footer-bottom-bar{flex-direction:column;gap:.75rem;text-align:center}}@media (max-width:480px){.container{padding:0 .95rem}.section-padding{padding:2.15rem 0}.section-padding-sm{padding:1.15rem 0}.section-header-block{margin-bottom:1.5rem}.section-heading{font-size:1.45rem;line-height:1.25}.section-eyebrow{font-size:.72rem;margin-bottom:.35rem}.section-subtext{font-size:.82rem;line-height:1.5}.hero-section{padding:1.5rem 0}.hero-container{gap:1.5rem}.hero-status-pill{font-size:.7rem;margin-bottom:.85rem;max-width:100%;padding:.25rem .65rem}.status-text{line-height:1.3;text-align:center;white-space:normal}.hero-title{font-size:1.75rem;line-height:1.2;margin-bottom:.5rem}.hero-subtitle{flex-wrap:wrap;font-size:.95rem;gap:.35rem;margin-bottom:.85rem}.role-divider{display:none}.flutter-accent{font-size:.95rem}.hero-description{font-size:.86rem;line-height:1.55;margin-bottom:1rem}.hero-quick-tags{gap:.3rem;margin-bottom:1.15rem}.tech-badge{font-size:.7rem;padding:.25rem .55rem}.hero-cta-group{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr;margin-bottom:1.25rem;width:100%}.hero-cta-group .btn-primary,.hero-cta-group .btn-secondary{font-size:.82rem;grid-column:span 1;justify-content:center;min-height:42px;padding:.5rem .75rem}.hero-cta-group .btn-outline{font-size:.82rem;grid-column:span 2;justify-content:center;min-height:40px;padding:.5rem .75rem}.hero-socials{gap:.45rem;padding-top:.85rem}.social-icon-btn{border-radius:8px;font-size:.88rem;height:36px;width:36px}.location-tag{font-size:.74rem;justify-content:center;margin-top:.35rem;text-align:center;width:100%}.hero-spotlight-wrapper{gap:1rem;max-width:100%}.hero-portrait-stage{padding:20px 0}.spotlight-portrait-ring{height:155px;width:155px}.spotlight-chip{border-radius:8px;font-size:.64rem;padding:.28rem .52rem}.chip-top-left{left:0;top:0}.chip-bottom-right{bottom:0;right:0}.spotlight-code-card{border-radius:10px}.code-card-header{padding:.45rem .75rem}.code-filename{font-size:.68rem}.code-snippet{font-size:.64rem;line-height:1.5;padding:.6rem .75rem}.social-links-quad-grid{gap:1px;grid-template-columns:repeat(2,1fr)}.social-quad-item{gap:.5rem;padding:.7rem .65rem}.social-quad-icon{border-radius:8px;flex-shrink:0;font-size:.82rem;height:32px;width:32px}.social-quad-title{font-size:.76rem}.social-quad-handle{font-size:.66rem;max-width:90px}.social-quad-arrow{display:none}.streak-heatmap-container{padding:1rem .75rem .85rem}.streak-meta-bar{grid-gap:.35rem;display:grid;gap:.35rem;grid-template-columns:1fr 1fr 1fr;margin-bottom:.85rem;padding-bottom:.65rem;text-align:center}.streak-stat-num{font-size:1.05rem}.streak-stat-lbl{font-size:.62rem;line-height:1.22}.streak-footer-bar{align-items:center;flex-direction:column;font-size:.72rem;gap:.65rem;text-align:center}.filter-pills-bar{gap:.35rem;margin-bottom:1.25rem}.filter-pill-btn{font-size:.75rem;padding:.35rem .75rem}.project-card-body{padding:.95rem}.card-top-meta{margin-bottom:.65rem}.card-role-pill,.platform-tag{font-size:.72rem;padding:.22rem .6rem}.project-card-title{font-size:1.15rem}.project-card-tagline{font-size:.8rem;margin-bottom:.65rem}.project-tech-pills{gap:.35rem;margin-bottom:.85rem}.tech-tag{font-size:.7rem;padding:.2rem .55rem}.project-card-actions{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.btn-toggle-expand,.project-card-actions .btn-outline{font-size:.76rem;grid-column:span 1;justify-content:center;min-height:40px;padding:.4rem .5rem}.card-direct-links{display:flex;gap:.5rem;grid-column:span 2;justify-content:center;margin-top:.25rem}.card-icon-link{border-radius:8px;font-size:.92rem;height:40px;width:40px}.metrics-card-wrapper{padding:1rem}.metrics-items-grid{gap:.6rem;grid-template-columns:repeat(2,1fr)}.metric-box{padding:.75rem .55rem;text-align:center}.metric-val{font-size:1.25rem}.metric-lbl{font-size:.68rem}.metric-hlp{font-size:.62rem}.quick-info-box,.skill-cat-card{padding:1rem}.skill-cat-title{font-size:.95rem}.skill-tags-flex{gap:.35rem}.skill-pill{font-size:.74rem;padding:.28rem .6rem}.timeline-wrapper{padding-left:1.2rem}.timeline-card{padding:.95rem}.timeline-role{font-size:1.05rem}.timeline-company{font-size:.85rem}.timeline-period{font-size:.72rem;padding:.2rem .55rem}.timeline-points-list li{font-size:.82rem}.contact-form-card,.primary-contact-card{padding:1.05rem}.form-group label{font-size:.78rem}.form-group input,.form-group textarea{font-size:.92rem;min-height:44px;padding:.65rem .85rem}.btn-submit-contact{font-size:.88rem;justify-content:center;min-height:46px;width:100%}.case-study-modal-container{border-radius:16px;margin:1rem auto;max-height:92vh;padding:1.15rem;width:95%}.modal-header-section{margin-bottom:.85rem}.modal-title{font-size:1.35rem}.modal-action-bar{flex-direction:column;gap:.5rem}.modal-action-bar .btn{justify-content:center;width:100%}}#about,#contact,#experience,#projects,#resume,#skills{scroll-margin-top:84px}.btn:focus-visible,.card-icon-link:focus-visible,.filter-pill-btn:focus-visible,.icon-link-btn:focus-visible,.nav-link:focus-visible,.social-icon-btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #38bdf8;outline:2px solid var(--flutter-cyan);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background:#38bdf847;color:#f1f5f9;color:var(--text-main)}*{scrollbar-color:#18233d #0000;scrollbar-color:var(--bg-card-hover) #0000;scrollbar-width:thin}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0e1526;background:var(--bg-surface)}::-webkit-scrollbar-thumb{background:#18233d;background:var(--bg-card-hover);border:2px solid #0e1526;border:2px solid var(--bg-surface);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#0284c7;background:var(--flutter-blue)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=main.eb8ae2cf.css.map*/