/* Shared plugin control, with colors matched to each demo's header. */
#advnt-public-switcher, #advnt-public-switcher * { box-sizing: border-box; }
#advnt-public-switcher {
    --demo-button-bg: var(--wp--preset--color--primary, #25634b); --demo-button-ink: #fff; --demo-button-radius: 999px;
    --demo-ink: #172321; --demo-muted: #68716b; --demo-surface: #fff;
    --demo-line: #d8dcd7; --demo-row: #fff; --demo-hover: #eef2eb;
    --demo-accent: #172f25; --demo-active-text: #fff; --demo-dot: #658d64;
    position: relative; display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0;
    font-family: inherit; font-size: var(--demo-font-size, 14px); line-height: 1.5;
    color: var(--demo-ink); text-align: left; letter-spacing: normal;
}
#advnt-public-switcher[data-theme="aljondv"] {
    --demo-ink: #24241f; --demo-muted: #62625a; --demo-surface: #f4f1ea;
    --demo-line: #d8d3c8; --demo-row: #faf8f3; --demo-hover: #ebe6da;
    --demo-accent: #dc481e; --demo-dot: #dc481e;
}
#advnt-public-switcher[data-theme="dizpo"] {
    --demo-ink: #183b2b; --demo-muted: #56705c; --demo-surface: #f8f7f1;
    --demo-line: #d4ddcd; --demo-row: #fffef9; --demo-hover: #ebf0df;
    --demo-accent: #183b2b; --demo-dot: #477550;
}
#advnt-public-switcher[data-theme="jetpress"] {
    --demo-ink: #fff; --demo-muted: #b7b7b7; --demo-surface: #121212;
    --demo-line: #3a3a3a; --demo-row: #1d1d1d; --demo-hover: #2b2b2b;
    --demo-accent: #fc5000; --demo-dot: #fc5000;
}
#advnt-public-switcher[data-theme="serein"] {
    --demo-ink: #111; --demo-muted: #6b6b6b; --demo-line: #ddd;
    --demo-hover: #f2f2f2; --demo-accent: #111; --demo-dot: #111;
}
#advnt-public-switcher[data-theme="jetpress"][data-context="checkout"] {
    --demo-ink: #111; --demo-muted: #666; --demo-surface: #fff;
    --demo-line: #ddd; --demo-row: #fff; --demo-hover: #f5f5f5;
}
#advnt-public-switcher summary {
    display: flex; align-items: center; gap: 8px; min-height: 38px; padding: 8px 12px; transition: background .2s, border-color .2s;
    border: 1px solid transparent; border-radius: var(--demo-button-radius);
    color: var(--demo-button-ink); background: var(--demo-button-bg); cursor: pointer;
    font: inherit; font-weight: 500;
    white-space: nowrap; list-style: none;
}
#advnt-public-switcher summary:hover { filter: brightness(1.08); }
#advnt-public-switcher summary::-webkit-details-marker { display: none; }
#advnt-public-switcher .advnt-demo-panel {
    position: absolute; top: calc(100% + 14px); left: var(--advnt-panel-shift, 0px);
    width: 220px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 160px);
    overflow-y: auto; padding: 6px; border: 1px solid var(--demo-line);
    border-radius: 12px; background: var(--demo-surface); box-shadow: 0 8px 24px #12251c18; z-index: 50;
}
#advnt-public-switcher .advnt-demo-themes { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
#advnt-public-switcher .advnt-demo-themes li { margin: 0; padding: 0; }
#advnt-public-switcher .advnt-demo-theme { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 44px; padding: 10px 12px; border: 0; border-radius: 6px; background: transparent; color: var(--demo-ink); font-size: 13px; font-weight: 500; text-decoration: none; }
#advnt-public-switcher .advnt-demo-theme:hover { background: var(--demo-hover); }
#advnt-public-switcher .advnt-demo-theme[aria-current="true"] { background: var(--demo-hover); color: var(--demo-ink); }
#advnt-public-switcher .advnt-demo-status { font-size: 11px; font-weight: 400; opacity: .8; }
#advnt-public-switcher :is(summary, a):focus-visible { outline: 2px solid var(--demo-dot); outline-offset: 4px; }
@media (max-width: 600px) {
    #advnt-public-switcher summary { min-height: 36px; padding: 8px 10px; font-size: var(--demo-font-size, 14px); }
    #advnt-public-switcher .advnt-demo-panel { position: fixed; top: var(--advnt-panel-top, 110px); left: 16px; width: calc(100vw - 32px); max-height: calc(100dvh - var(--advnt-panel-top, 110px) - 16px); }
}

