/* All in AI — local stylesheet, no third-party fonts or assets */
:root{
  --ink:#122033;
  --muted:#4b5b70;
  --line:#d7deea;
  --paper:#f5f7fb;
  --card:#ffffff;
  --accent:#0b7f73;
  --accent-2:#0a5c54;
  --chip:#e7f4f2;
  --warn:#8a3d12;
  --max:1120px;
  --radius:16px;
  --shadow:0 10px 30px rgba(18,32,51,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Segoe UI",system-ui,-apple-system,sans-serif;
  color:var(--ink);
  background:radial-gradient(1200px 500px at 10% -10%,#dff4f1 0%,transparent 55%),var(--paper);
  line-height:1.65;
}
a{color:var(--accent-2)}
a:hover{color:var(--accent)}
img,svg{max-width:100%;display:block}
.wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto}
.skip{position:absolute;left:-999px;top:8px}
.skip:focus{left:8px;background:#fff;padding:8px 12px;z-index:20}
header.site{
  position:sticky;top:0;z-index:10;
  background:rgba(245,247,251,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700}
.brand svg{width:32px;height:32px}
.menu{display:flex;flex-wrap:wrap;gap:14px;list-style:none;margin:0;padding:0}
.menu a{text-decoration:none;color:var(--muted);font-weight:600}
.menu a[aria-current="page"],.menu a:hover{color:var(--ink)}
.hero{padding:56px 0 24px}
.hero h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;margin:0 0 16px}
.lede{font-size:1.15rem;color:var(--muted);max-width:46rem}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 16px}
.filters button,.search{
  border:1px solid var(--line);background:#fff;border-radius:999px;
  padding:8px 14px;font:inherit;color:var(--ink);cursor:pointer
}
.filters button[aria-pressed="true"]{background:var(--accent);color:#fff;border-color:var(--accent)}
.search{min-width:min(100%,240px)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;padding:8px 0 48px}
.card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 18px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px
}
.card h2,.card h3{margin:0;font-size:1.15rem}
.card p{margin:0;color:var(--muted);flex:1}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{background:var(--chip);color:var(--accent-2);border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:700}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--accent);color:#fff;text-decoration:none;font-weight:700;
  border-radius:999px;padding:10px 16px;border:0
}
.btn.secondary{background:#fff;color:var(--accent-2);border:1px solid var(--line)}
.btn-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.prose{padding:24px 0 64px;max-width:760px}
.prose h1{margin-top:0}
.prose h2{margin-top:2em}
.meta{color:var(--muted);font-size:.95rem}
.note{background:#fff7ed;border:1px solid #f3d5b3;border-radius:12px;padding:12px 14px;color:var(--warn)}
footer.site{border-top:1px solid var(--line);padding:28px 0 40px;color:var(--muted)}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
footer nav{display:flex;flex-wrap:wrap;gap:14px}
.hidden{display:none !important}
.empty{padding:24px;color:var(--muted)}
@media (max-width:700px){
  .nav{flex-direction:column;align-items:flex-start}
  .hero{padding-top:32px}
}
