:root{
  --bg:hsl(210 20% 98%); --fg:hsl(220 20% 11%); --card:#fff; --muted:hsl(220 14% 91%);
  --muted-fg:hsl(220 8% 50%); --border:hsl(220 14% 91%); --primary:hsl(43 87% 64%);
  --accent:hsl(43 90% 90%); --accent-fg:hsl(43 90% 20%);
  --ok-bg:hsl(145 75% 91%); --ok-fg:hsl(145 85% 25%);
  --warn-bg:hsl(35 95% 95%); --warn-fg:hsl(35 85% 35%);
  --bad-bg:hsl(0 65% 95%); --bad-fg:hsl(0 65% 45%);
  --radius:.5rem;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}
a{color:inherit}

/* Navigation */
.nav{position:sticky;top:0;z-index:40;background:hsl(0 0% 100% / .85);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.nav-in{max-width:80rem;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.brand{font-weight:700;text-decoration:none;display:flex;align-items:center;gap:8px;margin-right:auto}
.nav-links{display:flex;gap:4px}
.nav-links a{text-decoration:none;padding:6px 12px;border-radius:var(--radius);font-weight:500;color:var(--muted-fg)}
.nav-links a:hover{background:var(--muted);color:var(--fg)}
.nav-links a[aria-current="page"]{background:var(--accent);color:var(--accent-fg)}

/* Composants partagés */
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--card);color:var(--fg);
     border-radius:var(--radius);padding:6px 12px;font:500 13px/1.2 inherit;font-family:inherit;cursor:pointer;text-decoration:none;transition:background .15s}
.btn:hover{background:var(--muted)}
.btn.ghost{border-color:transparent;background:transparent}
.btn.primary{background:var(--primary);border-color:var(--primary)}
.btn svg{width:14px;height:14px}
.card{background:var(--card);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);box-shadow:0 1px 3px rgba(0,0,0,.05)}
.tag{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}
.ok{background:var(--ok-bg);color:var(--ok-fg)} .warn{background:var(--warn-bg);color:var(--warn-fg)} .bad{background:var(--bad-bg);color:var(--bad-fg)}
