:root{
  --bg:#0a1020; --bg-soft:#0e162c; --card:#111c36; --card-2:#16233f;
  --line:#22314f; --text:#e8eefc; --muted:#9fb0cf; --accent:#22d3ee; --accent-2:#6366f1;
  --ok:#34d399; --radius:18px; --wrap:1000px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:radial-gradient(1200px 600px at 50% -200px,#16233f 0%,var(--bg) 60%) no-repeat,var(--bg);
  color:var(--text); font:400 17px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 18px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(10,16,32,.82);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px}
.brand-logo{display:inline-flex;align-items:center;gap:9px;font-weight:800;letter-spacing:.2px;color:var(--text);font-size:17px;white-space:nowrap}
.brand-logo:hover{text-decoration:none}
.logo-dot{width:11px;height:11px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 0 12px rgba(34,211,238,.7)}
.site-nav{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.site-nav a{color:var(--muted);font-size:14px;padding:7px 11px;border-radius:99px}
.site-nav a:hover{color:var(--text);background:var(--card-2);text-decoration:none}
main{padding:22px 0 40px}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:6px 0 14px;font-size:13px;color:var(--muted)}
.breadcrumb li+li::before{content:"/";margin-right:8px;color:#3d4d6d}
.card{background:linear-gradient(180deg,var(--card),var(--bg-soft));border:1px solid var(--line);border-radius:var(--radius);padding:26px;margin:0 0 18px;box-shadow:0 18px 40px -30px #000}
.hero{padding:34px 26px}
.badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#06121c;background:linear-gradient(135deg,var(--accent),#7dd3fc);padding:6px 12px;border-radius:99px}
h1{font-size:clamp(26px,4.2vw,40px);line-height:1.22;margin:16px 0 12px;letter-spacing:-.02em}
h2{font-size:clamp(20px,2.6vw,26px);line-height:1.3;margin:30px 0 10px;letter-spacing:-.01em}
h3{font-size:18px;margin:22px 0 8px}
.lead{color:#cfdcf3;font-size:18px;margin:0 0 20px}
.content p{margin:0 0 14px;color:#d5e0f4}
.content ul,.content ol{margin:0 0 16px;padding-left:22px;color:#d5e0f4}
.content li{margin:6px 0}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 18px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:12px;font-weight:700;font-size:15px;border:1px solid transparent;transition:transform .12s ease,filter .12s ease}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#08111f}
.btn-ghost{border-color:var(--line);color:var(--text);background:var(--card-2)}
.meta-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:0;margin:18px 0 0}
.meta-list li{background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px}
.meta-list span{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.meta-list strong{font-size:15px}
table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:15px}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}
th{color:var(--muted);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
tbody tr:hover{background:#16233f}
.note{border-left:3px solid var(--accent);background:#0f1b33;padding:12px 16px;border-radius:0 12px 12px 0;color:#cfe3f7;margin:0 0 16px}
.faq details{background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:0 0 10px}
.faq summary{cursor:pointer;font-weight:700;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--accent);font-weight:800}
.faq details[open] summary::after{content:"−"}
.faq p{margin:10px 0 0;color:#cfdcf3}
.rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:14px 0 18px}
.rel-grid a{display:block;background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:11px 13px;font-weight:600;font-size:15px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rel-grid a:hover{border-color:var(--accent);text-decoration:none;color:var(--accent)}
.pager{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--muted)}
.pager a{padding:9px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card-2);color:var(--text)}
.site-footer{border-top:1px solid var(--line);padding:26px 0 40px;color:var(--muted);font-size:14px;text-align:center}
.footer-links{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:10px 0}
.copyright{margin:0;opacity:.75}
.hub-stat{color:var(--muted);margin:0 0 16px;font-size:15px}
.hub-search{position:relative;max-width:520px}
.hub-search input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:#0b1529;color:var(--text);font-size:16px;outline:none}
.hub-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(34,211,238,.16)}
.hub-hint{color:#fca5a5;font-size:14px;margin:10px 0 0}
.letter-group{margin:22px 0 0}
.letter-group h3{display:flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin:0 0 10px}
.letter-group h3::after{content:"";flex:1;height:1px;background:var(--line)}
.brand-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:8px}
.brand-link{display:block;padding:9px 12px;border-radius:10px;background:var(--card-2);border:1px solid var(--line);color:#dbe6fa;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-link:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
@media (max-width:640px){
  .card{padding:20px 16px;border-radius:14px}
  .hero{padding:24px 16px}
  .header-inner{min-height:56px}
  .brand-logo{font-size:15px}
  .site-nav{gap:2px}
  .site-nav a{padding:5px 7px;font-size:12.5px;white-space:nowrap}
  body{font-size:16px}
  .rel-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}
  .brand-cols{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
  .meta-list{grid-template-columns:1fr 1fr}
  table{font-size:14px}
  th,td{padding:9px 8px}
}
@media (prefers-reduced-motion:reduce){.btn{transition:none}}
