.nav a,.admin-nav a{position:relative}
.nav{gap:16px}
.nav a{font-size:.875rem}

.section-head-actions{grid-template-columns:minmax(0,1fr) minmax(240px,380px);align-items:end}
.section-actions{display:grid;gap:10px;justify-items:start}
.page-main{min-height:60vh}
.page-hero,.article-hero{padding:48px 0 20px}
.page-hero-grid,.article-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);gap:20px;align-items:stretch}
.page-hero-single{padding-bottom:48px}
.page-copy{max-width:680px}
.page-copy-wide{max-width:740px}
.page-copy h1,.article-copy h1{font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.12;letter-spacing:-.03em;font-weight:600;color:var(--text)}
.page-hero-actions,.sidebar-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.center-actions{justify-content:center}
.compact-panel{align-self:stretch}
.compact-items{gap:8px}

.showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.content-card{position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-soft)}
.content-card:hover{border-color:var(--muted)}
.content-card-featured{border-color:rgba(var(--accent-rgb),.4)}
.content-card-link{position:absolute;inset:0;z-index:1}
.content-card-media{aspect-ratio:16/10;overflow:hidden;background:var(--bg)}
.content-card-media img{width:100%;height:100%;object-fit:cover}
.content-card-media.placeholder{display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:600;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}
.blog-placeholder{background:var(--bg)}
.content-card-body{position:relative;z-index:2;display:grid;gap:8px;padding:14px}
.content-card h2,.content-card h3{font-size:.9375rem;font-weight:600;line-height:1.35;color:var(--text)}
.content-card p{color:var(--muted);line-height:1.6;font-size:.8125rem}
.content-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.75rem;font-weight:500}
.hero-meta-row{justify-content:flex-start;margin-bottom:10px}

.pill{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:rgba(var(--accent-rgb),.15);color:var(--accent);font-size:.6875rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase;border:none}
.pill.subtle{background:var(--line-muted);color:var(--muted)}
.content-tags,.hero-tags{display:flex;flex-wrap:wrap;gap:4px}
.content-tags span,.hero-tags span{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:rgba(var(--accent-rgb),.1);border:1px solid rgba(var(--accent-rgb),.2);color:var(--accent);font-size:.6875rem;font-weight:500}
.content-link-row{display:flex;justify-content:flex-start}
.content-link{color:var(--accent);font-weight:500;font-size:.8125rem}

.content-empty{padding:24px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-soft);text-align:center;display:grid;gap:8px;justify-items:center}
.content-empty h2,.content-empty h3,.not-found-card h1{font-size:1.25rem;font-weight:600;margin-bottom:4px;color:var(--text)}
.content-empty p{color:var(--muted);line-height:1.6;max-width:50ch;margin:0 auto;font-size:.875rem}
.not-found-card{padding:32px 24px}

.article-layout-section{padding-top:12px;padding-bottom:56px}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;align-items:start}
.article-body,.sidebar-card,.legal-card{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-soft)}
.article-body,.legal-card{padding:20px}
.article-sidebar{display:grid;gap:12px}
.article-cover{overflow:hidden;border-radius:var(--radius);margin-bottom:16px;background:var(--bg)}
.article-cover img{width:100%;height:auto;object-fit:cover}
.project-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.sidebar-card{padding:16px}
.sidebar-card h3{font-size:.875rem;font-weight:600;margin-bottom:6px;color:var(--text)}
.sidebar-card p{color:var(--muted);line-height:1.6;font-size:.8125rem}
.sidebar-list{display:grid;gap:6px;margin-top:10px}
.sidebar-link-card{display:grid;gap:2px;padding:10px 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg)}
.sidebar-link-card:hover{border-color:var(--muted);text-decoration:none}
.sidebar-link-card strong{font-size:.8125rem;font-weight:600;line-height:1.45;color:var(--text)}
.sidebar-link-date{color:var(--muted);font-size:.6875rem;font-weight:500}

.prose-content{color:var(--muted-strong);line-height:1.7;font-size:.9375rem}
.prose-content > * + *{margin-top:1em}
.prose-content h2,.prose-content h3,.prose-content h4{color:var(--text);letter-spacing:-.02em;line-height:1.25}
.prose-content h2{font-size:1.5rem;font-weight:600;padding-bottom:8px;border-bottom:1px solid var(--line)}
.prose-content h3{font-size:1.125rem;font-weight:600}
.prose-content h4{font-size:1rem;font-weight:600}
.prose-content a{color:var(--accent);text-decoration:underline}
.prose-content img{width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line)}
.prose-content figure{display:grid;gap:6px}
.prose-content figcaption{color:var(--muted);font-size:.8125rem}
.prose-content ul,.prose-content ol{padding-left:1.5rem}
.prose-content li + li{margin-top:.35rem}
.prose-content blockquote{padding:12px 16px;border-left:3px solid var(--line);color:var(--muted-strong);font-size:.875rem}
.prose-content pre{overflow:auto;padding:16px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--line);color:var(--muted-strong);font-size:.8125rem}
.prose-content code{font-family:ui-monospace,SFMono-Regular,'SF Mono',Menlo,Consolas,'Liberation Mono',monospace;font-size:.85em;background:rgba(110,118,129,.4);padding:2px 6px;border-radius:4px}
.prose-content pre code{background:none;padding:0;border-radius:0}
.prose-content hr{border:none;border-top:1px solid var(--line);margin:1.2rem 0}
.legal-card{max-width:840px}

.admin-empty-state{text-align:left;justify-items:start}

@media (max-width:1180px){
    .page-hero-grid,.article-hero-grid,.article-layout,.section-head-actions,.showcase-grid{grid-template-columns:1fr}
    .article-sidebar{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:1100px){
    .nav,.nav-actions{display:none}
    .nav-toggle{display:inline-flex}
}
@media (max-width:720px){
    .page-hero-actions,.sidebar-actions{flex-direction:column;align-items:stretch}
    .article-sidebar{grid-template-columns:1fr}
    .showcase-grid{grid-template-columns:1fr}
    .content-card-body,.sidebar-card,.article-body,.legal-card{padding:14px}
}
