:root[data-theme="blue"]{--teal:#135796;--teal-dark:#0f4578;--aqua:#e1f0fb;--ink:#142f48}
:root[data-theme="orange"]{--teal:#d9731a;--teal-dark:#b95310;--aqua:#fff0df;--ink:#453026}
:root[data-theme="yellow"]{--teal:#b58807;--teal-dark:#876500;--aqua:#fff6d6;--ink:#3b3315}
:root[data-theme="green"]{--teal:#218453;--teal-dark:#16633d;--aqua:#e0f3e7;--ink:#183b2b}

.theme-switcher{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1050}
.theme-toggle{display:flex;align-items:center;gap:.45rem;border:0;border-radius:99px;padding:.65rem .9rem;background:var(--teal);color:#fff;font-size:.78rem;font-weight:700;box-shadow:0 8px 22px #0a3a6a3a}
.theme-panel{position:absolute;right:0;bottom:3.3rem;width:230px;padding:1rem;background:#fff;border:1px solid #dde8f0;border-radius:13px;box-shadow:0 14px 38px #0a2f5226}
.theme-panel[hidden]{display:none}
.theme-panel-head{display:flex;align-items:center;justify-content:space-between;font-size:.85rem}
.theme-close{border:0;background:transparent;color:var(--muted)}
.theme-panel p{font-size:.72rem;color:var(--muted);margin:.3rem 0 .75rem}
.theme-options{display:grid;gap:.35rem}
.theme-option{display:flex;align-items:center;gap:.55rem;border:1px solid transparent;background:#fff;border-radius:7px;padding:.45rem;font-size:.76rem;text-align:left;color:var(--ink)}
.theme-option:hover,.theme-option.active{border-color:#c2d1dd;background:#f4f8fc}
.theme-option .bi-check2{margin-left:auto;color:var(--teal);opacity:0}
.theme-option.active .bi-check2{opacity:1}
.theme-swatch{width:18px;height:18px;border-radius:50%;background:#135796}
.theme-swatch.blue{background:#135796}
.theme-swatch.orange{background:#d9731a}
.theme-swatch.yellow{background:#d9aa11}
.theme-swatch.green{background:#218453}

@media(max-width:575px){
  .theme-switcher{right:.8rem;bottom:.8rem}
  .theme-toggle span{display:none}
  .theme-toggle{width:42px;height:42px;justify-content:center;padding:0}
  .theme-panel{bottom:3.1rem}
}