
:root{
  --bg:#fff; --text:#0b1220; --muted:#5b6b85; --brand:#2563eb; --brand-2:#0ea5e9;
  --surface:#f7f9fc; --card:#ffffff; --border:#e6ecf5;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;line-height:1.6}
.wrap{width:min(1100px, 94%); margin:0 auto}
.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--border)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text);font-weight:700}
.brand img{display:block}
.nav a{margin:0 .5rem; text-decoration:none; color:var(--text); font-weight:600}
.nav a:hover{color:var(--brand)}
.nav.small a{font-weight:500; color:var(--muted)}
.cta{padding:.45rem .8rem;border:1px solid var(--border);border-radius:.6rem;background:linear-gradient(180deg,#fff,#f7f9fc);}
main.wrap{padding:1rem 0 3rem}
.grid{display:grid; gap:1rem}
.grid.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{border:1px solid var(--border);border-radius:16px;background:var(--card);padding:1rem;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.card img{width:100%;height:auto;border-radius:12px}
h1,h2,h3{line-height:1.2;margin:.2em 0 .3em}
h1{font-size:2rem}
h2{font-size:1.4rem;margin-top:1.2rem}
p{margin:.6rem 0}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem;align-items:center}
.hero .panel{border:1px solid var(--border);background:var(--surface);padding:1rem;border-radius:16px}
.btn{display:inline-block;text-decoration:none;padding:.7rem 1rem;border-radius:12px;border:1px solid var(--border);background:linear-gradient(180deg,#fff,#f7f9fc);font-weight:700}
.btn.primary{background:linear-gradient(180deg,#3b82f6,#2563eb); color:#fff; border-color:#1e40af}
.kicker{color:var(--brand);font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}
.small{font-size:.9rem;color:var(--muted)}
.badge{display:inline-block;padding:.2rem .5rem;border:1px solid var(--border);border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:700;font-size:.75rem}
.table{width:100%;border-collapse:collapse;margin:1rem 0}
.table th,.table td{border:1px solid var(--border);padding:.6rem;text-align:left}
hr{border:none;border-top:1px solid var(--border);margin:1rem 0}
.skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;padding:.5rem;display:inline-block;background:#000;color:#fff}
.search input{width:100%;padding:.8rem;border-radius:10px;border:1px solid var(--border);}
.alert{padding:.8rem;border:1px solid var(--border);border-radius:10px;background:#fff7ed}
img[loading="lazy"]{background:#f2f4f8}
.grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
blockquote{border-left:4px solid var(--brand); padding:.5rem 1rem; background:#f8fbff}
.ad-slot{border:2px dashed var(--border);border-radius:12px; padding:1rem; text-align:center; color:#666}
