/* Theme icons and picker proportions from apps-catalog. */
.theme-picker,.language-picker{position:relative;flex-shrink:0}
.theme-toggle{display:inline-flex;width:42px;height:42px;padding:0;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--app-muted);cursor:pointer}
.theme-toggle:hover,.theme-toggle[aria-expanded=true],.language-toggle:hover,.language-toggle[aria-expanded=true]{background:var(--app-hover);color:var(--app-text)}
.theme-toggle svg{display:none;width:21px;height:21px}
[data-theme-preference=system] .theme-icon-system,[data-theme-preference=light] .theme-icon-sun,[data-theme-preference=dark] .theme-icon-moon{display:block}
.theme-menu,.language-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:50;padding:6px;border:0;border-radius:16px;background:var(--app-surface);color:var(--app-text);box-shadow:var(--app-floating-shadow)}
.theme-menu{min-width:180px}.language-menu{min-width:80px;max-width:100px}
.theme-menu button,.language-menu a{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:inherit;text-align:left;text-decoration:none;cursor:pointer}
.theme-menu button + button{margin-top:4px}.theme-menu button:hover,.language-menu a:hover{background:var(--app-hover)}
.theme-menu [aria-checked=true],.language-menu [aria-checked=true]{background:var(--app-selected-bg);color:var(--app-selected-text)}
.theme-menu [aria-checked=true]::after,.language-menu [aria-checked=true]::after{content:'✓'}
.language-toggle{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border:0;border-radius:999px;background:transparent;color:var(--app-muted);font-size:14px;cursor:pointer}
.language-toggle::after{content:'';display:inline-block;border-top:.3em solid;border-right:.3em solid transparent;border-left:.3em solid transparent}
@media(max-width:991px){.language-toggle{padding-inline:6px}}
@media(max-width:767px){.theme-toggle{width:38px;height:38px}.language-toggle{min-height:38px}}
