/* ==========================================================================
   VitePress-style day/night switch
   ========================================================================== */

.vt-switch {
    position: relative;
    border: 1px solid var(--border-interactive);
    border-radius: var(--radius-pill);
    width: 40px;
    height: 24px;
    background-color: var(--switch-bg);
    cursor: pointer;
    padding: 0;
    transition: border-color var(--transition-base), background-color var(--transition-base);
    flex-shrink: 0;
}

.vt-switch-check {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--bg);
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-base) ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

[data-theme="dark"] .vt-switch-check {
    transform: translateX(16px);
}

.vt-switch-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    fill: var(--switch-icon);
    opacity: 0;
    transition: opacity var(--transition-base);
}

.vt-switch-icon.icon-sun {
    opacity: 1;
}

[data-theme="dark"] .vt-switch-icon.icon-sun {
    opacity: 0;
}

[data-theme="dark"] .vt-switch-icon.icon-moon {
    opacity: 1;
}

.theme-switch-wrapper {
    margin-left: 1rem;
}
