/* Global Confirmation Modal & Captcha Styles */
.confirmation-modal-overlay { position: fixed; inset: 0; background: rgba(2, 6, 23, 0.85); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); z-index: 9999; display: none; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; padding: 24px; box-sizing: border-box; }
.confirmation-modal-overlay.active { display: flex; opacity: 1; }
.confirmation-modal-content { max-width: 440px; width: 100%; padding: 24px; transform: scale(0.95); transition: transform 0.3s ease; background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.06); border-top: 4px solid #f43f5e; border-radius: 16px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2); text-align: center; box-sizing: border-box; }
.confirmation-modal-overlay.active .confirmation-modal-content { transform: scale(1); }
.confirmation-modal-content h3 { font-family: 'DM Sans', sans-serif; font-size: 1.3rem; color: #fff; margin: 0 0 8px 0; }
.confirmation-modal-content p { color: #cbd5e1; font-size: 0.95rem; line-height: 1.5; margin-bottom: 20px; }
.captcha-container { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 24px; background: rgba(255,255,255,0.05); padding: 12px 20px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.1); }
.captcha-question { font-size: 1.5rem; font-weight: 700; color: #fff; font-family: 'DM Sans', sans-serif; letter-spacing: 1px; }
.captcha-input { width: 70px; padding: 8px; font-size: 1.25rem; font-weight: 700; text-align: center; border-radius: 8px; border: 2px solid rgba(255,255,255,0.2); background: rgba(0,0,0,0.2); color: #fff; outline: none; transition: border-color 0.3s; font-family: 'DM Sans', sans-serif; }
.captcha-input:focus { border-color: #f43f5e; }
.confirmation-modal-actions { display: flex; gap: 12px; justify-content: center; }
.confirmation-modal-actions .btn-custom { width: auto !important; }

/* Contextual Themes */
.confirmation-modal-overlay.confirmation-modal-danger .confirmation-modal-content { border-top-color: #f43f5e; box-shadow: 0 8px 32px rgba(244, 63, 94, 0.2); }
.confirmation-modal-overlay.confirmation-modal-danger .captcha-input:focus { border-color: #f43f5e; }
.confirmation-modal-overlay.confirmation-modal-danger .btn-primary-custom { background: #f43f5e; border: none; color: #fff; }
.confirmation-modal-overlay.confirmation-modal-danger .btn-primary-custom:hover { background: #e11d48; box-shadow: 0 4px 15px rgba(244, 63, 94, 0.4); transform: translateY(-2px); }

.confirmation-modal-overlay.confirmation-modal-success .confirmation-modal-content { border-top-color: #34d399; box-shadow: 0 8px 32px rgba(52, 211, 153, 0.2); }
.confirmation-modal-overlay.confirmation-modal-success .captcha-input:focus { border-color: #34d399; }
.confirmation-modal-overlay.confirmation-modal-success .btn-primary-custom { background: #10b981; border: none; color: #fff; }
.confirmation-modal-overlay.confirmation-modal-success .btn-primary-custom:hover { background: #059669; box-shadow: 0 4px 15px rgba(16, 185, 129, 0.4); transform: translateY(-2px); }

.confirmation-modal-overlay.confirmation-modal-info .confirmation-modal-content { border-top-color: #3b82f6; box-shadow: 0 8px 32px rgba(59, 130, 246, 0.2); }
.confirmation-modal-overlay.confirmation-modal-info .captcha-input:focus { border-color: #3b82f6; }
.confirmation-modal-overlay.confirmation-modal-info .btn-primary-custom { background: #3b82f6; border: none; color: #fff; }
.confirmation-modal-overlay.confirmation-modal-info .btn-primary-custom:hover { background: #2563eb; box-shadow: 0 4px 15px rgba(59, 130, 246, 0.4); transform: translateY(-2px); }

.confirmation-modal-overlay.confirmation-modal-warning .confirmation-modal-content { border-top-color: #f59e0b; box-shadow: 0 8px 32px rgba(245, 158, 11, 0.2); }
.confirmation-modal-overlay.confirmation-modal-warning .captcha-input:focus { border-color: #f59e0b; }
.confirmation-modal-overlay.confirmation-modal-warning .btn-primary-custom { background: #f59e0b; border: none; color: #fff; }
.confirmation-modal-overlay.confirmation-modal-warning .btn-primary-custom:hover { background: #d97706; box-shadow: 0 4px 15px rgba(245, 158, 11, 0.4); transform: translateY(-2px); }