:root{
  --bg:#ffffff; --fg:#0b0b0b; --muted:#666; --line:#e5e5e5; --primary:#0b0b0b;
  --brand:#000; --badge:#fff; --badge-bg:#0b0b0b;
  --cta:#0b0b0b; --cta-fg:#fff; --radius:14px; --gap:16px; --container:1100px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto;}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}

/* Header */
.site-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid var(--line)}
.container{max-width:var(--container);margin:0 auto;padding:0 16px}
.header-inner{display:flex;align-items:center;gap:16px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px}
.brand-logo{width:40px;height:40px;object-fit:contain}
.brand-name{font-weight:700}
.badge-official{background:var(--badge-bg);color:var(--badge);padding:2px 8px;border-radius:999px;font-size:12px}
.nav{margin-left:auto;display:flex;gap:14px;align-items:center}
.nav a{padding:8px 10px;border-radius:10px}
.nav a.active{background:#000;color:#fff}
.nav-toggle{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:10px;padding:6px 10px;cursor:pointer}

/* Footer */
.site-footer{border-top:1px solid var(--line);margin-top:48px}
.footer-inner{padding:20px 0;text-align:center;color:var(--muted)}

/* Layout helpers */
.main{min-height:56vh;padding:24px 0}
.section{border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:20px;background:#fff}
.section h2{margin:0 0 10px 0;font-size:20px}

/* Hero on homepage */
.hero{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fafafa}
.hero .actions{display:flex;gap:12px}
.btn{display:inline-block;padding:10px 16px;border-radius:12px;border:1px solid var(--line);background:#fff}
.btn.primary{background:var(--cta);color:var(--cta-fg);border-color:var(--cta)}

/* Cards grid */
.grid{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff}
.card h3{margin:0 0 8px 0;font-size:18px}
.meta{color:var(--muted);font-size:12px}

/* Responsive */
@media (max-width: 900px){
  .grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 640px){
  .nav{display:none;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);padding:10px;border-radius:12px;margin-top:10px}
  .nav.show{display:flex}
  .nav-toggle{display:block}
  .grid{grid-template-columns:1fr}
}
