/**
 * SweetAlert2 — Seller / 라이브 M3 디자인 가이드 정렬
 * 로드 순서: sweetalert2.min.css 다음에 이 파일을 반드시 연결
 *
 * 토큰은 seller-admin-ds .div-block 과 동일 계열
 */
:root {
    --swal-ds-primary: #6750a4;
    --swal-ds-on-primary: #ffffff;
    --swal-ds-primary-hover: #5b4694;
    --swal-ds-surface: #fffbfe;
    --swal-ds-surface-1: #f7f2fa;
    --swal-ds-surface-2: #ece6f0;
    --swal-ds-outline: #e7e0ec;
    --swal-ds-on-surface: #1d1b20;
    --swal-ds-muted: #49454f;
    --swal-ds-error: #b3261e;
    --swal-ds-error-container: #f9dedc;
    --swal-ds-success: #1d6e2a;
    --swal-ds-success-container: #e8f5e9;
    --swal-ds-warning: #7c5e00;
    --swal-ds-warning-container: #fff4e0;
    --swal-ds-info: #0b57d0;
    --swal-ds-info-bg: #e8f0fe;
    --swal-ds-backdrop: rgba(29, 27, 32, 0.45);
}

/* 백드롭 */
div.swal2-container.swal2-backdrop-show,
div.swal2-container.swal2-noanimation {
    background: var(--swal-ds-backdrop) !important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}

/* 팝업 카드 */
div.swal2-container div.swal2-popup {
    border-radius: 16px !important;
    border: 1px solid var(--swal-ds-outline) !important;
    background: var(--swal-ds-surface) !important;
    color: var(--swal-ds-on-surface) !important;
    box-shadow: 0 4px 24px rgba(29, 27, 32, 0.2) !important;
    padding: 0 0 1.25em !important;
    font-family: inherit !important;
}

div.swal2-container h2.swal2-title {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    color: var(--swal-ds-on-surface) !important;
    padding: 1em 1.25em 0 !important;
    line-height: 1.35 !important;
}

div.swal2-container div.swal2-html-container {
    font-size: 0.9375rem !important;
    line-height: 1.5 !important;
    color: var(--swal-ds-on-surface) !important;
    padding: 0.75em 1.25em 0.3em !important;
}

div.swal2-container div.swal2-html-container a {
    color: var(--swal-ds-primary) !important;
}

/* 액션 영역 */
div.swal2-container div.swal2-actions {
    margin-top: 1.25em !important;
    gap: 0.5rem !important;
    padding: 0 1em !important;
}

/* 버튼 공통 — DS: 직각(0), confirm=primary, cancel=secondary 톤 */
div.swal2-container button.swal2-styled {
    border-radius: 0 !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
    letter-spacing: 0.01em !important;
    padding: 0.5rem 1.15rem !important;
    min-width: 5.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15) !important;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}

div.swal2-container button.swal2-styled:hover {
    background-image: none !important;
}

div.swal2-container button.swal2-confirm {
    background: var(--swal-ds-primary) !important;
    background-color: var(--swal-ds-primary) !important;
    color: var(--swal-ds-on-primary) !important;
    border: none !important;
}

div.swal2-container button.swal2-confirm:hover {
    background: var(--swal-ds-primary-hover) !important;
    background-color: var(--swal-ds-primary-hover) !important;
}

div.swal2-container button.swal2-confirm:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(103, 80, 164, 0.45) !important;
}

div.swal2-container button.swal2-cancel {
    background: var(--swal-ds-surface-2) !important;
    background-color: var(--swal-ds-surface-2) !important;
    color: #4a4458 !important;
    border: 1px solid var(--swal-ds-outline) !important;
}

div.swal2-container button.swal2-cancel:hover {
    background: #dfd8e6 !important;
    background-color: #dfd8e6 !important;
    color: #342d40 !important;
}

div.swal2-container button.swal2-deny {
    background: var(--swal-ds-error-container) !important;
    background-color: var(--swal-ds-error-container) !important;
    color: var(--swal-ds-error) !important;
    border: 1px solid #f2b8b5 !important;
}

div.swal2-container button.swal2-deny:hover {
    filter: brightness(0.97);
}

/* 닫기(X) */
div.swal2-container button.swal2-close {
    color: var(--swal-ds-muted) !important;
    border-radius: 20px !important;
    width: 2.25rem !important;
    height: 2.25rem !important;
    font-size: 1.75rem !important;
}

div.swal2-container button.swal2-close:hover {
    color: var(--swal-ds-primary) !important;
    background: var(--swal-ds-surface-2) !important;
}

/* 아이콘 링 — M3 톤 */
div.swal2-container .swal2-icon.swal2-success {
    border-color: var(--swal-ds-success) !important;
    color: var(--swal-ds-success) !important;
}

div.swal2-container .swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(29, 110, 42, 0.25) !important;
}

div.swal2-container .swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: var(--swal-ds-success) !important;
}

div.swal2-container .swal2-icon.swal2-error {
    border-color: var(--swal-ds-error) !important;
    color: var(--swal-ds-error) !important;
}

div.swal2-container .swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: var(--swal-ds-error) !important;
}

div.swal2-container .swal2-icon.swal2-warning {
    border-color: #b8860b !important;
    color: #b8860b !important;
}

div.swal2-container .swal2-icon.swal2-info {
    border-color: var(--swal-ds-info) !important;
    color: var(--swal-ds-info) !important;
}

div.swal2-container .swal2-icon.swal2-question {
    border-color: var(--swal-ds-primary) !important;
    color: var(--swal-ds-primary) !important;
}

/* 로더 */
div.swal2-container div.swal2-loader {
    border-color: var(--swal-ds-primary) rgba(0, 0, 0, 0) var(--swal-ds-primary) rgba(0, 0, 0, 0) !important;
}

/* 입력 */
div.swal2-container input.swal2-input,
div.swal2-container textarea.swal2-textarea,
div.swal2-container input.swal2-file {
    border-radius: 0 !important;
    border-color: var(--swal-ds-outline) !important;
}

div.swal2-container input.swal2-input:focus,
div.swal2-container textarea.swal2-textarea:focus {
    border-color: var(--swal-ds-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(103, 80, 164, 0.25) !important;
}

/* 푸터 */
div.swal2-container div.swal2-footer {
    border-top-color: var(--swal-ds-outline) !important;
    color: var(--swal-ds-muted) !important;
    font-size: 0.8125rem !important;
}

/* 토스트 (toast: true) */
div.swal2-container .swal2-popup.swal2-toast {
    border-radius: 12px !important;
    border: 1px solid var(--swal-ds-outline) !important;
    box-shadow: 0 2px 12px rgba(29, 27, 32, 0.15) !important;
    background: var(--swal-ds-surface) !important;
}

div.swal2-container .swal2-popup.swal2-toast h2.swal2-title {
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    color: var(--swal-ds-on-surface) !important;
}
