 /* THEME CHANGER UI (fixed colours; not affected by site theme vars) */
 .theme-panel {position:fixed;left:14px;bottom:14px;z-index:9999;width:320px;padding:12px;border-radius:14px;background:rgba(255,255,255,.92);border:1px solid rgba(0,0,0,.10);box-shadow:0 14px 34px rgba(0,0,0,.18);backdrop-filter:blur(10px);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:rgba(0,0,0,.88);}
 .theme-panel code {font-size:.85em;}
 .theme-panel__top {display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
 .theme-panel__buttons {display:flex;gap:8px;}
 .theme-panel button {appearance:none;border:1px solid rgba(0,0,0,.12);background:rgba(248,248,248,.95);padding:6px 10px;border-radius:10px;cursor:pointer;color:rgba(0,0,0,.86);}
 .theme-panel button:hover {background:rgba(240,240,240,.95);}
 .theme-group {padding:10px;border-radius:12px;background:rgba(250,250,250,.80);border:1px solid rgba(0,0,0,.08);margin-bottom:10px;}
 .theme-group__head {display:flex;align-items:center;gap:10px;margin-bottom:8px;}
 .swatches {display:flex;gap:8px;}
 .swatch {width:30px;height:30px;border-radius:10px;border:1px solid rgba(0,0,0,.12);box-shadow:0 6px 14px rgba(0,0,0,.10);}
 .theme-group__title {font-weight:650;}
 .theme-group__hint {font-size:.85rem;opacity:.8;}
 .theme-row {display:grid;grid-template-columns:80px 1fr 46px;align-items:center;gap:8px;font-size:.92rem;margin:8px 0;}
 .theme-row output {text-align:right;font-variant-numeric:tabular-nums;opacity:.85;}
 .theme-row input[type="range"] {width:100%;}
 .theme-panel__footer {opacity:.75;padding-top:4px;}
 
 @media (max-width:520px) {
 .theme-panel {width:calc(100vw - 28px);}
 }
 
 .theme-fab {position:fixed;left:14px;bottom:14px;z-index:9999;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(0,0,0,.12);box-shadow:0 14px 34px rgba(0,0,0,.18);backdrop-filter:blur(10px);font:600 14px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:rgba(0,0,0,.88);cursor:pointer;}
 .theme-fab:hover {background:rgba(255,255,255,.98);}
 .is-hidden {display:none!important;}