:root{color-scheme:light;--red: #e0193a;--red-dim: #c01231;--red-dark: #f3b7c2;--red-glow: rgba(224, 25, 58, .07);--red-glow-strong: rgba(224, 25, 58, .14);--border-red: #f5cdd5;--on-red: #ffffff;--bg: #f7f7f8;--surface: #ffffff;--surface-2: #f1f1f3;--bg-card: var(--surface);--bg-hover: var(--surface-2);--nav-bg: rgba(247, 247, 248, .85);--border: #e4e4e8;--border-2: #d2d2d8;--heading: #111114;--text: #2a2a31;--text-dim: #55555f;--text-muted: #7a7a85;--shadow: 0 1px 2px rgba(17, 17, 20, .04), 0 8px 24px -12px rgba(17, 17, 20, .12);--shadow-lg: 0 24px 60px -28px rgba(17, 17, 20, .28);--grid-line: rgba(17, 17, 20, .05);--photo-bg: #f1f1f3;--mark-bg: #15171c;--mark-border: transparent;--radius: 12px;--radius-sm: 8px;--nav-height: 4.25rem;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}:root[data-theme=dark]{color-scheme:dark;--red: #ff3b58;--red-dim: #ff2244;--red-dark: #6e1a29;--red-glow: rgba(255, 59, 88, .09);--red-glow-strong: rgba(255, 59, 88, .18);--border-red: #4a1d26;--bg: #111317;--surface: #181b21;--surface-2: #1f232a;--nav-bg: rgba(17, 19, 23, .85);--border: #272b33;--border-2: #363b45;--heading: #f4f5f7;--text: #dcdfe5;--text-dim: #a4aab5;--text-muted: #7f8693;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px -12px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px -28px rgba(0, 0, 0, .7);--grid-line: rgba(255, 255, 255, .045);--photo-bg: #1f232a;--mark-bg: #15171c;--mark-border: #363b45}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--red: #ff3b58;--red-dim: #ff2244;--red-dark: #6e1a29;--red-glow: rgba(255, 59, 88, .09);--red-glow-strong: rgba(255, 59, 88, .18);--border-red: #4a1d26;--bg: #111317;--surface: #181b21;--surface-2: #1f232a;--nav-bg: rgba(17, 19, 23, .85);--border: #272b33;--border-2: #363b45;--heading: #f4f5f7;--text: #dcdfe5;--text-dim: #a4aab5;--text-muted: #7f8693;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px -12px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 60px -28px rgba(0, 0, 0, .7);--grid-line: rgba(255, 255, 255, .045);--photo-bg: #1f232a;--mark-bg: #15171c;--mark-border: #363b45}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:clamp(15px,.35vw + 12.6px,20px);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 1rem);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;transition:background-color .25s,color .25s}a{color:inherit;text-decoration:none}strong{color:var(--red);font-weight:600}img{max-width:100%;display:block}button{font:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:4px}.container{width:100%;margin:0 auto;padding-inline:clamp(1rem,5vw,6rem)}.theme-toggle{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer;transition:color .2s,border-color .2s}.theme-toggle:hover{color:var(--heading);border-color:var(--text-muted)}.theme-toggle .fa-sun{display:none}:root[data-theme=dark] .theme-toggle .fa-sun{display:inline}:root[data-theme=dark] .theme-toggle .fa-moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .fa-sun{display:inline}:root:not([data-theme=light]) .theme-toggle .fa-moon{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}.blog-nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-height);background:var(--nav-bg);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--border)}.blog-nav .nav-inner{height:100%;display:flex;align-items:center;gap:1.25rem}.blog-nav .brand{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--heading);margin-right:auto}.blog-nav .brand-mark{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:var(--radius-sm);background:var(--mark-bg);border:1px solid var(--mark-border);color:#fff;font-family:var(--font-mono);font-weight:700;font-size:.82rem}.blog-nav .brand-mark span{color:var(--red)}.blog-nav .brand-name{font-size:.95rem}.blog-nav .nav-links{display:flex;align-items:center;gap:.15rem}.blog-nav .nav-links a{padding:.45rem .7rem;border-radius:6px;font-size:.88rem;color:var(--text-dim);transition:color .2s,background .2s}.blog-nav .nav-links a:hover{color:var(--heading)}.blog-nav .nav-links a.active-link{color:var(--heading);background:var(--surface-2)}.blog-nav .nav-actions{display:flex;align-items:center;gap:.6rem}.blog-nav .btn-blog{display:inline-flex;align-items:center;height:2.4rem;padding:0 1rem;border-radius:var(--radius-sm);background:var(--red);color:var(--on-red);font-size:.85rem;font-weight:600;transition:background .2s}.blog-nav .btn-blog:hover{background:var(--red-dim)}.blog-header{padding-top:calc(var(--nav-height) + clamp(2.5rem,6vw,5rem));padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--border);background:var(--surface)}.blog-header .eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:.9rem}.blog-header .eyebrow:before{content:"";width:1.5rem;height:1px;background:currentColor}.blog-header h1{font-size:clamp(2rem,4vw,3.2rem);font-weight:700;letter-spacing:-.035em;line-height:1.1;color:var(--heading)}.blog-header p{margin-top:.9rem;max-width:44rem;font-size:1.05rem;color:var(--text-dim)}.search-wrap{position:relative;margin-top:1.75rem;max-width:36rem}.search-wrap .search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:.85rem;pointer-events:none}.search-input{width:100%;height:3rem;padding:0 1rem 0 2.6rem;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.95rem;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow-strong)}.search-input:focus~.search-icon{color:var(--red)}.no-results{display:none;grid-column:1 / -1;text-align:center;padding:2.5rem 1.25rem;color:var(--text-muted);border:1px dashed var(--border-2);border-radius:var(--radius)}.no-results i{color:var(--red);margin-right:.5rem}.post-list{padding-block:clamp(2rem,4vw,3.5rem)}.post-list>.container{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:1.25rem}.post-card{display:flex;flex-direction:column;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}.post-card:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:var(--shadow)}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.post-meta .tag{font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:.15rem .5rem;border-radius:4px;background:var(--red-glow);color:var(--red);border:1px solid var(--border-red)}.post-card h2{margin-top:.85rem;font-size:1.12rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--heading);transition:color .2s}.post-card:hover h2{color:var(--red)}.post-card .post-excerpt{margin-top:.55rem;font-size:.92rem;color:var(--text-dim);flex:1}.post-card .read-more{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.1rem;font-size:.86rem;font-weight:600;color:var(--red);transition:gap .2s}.post-card:hover .read-more{gap:.65rem}.post-article{padding-top:calc(var(--nav-height) + clamp(2rem,5vw,4rem));padding-bottom:clamp(3rem,6vw,5rem)}.post-article>.container>*{max-width:46rem;margin-inline:auto}.post-back{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.88rem;color:var(--text-dim)}.post-back:hover{color:var(--red)}.post-header{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.post-header .post-meta{margin-bottom:1rem}.post-header h1{font-size:clamp(1.8rem,3.6vw,2.75rem);font-weight:700;line-height:1.15;letter-spacing:-.03em;color:var(--heading)}.post-header .reading-time{margin-top:.9rem;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.post-content{font-size:1.05rem;line-height:1.8;color:var(--text)}.post-content p{margin-bottom:1.3rem}.post-content h2{font-size:1.45rem;font-weight:700;letter-spacing:-.02em;line-height:1.3;margin:2.5rem 0 .9rem;color:var(--heading)}.post-content h3{font-size:1.15rem;font-weight:700;margin:1.9rem 0 .7rem;color:var(--heading)}.post-content ul,.post-content ol{margin:0 0 1.3rem 1.5rem}.post-content li{margin-bottom:.45rem}.post-content li::marker{color:var(--red)}.post-content code{font-family:var(--font-mono);font-size:.86em;background:var(--surface-2);padding:.12em .4em;border-radius:4px;border:1px solid var(--border)}.post-content pre{font-family:var(--font-mono);background:#15171c;color:#e6e8ec;padding:1.1rem 1.25rem;border-radius:var(--radius-sm);overflow-x:auto;margin-bottom:1.4rem;border:1px solid var(--border);font-size:.85rem;line-height:1.6}.post-content pre code{background:none;border:none;padding:0;color:inherit;font-size:inherit}.post-content blockquote{border-left:3px solid var(--red);padding:.75rem 1.1rem;margin:0 0 1.4rem;background:var(--red-glow);color:var(--text);font-style:italic;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.post-content blockquote p:last-child{margin-bottom:0}.post-content a{color:var(--red);text-decoration:underline;text-decoration-color:var(--border-red);text-underline-offset:3px;transition:text-decoration-color .2s}.post-content a:hover{text-decoration-color:var(--red)}.post-content hr{border:none;height:1px;background:var(--border);margin:2.25rem 0}.post-content img{border-radius:var(--radius-sm);border:1px solid var(--border);margin:1.4rem 0}.post-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin-bottom:1.4rem;font-size:.92rem}.post-content th,.post-content td{padding:.6rem .85rem;border:1px solid var(--border);text-align:left}.post-content th{background:var(--surface-2);color:var(--heading);font-weight:600}.blog-footer,.post-footer{padding-block:2.25rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.86rem}.blog-footer .container,.post-footer .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.footer-links{display:flex;flex-wrap:wrap;gap:1.25rem}.blog-footer a:hover,.post-footer a:hover{color:var(--heading)}@media(max-width:760px){.blog-nav .brand-name{display:none}.blog-nav .nav-links a{padding:.4rem .5rem;font-size:.85rem}.blog-nav .nav-links .hide-sm{display:none}}@media(max-width:480px){.blog-nav .btn-blog{display:none}.post-content{font-size:1rem}}
