.confirm-modal-overlay{background:var(--modal-backdrop);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal{background:var(--bg-surface);border-radius:var(--s-radius-lg);border:1px solid var(--border-base);width:100%;max-width:400px;box-shadow:0 10px 40px #0006}.confirm-modal-header{padding:var(--s-space-5) var(--s-space-6);border-bottom:1px solid var(--border-base);justify-content:space-between;align-items:center;display:flex}.confirm-modal-header h2{font-size:var(--s-text-lg);color:var(--text-primary);margin:0}.confirm-modal-close{cursor:pointer;color:var(--text-muted);border-radius:var(--s-radius-sm);background:0 0;border:none;padding:2px}.confirm-modal-close:hover{background:var(--bg-input);color:var(--text-primary)}.confirm-modal-body{padding:var(--s-space-6)}.confirm-modal-warning{gap:var(--s-space-5);align-items:flex-start;display:flex}.confirm-modal-warning .warning-icon{color:var(--danger);flex-shrink:0}.warning-text p{margin:0 0 var(--s-space-3);line-height:1.5;font-size:var(--s-text-sm)}.warning-text .warning-detail{color:var(--text-muted);font-size:var(--s-text-xs)}.confirm-modal-footer{justify-content:flex-end;gap:var(--s-space-3);padding:var(--s-space-5) var(--s-space-6);border-top:1px solid var(--border-base);display:flex}.btn-cancel{padding:var(--s-space-3) var(--s-space-5);background:var(--bg-input);border:1px solid var(--border-strong);border-radius:var(--s-radius-md);cursor:pointer;font-size:var(--s-text-sm);color:var(--text-primary)}.btn-cancel:hover{background:var(--bg-muted)}.btn-confirm{align-items:center;gap:var(--s-space-2);padding:var(--s-space-3) var(--s-space-5);border-radius:var(--s-radius-md);cursor:pointer;font-size:var(--s-text-sm);font-weight:var(--s-font-medium);color:#fff;border:none;display:flex}.btn-confirm.danger{background:var(--danger)}.btn-confirm.danger:hover:not(:disabled){background:var(--danger-hover)}.btn-confirm.primary{background:var(--accent)}.btn-confirm.primary:hover:not(:disabled){background:var(--accent-hover)}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.spin{animation:1s linear infinite spin}
