/* public/annoncestyle.css */

/* --- STYLES DE BASE --- */
.alert-box-container {
    padding: 2rem;
    border-radius: 1.5rem;
    position: relative;
    overflow: hidden;
    color: #e5e7eb;
}

/* --- THEMES PREDÉFINIS (15 Thèmes) --- */
.alert-theme-danger { background: linear-gradient(145deg, #450a0a, #171717); border: 2px solid #ef4444; box-shadow: 0 0 40px rgba(239, 68, 68, 0.4); }
.alert-theme-danger .alert-title { color: #fca5a5; text-shadow: 0 0 10px rgba(239, 68, 68, 0.8); }

.alert-theme-info { background: linear-gradient(145deg, #082f49, #171717); border: 2px solid #3b82f6; box-shadow: 0 0 40px rgba(59, 130, 246, 0.4); }
.alert-theme-info .alert-title { color: #93c5fd; text-shadow: 0 0 10px rgba(59, 130, 246, 0.8); }

.alert-theme-success { background: linear-gradient(145deg, #064e3b, #171717); border: 2px solid #10b981; box-shadow: 0 0 40px rgba(16, 185, 129, 0.4); }
.alert-theme-success .alert-title { color: #6ee7b7; text-shadow: 0 0 10px rgba(16, 185, 129, 0.8); }

.alert-theme-cyber { background: #020617; border: 2px solid #06b6d4; box-shadow: 0 0 30px #06b6d4, inset 0 0 20px #06b6d4; }
.alert-theme-cyber .alert-title { color: #fff; text-shadow: 0 0 8px #06b6d4, 0 0 15px #06b6d4; font-family: monospace; letter-spacing: 0.2em; text-transform: uppercase; }

.alert-theme-royal { background: linear-gradient(145deg, #3b0764, #171717); border: 2px solid #fbbf24; box-shadow: 0 0 40px rgba(168, 85, 247, 0.5); }
.alert-theme-royal .alert-title { color: #fde68a; text-shadow: 0 2px 4px rgba(0,0,0,0.8); text-align: center; }

/* Nouveaux Thèmes */
.alert-theme-military { background: #1a1c18; border: 4px solid #4ade80; border-radius: 0; box-shadow: inset 0 0 50px rgba(74, 222, 128, 0.1); }
.alert-theme-military .alert-title { color: #86efac; font-family: 'Impact', sans-serif; text-transform: uppercase; letter-spacing: 2px; }

.alert-theme-wasteland { background: #292524; border: 2px dashed #a8a29e; box-shadow: 0 0 20px rgba(168, 162, 158, 0.2); }
.alert-theme-wasteland .alert-title { color: #fdba74; text-decoration: underline; text-decoration-color: #ea580c; }

.alert-theme-matrix { background: #000; border: 1px solid #22c55e; color: #4ade80; box-shadow: 0 0 20px rgba(34, 197, 94, 0.3); }
.alert-theme-matrix .alert-title { color: #22c55e; font-family: monospace; text-shadow: 0 0 5px #22c55e; }

.alert-theme-blood { background: radial-gradient(circle, #450a0a 0%, #000 100%); border: 1px solid #991b1b; box-shadow: inset 0 0 100px rgba(153, 27, 27, 0.5); }
.alert-theme-blood .alert-title { color: #f87171; font-style: italic; text-shadow: 2px 2px 0px #7f1d1d; }

.alert-theme-void { background: #000; border: 1px solid #1e1b4b; box-shadow: 0 0 50px rgba(76, 29, 149, 0.6); }
.alert-theme-void .alert-title { color: #c4b5fd; text-align: center; letter-spacing: 0.5em; opacity: 0.8; }

.alert-theme-neon-pink { background: #171717; border: 2px solid #ec4899; box-shadow: 0 0 30px #ec4899; }
.alert-theme-neon-pink .alert-title { color: #fbcfe8; text-shadow: 0 0 10px #f472b6, 0 0 20px #ec4899; }

.alert-theme-toxic { background: linear-gradient(to bottom, #14532d, #022c22); border: 3px double #84cc16; }
.alert-theme-toxic .alert-title { color: #bef264; text-shadow: 0 0 15px #65a30d; }

.alert-theme-alien { background: #020617; border: 1px solid #a855f7; box-shadow: inset 0 0 40px rgba(168, 85, 247, 0.4), 0 0 20px rgba(168, 85, 247, 0.4); }
.alert-theme-alien .alert-title { color: #e9d5ff; font-family: monospace; letter-spacing: -1px; text-shadow: 0 0 8px #c084fc; }

.alert-theme-gold { background: linear-gradient(145deg, #422006, #171717); border: 2px solid #f59e0b; box-shadow: 0 0 30px rgba(245, 158, 11, 0.3); }
.alert-theme-gold .alert-title { color: #fcd34d; text-shadow: 0 2px 5px #78350f; }

/* --- POLICES --- */
.alert-font-mono { font-family: monospace; }
.alert-font-serif { font-family: Georgia, serif; }
.alert-font-sans { font-family: Arial, Helvetica, sans-serif; }
.alert-font-cyber { font-family: 'Courier New', Courier, monospace; letter-spacing: 1px; text-transform: uppercase; }
.alert-font-military { font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; letter-spacing: 1px; text-transform: uppercase; }

/* --- ÉLÉMENTS DE TEXTE --- */
.alert-title { font-size: 1.8rem; font-weight: 900; margin-bottom: 1rem; margin-top: 1rem; line-height: 1.2; }
.alert-title:first-child { margin-top: 0; }
.alert-subtitle { font-size: 1.3rem; font-weight: bold; margin-bottom: 0.5rem; margin-top: 1rem; opacity: 0.9; }
.alert-list { list-style-type: square; padding-left: 1.5rem; margin: 0.5rem 0; line-height: 1.6; }
.alert-list li { margin-bottom: 0.25rem; }

/* --- CARTES (BOXES) --- */
.alert-card { padding: 1.2rem; border-radius: 0.75rem; margin: 1rem 0; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.5); background: rgba(0,0,0,0.4); border: 1px solid rgba(255,255,255,0.1); }
.card-glass { background: rgba(255,255,255,0.05); backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,0.2); }
.card-dashed { background: transparent; border: 2px dashed rgba(255,255,255,0.3); }
.card-neon { background: rgba(0,0,0,0.8); border: 1px solid currentColor; box-shadow: 0 0 15px currentColor; }
.card-solid { background: rgba(0,0,0,0.8); border: 2px solid rgba(255,255,255,0.2); border-radius: 0; }
.card-terminal { background: #000; border: 1px solid #22c55e; color: #4ade80; font-family: monospace; border-radius: 0; }

/* --- SÉPARATEURS --- */
.alert-hr { border: 0; height: 1px; background: linear-gradient(to right, transparent, currentColor, transparent); opacity: 0.3; margin: 1.5rem 0; }
.hr-solid { background: currentColor; opacity: 0.5; height: 2px; }
.hr-dashed { background: transparent; border-top: 2px dashed currentColor; opacity: 0.4; height: 0; }
.hr-dotted { background: transparent; border-top: 3px dotted currentColor; opacity: 0.5; height: 0; }
.hr-glow { height: 2px; background: currentColor; box-shadow: 0 0 10px currentColor; opacity: 0.8; }
.hr-double { background: transparent; border-top: 1px solid currentColor; border-bottom: 1px solid currentColor; height: 4px; opacity: 0.6; }

/* --- SPOILER --- */
.alert-spoiler { background-color: #374151; color: transparent; border-radius: 0.25rem; padding: 0 0.5rem; cursor: pointer; transition: all 0.3s; }
.alert-spoiler.revealed { background-color: rgba(0,0,0,0.3); color: inherit; }