:root{color-scheme:light}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;min-height:40px;padding:4px;background:transparent;border:1px solid var(--rule);color:var(--ink)}
.theme-toggle:hover{border-color:var(--blue)}
.theme-track{display:block;position:relative;width:30px;height:17px;border-radius:12px;background:#dce3ea;border:1px solid #b8c4d0}
.theme-knob{display:block;position:absolute;left:2px;top:2px;width:11px;height:11px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:transform .2s}
.theme-knob::after{content:"";position:absolute;inset:3px;border:1px solid #75818e;border-radius:50%}
:root[data-theme="dark"]{color-scheme:dark;--paper:#171c22;--gray:#101316;--ink:#e9edf2;--body:#c7ced6;--quiet:#a1aab5;--rule:#39434d;--soft:#2a333c;--blue:#8fbcf2;--deep:#1f5088;--lightblue:#8fbcd1}
[data-theme="dark"] .theme-track{background:#2b6cb0;border-color:#5a93ce}
[data-theme="dark"] .theme-knob{transform:translateX(13px)}
[data-theme="dark"] .theme-knob::after{inset:2px 3px 3px 2px;border:0;border-right:2px solid #2b6cb0}
[data-theme="dark"] body,[data-theme="dark"] .catalog-page{background:#101316;color:var(--body)}
[data-theme="dark"] .masthead nav>a{color:#aeb9c4}
[data-theme="dark"] .masthead nav>a[aria-current],[data-theme="dark"] .masthead nav>a:hover{color:var(--blue)}
[data-theme="dark"] .catalog-heading>p>span,[data-theme="dark"] .hero-copy>p{color:var(--quiet)}
[data-theme="dark"] .catalog-search-panel{background:#152231;border-color:#304b65;border-top-color:#5e9add}
[data-theme="dark"] .search-caption>.micro{color:#a2b8cc}
[data-theme="dark"] .catalog-search-panel .search-box,[data-theme="dark"] .search-box{background:#1b2632;border-color:#47627c;box-shadow:none}
[data-theme="dark"] input::placeholder{color:#a1aab5}
[data-theme="dark"] .search-submit,[data-theme="dark"] .button{background:#2b6cb0;color:white;border-color:#2b6cb0;border-bottom-color:#3aa6ff}
[data-theme="dark"] .search-submit:hover,[data-theme="dark"] .button:hover{background:#1f5088}
[data-theme="dark"] .button-outline{background:transparent;color:var(--ink);border:1px solid var(--rule)}
[data-theme="dark"] .button-outline:hover{background:#202e3d;border-color:#8fbcf2}
[data-theme="dark"] .catalog-page .type-tabs,[data-theme="dark"] .catalog-page .filter-panel{border-color:var(--rule)}
[data-theme="dark"] .catalog-list-heading{background:#222a33;border-color:var(--rule);color:#b7c2cd}
[data-theme="dark"] .record-card,[data-theme="dark"] .records-grid.list-view,[data-theme="dark"] .records-grid.list-view .record-card{background:#171c22;border-color:var(--soft)}
[data-theme="dark"] .records-grid.list-view .record-card:hover,[data-theme="dark"] .record-card:hover{background:#1b2632}
[data-theme="dark"] .card-summary,[data-theme="dark"] .records-grid.list-view .card-summary{color:#bac4cf}
[data-theme="dark"] .card-summary.summary-unavailable{color:var(--quiet)}
[data-theme="dark"] .chip,[data-theme="dark"] .records-grid.list-view .card-topics .chip{background:#252f3a;color:#b7c8d9}
[data-theme="dark"] .document-cover{background:#202f40;border-color:#40576f;border-left-color:#6da0da;box-shadow:2px 3px 0 #0003;color:#9bc3f1}
[data-theme="dark"] .cover-control{background:#1c3028;border-color:#395a48;border-left-color:#7faf93;color:#9ac5ac}
[data-theme="dark"] .cover-post{background:#332b25;border-color:#65523f;border-left-color:#b29578;color:#d2b89d}
[data-theme="dark"] .cover-guide,[data-theme="dark"] .cover-field{background:#2c2638;border-color:#554766;border-left-color:#ae95c9;color:#c7b3df}
[data-theme="dark"] .cover-data,[data-theme="dark"] .cover-hub{background:#1b3034;border-color:#385e65;border-left-color:#75b0bb;color:#9bc9d1}
[data-theme="dark"] .access-filter{background:#202832;color:#b8c2cd;border-color:var(--rule)}
[data-theme="dark"] .access-filter.active{border-color:#b8c8d9;color:var(--ink)}
[data-theme="dark"] .tier.public,[data-theme="dark"] .access-filter.public{background:#20382c;color:#b4ddc4;border-color:#446c53}
[data-theme="dark"] .access-filter.public.active{border-color:#93caa7;box-shadow:inset 0 -2px #93caa7}
[data-theme="dark"] .tier.subscription,[data-theme="dark"] .access-filter.subscription.active{background:#2b6cb0;color:white;border-color:#3b7fc5}
[data-theme="dark"] .access-filter.subscription{background:#20344b;color:#b5d6fa;border-color:#46698f}
[data-theme="dark"] .tier.client,[data-theme="dark"] .access-filter.client.active{background:#9b2c2c;color:white;border-color:#bc5555}
[data-theme="dark"] .access-filter.client{background:#3b2428;color:#f1b7b7;border-color:#775052}
[data-theme="dark"] .tier.registered{background:#262d35;color:#c7ced6;border-color:#4c5864}
[data-theme="dark"] .filter-chip{background:#20344b;color:#bed9f9;border-color:#46698f}
[data-theme="dark"] .view-button.active{background:#243a53;border-color:#476b93;color:#bed9f9}
[data-theme="dark"] .collection-card{background:#1b222a}
[data-theme="dark"] .collection-card:hover{background:#203042}
[data-theme="dark"] .access-box{background:#1b232c}
[data-theme="dark"] .access-public{border-top-color:#7faf93}
[data-theme="dark"] .access-public>.eyebrow{color:#acd8bc}
[data-theme="dark"] .access-public .button{background:#20382c;color:#b4ddc4;border-color:#446c53;border-bottom-color:#93caa7}
[data-theme="dark"] .access-public .button:hover{background:#2b4938}
[data-theme="dark"] .access-client{border-top-color:#c16b6b}
[data-theme="dark"] .access-client>.eyebrow{color:#f1b7b7}
[data-theme="dark"] .access-client .button{background:#9b2c2c;color:white;border-color:#bc5555;border-bottom-color:#d57c7c}
[data-theme="dark"] .access-client .button:hover{background:#7d2323}
[data-theme="dark"] .access-registered .button{background:#262d35;color:#e9edf2;border-color:#4c5864}
[data-theme="dark"] .analyst-note p{color:#b7c2cd}
[data-theme="dark"] .catalog-page .mobile-filter-toggle{background:#1b232c;color:var(--ink);border-color:var(--rule)}
@media(max-width:640px){.masthead{gap:10px}.masthead nav{gap:8px}.theme-toggle{width:40px;min-height:36px}.masthead nav .nav-contact{font-size:7px;letter-spacing:0;padding:9px!important}}
@media(prefers-reduced-motion:reduce){.theme-knob{transition:none}}
