:root{ --text:#111; --muted:#555; --rule:#e5e7eb; --radius:12px; }
html,body{margin:0;padding:0}
body{
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;
  color:var(--white); line-height:1.65; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
main{max-width:1100px;margin:0 auto;padding:24px}
h1{
  font-weight:800; font-size:clamp(28px,4.2vw,46px); line-height:1.12; letter-spacing:.2px; color: #fff;
  margin:8px 0 8px; padding-bottom:8px; border-bottom:4px solid currentColor;
}
h2{font-size:clamp(20px,2.3vw,28px); line-height:1.2; margin:22px 0 10px}; color: #fff;
h3{margin:14px 0 6px; color: #fff;}
p{margin:8px 0;}
.muted{color:var(--white)}
a{color:inherit; text-decoration:underline}
hr{border:none;border-top:1px solid var(--rule);margin:24px 0}
details{border:1px solid var(--rule);border-radius:var(--radius);padding:10px 12px;margin:10px 0}
details>summary{cursor:pointer;font-weight:700}
.grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){ .grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:640px){ .grid{grid-template-columns:1fr} }
.card{border:1px solid var(--rule);border-radius:var(--radius);padding:12px}
.list{padding-left:18px;margin:8px 0}
.country{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.country h4{margin:0 0 6px 0;font-size:16px}
.tag{font-size:12px;color:var(--white)}
.kws{font-size:13px}
.kws code{display:inline-block;margin:3px 6px 0 0;padding:2px 6px;border:1px solid var(--rule);border-radius:8px}
.toc a{margin-right:10px; white-space:nowrap}
.cta a{margin-right:12px}
.btn.primarys {
  display: inline-block;
  background: var(--accent);
  color: #fff;
  padding: 12px 20px;
  border-radius: 10px;
  margin: 10px 0;
  font-weight: 600;
  text-align: center;
}

.btn.secondary {
  display: inline-block;
  background: #6e1fff;
  color: #fff;
  padding: 12px 20px;
  border-radius: 10px;
  margin: 10px 0;
  font-weight: 600;
  text-align: center;
}