:root { --indigo: #1A1442; --violet: #4B3BD6; --cyan: #19D3DA; --red: #FF3355; --paper: #F7F5FB; --ink: #1A1442; --muted: #5B5675; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 16px/1.65 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; background: var(--paper); color: var(--ink); }
a { color: var(--violet); }
header { background: var(--indigo); color: #fff; }
header .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 18px; padding-bottom: 18px; }
header img { height: 34px; width: auto; display: block; }
header nav a { color: #fff; text-decoration: none; margin-left: 18px; font-size: .95rem; opacity: .9; }
header nav a:hover, header nav a[aria-current] { opacity: 1; text-decoration: underline; }
.wrap { max-width: 60rem; margin: 0 auto; padding-left: 16px; padding-right: 16px; }
.hero { background: var(--indigo); color: #fff; padding: 56px 0 64px; }
.hero h1 { font-size: clamp(1.9rem, 4.5vw, 2.9rem); line-height: 1.15; margin: 0 0 16px; }
.hero p { max-width: 40rem; font-size: 1.1rem; opacity: .92; margin: 0; }
.hero .bar { width: 72px; height: 6px; border-radius: 3px; background: linear-gradient(90deg, var(--cyan) 50%, var(--red) 50%); margin-bottom: 22px; }
main { padding: 40px 0 56px; }
main.doc { max-width: 46rem; }
h2 { font-size: 1.3rem; margin: 2em 0 .5em; }
main.doc h2 { font-size: 1.12rem; margin-top: 1.7em; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 16px; margin-top: 16px; }
.card { background: #fff; border-radius: 14px; padding: 18px 20px; box-shadow: 0 1px 3px rgba(26, 20, 66, .08); }
.card h3 { margin: 0 0 6px; font-size: 1.05rem; }
.card p { margin: 0; color: var(--muted); }
table { border-collapse: collapse; width: 100%; background: #fff; border-radius: 12px; overflow: hidden; }
th, td { text-align: left; padding: 8px 12px; border-bottom: 1px solid #ECE9F4; vertical-align: top; }
th { width: 34%; font-weight: 600; }
.muted { color: var(--muted); }
footer { background: var(--indigo); color: #fff; padding: 26px 0; font-size: .92rem; }
footer a { color: #fff; margin-right: 16px; }
footer p { margin: 6px 0 0; opacity: .8; }
@media (max-width: 560px) { header .wrap { flex-wrap: wrap; } header nav a { margin: 0 14px 0 0; } th { width: 42%; } }
