/* Shared, high-contrast sun/moon switch; scoped to this control. */
button.leo-theme-toggle[data-theme-toggle] {
  box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:2px;
  flex:0 0 88px; width:88px; min-width:88px; max-width:88px; height:44px; min-height:44px; max-height:44px; margin:0; padding:4px;
  border:1px solid var(--leo-control-border); border-radius:999px; background:var(--leo-surface); color:var(--leo-text);
  cursor:pointer; appearance:none; vertical-align:middle; line-height:1; letter-spacing:normal;
  box-shadow:0 2px 10px color-mix(in srgb,var(--leo-bg) 20%,transparent); text-transform:none;
}
button.leo-theme-toggle[data-theme-toggle] span { display:flex; align-items:center; justify-content:center; flex:0 0 36px; width:36px; height:34px; border-radius:50%; pointer-events:none; }
button.leo-theme-toggle[data-theme-toggle] svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
button.leo-theme-toggle[data-theme-toggle][data-theme="dark"] .leo-theme-moon { background:var(--leo-action-fill); color:var(--leo-on-action); }
button.leo-theme-toggle[data-theme-toggle][data-theme="light"] { background:var(--leo-surface); color:var(--leo-text); border-color:var(--leo-control-border); }
button.leo-theme-toggle[data-theme-toggle][data-theme="light"] .leo-theme-sun { background:var(--leo-action-fill); color:var(--leo-on-action); }
button.leo-theme-toggle[data-theme-toggle]:hover { border-color:var(--leo-control-border); box-shadow:0 0 0 2px color-mix(in srgb,var(--leo-bg) 20%,transparent); }
button.leo-theme-toggle[data-theme-toggle]:focus-visible { outline:3px solid var(--leo-focus); outline-offset:4px; }
@media(max-width:374px) { button.leo-theme-toggle[data-theme-toggle] { width:72px; min-width:72px; max-width:72px; flex-basis:72px; } button.leo-theme-toggle[data-theme-toggle] span { width:28px; flex-basis:28px; } button.leo-theme-toggle[data-theme-toggle] svg { width:19px; height:19px; } }
@media(forced-colors:active) { button.leo-theme-toggle[data-theme-toggle] { border-color:ButtonText; } button.leo-theme-toggle[data-theme-toggle][aria-pressed="true"] .leo-theme-sun,button.leo-theme-toggle[data-theme-toggle][aria-pressed="false"] .leo-theme-moon { outline:2px solid Highlight; } }