#advnt-public-switcher .advnt-demo-chevron { display: inline-flex; align-items: center; transition: transform .2s; }
#advnt-public-switcher details[open] .advnt-demo-chevron { transform: rotate(180deg); }
.advnt-mode-toggle { display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid color-mix(in srgb, currentColor 22%, transparent); border-radius: 50%; color: inherit; background: transparent; font: inherit; font-size: 21px; cursor: pointer; }
.advnt-mode-toggle[hidden] { display: none; }
.advnt-mode-toggle:hover { background: color-mix(in srgb, currentColor 8%, transparent); }
.advnt-mode-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
html[data-advnt-mode="dark"] #advnt-public-switcher { --demo-ink: #f3f1eb; --demo-muted: #b3bcbf; --demo-surface: #17252e; --demo-line: #435159; --demo-hover: #283a45; }
html[data-advnt-mode="light"] #advnt-public-switcher { --demo-ink: #24333a; --demo-muted: #637178; --demo-surface: #faf9f4; --demo-line: #c7ceca; --demo-hover: #e8ece7; }
@media (prefers-reduced-motion: reduce) { #advnt-public-switcher * { transition: none; } }


@media (max-width: 600px) {
    .advnt-mode-toggle { width: 34px; height: 34px; font-size: 19px; }
}

#advnt-public-switcher svg, .advnt-mode-toggle svg { display: block; width: 18px; height: 18px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 2; }
#advnt-public-switcher .advnt-demo-chevron svg { width: 16px; height: 16px; }
.advnt-mode-toggle [data-mode-icon="sun"] { display: none; }
html[data-advnt-mode="dark"] .advnt-mode-toggle [data-mode-icon="sun"] { display: inline-flex; }
html[data-advnt-mode="dark"] .advnt-mode-toggle [data-mode-icon="moon"] { display: none; }

#advnt-public-switcher[data-theme="aljondv"] { --demo-button-bg: #dc481e; --demo-button-ink: #fff; }
#advnt-public-switcher[data-theme="dizpo"] { --demo-button-bg: light-dark(#183b2b,#d9ed92); --demo-button-ink: light-dark(#fff,#183b2b); }
#advnt-public-switcher[data-theme="serein"] { --demo-button-bg: light-dark(#111,#eee); --demo-button-ink: light-dark(#fff,#111); --demo-button-radius: 0px; }
#advnt-public-switcher[data-theme="serein"] summary { text-transform: uppercase; letter-spacing: .06em; }
#advnt-public-switcher[data-theme="jetpress"] { --demo-button-bg: #fc5000; --demo-button-ink: #fff; --demo-button-radius: 0px; }
#advnt-public-switcher[data-theme="jetpress"] summary { text-transform: uppercase; font-weight: 700; }
#advnt-public-switcher[data-theme="tourgether"] { --demo-button-bg: var(--color-accent,#b35b3d); --demo-button-ink: light-dark(#fff,#17212a); }
@media (prefers-reduced-motion: reduce) { .advnt-mode-toggle { transition: none; } }

/* Match each header's navigation type scale; compact widths use the grid icon. */
#advnt-public-switcher[data-theme="tourgether"] { --demo-font-size: var(--text-sm, 15px); }
#advnt-public-switcher[data-theme="tourgether"] summary { min-height: 44px; position: relative; isolation: isolate; overflow: hidden; --button-fill-color: var(--color-ink); }
#advnt-public-switcher[data-theme="serein"] { --demo-font-size: 12px; }
#advnt-public-switcher[data-theme="dizpo"] { --demo-font-size: 11px; }

@media (prefers-reduced-motion: reduce) {
    #advnt-public-switcher[data-theme="tourgether"] summary:is(:hover,:focus-visible) { background-color: var(--color-ink); }
}

/* A distinct grid control saves space beside the logo on small headers. */
#advnt-public-switcher .advnt-demo-icon { display: none; }
@media (max-width: 767px) {
    #advnt-public-switcher summary { width: 44px; height: 44px; min-height: 44px; justify-content: center; padding: 0; }
    #advnt-public-switcher .advnt-demo-icon { display: inline-flex; }
    #advnt-public-switcher :is(.advnt-demo-label,.advnt-demo-chevron) { display: none; }
}
/* Tourgether uses the same compact breakpoint as its navigation drawer. */
@media (max-width: 1279px) {
    #advnt-public-switcher[data-theme="tourgether"] summary { width: 44px; height: 44px; min-height: 44px; justify-content: center; padding: 0; }
    #advnt-public-switcher[data-theme="tourgether"] .advnt-demo-icon { display: inline-flex; }
    #advnt-public-switcher[data-theme="tourgether"] :is(.advnt-demo-label,.advnt-demo-chevron) { display: none; }
}
