/* Milenyum — language & currency switcher (components/milenyum-locale-switcher.php) */
.mc-locale{position:relative;display:inline-block;font-size:13px;color:var(--text,#f5f5f6)}
.mc-locale>summary{list-style:none}
.mc-locale>summary::-webkit-details-marker{display:none}
.mc-locale-toggle{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;border:1px solid var(--border,#ffffff1c);border-radius:9px;background:transparent;color:var(--muted,#bdbcb8);font-weight:550;letter-spacing:-.01em;cursor:pointer;user-select:none;white-space:nowrap;transition:color .2s,border-color .2s,background-color .2s}
.mc-locale-toggle:hover,.mc-locale[open]>.mc-locale-toggle{color:var(--text,#f5f5f6);border-color:color-mix(in srgb,var(--text,#fff) 22%,transparent)}
.mc-locale-toggle .mc-icon{width:16px;height:16px;flex:none}
.mc-locale-toggle .mc-icon:last-child{width:13px;height:13px;transition:transform .2s}
.mc-locale[open]>.mc-locale-toggle .mc-icon:last-child{transform:rotate(180deg)}
.mc-locale-current{font-variant-numeric:tabular-nums}
.mc-locale--compact .mc-locale-current{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mc-locale-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:120;width:min(360px,calc(100vw - 32px));max-height:min(70vh,520px);overflow:auto;overscroll-behavior:contain;padding:8px;background:var(--panel,#242424);border:1px solid var(--border,#ffffff1c);border-radius:12px;box-shadow:0 18px 40px #0007;animation:mc-locale-in .16s ease-out}
.mc-locale-section+.mc-locale-section{margin-top:6px;padding-top:8px;border-top:1px solid var(--border,#ffffff1c)}
.mc-locale-heading{margin:4px 8px 6px;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#bdbcb8)}
.mc-locale-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}
.mc-locale-list--currency{grid-template-columns:repeat(3,minmax(0,1fr))}
.mc-locale-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:8px 10px;border-radius:8px;color:var(--text,#f5f5f6);text-decoration:none;line-height:1.2;transition:background-color .15s}
.mc-locale-option:hover,.mc-locale-option:focus-visible{background:var(--panel2,#303030)}
.mc-locale-option:focus-visible{outline:2px solid var(--accent,#f1d18d);outline-offset:-2px}
.mc-locale-option[aria-current="true"]{background:var(--accent,#f1d18d);color:var(--on-accent,#252018)}
.mc-locale-option[aria-current="true"] .mc-locale-code,.mc-locale-option[aria-current="true"] .mc-locale-symbol{color:inherit;opacity:.75}
.mc-locale-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-locale-code{flex:none;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--muted,#bdbcb8)}
.mc-locale-list--currency .mc-locale-option{justify-content:flex-start}
.mc-locale-symbol{flex:none;min-width:2.2em;font-weight:600;color:var(--muted,#bdbcb8)}
@keyframes mc-locale-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@keyframes mc-locale-up{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
/* Opens upwards when there is no room below (always in the footer); assets/js/milenyum-locale-switcher.js picks the side. */
@media (min-width:641px){
  .mc-locale[data-dir="up"] .mc-locale-panel,.sp-footer .mc-locale:not([data-dir="down"]) .mc-locale-panel{top:auto;bottom:calc(100% + 8px);animation-name:mc-locale-up}
  .sp-footer .mc-locale .mc-locale-panel,.mc-locale[data-align="start"] .mc-locale-panel{left:0;right:auto}
}
@media (max-width:640px){
  .mc-locale-panel{position:fixed;top:auto;right:16px;left:16px;bottom:16px;width:auto;max-height:72vh}
  .mc-locale-list--currency{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){.mc-locale-panel{animation:none}.mc-locale-toggle,.mc-locale-toggle .mc-icon,.mc-locale-option{transition:none}}
html[data-high-contrast="1"] .mc-locale-toggle,html[data-high-contrast="1"] .mc-locale-panel{border-color:var(--text,#fff)}
