*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #0f0f0f;--color-bg-secondary: #1a1a1a;--color-text: #e8e8e8;--color-text-muted: #9ca3af;--color-accent: #6366f1;--color-accent-hover: #818cf8;--color-border: #2a2a2a;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem;--container-padding: 2rem}html{font-size:18px;line-height:1.6}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}nav{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}nav .container{max-width:1200px;margin:0 auto;padding:var(--spacing-sm) var(--container-padding);display:flex;justify-content:space-between;align-items:center}nav .logo{font-weight:600;font-size:1.1rem;color:var(--color-text)}nav .logo:hover{color:var(--color-accent);text-decoration:none}nav .nav-links{display:flex;gap:var(--spacing-md);list-style:none}nav .nav-links a{color:var(--color-text-muted);transition:color .2s}nav .nav-links a:hover{color:var(--color-accent);text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 var(--container-padding)}main{padding:var(--spacing-xl) 0}h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:var(--spacing-sm)}h2{font-size:1.75rem;font-weight:600;line-height:1.3;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-md)}.subtitle{font-size:1.1rem;color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.date{font-size:.9rem;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.period{font-size:.95rem;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-hover)}section{margin-bottom:var(--spacing-xl)}header{margin-bottom:var(--spacing-xl)}footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.project{margin-bottom:var(--spacing-lg)}.project h3{margin-top:0}.project p{margin-bottom:var(--spacing-sm)}.experience{margin-bottom:var(--spacing-lg)}.experience h3{margin-top:0;margin-bottom:var(--spacing-xs)}.experience p:last-child{margin-bottom:0}.skills{display:flex;flex-direction:column;gap:var(--spacing-md)}.skill-category{line-height:1.6}.blog-post{margin-bottom:var(--spacing-xl)}.blog-post h2{margin-top:0;margin-bottom:var(--spacing-xs)}.blog-post .date,.blog-post p{margin-bottom:var(--spacing-sm)}.tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.tag{font-size:.85rem;color:var(--color-text-muted)}.tag:not(:last-child):after{content:" •";margin-left:var(--spacing-xs);color:var(--color-text-muted)}.article-content{margin-top:var(--spacing-lg)}.article-content h2{margin-top:var(--spacing-xl)}.article-content h3{margin-top:var(--spacing-lg)}.article-content ul,.article-content ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-md)}.article-content li{margin-bottom:var(--spacing-xs)}.article-content pre{background:var(--color-bg-secondary);border:1px solid var(--color-border);padding:var(--spacing-md);margin-bottom:var(--spacing-md);overflow-x:auto;border-radius:6px}.article-content code{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.9em}.article-content p code{background:var(--color-bg-secondary);border:1px solid var(--color-border);padding:.2em .4em;border-radius:3px;color:var(--color-accent)}.article-content blockquote{padding-left:var(--spacing-md);border-left:3px solid var(--color-accent);margin:var(--spacing-md) 0;color:var(--color-text-muted)}.article-content strong{font-weight:600}@media(max-width:768px){:root{--container-padding: 1rem}html{font-size:16px}nav .nav-links{gap:var(--spacing-sm)}main{padding:var(--spacing-md) 0}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.15rem}}.active[data-astro-cid-5blmo7yk]{color:var(--color-accent)!important}.back-to-top[data-astro-cid-wlspcwf4]{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;background:var(--color-accent, #0066cc);color:#fff;border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;opacity:0;visibility:hidden;transition:all .3s ease;box-shadow:0 4px 12px #00000026;z-index:1000}.back-to-top[data-astro-cid-wlspcwf4]:hover{transform:translateY(-4px);box-shadow:0 6px 16px #0003}.back-to-top[data-astro-cid-wlspcwf4].visible{opacity:1;visibility:visible}@media(max-width:768px){.back-to-top[data-astro-cid-wlspcwf4]{bottom:1.5rem;right:1.5rem;width:45px;height:45px}}
