
:root { color-scheme: dark; --bg: #021714; --panel:#09251f; --ink:#C5FFE9; --text:#A3E9D2; --muted:#8FAFA5; --coral:#E07A5F; --line:rgba(163,233,210,.22); }
* { box-sizing:border-box; }
body { margin:0 auto; padding:20px; max-width:1120px; background:var(--bg); color:var(--text); font:16px/1.65 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background-image:linear-gradient(rgba(163,233,210,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(163,233,210,.025) 1px,transparent 1px); background-size:40px 40px; }
a { color:inherit; text-decoration:none; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline:2px solid var(--coral);outline-offset:5px; }
.site-nav { max-width:1080px; }
.skip-link { position:absolute;left:15px;top:-60px;background:var(--coral);color:var(--bg);padding:10px;z-index:200; }
.skip-link:focus { top:10px; }
.blog-header { margin:70px 0 60px; max-width:820px; }
.eyebrow { color:var(--coral);font:12px/1.5 'Space Mono',ui-monospace,monospace;letter-spacing:.15em;text-transform:uppercase; }
h1 { font:clamp(3.6rem,10vw,6.4rem)/1 'Space Mono',ui-monospace,monospace;font-weight:700;letter-spacing:-.07em;color:var(--ink);margin:15px 0 24px; }
.lead { font-size:clamp(1.1rem,2.2vw,1.4rem);max-width:620px;line-height:1.55;margin:0;color:var(--text); }
.filter-bar { display:flex;justify-content:space-between;align-items:end;gap:24px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:42px; }
.filter-fields { display:flex;align-items:end;gap:18px;flex:1; }
label { display:block;font:11px/1.5 'Space Mono',ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted); }
input,select { display:block;margin-top:8px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink);font:15px/1.5 inherit;padding:10px 12px;min-height:44px; }
input { width:100%; } .search-field { flex:1; max-width:370px; }
select { min-width:130px; }
.result-count { color:var(--muted);font-size:13px;white-space:nowrap;margin:0 0 10px; }
.year-section { display:grid;grid-template-columns:90px 1fr;gap:24px;margin:0 0 44px;scroll-margin-top:100px; }
.year-section h2 { font:24px/1.4 'Space Mono',ui-monospace,monospace;letter-spacing:-.04em;color:var(--muted);margin:18px 0; }
.story-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; }
.story { display:flex;flex-direction:column;padding:26px 28px 24px;background:var(--panel);border:1px solid var(--line);border-radius:7px;transition:border-color .18s,transform .18s; }
.story:hover { border-color:rgba(163,233,210,.5);transform:translateY(-2px); }
.story-meta { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font:11px/1.5 'Space Mono',ui-monospace,monospace;color:var(--muted); }
.story-category { color:var(--coral); }
.story h3 { color:var(--ink);font-size:23px;line-height:1.28;letter-spacing:-.025em;margin:18px 0 12px;font-weight:600; }
.story p { font-size:15px;line-height:1.65;margin:0 0 22px; }
.story-link { margin-top:auto;color:var(--coral);font:12px/1.6 'Space Mono',ui-monospace,monospace;display:inline-flex;justify-content:space-between;gap:10px;padding-top:18px;border-top:1px solid var(--line); }
.story-link:hover { color:var(--ink); }
.archive-end { padding:30px 0 60px;color:var(--muted);border-top:1px solid var(--line);font-size:14px; }
.archive-end a { color:var(--coral); }
.footer { display:flex;gap:30px;justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:13px; }
.footer a { color:var(--text); }
.no-results { font-size:20px;padding:35px 0 70px; }
[hidden] { display:none !important; }
.draft-notice { border:1px solid var(--coral);padding:18px 22px;margin:0 0 38px;border-radius:6px;background:rgba(224,122,95,.08); }
.draft-notice .eyebrow { margin:0 0 7px; }
.draft-notice h2 { margin:0 0 10px;color:var(--ink);font-size:23px;line-height:1.3; }
.draft-notice p { margin:0;font-size:14px; }
.draft-notice a { color:var(--coral); }
@media(max-width:760px) { body { padding:16px; }.blog-header { margin:44px 0; }.year-section { grid-template-columns:1fr;gap:0;margin-bottom:30px; }.year-section h2 { margin:0 0 14px;font-size:23px; }.story-grid { gap:14px; }.story { padding:22px; }.story h3 { font-size:21px; }.filter-bar { gap:16px; }.result-count { display:none; } }
@media(max-width:540px) { .story-grid { grid-template-columns:1fr; }.filter-fields { width:100%;gap:12px; }.search-field { min-width:0; }.year-field { flex:0 0 112px; }select { min-width:0;width:100%; }input,select { font-size:16px;width:100%; }.blog-header { margin:40px 0; }.lead { font-size:18px; }.story { padding:24px; }.footer { gap:10px; } }
@media(prefers-reduced-motion:reduce) { .story { transition:none; }.story:hover { transform:none; } }
