:root{--bg-primary:#fff;--bg-secondary:#f7f7f8;--bg-tertiary:#efefef;--text-primary:#171717;--text-secondary:#6b6b6b;--text-tertiary:#999;--border:#e5e5e5;--accent:#2563eb;--accent-subtle:#eff6ff;--shadow-hover:0 2px 8px #0000000a;--status-idea-bg:#e2e8f0;--status-idea-text:#475569;--status-research-bg:#fef08a;--status-research-text:#854d0e;--status-prototype-bg:#bfdbfe;--status-prototype-text:#1e3a8a;--status-testing-bg:#fbcfe8;--status-testing-text:#9d174d;--status-completed-bg:#bbf7d0;--status-completed-text:#166534;--status-published-bg:#ddd6fe;--status-published-text:#5b21b6}[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#141414;--bg-tertiary:#1e1e1e;--text-primary:#ededed;--text-secondary:#a0a0a0;--text-tertiary:#666;--border:#262626;--accent:#3b82f6;--accent-subtle:#172554;--shadow-hover:0 2px 8px #0003;--status-idea-bg:#1e293b;--status-idea-text:#cbd5e1;--status-research-bg:#713f12;--status-research-text:#fef08a;--status-prototype-bg:#1e3a8a;--status-prototype-text:#bfdbfe;--status-testing-bg:#831843;--status-testing-text:#fbcfe8;--status-completed-bg:#14532d;--status-completed-text:#bbf7d0;--status-published-bg:#4c1d95;--status-published-text:#ddd6fe}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--transition:all .15s ease;--navbar-height:64px;--toolbar-height:48px;--container-prose:720px;--container-grid:1080px}*,:before,:after{box-sizing:border-box}html,body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition), color var(--transition);margin:0;padding:0;line-height:1.6}html{overflow-x:hidden}body{min-width:320px;overflow-x:hidden}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-4) 0;color:var(--text-primary);font-weight:600;line-height:1.2}h1{letter-spacing:-.02em;font-size:2.5rem}h2{letter-spacing:-.01em;font-size:1.8rem}h3{font-size:1.25rem}p{margin:0 0 var(--space-4) 0;color:var(--text-secondary)}button{cursor:pointer;font-family:var(--font-sans);color:inherit;transition:var(--transition);background:0 0;border:none;padding:0}.container-prose{max-width:var(--container-prose);padding:0 var(--space-4);margin:0 auto}.container-grid{max-width:var(--container-grid);padding:0 var(--space-4);margin:0 auto}.text-accent{color:var(--accent)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.font-mono{font-family:var(--font-mono)}.button-primary{background-color:var(--text-primary);color:var(--bg-primary);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);justify-content:center;align-items:center;font-size:.95rem;font-weight:500;display:inline-flex}.button-primary:hover{opacity:.9}.button-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);justify-content:center;align-items:center;font-size:.95rem;font-weight:500;display:inline-flex}.button-secondary:hover{background-color:var(--bg-tertiary)}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#lovable-badge,#Made-With-Replit,#made-with-replit,#replit-badge,#Replit-badge,[id=lovable-badge],[id=Made-With-Replit],[id=Replit-badge]{visibility:hidden!important;pointer-events:none!important;display:none!important}img,svg,video,canvas,iframe{max-width:100%}pre,table{max-width:100%;overflow-x:auto}@media (width<=1024px){.container-grid,.container-prose{padding-left:var(--space-6);padding-right:var(--space-6)}h1{font-size:2.1rem}h2{font-size:1.6rem}}@media (width<=640px){html,body{font-size:16px}.container-grid,.container-prose{padding-left:var(--space-4);padding-right:var(--space-4)}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.1rem}p{line-height:1.65}.button-primary,.button-secondary{padding:var(--space-3) var(--space-4);width:100%}.project-footer,.resume-actions,.hero-actions{flex-direction:column}[class$=-grid],.projects-grid,.featured-grid{grid-template-columns:1fr!important}}.theme-toggle{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);background:0 0;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.navbar{height:var(--navbar-height);background-color:rgba(var(--bg-primary-rgb), .85);background-color:var(--bg-primary);border-bottom:1px solid var(--border);z-index:100;align-items:center;display:flex;position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){.navbar{-webkit-backdrop-filter:blur(12px);background-color:#0000}}.navbar-container{justify-content:space-between;align-items:center;width:100%;display:flex}.navbar-logo{letter-spacing:0;font-size:1.1rem;font-weight:600}.navbar-brand{align-items:center;gap:var(--space-3);min-width:0;display:inline-flex}.navbar-brand img{border-radius:var(--radius-sm);flex:0 0 40px;width:40px;height:40px}.navbar-links{align-items:center;gap:var(--space-6);display:flex}.nav-link{color:var(--text-secondary);font-size:.95rem;font-weight:500}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.navbar-theme-toggle{margin-left:var(--space-4);padding-left:var(--space-4);border-left:1px solid var(--border)}.mobile-only{display:none}.desktop-only{display:flex}.navbar-mobile-controls{align-items:center;gap:var(--space-4)}.hamburger-btn{color:var(--text-primary);justify-content:center;align-items:center;display:flex}.mobile-menu{top:var(--navbar-height);background-color:var(--bg-primary);border-bottom:1px solid var(--border);width:100%;padding:var(--space-4) 0;box-shadow:var(--shadow-hover);position:absolute;left:0}.mobile-nav-links{flex-direction:column;display:flex}.mobile-nav-link{padding:var(--space-3) var(--space-4);color:var(--text-secondary);font-size:1rem;font-weight:500}.mobile-nav-link.active{color:var(--text-primary);background-color:var(--bg-secondary)}@media (width<=768px){.desktop-only{display:none}.mobile-only{display:flex}.navbar-container{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.navbar-logo{min-width:0;font-size:1rem;line-height:1.2}.navbar-logo a{display:flex}.navbar-brand{gap:var(--space-2)}.navbar-brand img{flex-basis:36px;width:36px;height:36px}.navbar-brand span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navbar-mobile-controls{gap:var(--space-3);flex-shrink:0}.hamburger-btn{width:40px;height:40px}.mobile-menu{padding:var(--space-2) 0;max-height:calc(100vh - var(--navbar-height));overflow-y:auto}.mobile-nav-link{min-height:48px;padding-left:var(--space-6);padding-right:var(--space-6);align-items:center;display:flex}}@media (width<=380px){.navbar-logo{max-width:180px;font-size:.92rem}}.footer{margin-top:var(--space-16);padding:var(--space-8) 0;border-top:1px solid var(--border);color:var(--text-secondary);font-size:.9rem}.footer-content{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.footer-links{gap:var(--space-6);display:flex}.footer-links a{color:var(--text-secondary);transition:var(--transition);font-weight:500}.footer-links a:hover{color:var(--text-primary)}.footer-copyright{color:var(--text-tertiary);font-size:.85rem}@media (width>=640px){.footer-content{text-align:left;flex-direction:row;justify-content:space-between}}
