/* --- CONFIGURATION & VARIABLES --- */ :root { --table-green: radial-gradient(circle, #277d46 0%, #1a5e33 100%); --poker-border: #2c1b18; --gold: #d4af37; --dark-bg: #0a0a0a; --panel-bg: #151515; --white: #ffffff; --shadow: 0 10px 30px rgba(0,0,0,0.8); } /* --- STRUCTURE PRINCIPALE --- */ body { background-color: var(--dark-bg); color: var(--white); font-family: 'Segoe UI', sans-serif; margin: 0; height: 100vh; display: flex; overflow: hidden; } .game-container { display: flex; width: 100%; height: 100%; } /* --- TABLE DE JEU (GAUCHE) --- */ .table-container { flex: 1; /* Prend tout l'espace restant */ display: flex; justify-content: center; align-items: center; padding: 20px; background: radial-gradient(circle at center, #1a1a1a 0%, #050505 100%); } .poker-table { width: 800px; height: 400px; background: var(--table-green); border: 15px solid var(--poker-border); border-radius: 200px; position: relative; box-shadow: inset 0 0 50px rgba(0,0,0,0.7), 0 20px 40px rgba(0,0,0,0.8); } /* --- PANNEAU D'ACTION (DROITE) --- */ .action-panel { width: 300px; background: var(--panel-bg); border-left: 2px solid #222; padding: 30px 20px; display: flex; flex-direction: column; justify-content: center; box-shadow: -10px 0 30px rgba(0,0,0,0.5); z-index: 100; } .turn-info { text-align: center; margin-bottom: 30px; font-size: 1.2rem; border-bottom: 1px solid #333; padding-bottom: 20px; } .action-buttons { display: flex; flex-direction: column; /* Boutons empilés à droite */ gap: 15px; } /* --- BOUTONS --- */ .btn { width: 100%; padding: 16px; border-radius: 8px; border: none; font-weight: 800; cursor: pointer; text-transform: uppercase; transition: 0.2s; } .btn-fold { background: #2a2a2a; color: #777; } .btn-fold:hover { background: #333; color: #fff; } /* Suivre en Blanc */ .btn-call { background: #ffffff; color: #000; box-shadow: 0 4px 10px rgba(255,255,255,0.2); } .btn-call:hover { background: #eeeeee; transform: scale(1.02); } .btn-allin { background: #8b0000; color: white; } .btn-allin:hover { background: #b00; } .btn-back { text-align: center; text-decoration: none; color: #555; font-size: 0.9rem; margin-top: 20px; } /* Relance */ .raise-group { display: flex; border: 2px solid var(--gold); border-radius: 8px; overflow: hidden; } #raise-amount { flex: 1; background: #000; border: none; color: white; padding: 12px; text-align: center; font-size: 1.1rem; } .btn-validate { background: var(--gold); border: none; padding: 0 20px; font-weight: bold; cursor: pointer; } /* --- EFFETS JOUEURS COUCHÉS (BLUR / PIXEL) --- */ /* Effet de base : Flou */ .blur-effect, .All-in-Blur { filter: blur(4px) grayscale(0.8); opacity: 0.6; pointer-events: none; } /* Simulation de "1 chance sur 4" de pixeliser au lieu de flouter */ /* On cible arbitrairement certains IDs pour l'effet pixel */ .player-slot[data-id$="2"], .player-slot[data-id$="5"], .player-slot[data-id$="8"] { /* Si la classe blur est active sur ces IDs, on applique l'effet pixel */ image-rendering: pixelated; } .player-slot[data-id$="2"].blur-effect, .player-slot[data-id$="5"].blur-effect { filter: contrast(2) brightness(0.5) opacity(0.7); /* Effet "glitch" visuel */ } /* --- POSITIONNEMENT JOUEURS --- */ .player-info { background: #1e1e1e; border: 2px solid #333; border-radius: 12px; padding: 8px; text-align: center; min-width: 120px; } .player-info.active { border-color: var(--gold); box-shadow: 0 0 15px rgba(212, 175, 55, 0.4); } .slot-0 { top: -60px; left: 50%; transform: translateX(-50%); } .slot-1 { top: 10%; right: -110px; } .slot-2 { top: 50%; right: -130px; transform: translateY(-50%); } .slot-3 { bottom: 10%; right: -110px; } .slot-4 { bottom: -60px; left: 50%; transform: translateX(-50%); } .slot-5 { bottom: 10%; left: -110px; } .slot-6 { top: 50%; left: -130px; transform: translateY(-50%); } .slot-7 { top: 10%; left: -110px; } /* --- POT --- */ .pot-area { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; } .total-pot { font-size: 3rem; font-weight: 900; } .total-pot::before { content: 'POT'; font-size: 0.8rem; color: var(--gold); display: block; }