/* Global processing/loading affordance and accessible ID/EN control */
#tm-processing-overlay {position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:2147483000;background:rgba(20,12,38,.46);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease;padding:16px;}
#tm-processing-overlay.is-visible {opacity:1;visibility:visible;pointer-events:auto;}
.tm-busy-card {display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:#fff;border-radius:20px;padding:28px 36px;color:#241436;box-shadow:0 24px 80px rgba(0,0,0,.25);max-width:min(90vw,360px);width:100%;font-family:'Plus Jakarta Sans',system-ui,sans-serif;}
.tm-busy-title {font-size:16px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;}
.tm-busy-subtitle {font-size:12px;font-weight:600;color:#7b7288;}
.tm-loader {width:88px;height:68px;display:flex;justify-content:space-around;align-items:center;gap:9px;margin-bottom:4px;}
.tm-loader span {width:17px;height:17px;border-radius:50%;background:#F7941D;animation:tm-bounce 1.2s ease-in-out infinite;box-shadow:0 3px 12px rgba(247,148,29,.2);}
.tm-loader span:nth-child(2) {background:#7B2ABD;animation-delay:.15s;}
.tm-loader span:nth-child(3) {background:#F7941D;animation-delay:.3s;}
@keyframes tm-bounce {0%,70%,100%{transform:translateY(0) scale(.88);opacity:.65}35%{transform:translateY(-19px) scale(1.12);opacity:1}}
/* Language switcher v3: in nav/header/auth flow, NEVER fixed. */
.tm-lang-picker {
  position:static; z-index:auto; flex:0 0 auto;
  display:inline-flex; align-items:center; gap:3px;
  width:max-content; max-width:100%;
  padding:2px 5px; margin:0;
  background:#fff; border:1px solid rgba(123,42,189,.22);
  border-radius:10px; box-shadow:none;
  color:#392349; font:700 12px/1 system-ui,sans-serif;
}
.tm-lang-icon { font-size:14px; line-height:1; margin:0 1px; }
.tm-lang-picker select {
  appearance:auto; -webkit-appearance:menulist;
  display:block; width:48px; min-width:48px; height:30px;
  padding:0 0 0 2px; margin:0; cursor:pointer;
  border:0; border-radius:5px; outline:0;
  background:#fff; color:#392349;
  font:750 12px/1 system-ui,sans-serif;
}
.tm-lang-picker select:focus-visible {outline:2px solid #7B2ABD;outline-offset:2px;}
.navbar-main .container-fluid { flex-wrap:wrap; column-gap:8px; row-gap:6px; }
.navbar-main .tm-lang-picker { margin-left:0; }
/* User checkout and account pages: allow breadcrumb text to shrink. */
.ud-topbar .topbar-breadcrumb { min-width:0; flex:1 1 auto; overflow:hidden; }
.ud-topbar .tm-lang-picker { margin-left:auto; }
.ud-topbar .tm-lang-picker + .topbar-notif { margin-left:0!important; }
.admin-topbar .tm-lang-picker { margin-right:4px; }
.auth-shell > .tm-lang-picker { margin:0 0 10px auto; }
.tm-language-toolbar { position:relative; width:100%; display:flex; justify-content:flex-end; padding:8px max(12px,env(safe-area-inset-right)); box-sizing:border-box; }
@media(max-width:480px) {
  .tm-lang-picker {padding:1px 3px;gap:1px;border-radius:8px;}
  .tm-lang-picker select {width:43px;min-width:43px;height:30px;font-size:12px;}
  .ud-topbar .topbar-date {display:none!important;}
  .ud-topbar {column-gap:5px!important;}
  .ud-topbar .topbar-breadcrumb {font-size:11px;}
  .navbar-main .tm-lang-picker { margin-left:auto; }
}
@media(prefers-reduced-motion:reduce){.tm-loader span{animation:none;}#tm-processing-overlay{transition:none;}}
@media print{#tm-processing-overlay,.tm-lang-picker{display:none!important}}
