.theme-toolbar {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.theme-toolbar--corner {
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: 220;
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 108px;
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--panel-border, var(--line, rgba(34, 247, 168, 0.28)));
  background: linear-gradient(180deg, var(--panel, rgba(10, 24, 19, 0.92)), var(--panel-2, rgba(8, 20, 16, 0.94)));
  color: var(--text, #f0fff7);
  box-shadow: var(--shadow-sm, 0 10px 24px rgba(0, 0, 0, 0.22)), inset 0 0 0 1px rgba(255, 255, 255, 0.04);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.theme-toggle:hover {
  transform: translateY(-1px);
  border-color: var(--accent, #22f7a8);
  box-shadow: var(--shadow-md, 0 18px 36px rgba(0, 0, 0, 0.28)), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;
}

.theme-toggle:active {
  transform: translateY(0);
}

.theme-toggle:focus-visible {
  outline: 2px solid var(--accent, #22f7a8);
  outline-offset: 2px;
}

.theme-toggle__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  font-size: 15px;
  line-height: 1;
}

.theme-toggle__text {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-theme-appearance="light"] .theme-toggle {
  background: linear-gradient(180deg, rgba(255, 251, 244, 0.98), rgba(249, 242, 232, 0.96));
  box-shadow: var(--underglow, 0 14px 28px rgba(255, 255, 255, 0.34), 0 8px 18px rgba(223, 209, 188, 0.35)), var(--shadow-sm, 0 12px 24px rgba(81, 63, 39, 0.1));
}

@media (max-width: 720px) {
  .theme-toolbar--corner {
    top: 12px;
    right: 12px;
  }

  .theme-toggle {
    min-width: 96px;
    height: 38px;
    padding: 0 12px;
  }
}