/**
 * Styles transversaux thème : sélecteur, widget langue, utilitaires.
 */

/* ── Sélecteur de thème ── */
.agenla-theme-switcher {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border-radius: 999px;
  background: var(--agenla-surface-2, rgba(0, 0, 0, 0.06));
  border: 1px solid var(--agenla-border, rgba(0, 0, 0, 0.08));
}

.agenla-theme-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 36px;
  min-height: 36px;
  padding: 6px 8px;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: var(--agenla-text-muted, #6c757d);
  cursor: pointer;
  font-size: 0.75rem;
  line-height: 1;
  transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.agenla-theme-btn:hover {
  background: var(--agenla-nav-hover, rgba(0, 102, 204, 0.1));
  color: var(--agenla-primary, #0066cc);
}

.agenla-theme-btn.is-active {
  background: var(--agenla-primary, #0066cc);
  color: #ffffff;
  box-shadow: 0 2px 8px var(--agenla-shadow, rgba(0, 0, 0, 0.15));
}

.agenla-theme-btn-label {
  display: none;
}

.agenla-theme-switcher--compact .agenla-theme-btn {
  min-width: 32px;
  min-height: 32px;
  padding: 5px;
}

.user-actions .agenla-theme-switcher {
  margin: 0 4px;
}

@media (max-width: 480px) {
  .agenla-theme-switcher {
    gap: 1px;
    padding: 2px;
  }

  .agenla-theme-btn {
    min-width: 44px;
    min-height: 44px;
    padding: 8px;
  }
}

@media (min-width: 1200px) {
  .agenla-theme-switcher:not(.agenla-theme-switcher--compact) .agenla-theme-btn-label {
    display: inline;
  }

  .agenla-theme-switcher:not(.agenla-theme-switcher--compact) .agenla-theme-btn {
    padding: 6px 10px;
  }
}

/* Ancien toggle — masqué si encore présent */
.theme-switch,
.scolarite-theme-switch,
#theme-toggle,
#themeToggle {
  display: none !important;
}

/* ── Widget langue — thèmes ── */
[data-theme="dark"] .language-widget-main .language-selector-container {
  background: rgba(0, 0, 0, 0.3);
  border-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .language-widget-main .language-selector-container:hover {
  background: rgba(0, 0, 0, 0.4);
  border-color: rgba(255, 255, 255, 0.25);
}

[data-theme="dark"] .language-widget-main .lang-btn {
  border-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .language-widget-main .lang-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.3);
}

[data-theme="dark"] .language-widget-main .lang-btn.active {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.4);
}

[data-theme="light"] .language-widget-main .language-selector-container {
  background: rgba(0, 102, 204, 0.1);
  border-color: rgba(0, 102, 204, 0.2);
}

[data-theme="light"] .language-widget-main .language-selector-container:hover {
  background: rgba(0, 102, 204, 0.15);
  border-color: rgba(0, 102, 204, 0.3);
}

[data-theme="light"] .language-widget-main .language-icon {
  color: rgba(0, 102, 204, 0.8);
}

[data-theme="light"] .language-widget-main .language-selector-container:hover .language-icon {
  color: #0066cc;
}

[data-theme="light"] .language-widget-main .lang-btn {
  color: #0066cc;
  border-color: rgba(0, 102, 204, 0.2);
}

[data-theme="light"] .language-widget-main .lang-btn:hover {
  background: rgba(0, 102, 204, 0.1);
  border-color: rgba(0, 102, 204, 0.4);
  color: #0066cc;
}

[data-theme="light"] .language-widget-main .lang-btn.active {
  background: rgba(0, 102, 204, 0.15);
  border-color: rgba(0, 102, 204, 0.5);
  color: #0066cc;
}

[data-theme="informaticien"] .language-widget-main .language-selector-container {
  background: rgba(0, 212, 255, 0.08);
  border-color: rgba(0, 212, 255, 0.25);
}

[data-theme="informaticien"] .language-widget-main .language-selector-container:hover {
  background: rgba(0, 212, 255, 0.15);
  border-color: rgba(0, 212, 255, 0.4);
}

[data-theme="informaticien"] .language-widget-main .language-icon,
[data-theme="informaticien"] .language-widget-main .lang-btn {
  color: #00d4ff;
}

[data-theme="informaticien"] .language-widget-main .lang-btn.active {
  background: rgba(0, 212, 255, 0.2);
  border-color: rgba(0, 212, 255, 0.5);
}

[data-theme="informaticien"] .eltmntHead {
  background-color: var(--agenla-nav-bg);
  border-bottom: 1px solid rgba(0, 212, 255, 0.2);
}

[data-theme="informaticien"] .nav-link,
[data-theme="informaticien"] .submenu-link {
  color: var(--agenla-nav-text);
}

[data-theme="informaticien"] .nav-link:hover,
[data-theme="informaticien"] .submenu-link:hover {
  color: var(--agenla-primary);
}
