:root{--color-bg:#0f172a;--color-surface:#1e293b;--color-surface-hover:#334155;--color-primary:#38bdf8;--color-primary-dark:#0ea5e9;--color-accent:#a78bfa;--color-text:#e2e8f0;--color-text-muted:#94a3b8;--color-border:#334155;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"Fira Code","JetBrains Mono",monospace;--max-width:1100px;--radius:8px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background:#0f172a;background:var(--color-bg);color:#e2e8f0;color:var(--color-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);line-height:1.7}a{color:#38bdf8;color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:#a78bfa;color:var(--color-accent)}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;margin:0 auto;max-width:1100px;max-width:var(--max-width);padding:2rem 1.5rem;width:100%}.navbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1e293b;background:var(--color-surface);border-bottom:1px solid #334155;border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;height:64px;justify-content:space-between;margin:0 auto;max-width:1100px;max-width:var(--max-width);padding:0 1.5rem}.navbar-brand{color:#38bdf8!important;color:var(--color-primary)!important;font-family:Fira Code,JetBrains Mono,monospace;font-family:var(--font-mono);font-size:1.25rem;font-weight:700}.navbar-links{display:flex;gap:2rem}.navbar-links a{border-bottom:2px solid #0000;color:#94a3b8;color:var(--color-text-muted);font-size:.95rem;font-weight:500;padding:.25rem 0;transition:color .2s}.navbar-links a.active,.navbar-links a:hover{border-bottom-color:#38bdf8;border-bottom-color:var(--color-primary);color:#38bdf8;color:var(--color-primary)}.footer{background:#1e293b;background:var(--color-surface);border-top:1px solid #334155;border-top:1px solid var(--color-border);margin-top:4rem}.footer-container{color:#94a3b8;color:var(--color-text-muted);font-size:.875rem;margin:0 auto;max-width:1100px;max-width:var(--max-width);padding:1.5rem;text-align:center}.hero{padding:6rem 0 4rem;text-align:center}.hero-title{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1rem}.highlight{color:#38bdf8;color:var(--color-primary)}.hero-subtitle{color:#94a3b8;color:var(--color-text-muted);font-size:1.2rem;margin:0 auto 2rem;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn{border-radius:8px;border-radius:var(--radius);display:inline-block;font-size:.95rem;font-weight:600;padding:.75rem 1.75rem;transition:background .2s,transform .1s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:#38bdf8;background:var(--color-primary)}.btn-primary,.btn-primary:hover{color:#0f172a;color:var(--color-bg)}.btn-primary:hover{background:#0ea5e9;background:var(--color-primary-dark)}.btn-secondary{background:#0000;border:2px solid #38bdf8;border:2px solid var(--color-primary);color:#38bdf8;color:var(--color-primary)}.btn-secondary:hover{background:#38bdf8;background:var(--color-primary);color:#0f172a;color:var(--color-bg)}.home-section{margin-top:4rem}.home-section h2{font-size:1.75rem;margin-bottom:2rem;text-align:center}.feature-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:#1e293b;background:var(--color-surface);border:1px solid #334155;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius);padding:2rem;transition:border-color .2s}.feature-card:hover{border-color:#38bdf8;border-color:var(--color-primary)}.feature-card h3{color:#38bdf8;color:var(--color-primary);font-size:1.15rem;margin-bottom:.5rem}.feature-card p{color:#94a3b8;color:var(--color-text-muted);font-size:.95rem}.page-header{margin-bottom:3rem}.page-header h1{font-size:2.25rem;font-weight:800;margin-bottom:.5rem}.page-header p{color:#94a3b8;color:var(--color-text-muted);font-size:1.05rem}.section{margin-bottom:3rem}.section h2{border-bottom:2px solid #334155;border-bottom:2px solid var(--color-border);font-size:1.5rem;margin-bottom:1.5rem;padding-bottom:.5rem}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.project-card{background:#1e293b;background:var(--color-surface);border:1px solid #334155;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius);display:flex;flex-direction:column;padding:1.75rem;transition:border-color .2s,transform .2s}.project-card:hover{border-color:#38bdf8;border-color:var(--color-primary);transform:translateY(-2px)}.project-card-title{font-size:1.2rem;margin-bottom:.75rem}.project-card-desc{color:#94a3b8;color:var(--color-text-muted);flex:1 1;font-size:.9rem;margin-bottom:1rem}.project-card-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tech-tag{background:#38bdf81a;border-radius:4px;color:#38bdf8;color:var(--color-primary);font-size:.8rem;font-weight:500;padding:.2rem .6rem}.project-card-links{display:flex;gap:1rem}.project-card-links a{font-size:.9rem;font-weight:600}.skills-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skill-category h3{color:#a78bfa;color:var(--color-accent);font-size:1rem;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.skill-bar{margin-bottom:.75rem}.skill-bar-header{display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:.35rem}.skill-name{font-weight:500}.skill-pct{color:#94a3b8;color:var(--color-text-muted)}.skill-bar-track{background:#334155;background:var(--color-border);border-radius:4px;height:8px;overflow:hidden}.skill-bar-fill{background:linear-gradient(90deg,#38bdf8,#a78bfa);background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:4px;height:100%;transition:width .6s ease}.blog-card{background:#1e293b;background:var(--color-surface);border:1px solid #334155;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius);margin-bottom:1.25rem;padding:1.75rem;transition:border-color .2s}.blog-card:hover{border-color:#38bdf8;border-color:var(--color-primary)}.blog-card-title{font-size:1.3rem;margin-bottom:.3rem}.blog-card-date{font-size:.85rem}.blog-card-date,.blog-card-excerpt{color:#94a3b8;color:var(--color-text-muted);margin-bottom:.75rem}.blog-card-excerpt{font-size:.95rem}.blog-card-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.blog-card-read{font-size:.9rem;font-weight:600}.back-link{display:inline-block;font-weight:500}.back-link,.blog-post-header{margin-bottom:2rem}.blog-post-header h1{font-size:2.25rem;font-weight:800;margin-bottom:.5rem}.blog-post-date{color:#94a3b8;color:var(--color-text-muted);font-size:.9rem;margin-bottom:.75rem}.blog-post-content{font-size:1.05rem;line-height:1.8}.blog-post-content h2{color:#e2e8f0;color:var(--color-text);font-size:1.5rem;margin:2rem 0 1rem}.blog-post-content h3{font-size:1.2rem;margin:1.5rem 0 .75rem}.blog-post-content p{color:#94a3b8;color:var(--color-text-muted);margin-bottom:1rem}.blog-post-content strong{color:#e2e8f0;color:var(--color-text)}.blog-post-content code{border-radius:4px;color:#a78bfa;color:var(--color-accent);font-family:Fira Code,JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.9em;padding:.15rem .4rem}.blog-post-content code,.blog-post-content pre{background:#1e293b;background:var(--color-surface)}.blog-post-content pre{border:1px solid #334155;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius);margin:1.25rem 0;overflow-x:auto;padding:1.25rem}.blog-post-content pre code{background:#0000;color:#e2e8f0;color:var(--color-text);font-size:.9rem;line-height:1.6;padding:0}.blog-post-content li{margin-bottom:.5rem;margin-left:1.5rem}.blog-post-content li,.loading{color:#94a3b8;color:var(--color-text-muted)}.loading{font-size:1.1rem}.error-page,.loading{padding:4rem;text-align:center}.error-page h1{font-size:1.75rem;margin-bottom:1rem}@media (max-width:768px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.navbar-links{gap:1rem}.projects-grid,.skills-container{grid-template-columns:1fr}}
/*# sourceMappingURL=main.ea240fe0.css.map*/