/* The head script resolves system preference or the saved manual choice. */
:root[data-color-scheme="dark"] {
    color-scheme: dark;
    --scheme-bg: #111214;
    --scheme-surface: #1b1d21;
    --scheme-raised: #24272d;
    --scheme-line: #353941;
    --scheme-text: #e2e5eb;
    --scheme-muted: #a9afbb;
    --scheme-accent: #d4a3d5;
    --bs-body-bg: var(--scheme-surface);
    --bs-body-color: var(--scheme-text);
    --bs-body-bg-rgb: 27,29,33;
    --bs-body-color-rgb: 226,229,235;
    --color-dark: var(--scheme-text);
    --color-body: var(--scheme-text);
    --color-secondary: #bfc5cf;
    --color-muted: var(--scheme-muted);
    --color-primary: var(--scheme-accent);
    --href: #94c7f5;
    --bg-body: var(--scheme-bg);
    --btn-light: var(--scheme-raised);
    --night-color-primary: var(--scheme-accent);
    --night-color-dark: var(--scheme-text);
    --night-color-body: var(--scheme-text);
    --night-color-secondary: #bfc5cf;
    --night-color-muted: var(--scheme-muted);
    --night-bg-body: var(--scheme-bg);
    --night-bg-dark: #16181b;
    --night-bg-secondary: var(--scheme-surface);
    --night-bg-white: #16181b;
    --night-bg-light: var(--scheme-raised);
    --night-btn-light: var(--scheme-raised);
    --night-btn-primary: #95629a;
    --night-border-light: var(--scheme-line);
    --night-border-secondary: var(--scheme-line);
}
:root[data-color-scheme="dark"] body { background: var(--scheme-bg); color: var(--scheme-text); }
:root[data-color-scheme="dark"] .card, :root[data-color-scheme="dark"] .block, :root[data-color-scheme="dark"] .mobile-sidebar { background-color: var(--scheme-surface); color: var(--scheme-text); }
:root[data-color-scheme="dark"] .header nav.navbar, :root[data-color-scheme="dark"] .footer.bg-white { background-color: #16181b !important; }
:root[data-color-scheme="dark"] .navbar-search, :root[data-color-scheme="dark"] .main-menu .sub-menu { background: var(--scheme-raised); border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .cfn-brand__name { color: #e6e3e9; }
:root[data-color-scheme="dark"] .cfn-brand__tagline { color: #b9afbf; }
:root[data-color-scheme="dark"] .post-content, :root[data-color-scheme="dark"] .post-title h1, :root[data-color-scheme="dark"] .widget-header, :root[data-color-scheme="dark"] .list-title { color: var(--scheme-text); }
:root[data-color-scheme="dark"] .post-content h1, :root[data-color-scheme="dark"] .post-content h2, :root[data-color-scheme="dark"] .post-content h3, :root[data-color-scheme="dark"] .post-content h4 { color: var(--scheme-text); }
:root[data-color-scheme="dark"] .form-control, :root[data-color-scheme="dark"] .form-select { background: var(--scheme-raised); border-color: var(--scheme-line); color: var(--scheme-text); }
:root[data-color-scheme="dark"] .form-control::placeholder { color: var(--scheme-muted); }
:root[data-color-scheme="dark"] .form-control:focus, :root[data-color-scheme="dark"] .form-select:focus { border-color: var(--scheme-accent); box-shadow: 0 0 0 3px #d4a3d522; }
:root[data-color-scheme="dark"] .post-content a:not(.btn), :root[data-color-scheme="dark"] .tutorial-body a { color: #a8cdee; }
:root[data-color-scheme="dark"] .post-content pre { background: #101215; color: #d9e7f3; border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .post-content code { color: #e0b7dd; }
:root[data-color-scheme="dark"] .post-content pre code { color: inherit; }
:root[data-color-scheme="dark"] .post-content blockquote { background: var(--scheme-raised); color: #c6ccd6; border-color: var(--scheme-accent); }
:root[data-color-scheme="dark"] .post-content table, :root[data-color-scheme="dark"] .post-content th, :root[data-color-scheme="dark"] .post-content td { border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .post-content table {
    --bs-table-color: var(--scheme-text);
    --bs-table-bg: transparent;
    --bs-table-striped-color: var(--scheme-text);
    --bs-table-striped-bg: #ffffff05;
    --bs-table-hover-color: var(--scheme-text);
    --bs-table-hover-bg: #ffffff08;
    color: var(--scheme-text);
}
:root[data-color-scheme="dark"] .post-content table:not(.airport-recommendations__table) tbody tr { background: var(--scheme-surface); }
:root[data-color-scheme="dark"] .post-content table:not(.airport-recommendations__table) tbody tr:nth-child(odd) { background: #25282e; }
:root[data-color-scheme="dark"] .post-content table:not(.airport-recommendations__table) tbody td,
:root[data-color-scheme="dark"] .post-content table:not(.airport-recommendations__table) tbody th { background-color: transparent; color: var(--scheme-text); }
:root[data-color-scheme="dark"] .post-content th { background: var(--scheme-raised); color: #c6ccd6; }
:root[data-color-scheme="dark"] .post-tags span { background: var(--scheme-raised); color: #c6ccd6; }
:root[data-color-scheme="dark"] .mobile-menu-inner > li { background: var(--scheme-raised); }
:root[data-color-scheme="dark"] .mobile-sidebar-social-links { border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .free-node-page { --fn-text: var(--scheme-text); --fn-muted: var(--scheme-muted); --fn-line: var(--scheme-line); }
:root[data-color-scheme="dark"] .free-node-page .fn-header h1 { color: var(--scheme-text); }
:root[data-color-scheme="dark"] .free-node-page .post-content .fn-section-heading h2 { color: var(--scheme-text); }
:root[data-color-scheme="dark"] .fn-header__lead, :root[data-color-scheme="dark"] .fn-overview__regions > div, :root[data-color-scheme="dark"] .fn-metric > span, :root[data-color-scheme="dark"] .fn-overview__regions > span { color: #b7b0c0; }
:root[data-color-scheme="dark"] .fn-overview, :root[data-color-scheme="dark"] .fn-subscription { background: var(--scheme-surface); border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .fn-overview { background: #222027; }
:root[data-color-scheme="dark"] .fn-metric, :root[data-color-scheme="dark"] .fn-overview__regions { border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .fn-metric strong { color: #d3addb; }
:root[data-color-scheme="dark"] .fn-article-nav a { background: var(--scheme-raised); color: #bdb4c6; }
:root[data-color-scheme="dark"] .fn-article-nav a:first-child, :root[data-color-scheme="dark"] .fn-article-nav a:hover { background: #382e40; color: #e1b9e5; }
:root[data-color-scheme="dark"] .free-node-page .post-content .fn-subscription__name h3 { color: #e1dce7; }
:root[data-color-scheme="dark"] .fn-subscription__address { background: #121418; border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .free-node-page .post-content .fn-subscription__address code { color: #bbc3d2; }
:root[data-color-scheme="dark"] .free-node-page .post-content .fn-subscription-note, :root[data-color-scheme="dark"] .fn-community { color: #bab0c4; }
:root[data-color-scheme="dark"] .fn-empty-note { background: #332a1f; color: #e1c391 !important; }
:root[data-color-scheme="dark"] .airport-recommendations { color: #bdc4ce; }
:root[data-color-scheme="dark"] .post-content .airport-recommendations__heading h2 { color: var(--scheme-text); }
:root[data-color-scheme="dark"] .airport-recommendations__table-wrap, :root[data-color-scheme="dark"] .post-content .airport-recommendations__table tbody tr { background: var(--scheme-surface); border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .post-content .airport-recommendations__table thead th { background: var(--scheme-raised); color: #b9c1ce; border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .post-content .airport-recommendations__table tbody td, :root[data-color-scheme="dark"] .post-content .airport-recommendations__table tbody th { border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .post-content .airport-provider a, :root[data-color-scheme="dark"] .airport-price strong { color: #d5dfef; }
:root[data-color-scheme="dark"] .airport-description, :root[data-color-scheme="dark"] .airport-provider__label, :root[data-color-scheme="dark"] .airport-price > span, :root[data-color-scheme="dark"] .airport-recommendations__heading > span, :root[data-color-scheme="dark"] .post-content p.airport-recommendations__note { color: var(--scheme-muted); }
:root[data-color-scheme="dark"] .airport-coupon__discount { background: #203542; color: #91cce9; }
:root[data-color-scheme="dark"] .airport-coupon__copy { color: #b6c9df; border-color: #5d6c7c; }
:root[data-color-scheme="dark"] .airport-features i, :root[data-color-scheme="dark"] .airport-copy-status { color: #70c5a6; }
:root[data-color-scheme="dark"] .tutorial-body .guide-note { background: #1b3039; color: #c9e3ef; }
:root[data-color-scheme="dark"] .tutorial-body .guide-toc, :root[data-color-scheme="dark"] .tutorial-body .guide-diagram { background: #22282f; color: #d2dee9; border-color: #3b4855; }
:root[data-color-scheme="dark"] .tutorial-body .guide-flow > div { background: #1b2026; border-color: #435260; }
:root[data-color-scheme="dark"] .tutorial-body .guide-flow small, :root[data-color-scheme="dark"] .tutorial-body .diagram-label { color: #a7c4d8; }
:root[data-color-scheme="dark"] .tutorial-body .guide-branch { background: #332a21; color: #e0c8aa; }
:root[data-color-scheme="dark"] .tutorial-body th { background: var(--scheme-raised); color: #d1dce8; }
:root[data-color-scheme="dark"] .tutorial-body .guide-footnote, :root[data-color-scheme="dark"] .tutorial-body figcaption, :root[data-color-scheme="dark"] .tutorial-category p { color: #a8b7c6; border-color: var(--scheme-line); }
:root[data-color-scheme="dark"] .tutorial-body .guide-figure img, :root[data-color-scheme="dark"] .tutorial-body .starter-devices a, :root[data-color-scheme="dark"] .tutorial-body .starter-process > div { border-color: #3c4652; }
:root[data-color-scheme="dark"] .tutorial-category { background: var(--scheme-surface); }
:root[data-color-scheme="dark"] .logo-light { display: none !important; }
:root[data-color-scheme="dark"] .logo-dark { display: inline-block !important; }
:root[data-color-scheme="dark"] .post-content [style*="color:blue"], :root[data-color-scheme="dark"] .post-content [style*="color: blue"] { color: #94c7f5 !important; }
:root[data-color-scheme="dark"] .post-content [style*="color:red"], :root[data-color-scheme="dark"] .post-content [style*="color: red"] { color: #ff9299 !important; }
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex:none}
.theme-toggle[hidden]{display:none!important}
.theme-toggle__sun{display:none}
html[data-color-scheme="dark"] .theme-toggle__moon{display:none}
html[data-color-scheme="dark"] .theme-toggle__sun{display:block}
.theme-toggle:focus-visible{outline:2px solid #9572b0;outline-offset:2px}
@media(max-width:1199.98px){.mobile-header-actions{flex:none}.mobile-header-actions .btn{width:32px;height:36px;padding:0}}
@media(max-width:399.98px){.header .navbar-brand.cfn-brand{gap:6px}.header .navbar-brand.cfn-brand .cfn-brand__cat{width:32px;height:32px}.cfn-brand__name{font-size:18px}.cfn-brand__tagline{font-size:9px}}
@media(max-width:359.98px){.header .navbar-brand.cfn-brand .cfn-brand__cat{width:28px;height:28px}.cfn-brand__name{font-size:16px}.cfn-brand__tagline{letter-spacing:.5px}}
