/* css/style_match_public.css */

/* =========================================
   0. RESET GLOBAL & SÉCURITÉ
   ========================================= */
* { box-sizing: border-box; }
body { margin: 0; padding: 0; font-family: sans-serif; word-wrap: break-word; overflow-x: hidden; }

/* =========================================
   1. COULEURS DES ÉQUIPES
   ========================================= */
.team-1 { --team-color: #2979ff; --team-bg: rgba(41, 121, 255, 0.15); }
.txt-team-1 { color: #82b1ff; } 
.team-2 { --team-color: #ffea00; --team-bg: rgba(255, 234, 0, 0.15); }
.txt-team-2 { color: #ffff8d; } 
.team-3 { --team-color: #ff4081; --team-bg: rgba(255, 64, 129, 0.15); }
.txt-team-3 { color: #ff80ab; } 
.team-4 { --team-color: #00e676; --team-bg: rgba(0, 230, 118, 0.15); }
.txt-team-4 { color: #b9f6ca; } 

/* =========================================
   2. LAYOUT GÉNÉRAL
   ========================================= */
.match-live-container { max-width: 1000px; margin: 0 auto; padding: 15px; padding-bottom: 80px; width: 100%; }
.match-header { text-align: center; margin-bottom: 30px; }
.match-cat-title { font-size: 2em; font-weight: bold; color: #ffc107; text-transform: uppercase; letter-spacing: 2px; margin: 0; text-shadow: 0 2px 4px rgba(0,0,0,0.5); line-height: 1.1; }
.match-nature { color: #aaa; font-size: 1.1em; margin-bottom: 5px; text-transform: uppercase; }

/* =========================================
   3. BARRE DE NAVIGATION
   ========================================= */
.top-bar-nav { background-color: #000; border-bottom: 1px solid #333; padding: 10px 15px; display: flex; justify-content: space-between; align-items: center; position: relative; z-index: 1000; }
.logo-text { font-weight: bold; color: #fff; font-size: 1.1em; text-transform: uppercase; letter-spacing: 1px; }
.link-login { background: #333; color: #fff; text-decoration: none; padding: 8px 12px; border-radius: 4px; font-size: 0.9em; border: 1px solid #555; display: inline-block; }
.user-info { color: #aaa; font-size: 0.9em; }
.link-logout { color: #ef5350; text-decoration: none; margin-left: 10px; font-weight: bold; font-size: 0.9em; }

/* =========================================
   4. THÈMES
   ========================================= */
.match-theme-box { background: #1e1e1e; border: 1px solid #444; padding: 25px; border-radius: 12px; text-align: center; margin-bottom: 40px; box-shadow: 0 4px 15px rgba(0,0,0,0.4); position: relative; }
.match-theme-box::before { content: "THÈME"; position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: #ffc107; color: #000; padding: 2px 10px; border-radius: 4px; font-size: 0.7em; font-weight: bold; letter-spacing: 1px; }
.match-theme-text { font-size: 1.8em; font-weight: bold; color: #fff; line-height: 1.3; }

/* =========================================
   5. GRILLE DES ÉQUIPES (LIVE)
   ========================================= */
.teams-grid { display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; align-items: stretch; }
.team-column { flex: 1; min-width: 280px; width: 100%; background: #1a1a1a; border-top: 5px solid var(--team-color); border-radius: 8px; padding: 15px; background: linear-gradient(to bottom, var(--team-bg) 0%, #1a1a1a 150px); box-shadow: 0 4px 6px rgba(0,0,0,0.2); min-width: 0; }
@media (max-width: 600px) { .teams-grid { flex-direction: column; } .team-column { width: 100%; min-width: 0; } }
.team-name { text-align: center; font-size: 1.6em; font-weight: bold; color: var(--team-color); margin-bottom: 25px; text-transform: uppercase; text-shadow: 0 2px 4px rgba(0,0,0,0.5); }

/* =========================================
   6. CARTES JOUEURS
   ========================================= */
.m-player-card { background: #2a2a2a; margin-bottom: 15px; padding: 15px; border-radius: 6px; position: relative; border-left: 3px solid #444; transition: transform 0.2s; }
.m-player-name { font-size: 1.3em; font-weight: bold; color: #eee; margin-bottom: 8px; display: flex; justify-content: space-between; align-items: center; }
.m-info-badge { background: #333; padding: 10px; border-radius: 6px; margin-top: 8px; font-size: 0.95em; display: flex; flex-direction: column; gap: 5px; line-height: 1.4; }
.m-secret { border-left: 4px solid #ff9800; background: rgba(255, 152, 0, 0.05); color: #ffcc80; }
.m-contrainte { border-left: 4px solid #03a9f4; background: rgba(3, 169, 244, 0.05); color: #81d4fa; }
.m-niveau { display: inline-block; background: #fff; color: #000; font-weight: bold; padding: 2px 8px; border-radius: 10px; font-size: 0.8em; }
.m-hidden-info { text-decoration: line-through; color: #777; font-size: 0.9em; }
.m-hidden-badge { background: #222; color: #555; border: 1px dashed #444; }

/* =========================================
   7. LISTE "QUI SAIT ?"
   ========================================= */
.who-list { margin-top: 6px; font-size: 0.8em; line-height: 1.4; background: rgba(0, 0, 0, 0.4); padding: 4px 8px; border-radius: 4px; display: inline-block; }
.who-player { margin-right: 8px; font-weight: bold; display: inline-block; }
.knows-yes { opacity: 1; }
.knows-no { text-decoration: line-through; opacity: 0.4; font-weight: normal; }

/* =========================================
   8. ÉCRAN D'ATTENTE & DIVERS
   ========================================= */
.match-waiting { text-align: center; margin-top: 5vh; }
.match-intro-grid { display: flex; flex-direction: column; gap: 20px; margin-top: 30px; width: 100%; }
.spinner { font-size: 3em; margin: 20px 0; animation: spin 2s infinite linear; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* =========================================
   9. BOUTON THÈME (NOUVEAU)
   ========================================= */
.btn-theme-action {
    display: block; /* Force le bloc */
    width: 100%;
    background: #ffc107;
    color: #000;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    border-radius: 8px;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
    transition: transform 0.1s;
}
.btn-theme-action:active { transform: scale(0.98); background: #ffb300; }