.vt-popup {
    background: #141414 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 14px !important;
    box-shadow: 0 24px 80px rgba(0,0,0,0.7), 0 0 0 1px rgba(224,28,28,0.1) !important;
    font-family: 'Inter', sans-serif !important;
    padding: 32px 28px !important;
}
.vt-title {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: -0.3px !important;
    margin-bottom: 8px !important;
}
.vt-html {
    color: #888888 !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}
.vt-icon.swal2-success {
    border-color: #10b981 !important;
    color: #10b981 !important;
}
.vt-icon.swal2-success [class^='swal2-success-line'] {
    background-color: #10b981 !important;
}
.vt-icon.swal2-success .swal2-success-ring {
    border-color: rgba(16,185,129,0.3) !important;
}
.vt-icon.swal2-error {
    border-color: #e01c1c !important;
    color: #e01c1c !important;
}
.vt-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #e01c1c !important;
}
.vt-icon.swal2-warning {
    border-color: #f59e0b !important;
    color: #f59e0b !important;
}
.vt-icon.swal2-info {
    border-color: #7289da !important;
    color: #7289da !important;
}
.vt-icon.swal2-question {
    border-color: #7289da !important;
    color: #7289da !important;
}
.vt-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 11px 24px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    border: none !important;
    font-family: 'Inter', sans-serif !important;
    transition: all 0.2s ease !important;
    outline: none !important;
}
.vt-btn-confirm {
    background: linear-gradient(135deg, #e01c1c, #b01010) !important;
    color: #ffffff !important;
    box-shadow: 0 0 16px rgba(224,28,28,0.35) !important;
}
.vt-btn-confirm:hover {
    box-shadow: 0 0 24px rgba(224,28,28,0.55) !important;
    transform: translateY(-1px) !important;
}
.vt-btn-cancel {
    background: rgba(255,255,255,0.06) !important;
    color: #888888 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
}
.vt-btn-cancel:hover {
    background: rgba(255,255,255,0.1) !important;
    color: #f0f0f0 !important;
}
.vt-close {
    color: #555555 !important;
    font-size: 20px !important;
    transition: color 0.2s !important;
}
.vt-close:hover { color: #e01c1c !important; }
.swal2-backdrop-show { background: rgba(0,0,0,0.75) !important; }
.vt-animate-in  { animation: vtPopIn  0.25s cubic-bezier(0.34,1.56,0.64,1) both !important; }
.vt-animate-out { animation: vtPopOut 0.18s ease-in both !important; }
@keyframes vtPopIn {
    from { opacity: 0; transform: scale(0.88) translateY(12px); }
    to   { opacity: 1; transform: scale(1)    translateY(0); }
}
@keyframes vtPopOut {
    from { opacity: 1; transform: scale(1); }
    to   { opacity: 0; transform: scale(0.92); }
}
.vt-toast {
    background: #141414 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
    font-family: 'Inter', sans-serif !important;
    padding: 12px 16px !important;
    min-width: 260px !important;
}
.vt-toast .swal2-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #f0f0f0 !important;
    margin: 0 !important;
}
.vt-toast-progress {
    background: #e01c1c !important;
    height: 3px !important;
    border-radius: 0 0 10px 10px !important;
}
.vt-toast .swal2-icon.swal2-success { border-color: #10b981 !important; color: #10b981 !important; }
.vt-toast .swal2-icon.swal2-error   { border-color: #e01c1c !important; color: #e01c1c !important; }
.vt-toast .swal2-icon.swal2-warning { border-color: #f59e0b !important; color: #f59e0b !important; }
.vt-toast .swal2-icon.swal2-info    { border-color: #7289da !important; color: #7289da !important; }
.vt-error-list {
    text-align: left;
    margin-top: 4px;
}
.vt-error-item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 13px;
    color: #ff6b6b;
    margin: 6px 0;
    line-height: 1.5;
}
.vt-error-item i {
    color: #e01c1c;
    font-size: 12px;
    margin-top: 2px;
    flex-shrink: 0;
}
.swal2-loader {
    border-color: #e01c1c transparent #e01c1c transparent !important;
}
@media (max-width: 480px) {
    .vt-popup { padding: 24px 20px !important; margin: 0 12px !important; }
    .vt-title { font-size: 16px !important; }
    .vt-toast { min-width: 200px !important; }
}