:root{--bg:#ffffff;--fg:#1a1a1a;--muted:#666;--line:#e5e5e5;--accent:#0a4d8c;--gold:#F2C94C;--navy:#0A0C10}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--bg);color:var(--fg);line-height:1.55}
.wrap{max-width:960px;margin:0 auto;padding:1.25rem}
header.site{background:var(--navy);color:#fff;margin-bottom:1.5rem}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;padding-top:1rem;padding-bottom:1rem}
.brand{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;text-decoration:none;color:var(--gold)}
.brand-logo{height:1.7em;width:1.7em;vertical-align:-.35em;margin-right:.45rem;border-radius:8px}
nav a{margin-right:1rem;color:#fff;text-decoration:none;font-weight:600}
nav a:hover{text-decoration:underline;color:var(--gold)}
table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.95rem}
th,td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left;vertical-align:top}
th{background:#f6f6f6;font-weight:700}
code{background:#f4f4f4;padding:.1rem .35rem;border-radius:4px;font-size:.88em}
pre{background:#0A0C10;color:#e8e8e8;padding:1rem;border-radius:8px;overflow-x:auto;font-size:.85rem}
pre code{background:none;color:inherit;padding:0}
.badge{display:inline-block;font-size:.72rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;
  border:1px solid #bfe3cd;color:#0a6b2c;background:#f2faf5}
.badge.unv{border-color:#d8d8d8;color:#666;background:#f6f6f6}
form.er{max-width:640px;margin:1.5rem 0}
form.er label{display:block;font-weight:600;margin:1rem 0 .3rem}
form.er input[type=text],form.er input[type=url],form.er input[type=email],
form.er textarea,form.er select{width:100%;padding:.55rem .7rem;border:1px solid var(--line);
  border-radius:8px;font:inherit}
form.er textarea{min-height:5.5rem;resize:vertical}
form.er .hint{font-size:.82rem;color:var(--muted);font-weight:400;margin:.2rem 0 0}
form.er .check{display:flex;gap:.6rem;align-items:flex-start;margin:1.2rem 0;font-weight:400}
form.er .check input{margin-top:.3rem}
form.er button{background:var(--navy);color:var(--gold);border:none;border-radius:8px;
  padding:.7rem 1.6rem;font:inherit;font-weight:700;cursor:pointer}
form.er button:hover{background:#1a1d24}
form.er button:disabled{opacity:.55;cursor:wait}
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
#form-result{margin:1.2rem 0;padding:.9rem 1.1rem;border-radius:8px;display:none}
#form-result.ok{display:block;background:#f2faf5;border:1px solid #bfe3cd;color:#0a6b2c}
#form-result.err{display:block;background:#fdf2f2;border:1px solid #f0c0c0;color:#8c1d1d}
.radio-row{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:.4rem 0}
.radio-row label{font-weight:400;margin:0}
.badge.soon{border-color:#f0d98c;color:#8a6d1a;background:#fff8e6}
.note{background:#f6f8fb;border:1px solid var(--line);border-left:4px solid var(--accent);
  padding:.75rem 1rem;margin:1.25rem 0;font-size:.92rem}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:1.5rem 0}
.card{border:1px solid var(--line);border-radius:10px;padding:1rem 1.1rem}
.card h3{margin:.2rem 0 .5rem}
.card h3 a{color:var(--fg);text-decoration:none}
.card h3 a:hover{color:var(--accent)}
.card .tags{margin:.6rem 0}
.tag{display:inline-block;font-size:.72rem;background:#eef2f7;border:1px solid var(--line);
  border-radius:999px;padding:.1rem .5rem;margin:.1rem .15rem .1rem 0}
.card .meta{font-size:.82rem;color:var(--muted)}
footer.site{border-top:1px solid var(--line);margin-top:2.5rem;color:var(--muted);font-size:.85rem}
footer.site .wrap{padding-top:1rem;padding-bottom:2rem}
h1{font-size:1.7rem;letter-spacing:-.01em}
h2{margin-top:2rem}
a{color:var(--accent)}
.hero{background:var(--navy);color:#fff;border-radius:12px;padding:1.5rem;margin:0 0 1.5rem}
.hero-logo{height:96px;width:96px;border-radius:16px;margin-bottom:.75rem}
.hero h1{color:var(--gold);margin-top:0}
.hero p{color:#d8d8d8}
.hero code{background:#1a1d24;color:var(--gold)}
@media(max-width:640px){table{font-size:.82rem}th,td{padding:.4rem}}
