.navbar .vcp-header-controls__theme {
    margin-right: 0;
}

.vcp-theme-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    padding: 0.15rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    background: rgba(148, 163, 184, 0.14);
}

.vcp-theme-toggle__option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.5rem;
    padding: 0;
    border: none;
    border-radius: 4px;
    background: transparent;
    color: #64748b;
    font-size: 0.95rem;
    line-height: 1;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.vcp-theme-toggle__option:hover:not(:disabled) {
    opacity: 1;
    color: #1E2DC0;
}

.vcp-theme-toggle__option.is-active {
    background: #fff;
    color: #1E2DC0;
    opacity: 1;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
    cursor: default;
}

.vcp-theme-toggle__option:disabled {
    cursor: default;
}

.vcp-theme-toggle__option:focus-visible {
    outline: 2px solid var(--vcp-brand, #1E2DC0);
    outline-offset: 2px;
}

body.dark .vcp-theme-toggle {
    border-color: rgba(123, 135, 255, 0.22);
    background: rgba(15, 23, 42, 0.55);
}

body.dark .vcp-theme-toggle__option {
    color: #94a3b8;
}

body.dark .vcp-theme-toggle__option:hover:not(:disabled) {
    color: #a5aeff;
}

.vcp-theme-toggle.is-busy {
  opacity: 0.72;
  pointer-events: none;
}

body.vcp-theme-switching,
body.vcp-theme-switching * {
  transition: background-color 0.22s ease, color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease !important;
}

body.dark .vcp-theme-toggle__option.is-active {
    background: rgba(30, 45, 192, 0.38);
    color: #c7ceff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.28);
}
