:root{--bg: #fbfbfc;--bg-tint: #f4f4f6;--surface: #ffffff;--surface-hover: #fdfdfd;--accent: #dc2626;--accent-hover: #b91c1c;--accent-tint: rgba(220, 38, 38, .07);--accent-edge: rgba(220, 38, 38, .22);--ink: #18181b;--ink-soft: #52525b;--ink-faint: #a1a1aa;--line: #e4e4e7;--line-strong: #d4d4d8;--shadow: 0 1px 3px rgba(24, 24, 27, .05), 0 8px 24px rgba(24, 24, 27, .04);--font-body: "Inter", "Helvetica Neue", -apple-system, BlinkMacSystemFont, Arial, sans-serif;--font-code: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;--wrap: 1060px;--radius: 10px}*{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);background-color:var(--bg);color:var(--ink);line-height:1.65;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px}.container{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 1.35rem}.appnav{position:sticky;top:0;z-index:50;background:#fbfbfceb;backdrop-filter:blur(10px);border-top:3px solid var(--accent);border-bottom:1px solid var(--line)}.appnav-row{display:flex;align-items:center;justify-content:space-between;height:62px}.logolink{display:flex;align-items:center;gap:.65rem;color:var(--ink)}.logolink:hover{text-decoration:none}.logo-tile{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--accent);color:#fff;font-weight:800;font-size:1rem;border-radius:8px}.logo-title{font-weight:800;font-size:1.2rem;letter-spacing:-.02em}.logo-note{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);background:var(--accent-tint);border:1px solid var(--accent-edge);padding:.15rem .5rem;border-radius:6px}.navlist{display:flex;list-style:none;gap:1.35rem}.navlist a{color:var(--ink-soft);font-size:.92rem;font-weight:500}.navlist a:hover{color:var(--accent);text-decoration:none}.pagehead{padding:3.5rem 0 2.5rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--bg-tint),var(--bg));text-align:center}.pagehead-kicker{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:.9rem}.pagehead-title{font-size:2.55rem;font-weight:800;letter-spacing:-.03em;line-height:1.12;color:var(--ink);margin-bottom:.85rem}.pagehead-desc{font-size:1.08rem;color:var(--ink-soft);max-width:600px;margin:0 auto}.spotlight{margin:2.25rem 0 3rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.spotlight-label{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}.spotlight-items{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.spotlight-card{background:var(--bg-tint);border:1px solid var(--line);border-radius:8px;padding:.85rem 1rem;transition:border-color .15s,box-shadow .15s}.spotlight-card:hover{border-color:var(--accent-edge);box-shadow:var(--shadow)}.spotlight-card a{display:block;font-weight:700;font-size:.94rem;color:var(--ink)}.spotlight-card a:hover{color:var(--accent);text-decoration:none}.spotlight-card p{font-size:.82rem;color:var(--ink-soft);margin-top:.3rem;line-height:1.45}.feed{padding:1.75rem 0 2.5rem;display:flex;flex-direction:column;gap:2.9rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:2.3rem;box-shadow:var(--shadow)}.card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;font-size:.82rem;color:var(--ink-faint);margin-bottom:.95rem}.card-meta time,.card-meta span{display:inline-flex;align-items:center}.card-chip{background:var(--accent-tint);color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .6rem;border-radius:6px}.card-title{font-size:1.95rem;font-weight:800;letter-spacing:-.025em;line-height:1.22;margin-bottom:.85rem}.card-title a{color:var(--ink)}.card-title a:hover{color:var(--accent);text-decoration:none}.card-excerpt{font-size:1.06rem;color:var(--ink-soft);margin-bottom:1.7rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.card-body{color:#3f3f46;font-size:1rem;line-height:1.8}.card-body h2{font-size:1.45rem;font-weight:800;letter-spacing:-.015em;color:var(--ink);margin:2rem 0 .85rem;padding-top:.9rem;border-top:1px solid var(--line)}.card-body h3{font-size:1.15rem;font-weight:700;color:var(--ink);margin:1.45rem 0 .65rem}.card-body p{margin-bottom:1.15rem}.card-body ul,.card-body ol{margin:.9rem 0 1.4rem 1.5rem}.card-body li{margin-bottom:.45rem}.card-body li::marker{color:var(--accent)}.card-body strong{color:var(--ink)}.card-body blockquote{background:var(--accent-tint);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;padding:.95rem 1.25rem;margin:1.4rem 0;color:#3f3f46}.card-body table{width:100%;border-collapse:collapse;font-size:.89rem;margin:1.4rem 0;display:block;overflow-x:auto}.card-body th,.card-body td{text-align:left;padding:.55rem .8rem;border-bottom:1px solid var(--line);white-space:nowrap}.card-body thead th{color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid var(--line-strong);background:var(--bg-tint)}.card-body pre{background:#18181b;border-radius:8px;padding:1.1rem 1.25rem;overflow-x:auto;font-family:var(--font-code);font-size:.86rem;margin:1.4rem 0;color:#e4e4e7}.card-body code{font-family:var(--font-code);background:var(--accent-tint);color:var(--accent-hover);padding:.12rem .38rem;border-radius:5px;font-size:.87em}.card-body pre code{background:transparent;color:inherit;padding:0}.card-footer{margin-top:2rem;padding-top:1.1rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.9rem;font-size:.82rem;color:var(--ink-faint)}.card-tags{display:flex;gap:.4rem;flex-wrap:wrap}.pill{background:var(--bg-tint);border:1px solid var(--line);color:var(--ink-soft);font-size:.72rem;padding:.15rem .55rem;border-radius:999px}.card-more{font-weight:700}.sitefoot{margin-top:auto;background:var(--bg-tint);border-top:1px solid var(--line);padding:2.75rem 0 1.75rem;color:var(--ink-soft);font-size:.88rem}.sitefoot-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:2rem;margin-bottom:1.75rem}.sitefoot-brand h3{color:var(--ink);font-size:1.15rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.5rem}.sitefoot-col h4{color:var(--ink);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.7rem}.sitefoot-links{list-style:none;display:flex;flex-direction:column;gap:.45rem}.sitefoot-links a{color:var(--ink-soft)}.sitefoot-links a:hover{color:var(--accent);text-decoration:none}.sitefoot-bar{border-top:1px solid var(--line);padding-top:1.3rem;text-align:center;font-size:.78rem;color:var(--ink-faint)}@media (max-width: 768px){.pagehead-title{font-size:1.9rem}.card{padding:1.5rem 1.2rem}.card-title{font-size:1.5rem}.sitefoot-grid{grid-template-columns:1fr;gap:1.5rem}.navlist{gap:.8rem}.logo-note{display:none}}.post-archive{margin:0 0 4rem}.post-archive-title{font-size:1.05rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-sunset, var(--accent-yellow, var(--accent, var(--rust, #888))));margin-bottom:1.1rem;padding-bottom:.7rem;border-bottom:1px solid var(--border-subtle, var(--border-color, var(--line, var(--rule, #333))))}.post-archive-list{list-style:none;margin:0;padding:0}.post-archive-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1.2rem;padding:.95rem 0;border-bottom:1px dashed var(--border-subtle, var(--border-color, var(--line, var(--rule, #333))))}.post-archive-item:last-child{border-bottom:none}.post-archive-item h3{font-size:1rem;font-weight:700;margin:0 0 .25rem;line-height:1.4}.post-archive-item h3 a{color:inherit}.post-archive-item p{font-size:.85rem;color:var(--text-muted, var(--muted, var(--ink-soft, #94a3b8)));line-height:1.5;margin:0 0 .3rem}.post-archive-meta{font-size:.72rem;font-family:var(--font-mono, ui-monospace, monospace);color:var(--text-dim, var(--faint, var(--text-muted, #777)));text-transform:uppercase;letter-spacing:.06em}.post-archive-more{font-size:.82rem;font-weight:700;white-space:nowrap;margin-top:.2rem}.archive-nav{display:flex;justify-content:space-between;margin-top:1.75rem;font-weight:700;font-size:.92rem}@media (max-width: 640px){.post-archive-item{flex-direction:column;gap:.4rem}}.has-dropdown{position:relative}.dropdown-toggle{cursor:pointer}.dropdown-toggle .caret{font-size:.7em;margin-left:.15rem}.nav-dropdown{display:none;position:absolute;top:100%;left:0;min-width:180px;list-style:none;margin:0;padding:.4rem 0;background-color:var(--bg-card, var(--bg-secondary, #131b2e));border:1px solid var(--border-color, #23314d);border-radius:8px;box-shadow:0 10px 30px #0006;z-index:60}.has-dropdown:hover .nav-dropdown,.has-dropdown:focus-within .nav-dropdown{display:block}.nav-dropdown li{display:block}.nav-dropdown li a{display:block;padding:.5rem 1rem;white-space:nowrap}.nav-dropdown li a:hover{background-color:#ffffff0d}@media (max-width: 640px){.has-dropdown{position:static}.nav-dropdown{position:static;border:none;box-shadow:none;padding-left:1rem}.has-dropdown:focus-within .nav-dropdown,.has-dropdown:hover .nav-dropdown{display:block}}.link-index{margin-top:2.75rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #23314d)}.link-index-title{font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--accent, #f43f5e);margin:0 0 1rem}.link-index-list{list-style:none;margin:0;padding:0;columns:4;column-gap:1.5rem}.link-index-list li{break-inside:avoid;margin-bottom:.3rem;font-size:.78rem}.link-index-list li a{color:var(--text-muted, #94a3b8);transition:color .15s ease}.link-index-list li a:hover{color:var(--accent, #f43f5e)}@media (max-width: 900px){.link-index-list{columns:3}}@media (max-width: 640px){.link-index-list{columns:2}}.link-index-list--titles{columns:2;column-gap:2rem}.link-index-list--titles li{font-size:.82rem;margin-bottom:.45rem;line-height:1.4}@media (max-width: 640px){.link-index-list--titles{columns:1}}
