.safety-modal { position: fixed; inset: 0; z-index: 99999; display: none; align-items: center; justify-content: center; padding: 1rem; overflow-y: auto; }
.safety-modal.show { display: flex; animation: fadeIn 0.3s ease; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
.safety-modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.85); backdrop-filter: blur(12px); }
.safety-modal-content { position: relative; max-width: 600px; width: 100%; max-height: calc(100vh - 2rem); overflow-y: auto; background: linear-gradient(160deg, #1a1e2a 0%, #0d1117 100%); border: 1px solid rgba(239,68,68,0.4); border-radius: 20px; padding: 2.5rem 2rem 2rem; box-shadow: 0 30px 90px rgba(239,68,68,0.2); animation: slideUp 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
@keyframes slideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
.safety-modal-icon { text-align: center; font-size: 3.5rem; margin-bottom: 1rem; filter: drop-shadow(0 0 15px rgba(239,68,68,0.5)); }
.safety-modal-content h2 { text-align: center; font-size: 1.6rem; font-weight: 800; margin: 0 0 1rem; color: #fff; }
.safety-lead { text-align: center; color: #c9d1d9; font-size: 1rem; margin: 0 0 1.5rem; }
.safety-warning { background: rgba(239,68,68,0.1); border: 1px solid rgba(239,68,68,0.3); border-left: 4px solid var(--accent-red, #ef4444); border-radius: 12px; padding: 1.25rem; margin: 0 0 1.5rem; }
.safety-instructions { background: rgba(255,210,139,0.05); border: 1px solid rgba(255,210,139,0.2); border-radius: 12px; padding: 1.25rem; margin: 0 0 1.5rem; }
.safety-instructions summary { color: var(--accent-gold, #ffd28b); font-weight: 700; cursor: pointer; outline: none; }
.safety-buttons { display: flex; flex-direction: column; gap: 0.75rem; }
.safety-btn-primary { background: linear-gradient(135deg, #ef4444, #b91c1c); color: #fff; border: none; padding: 1rem; border-radius: 12px; font-weight: 800; cursor: pointer; font-size: 1rem; box-shadow: 0 8px 25px rgba(239,68,68,0.3); transition: all 0.2s; }
.safety-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 35px rgba(239,68,68,0.5); }
.safety-btn-text { background: transparent; color: var(--color-text-muted, #94a3b8); border: none; padding: 0.5rem; cursor: pointer; font-size: 0.85rem; text-decoration: underline; }
.safety-btn-text:hover { color: #fff; }
