:root {
  --ink:#e8eefc; --muted:#aab8d7; --paper:#0a1022; --card:#111a33;
  --green:#8ba7ff; --mint:#8ee4c1; --lime:#8ee4c1; --line:#263555;
  --orange:#ffad7a; --shadow:0 18px 48px rgba(0,0,0,.28);
}
body { min-width:320px; color:var(--ink); background:radial-gradient(circle at 75% -10%,#273873 0,transparent 32rem),var(--paper); font-family:"Microsoft YaHei",system-ui,sans-serif; }
.skip:focus { color:#10182b; background:#fff; }
.topbar { height:68px; padding:0 max(20px,calc((100vw - 1120px)/2)); border-bottom:1px solid rgba(255,255,255,.09); background:rgba(10,16,34,.88); backdrop-filter:blur(14px); }
.brand { gap:.55rem; color:var(--ink); }
.brand-mark { width:auto; height:auto; padding:0; color:inherit; background:none; font-size:1.35rem; }
.brand small { margin-top:3px; color:var(--muted); letter-spacing:.08em; }
.topbar .nav { margin-left:auto; gap:.3rem; }
.topbar .nav a { padding:.4rem .75rem; color:var(--muted); border-radius:.45rem; }
.topbar .nav a:hover,.topbar .nav a:focus-visible,.topbar .nav a[aria-current="page"] { color:#fff; background:#24355d; }
.topbar .account-nav-link { margin-left:.55rem; border:1px solid var(--line); border-radius:999px; color:#dce6ff; }
.atlas-subnav { position:sticky; top:68px; z-index:4; display:flex; justify-content:center; gap:.35rem; padding:.55rem 1rem; overflow-x:auto; border-bottom:1px solid rgba(255,255,255,.08); background:rgba(14,23,45,.9); backdrop-filter:blur(12px); }
.atlas-subnav a { padding:.35rem .75rem; color:var(--muted); border-radius:999px; font-size:.84rem; text-decoration:none; white-space:nowrap; }
.atlas-subnav a:hover { color:#fff; background:#22345d; }
.hero { min-height:610px; background:radial-gradient(circle at 82% 18%,rgba(142,228,193,.13),transparent 31%); }
.hero h1 { font-size:clamp(3rem,6vw,5.5rem); }
.hero h1 em,.kicker { color:var(--mint); }
.hero-copy>p:not(.kicker),.section-head p,.pattern-card p,.framework-card p,.framework-card small,.detail-body p { color:var(--muted); }
.pattern-card p { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.primary { color:#081426; background:linear-gradient(135deg,#8ee4c1,#72b9ff); }
.secondary { color:#dfe8ff; border-color:#40547c; background:#111c35; }
.primary:hover,.secondary:hover { filter:brightness(1.1); }
.hero-panel,.architecture { color:#fff; background:linear-gradient(150deg,#111d36,#0b1428); border:1px solid #304365; }
.orbit span { border-color:#425a80; background:#172847; }
.orbit span:nth-of-type(2) { background:#29477e; }
.orbit span:nth-of-type(3) { color:#081426; background:var(--mint); }
.stats,.pattern-card,.framework-card,.control-list,.area-card,.two-col>div,.evidence-grid>div,.mapping-list>div,.related-grid a { color:var(--ink); border-color:var(--line); background:linear-gradient(150deg,#111c35,#0e1830); }
.stats article { border-color:var(--line); }
.stats strong,.pattern-meta,.control-id,.crumb a,.toc a:hover,.mapping-list a { color:var(--mint); }
.controls-section { background:rgba(17,26,51,.72); }
.search input,select,.region-tabs button,.more,.pagination button { color:var(--ink); border-color:var(--line); background:#0d172d; }
.search input::placeholder { color:#7080a2; }
.control-list { overflow:hidden; }
.control-row { border-color:var(--line); }
.control-row:hover { background:#172847; }
.badge { color:#9aabc9; background:#1c2945; }
.badge.on { color:#07172a; background:var(--mint); }
.pagination button.active,.region-tabs button.active { color:#07172a; border-color:var(--mint); background:var(--mint); }
.framework-card i,.coverage-bars span { background:#1c2945; }
.framework-card i:after,.coverage-bars i { background:linear-gradient(90deg,#8ba7ff,#8ee4c1); }
.guide li { border-color:var(--line); }
footer { border-top:1px solid var(--line); color:var(--ink); background:#091020; }
footer p,.license span,.license small { color:var(--muted); }
footer a { color:var(--accent-2); }
[hidden] { display:none!important; }
dialog { color:var(--ink); background:#111a33; }
dialog::backdrop { background:#050914d9; }
.detail-desc { background:#0d172d; }
.detail-controls span { background:#1a2948; }
.detail-hero { color:var(--ink); border-color:var(--line); background:linear-gradient(130deg,#111c35 58%,#172847); box-shadow:var(--shadow); }
.pattern-hero,.control-hero,.framework-hero { background:linear-gradient(130deg,#111c35 58%,#172847); }
.detail-hero>div>p,.detail-hero aside p { color:var(--muted); }
.detail-hero aside { color:#fff; background:#0b1428; border:1px solid #304365; }
.detail-hero dl div { border-color:var(--mint); }
.tags span,.control-chip { color:var(--mint)!important; background:#172847; }
.control-chip:hover { color:#081426!important; background:var(--mint); }
.notice { border-color:var(--mint); background:#13253a; }
.arch-node { border-color:#3b5681; background:#172847; }
.arch-core { color:#081426; background:var(--mint); }
.mapping-list,.clause-table { border-color:var(--line); }
.clause-head { color:#dfe8ff; background:#172440; }
.clause-row { color:var(--ink); border-color:var(--line); background:#111a33; }
.meter { background:#1c2945!important; }
.coverage-ring { color:#fff; background:conic-gradient(var(--mint) calc(var(--p)*1%),#263555 0)!important; }
.coverage-ring:after { background:#111a33!important; }
@media(max-width:900px) { .topbar { padding-inline:20px; } .topbar .nav { display:none; } .atlas-subnav { top:68px; justify-content:flex-start; } }
@media(max-width:600px) { .brand small { display:none; } .hero { padding-top:3.5rem; } }
