:root{--bg:#0f172a;--bg-2:#111827;--surface:#ffffff;--text:#0b1220;--muted:#6b7280;--accent:#2563eb;--accent-2:#1d4ed8;--border:#e5e7eb;--chip:#f3f4f6;--brand:#4b7600}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";background:#fff;color:var(--text);} 
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:12px;width:auto;height:auto;background:#111;color:#fff;padding:8px 12px;border-radius:6px;z-index:2000}

.header-bar{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1200px;margin:0 auto;padding:12px 16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:700}
.brand-logo{font-size:22px}
.brand-name{font-size:18px}

.nav-toggle{display:none;flex-direction:column;gap:3px;border:1px solid var(--border);background:#fff;border-radius:6px;padding:6px 8px}
.nav-toggle-bar{display:block;width:20px;height:2px;background:#111}

.nav{display:block}
.nav-list{display:flex;gap:10px;list-style:none;margin:0;padding:0}
.nav-item{display:block}
.nav-link,.nav a{display:block;padding:8px 12px;border-radius:8px;color:#111;text-decoration:none;border:1px solid transparent}
.nav-link:hover,.nav a:hover{background:var(--chip);border-color:var(--border)}
.nav .active>.nav-link,.nav .active>a{background:var(--accent);color:#fff;border-color:var(--accent)}
/* Focus styles */
.nav a:focus-visible,.nav-link:focus-visible,.sub-link:focus-visible,.btn:focus-visible,.chip:focus-visible{outline:2px solid var(--accent); outline-offset:2px}

.sub-bar{background:#f8fafc;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sub-bar-inner{max-width:1200px;margin:0 auto;padding:8px 16px;display:flex;gap:10px;flex-wrap:wrap}
.sub-link{padding:6px 10px;border-radius:16px;background:var(--chip);border:1px solid var(--border);text-decoration:none;color:#111}
.sub-link:hover{background:#e5e7eb}

.breadcrumbs{max-width:1200px;margin:0 auto;padding:8px 16px}
.breadcrumbs>ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0;color:var(--muted)}
.breadcrumbs>ol li{display:flex;gap:6px;align-items:center}
.breadcrumbs>ol li+li::before{content:"/";color:var(--muted)}
.breadcrumbs a{color:var(--muted);text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs-current{font-size:12px;color:var(--muted);padding-top:4px}

.site-content{max-width:1200px;margin:0 auto;padding:16px}

.site-footer{background:var(--bg);color:#cbd5e1;margin-top:24px}
.footer-inner{max-width:1200px;margin:0 auto;padding:24px 16px}
.footer-columns{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:20px}
.footer-title{color:#e5e7eb;font-weight:600;margin-bottom:8px}
.footer-inner a{color:#e5e7eb;text-decoration:none}
.footer-inner a:hover{text-decoration:underline}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #1f2937;margin-top:16px;padding-top:12px;color:#94a3b8}
.brand{color:#e5e7eb}
.muted{color:#94a3b8}

/* Category filter */
.category-filter{display:grid;grid-template-columns:260px 1fr;gap:20px}
.category-aside{border:1px solid var(--border);border-radius:12px;padding:12px}
.category-aside .chip{display:inline-block;padding:6px 10px;border-radius:16px;background:var(--chip);margin:4px;border:1px solid var(--border)}
.filter-fields{border:1px solid var(--border);border-radius:12px;padding:12px}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:12px;color:#374151}
.field input,.field select{padding:8px;border:1px solid var(--border);border-radius:8px}
.filter-actions{display:flex;gap:10px;margin-top:12px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:#fff;color:#111;text-decoration:none;cursor:pointer}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}

@media (max-width: 860px){
  .nav-toggle{display:flex}
  .nav{display:none}
  .nav.open{display:block}
  .nav-list{flex-direction:column;gap:2px;padding:8px 0}
  .sub-bar-inner{overflow:auto}
  .category-filter{grid-template-columns:1fr}
  .field-grid{grid-template-columns:1fr}
  .footer-columns{grid-template-columns:1fr}
}
