*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#6c5ce7;--color-primary-hover:#5a4bd1;--color-primary-light:#a29bfe;--color-accent:#00cec9;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--max-width:1080px;--radius:16px;--radius-sm:10px}[data-theme=dark]{--color-bg:#070b14;--color-bg-secondary:#0c1022;--color-surface:#111627;--color-surface-hover:#181e33;--color-border:#1e2640;--color-border-light:#262e4a;--color-text:#d1d5e0;--color-text-muted:#7a839e;--color-heading:#eef0f6;--color-subtle:#ffffff08;--color-hero-bg:radial-gradient(ellipse 80% 50% at 50% -10%, #6c5ce71f 0%, transparent 60%);--color-card-shadow:0 4px 20px #0000004d;--color-card-shadow-hover:0 8px 32px #00000073;--color-input-bg:#0a0e1a}[data-theme=light]{--color-bg:#f8f9fc;--color-bg-secondary:#f0f1f6;--color-surface:#fff;--color-surface-hover:#f3f4f9;--color-border:#e2e4ed;--color-border-light:#d0d3e0;--color-text:#3a3f52;--color-text-muted:#7a7f94;--color-heading:#1a1d2e;--color-subtle:#00000005;--color-hero-bg:radial-gradient(ellipse 80% 50% at 50% -10%, #6c5ce70f 0%, transparent 60%);--color-card-shadow:0 2px 12px #0000000f;--color-card-shadow-hover:0 8px 28px #0000001a;--color-input-bg:#f8f9fc}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;line-height:1.7;transition:background .35s,color .35s}a{color:var(--color-primary-light);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary)}.header{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:100;transition:background .35s,border-color .35s;position:sticky;top:0}.header-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;height:64px;margin:0 auto;padding:0 .5rem;display:flex}.logo{color:var(--color-heading);letter-spacing:-.01em;align-items:center;gap:.6rem;font-size:1.2rem;font-weight:750;transition:color .35s;display:flex}.logo-img{object-fit:contain;border-radius:8px;width:202px;height:32px}.header-right{align-items:center;gap:.5rem;display:flex}.search-form{background:var(--color-bg-secondary);border:1px solid var(--color-border);cursor:pointer;border-radius:999px;align-items:center;width:32px;transition:border-color .2s,background .2s,width .25s;display:flex}.search-form:focus-within,.search-form.search-expanded{border-color:var(--color-primary);cursor:text;width:200px}.search-input{color:var(--color-text);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:0;width:0;min-width:0;padding:0;font-size:.825rem;transition:flex .25s,padding .25s}.search-form:focus-within .search-input,.search-expanded .search-input{flex:1;width:auto;padding:.35rem 0 .35rem .75rem}.search-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:.3rem;font-size:.9rem;line-height:1;transition:color .2s;display:flex}.search-btn:hover{color:var(--color-heading)}.search-hint{color:var(--color-text-muted);opacity:.4;font-size:.65rem;font-family:var(--font-mono);display:none}@media (width>=900px){.search-hint{display:inline}}.search-page{min-height:60vh}.search-page-inner{max-width:var(--max-width);margin:0 auto;padding:4rem 1.5rem 5rem}.search-page h1{color:var(--color-heading);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.75rem;font-weight:750;transition:color .35s}.search-page-summary{color:var(--color-text-muted);font-size:.9rem;transition:color .35s}.search-page-summary kbd{font-family:var(--font-mono);background:var(--color-subtle);border:1px solid var(--color-border);border-radius:4px;padding:.1em .4em;font-size:.85em}.search-empty{text-align:center;color:var(--color-text-muted);padding:3rem 0}.search-empty p{margin-bottom:1.5rem}.nav{align-items:center;gap:2rem;display:flex}.nav a{color:var(--color-text-muted);font-size:.875rem;font-weight:500;transition:color .2s}.nav a:hover{color:var(--color-heading)}[data-theme=dark] .nav a{color:#f635fc}.theme-toggle{background:var(--color-bg-secondary);border:1px solid var(--color-border);cursor:pointer;width:38px;height:38px;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;font-size:1.15rem;line-height:1;transition:background .25s,border-color .25s,transform .2s;display:flex}.theme-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-light);transform:scale(1.05)}.hero{background:var(--color-hero-bg);transition:background .35s;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 25%,#6c5ce708 0%,#0000 50%),radial-gradient(circle at 75%,#00cec908 0%,#0000 50%);position:absolute;inset:0}.hero-inner{max-width:var(--max-width);text-align:center;margin:0 auto;padding:2rem 1.5rem 2.5rem;position:relative}.hero-label{background:var(--color-subtle);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:999px;align-items:center;gap:.4rem;margin-bottom:2rem;padding:.35rem 1rem;font-size:.8rem;font-weight:500;display:inline-flex}.hero-label-dot{background:var(--color-primary);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.hero h1{letter-spacing:-.03em;color:var(--color-heading);margin-bottom:1.25rem;font-size:3.25rem;font-weight:800;line-height:1.15;transition:color .35s}.hero h1 span{background:linear-gradient(135deg, var(--color-primary), var(--color-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero p{color:var(--color-text-muted);max-width:560px;margin:0 auto 2.5rem;font-size:1.1rem;transition:color .35s}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-hover));color:#fff;cursor:pointer;font-size:.925rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 2rem;transition:opacity .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 14px #6c5ce740}.btn-primary:hover{opacity:.95;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #6c5ce759}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;font-size:.925rem;font-weight:500;font-family:var(--font-sans);border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 2rem;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--color-border-light);transform:translateY(-2px)}.topic-cards{max-width:var(--max-width);text-align:center;margin:0 auto;padding:0 1.5rem 5rem}.topic-cards-label{text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.75rem;font-weight:600;transition:color .35s}.topic-cards-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.topic-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--color-card-shadow);flex-direction:column;padding:1.75rem;text-decoration:none;transition:background .35s,border-color .35s,transform .25s,box-shadow .25s;display:flex}.topic-card:hover{border-color:var(--color-primary);background:var(--color-surface-hover);box-shadow:var(--color-card-shadow-hover);transform:translateY(-4px)}.topic-card-icon{margin-bottom:.75rem;font-size:1.75rem}.topic-card h3{color:var(--color-heading);margin-bottom:.4rem;font-size:1.1rem;font-weight:650;transition:color .35s}.topic-card p{color:var(--color-text-muted);flex:1;margin-bottom:.75rem;font-size:.85rem;line-height:1.5;transition:color .35s}.topic-card-count{color:var(--color-primary);font-size:.78rem;font-weight:500}.topic-hero{background:var(--color-hero-bg);transition:background .35s}.topic-hero-inner{max-width:var(--max-width);text-align:center;margin:0 auto;padding:4rem 1.5rem 3rem}.topic-hero-icon{margin-bottom:1rem;font-size:2.5rem;display:block}.topic-hero h1{letter-spacing:-.02em;color:var(--color-heading);margin-bottom:.75rem;font-size:2.5rem;font-weight:800;transition:color .35s}.topic-hero p{color:var(--color-text-muted);max-width:520px;margin:0 auto 1rem;font-size:1rem;transition:color .35s}.topic-count{color:var(--color-text-muted);background:var(--color-subtle);border:1px solid var(--color-border);border-radius:999px;padding:.25rem .85rem;font-size:.8rem;font-weight:500;transition:color .35s,background .35s,border-color .35s;display:inline-block}.posts-section{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem 5rem}.posts-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2.5rem;display:flex}.posts-header-left h2{color:var(--color-heading);letter-spacing:-.02em;font-size:1.75rem;font-weight:750;transition:color .35s}.posts-header-left p{color:var(--color-text-muted);margin-top:.25rem;font-size:.9rem;transition:color .35s}.posts-header-right{flex-shrink:0}.posts-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.post-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--color-card-shadow);flex-direction:column;padding:1.75rem;transition:background .35s,border-color .35s,transform .25s,box-shadow .25s;display:flex}.post-card:hover{border-color:var(--color-primary);background:var(--color-surface-hover);box-shadow:var(--color-card-shadow-hover);transform:translateY(-5px)}.post-card-tag{font-family:var(--font-mono);color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem;font-size:.65rem;font-weight:600;display:inline-block}.post-card h3{color:var(--color-heading);margin-bottom:.5rem;font-size:1.1rem;font-weight:650;line-height:1.4;transition:color .35s}.post-card p{color:var(--color-text-muted);flex:1;margin-bottom:1.25rem;font-size:.875rem;transition:color .35s}.post-card-footer{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.post-card-date{color:var(--color-text-muted);opacity:.55;font-size:.78rem;transition:color .35s}.post-card-arrow{color:var(--color-primary);opacity:0;font-size:.85rem;transition:opacity .25s,transform .25s;transform:translate(-4px)}.post-card:hover .post-card-arrow{opacity:1;transform:translate(0)}.newsletter{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem 5rem}.newsletter-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);text-align:center;box-shadow:var(--color-card-shadow);padding:3.5rem 2.5rem;transition:background .35s,border-color .35s,box-shadow .35s}.newsletter-box h2{color:var(--color-heading);margin-bottom:.5rem;font-size:1.5rem;font-weight:700;transition:color .35s}.newsletter-box p{color:var(--color-text-muted);margin-bottom:1.75rem;font-size:.9rem;transition:color .35s}.newsletter-form{gap:.75rem;max-width:440px;margin:0 auto;display:flex}.newsletter-form input{border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--color-text);font-family:var(--font-sans);border-radius:999px;outline:none;flex:1;padding:.8rem 1.25rem;font-size:.9rem;transition:border-color .2s,background .35s,color .35s}.newsletter-form input:focus{border-color:var(--color-primary)}.newsletter-form input::placeholder{color:var(--color-text-muted);opacity:.6}.footer{border-top:1px solid var(--color-border);background:var(--color-surface);transition:background .35s,border-color .35s}.footer-inner{max-width:var(--max-width);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:2.5rem 1.5rem;display:flex}.footer-copy{color:var(--color-text-muted);font-size:.825rem;transition:color .35s}.footer-links{gap:1.5rem;display:flex}.footer-links a{color:var(--color-text-muted);font-size:.825rem;transition:color .2s}.footer-links a:hover{color:var(--color-heading)}.post-page{max-width:720px;margin:0 auto;padding:3rem 1.5rem 5rem}.post-page-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.post-page-back{color:var(--color-text-muted);font-size:.875rem;font-weight:500;transition:color .2s}.post-page-back:hover{color:var(--color-heading)}.post-page-tag{font-family:var(--font-mono);color:var(--tag-color,var(--color-primary));text-transform:uppercase;letter-spacing:.1em;background:color-mix(in srgb, var(--tag-color,var(--color-primary)) 12%, transparent);border-radius:999px;padding:.25rem .75rem;font-size:.65rem;font-weight:600}.post-page-title{letter-spacing:-.02em;color:var(--color-heading);margin-bottom:1rem;font-size:2.25rem;font-weight:800;line-height:1.2;transition:color .35s}.post-page-meta{color:var(--color-text-muted);align-items:center;gap:.5rem;margin-bottom:2.5rem;font-size:.875rem;transition:color .35s;display:flex}.post-page-dot{opacity:.4}.post-page-body{color:var(--color-text);font-size:1rem;line-height:1.8;transition:color .35s}.post-page-body h2{color:var(--color-heading);letter-spacing:-.01em;margin:2.5rem 0 1rem;font-size:1.5rem;font-weight:700;transition:color .35s}.post-page-body h3{color:var(--color-heading);margin:2rem 0 .75rem;font-size:1.2rem;font-weight:650;transition:color .35s}.post-page-body p{margin-bottom:1.25rem}.post-page-body ul{margin:0 0 1.25rem 1.5rem}.post-page-body li{margin-bottom:.5rem}.post-page-body strong{color:var(--color-heading);font-weight:600}.post-page-body code{font-family:var(--font-mono);background:var(--color-subtle);border:1px solid var(--color-border);border-radius:4px;padding:.15em .4em;font-size:.85em;transition:background .35s,border-color .35s}.post-page-body pre{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);margin:1.25rem 0;padding:1.25rem;font-size:.85rem;line-height:1.6;transition:background .35s,border-color .35s;overflow-x:auto}.post-page-body pre code{font-size:inherit;background:0 0;border:none;padding:0}.post-page-footer{border-top:1px solid var(--color-border);margin-top:3rem;padding-top:2rem;transition:border-color .35s}.not-found{text-align:center;max-width:600px;margin:0 auto;padding:6rem 1.5rem}.not-found h1{color:var(--color-heading);margin-bottom:.75rem;font-size:2rem;font-weight:700}.not-found p{color:var(--color-text-muted);margin-bottom:2rem}.blog-page{min-height:60vh}.nav-active{color:var(--color-heading)!important}@media (width<=768px){.hero h1{font-size:2.25rem}.hero-inner{padding:1.5rem}.posts-header{flex-direction:column;align-items:flex-start}.topic-cards-grid{grid-template-columns:1fr}.topic-hero h1{font-size:2rem}.nav{gap:1rem}}.lead-section{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem 4rem}.lead-box{border:1px solid var(--color-primary);border-radius:var(--radius);text-align:center;box-shadow:var(--color-card-shadow);background:linear-gradient(135deg,#6c5ce714,#00cec914);padding:3rem 2.5rem;transition:background .35s,border-color .35s}.lead-box h2{color:var(--color-heading);margin-bottom:.5rem;font-size:1.5rem;font-weight:700;transition:color .35s}.lead-box p{color:var(--color-text-muted);margin-bottom:1.75rem;font-size:.9rem;transition:color .35s}.lead-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}@media (width<=640px){.hero h1{font-size:1.75rem}.hero p{font-size:.95rem}.hero-actions{flex-direction:column;width:100%}.btn-primary,.btn-secondary{justify-content:center;width:100%}.posts-grid{grid-template-columns:1fr}.newsletter-form{flex-direction:column}.newsletter-box{padding:2.5rem 1.5rem}.footer-inner{text-align:center;flex-direction:column}.nav a:not(:first-child):not(:last-of-type){display:none}}
