:root{--bg-primary: #0f1117;--bg-secondary: #1a1d24;--bg-tertiary: #252830;--surface: #2a2e37;--surface-hover: #32363f;--surface-active: #3a3f4a;--primary: #3b82f6;--primary-hover: #2563eb;--primary-light: #60a5fa;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #374151;--border-light: #4b5563;--success: #22c55e;--danger: #ef4444;--warning: #f59e0b;--conspirator-red: #dc2626;--conspirator-dark: #7f1d1d;--conspirator-border: #ef4444;--loyalist-blue: #2563eb;--loyalist-light: #3b82f6;--loyalist-border: #60a5fa;--gold: #d4af37;--bright-gold: #ffd700;--bronze: #cd7f32;--midnight-black: #0a0612;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.language-selector{position:fixed;top:15px;right:15px;z-index:9999}.language-selector select{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:8px 30px 8px 12px;font-size:.9rem;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.language-selector select:hover{border-color:var(--primary);background-color:var(--surface)}.language-selector select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3b82f64d}.language-selector select option{background:var(--bg-secondary);color:var(--text-primary);padding:8px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Cinzel,Georgia,serif;color:var(--text-primary);min-height:100vh;overflow-x:hidden;position:relative;background:radial-gradient(ellipse at 20% 30%,rgba(220,38,38,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(37,99,235,.15) 0%,transparent 50%),var(--bg-primary)}.screen{display:none;min-height:100vh;padding:20px;position:relative;z-index:10}.screen.active{display:block;animation:fadeInScreen .3s ease}@keyframes fadeInScreen{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.container{max-width:1400px;margin:0 auto;padding:40px 20px;position:relative}.game-container{max-width:1600px;margin:0 auto;padding:12px 16px;position:relative}.title{font-size:clamp(2.5rem,6vw,5rem);text-align:center;color:var(--gold);margin-bottom:15px;font-weight:700;letter-spacing:4px;text-transform:uppercase;text-shadow:0 2px 10px rgba(212,175,55,.3);animation:titleFloat 4s ease-in-out infinite}@keyframes titleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.subtitle{text-align:center;font-size:clamp(1rem,2vw,1.5rem);color:var(--text-secondary);margin-bottom:40px;font-style:italic;font-weight:300;letter-spacing:2px}.logo-container{text-align:center;margin-bottom:40px;position:relative}.logo-container img{max-width:350px;filter:drop-shadow(0 8px 20px rgba(0,0,0,.5));transition:transform var(--transition-base)}.logo-container img:hover{transform:scale(1.02)}.auth-layout{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.auth-content{width:100%;max-width:450px}.auth-content .title{text-align:left;margin-bottom:10px}.auth-content .subtitle{text-align:left;margin-bottom:30px}.waiting-layout{display:flex;flex-direction:column;min-height:100vh;padding:30px;max-width:1400px;margin:0 auto;width:100%}.waiting-content{width:100%;max-width:1200px}.waiting-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.waiting-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.waiting-header h2{font-size:2rem;color:var(--text-primary);margin:0}.room-code-display{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:8px 16px;font-size:1.2rem;font-weight:700;color:var(--gold);letter-spacing:2px}.waiting-content{display:grid;grid-template-columns:1fr 320px;gap:20px;margin-bottom:20px}.waiting-players{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border)}.waiting-players h3{font-size:1.1rem;margin-bottom:15px;color:var(--text-primary)}.players-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.waiting-sidebar{display:flex;flex-direction:column;gap:16px}.waiting-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.activity-log{flex:1;max-height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:4px}.waiting-left{display:flex;flex-direction:column;gap:20px}.waiting-activity{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border);display:flex;flex-direction:column}.waiting-activity h2{font-size:1.1rem;margin-bottom:15px;color:var(--text-primary)}#activity-log{flex:1;max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.activity-message{padding:10px 15px;border-radius:var(--radius-md);font-size:.9rem;animation:slideInActivity .3s ease}.activity-message.join{background:#2563eb26;border-left:3px solid var(--primary);color:var(--primary-light)}.activity-message.leave{background:#ef444426;border-left:3px solid var(--danger);color:#f87171}.activity-message.info{background:#d4af3726;border-left:3px solid var(--gold);color:var(--gold)}.activity-message .activity-time{font-size:.75rem;color:var(--text-muted);margin-left:10px}@keyframes slideInActivity{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.lobby-layout{display:flex;justify-content:center;min-height:100vh;padding:30px 20px}.lobby-content{width:100%;max-width:1000px}.lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:15px}.lobby-header .title{margin-bottom:0;font-size:2.5rem}.form-card,.game-over-card,.room-info,.players-list,.player-order,.game-players,.game-action,.game-chat{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:35px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.room-info{display:flex;align-items:center;justify-content:center;gap:15px;padding:20px 30px;margin-bottom:20px}.room-info span{font-size:1.1rem}.room-info strong{color:var(--gold);font-size:1.3rem;letter-spacing:2px}.room-info .btn-icon{padding:8px 12px;font-size:1.1rem;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.room-info .btn-icon:hover{background:var(--surface-hover);border-color:var(--primary)}.lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:20px}.lobby-column{display:flex;flex-direction:column;gap:20px}.lobby-column .form-card{margin:0;height:fit-content}.lobby-column .form-card h2{text-align:center;margin-bottom:20px;font-size:1.3rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.card-header h2{margin:0!important;font-size:1.2rem!important}.btn-icon-small{background:var(--surface);color:var(--primary-light);border:1px solid var(--border);padding:8px 12px;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;transition:all var(--transition-base)}.btn-icon-small:hover{background:var(--surface-hover);border-color:var(--primary)}.btn-full{width:100%}.private-password-field{display:none;margin:15px 0}.games-list{max-height:250px;overflow-y:auto;padding-right:5px}.games-list-empty{text-align:center;color:var(--text-muted);padding:20px;font-style:italic}.lobby-rules-desktop{margin-top:25px}.lobby-rules-mobile{display:none}.game-settings{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:25px;margin:20px 0;border:1px solid var(--border)}.game-settings h3{color:var(--primary-light);margin-bottom:20px;font-size:1.2rem;text-transform:uppercase;letter-spacing:1px}.setting-item{display:flex;align-items:center;gap:12px;margin-bottom:10px;cursor:pointer;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);transition:background var(--transition-fast),border-color var(--transition-fast)}.setting-item:hover{background:var(--surface-hover);border-color:var(--primary)}.setting-item input[type=checkbox]{width:18px;height:18px;min-width:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.setting-item span{font-size:.9rem;color:var(--text-primary);line-height:1.4}.toggle-label{display:flex;align-items:center;cursor:pointer;gap:15px}.toggle-label input[type=checkbox]{display:none}.toggle-switch{width:50px;height:26px;background:var(--surface);border-radius:13px;position:relative;transition:all var(--transition-base);flex-shrink:0}.toggle-switch:after{content:"";position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;top:2px;left:2px;transition:all var(--transition-base)}.toggle-label input[type=checkbox]:checked+.toggle-switch{background:var(--primary)}.toggle-label input[type=checkbox]:checked+.toggle-switch:after{left:26px}.setting-text{color:var(--text-primary);font-size:1rem}.setting-hint{color:var(--text-muted);font-size:.85rem;margin-top:8px;margin-left:65px;font-style:italic}.auth-tabs{display:flex;gap:10px;margin-bottom:25px}.auth-tab{flex:1;padding:15px 20px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-secondary);font-family:Cinzel,serif;font-size:1rem;font-weight:700;cursor:pointer;transition:all var(--transition-base);text-transform:uppercase;letter-spacing:1px}.auth-tab:hover{border-color:var(--primary);background:var(--surface-hover)}.auth-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.auth-form{display:none}.auth-form.active{display:block}.auth-error{margin-top:15px;padding:15px;border-radius:var(--radius-md);background:#ef44441a;border:1px solid var(--danger);color:var(--danger);font-weight:600;text-align:center;display:none}.auth-error.visible{display:block;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.user-info{text-align:center;margin-bottom:30px;padding:20px;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:15px}.user-info span{color:var(--text-secondary);font-size:1.1rem}.user-info strong{color:var(--primary-light);font-size:1.3rem;text-transform:uppercase;letter-spacing:2px}input[type=text],input[type=password]{width:100%;padding:18px 24px;margin-bottom:20px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-primary);font-size:1.1rem;font-family:Cinzel,serif;transition:all var(--transition-base)}input[type=text]:focus,input[type=password]:focus{outline:none;border-color:var(--primary);background:var(--surface-hover)}input[type=text]::placeholder,input[type=password]::placeholder{color:var(--text-muted);font-style:italic}.password-input-wrapper{position:relative;width:100%;margin-bottom:20px}.password-input-wrapper input{margin-bottom:0;padding-right:50px}.btn-toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.2rem;opacity:.6;transition:opacity var(--transition-fast);padding:5px}.btn-toggle-password:hover,.btn-toggle-password.active{opacity:1}.btn{padding:18px 40px;border:none;border-radius:var(--radius-lg);font-size:1.1rem;font-weight:700;cursor:pointer;width:100%;margin-bottom:15px;font-family:Cinzel,serif;text-transform:uppercase;letter-spacing:2px;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn:hover{transform:translateY(-2px)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-hover);border-color:var(--primary)}.btn-back{position:fixed;top:20px;right:20px;padding:10px 20px;font-size:.9rem;width:auto;display:inline-block;z-index:100}@media (max-width: 768px){.btn-back{top:10px;right:10px;padding:8px 12px;font-size:.8rem}}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626;box-shadow:0 4px 15px #ef444466}.btn-warning{background:var(--warning);color:var(--bg-primary);font-weight:700}.btn-warning:hover{background:#d97706;box-shadow:0 4px 15px #f59e0b66}.join-game-form{display:flex;flex-direction:column;gap:20px}.input-group{display:flex;flex-direction:column;gap:8px}.input-label{font-size:.9rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:1px;padding-left:5px}.input-with-icon{position:relative}#room-code{font-size:1.3rem;font-weight:900;letter-spacing:3px;text-align:center;text-transform:uppercase;border:2px solid var(--border)}#room-code:focus{border-color:var(--primary);letter-spacing:5px}#room-code::placeholder{font-size:1rem;letter-spacing:2px}#join-password{font-size:1.1rem}@media (min-width: 768px){.join-game-form-horizontal{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:end}.join-game-form-horizontal .input-group{margin-bottom:0}.join-game-form-horizontal button{grid-column:1 / -1}}.create-game-options{display:flex;flex-direction:column;gap:20px}.game-type-selector{display:flex;gap:15px;margin-bottom:20px}.game-type-btn{flex:1;padding:15px 25px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-secondary);font-family:Cinzel,serif;font-size:1rem;font-weight:700;cursor:pointer;transition:all var(--transition-base);text-transform:uppercase;letter-spacing:1px;position:relative}.btn:before,.vote-btn:before,.game-type-btn:before{display:none}.game-type-btn:hover{border-color:var(--primary);background:var(--surface-hover)}.game-type-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.game-type-btn.active:after{content:"✓";position:absolute;top:8px;right:8px;font-size:1.2rem}#private-password-field{animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#private-password-field input{width:100%;margin-bottom:0}.progression-boards-container{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0}.progression-board{position:relative;border-radius:var(--radius-lg);overflow:hidden;padding:12px;box-shadow:var(--shadow-md);border:2px solid var(--border)}.board-header{text-align:center;font-size:1rem;font-weight:900;letter-spacing:2px;margin-bottom:10px;text-transform:uppercase}.progression-board.conspirators{background:linear-gradient(135deg,#dc262640,#7f1d1d66);border-color:var(--conspirator-border)}.progression-board.conspirators .board-header{color:var(--conspirator-border)}.progression-board.loyalists{background:linear-gradient(135deg,#2563eb40,#1e40af66);border-color:var(--loyalist-border)}.progression-board.loyalists .board-header{color:var(--loyalist-border)}.progress-markers{display:flex;justify-content:space-evenly;align-items:flex-start;gap:8px}.progress-marker{display:flex;flex-direction:column;align-items:center;gap:4px}.marker-emoji{width:48px;height:48px;border-radius:var(--radius-md);background:var(--bg-primary);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.5rem;opacity:.3;filter:grayscale(100%);transition:all var(--transition-base)}.power-label{font-size:.9rem;opacity:.6;height:20px}.progress-marker.active.conspirators-marker .marker-emoji{background:linear-gradient(135deg,var(--conspirator-red) 0%,var(--conspirator-dark) 100%);border-color:var(--conspirator-border);box-shadow:0 0 12px #dc262680;opacity:1;filter:grayscale(0%);transform:scale(1.1)}.progress-marker.active.loyalists-marker .marker-emoji{background:linear-gradient(135deg,var(--loyalist-blue) 0%,#1e40af 100%);border-color:var(--loyalist-border);box-shadow:0 0 12px #3b82f680;opacity:1;filter:grayscale(0%);transform:scale(1.1)}.player-order{margin:30px 0}.player-order h3{color:var(--primary-light);text-align:center;margin-bottom:20px;font-size:1.5rem;text-transform:uppercase;letter-spacing:3px}.players-row{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.player-token{position:relative;padding:15px 30px;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);transition:all var(--transition-base);min-width:140px;text-align:center;font-weight:600;box-shadow:var(--shadow-md)}.player-token.current-king{background:var(--primary);border-color:var(--primary-light);color:#fff;font-weight:900;transform:scale(1.15);box-shadow:0 0 20px #3b82f680}.player-token.current-king:before{content:"👑";position:absolute;top:-25px;left:50%;transform:translate(-50%);font-size:2.5rem}.player-token.current-chancellor{border-color:var(--success);background:#22c55e26}.player-token.eliminated{opacity:.3;filter:grayscale(100%);transform:scale(.9)}.game-header{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-bottom:12px}.score-board{display:flex;flex-direction:column;gap:8px;align-items:center}.deck-info{display:flex;gap:20px;justify-content:center}.deck-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 10px;background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);min-width:60px}.deck-item .deck-card-img{width:30px;height:42px;object-fit:cover;border-radius:3px;box-shadow:var(--shadow-sm)}.deck-item .discard-placeholder{width:30px;height:42px;border-radius:3px;background:var(--surface-hover);border:2px dashed var(--border)}.deck-item .deck-count{font-size:1.1rem;font-weight:900;color:var(--primary-light)}.deck-item .deck-label{font-size:.6rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.scores-container{display:flex;gap:15px}.score-item{padding:10px 20px;border-radius:var(--radius-lg);text-align:center;min-width:130px;position:relative;transition:transform var(--transition-base)}.score-item:hover{transform:translateY(-3px)}.score-item.loyalists{background:linear-gradient(135deg,var(--loyalist-blue) 0%,#1e40af 100%);border:1px solid var(--loyalist-border)}.score-item.conspirators{background:linear-gradient(135deg,var(--conspirator-red) 0%,var(--conspirator-dark) 100%);border:1px solid var(--conspirator-border)}.score-item .label{display:block;font-size:.8rem;opacity:.95;margin-bottom:4px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.score-item .count{font-size:2rem;font-weight:900;color:#fff}.phase-indicator{background:var(--surface);padding:12px 30px;border-radius:var(--radius-lg);text-align:center;font-weight:900;color:var(--primary-light);font-size:1.1rem;letter-spacing:2px;text-transform:uppercase;border:1px solid var(--border)}.header-right{display:flex;flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.player-info-display{background:var(--primary);padding:6px 14px;border-radius:var(--radius-md)}.player-info-display .player-name-label{font-size:.95rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:1px}.player-role-display{background:var(--surface);padding:6px 12px;border-radius:var(--radius-md);border:1px solid var(--border);display:flex;align-items:center;gap:8px}.player-role-display .role-label{font-size:.75rem;color:var(--text-secondary);font-weight:600}.player-role-display .role-value{font-size:.85rem;font-weight:900;padding:4px 10px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:1px}.player-role-display.loyalist .role-value{background:var(--loyalist-blue);color:#fff}.player-role-display.conspirator .role-value,.player-role-display.usurper .role-value{background:var(--conspirator-red);color:#fff}.deadlock-counter{text-align:center;padding:6px 12px;font-size:.85rem;font-weight:700;background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border)}.connection-quality{padding:4px 8px;font-size:.9rem;cursor:help}.connection-quality .quality-icon{transition:all var(--transition-base)}.game-main{display:grid;grid-template-columns:280px 1fr 300px;gap:16px;min-height:400px}.game-players{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-lg);border:1px solid var(--border);max-height:calc(100vh - 340px);overflow-y:auto}.game-players h3,.game-chat h3{color:var(--primary-light);margin-bottom:12px;font-size:1rem;text-transform:uppercase;letter-spacing:1px;text-align:center}.section-toggle{display:none}.section-content{display:block}.progression-boards-wrapper .section-content{background:transparent;border:none;padding:0}#game-players-list{display:flex;flex-direction:column;gap:8px}.game-player-item{background:var(--surface);padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);transition:all var(--transition-base);position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}.game-player-item:hover{border-color:var(--primary);transform:translate(3px)}.game-player-item .player-order-number{width:28px;height:28px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.9rem;flex-shrink:0}.game-player-item.eliminated .player-order-number{background:var(--surface-hover);color:var(--text-muted)}.game-player-item.is-host{background:#3b82f61a}.game-player-item .player-name{font-weight:700;font-size:1.1rem;margin-bottom:8px;color:var(--text-primary);flex:1}.game-player-item .player-badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-md);font-size:.85rem;font-weight:600;margin-right:5px;margin-top:5px}.game-player-item.current-king{border-color:var(--gold);background:#d4af3726}.game-player-item.current-king .player-name{color:var(--gold)}.game-player-item.current-chancellor{border-color:var(--success);background:#22c55e1a}.game-player-item.eliminated{position:relative;opacity:.7;background:#ef44441a!important;border-color:var(--danger)!important}.game-player-item.eliminated .player-name{text-decoration:line-through;color:var(--danger)!important}.game-player-item.eliminated:after{content:"💀";position:absolute;top:8px;right:12px;font-size:1.2rem}.game-player-item.role-loyalist{background:#2563eb26;border-color:var(--loyalist-blue)}.game-player-item.role-conspirator{background:#dc262626;border-color:var(--conspirator-red)}.game-player-item.role-usurper{background:#dc262633;border-color:var(--conspirator-red)}.known-role{display:block;font-size:.8rem;color:var(--text-muted);margin-top:3px;font-style:italic}.game-player-item.role-loyalist .known-role{color:var(--loyalist-light)}.game-player-item.role-conspirator .known-role,.game-player-item.role-usurper .known-role{color:var(--conspirator-border)}.player-vote{display:inline-block;padding:4px 10px;border-radius:var(--radius-md);font-size:.85rem;font-weight:700;margin-left:10px;animation:voteAppear .2s ease-out}.player-vote.vote-yes{background:var(--success);color:#fff}.player-vote.vote-no{background:var(--danger);color:#fff}@keyframes voteAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.vote-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-md);font-size:.8rem;font-weight:600;margin-left:10px}.vote-status.voted{background:#22c55e33;color:var(--success);border:1px solid rgba(34,197,94,.4)}.vote-status.thinking{background:#f59e0b33;color:var(--warning);border:1px solid rgba(245,158,11,.4)}.loading-spinner{width:12px;height:12px;border:2px solid rgba(245,158,11,.3);border-top-color:var(--warning);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.player-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin:25px 0}.selectable-player{background:var(--surface);padding:25px 15px;border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition-base);border:2px solid var(--border)}.selectable-player:hover{background:var(--surface-hover);border-color:var(--primary);transform:translateY(-3px)}.selectable-player.selected{border-color:var(--primary);background:var(--primary);color:#fff;transform:translateY(-5px)}.selectable-player .player-icon{font-size:3rem;margin-bottom:10px}.selectable-player .player-name-selector{font-weight:700;font-size:1.1rem;letter-spacing:1px}.action-content{background:var(--surface);padding:20px;border-radius:var(--radius-lg);border:1px solid var(--border)}.action-title{text-align:center;color:var(--primary-light);font-size:1.4rem;margin-bottom:16px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.game-action{padding:16px;max-height:calc(100vh - 340px);overflow-y:auto}.vote-buttons{display:flex;gap:40px;justify-content:center;margin:50px 0}.vote-btn{padding:40px 60px;font-size:1.8rem;border-radius:var(--radius-xl);border:none;cursor:pointer;transition:all var(--transition-base);font-weight:900;min-width:250px;box-shadow:var(--shadow-lg);font-family:Cinzel,serif;text-transform:uppercase;letter-spacing:3px}.vote-btn.yes{background:var(--success);color:#fff}.vote-btn.yes:hover{background:#16a34a;transform:translateY(-5px) scale(1.02);box-shadow:0 10px 30px #22c55e80}.vote-btn.no{background:var(--danger);color:#fff}.vote-btn.no:hover{background:#dc2626;transform:translateY(-5px) scale(1.02);box-shadow:0 10px 30px #ef444480}.decree-cards{display:flex;gap:25px;justify-content:center;margin:40px 0;flex-wrap:wrap}.decree-card{width:200px;height:300px;border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-base);position:relative;box-shadow:var(--shadow-lg);border:3px solid var(--border)}.decree-card-inner{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:calc(var(--radius-xl) - 3px);padding:20px}.decree-card.plot .decree-card-inner{background:linear-gradient(135deg,var(--conspirator-red) 0%,var(--conspirator-dark) 100%)}.decree-card.plot{border-color:var(--conspirator-border)}.decree-card.edit .decree-card-inner{background:linear-gradient(135deg,var(--loyalist-blue) 0%,#1e40af 100%)}.decree-card.edit{border-color:var(--loyalist-border)}.decree-card .card-icon{font-size:6rem;margin-bottom:20px}.decree-card .card-label{font-size:1.4rem;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:#fff}.decree-card:hover{transform:translateY(-10px) scale(1.02)}.decree-card.plot:hover{box-shadow:0 15px 40px #dc262666}.decree-card.edit:hover{box-shadow:0 15px 40px #3b82f666}.decree-card.selected{transform:translateY(-15px) scale(1.08);border-width:4px}.decree-card.plot.selected{border-color:var(--conspirator-border);box-shadow:0 20px 50px #dc262699}.decree-card.edit.selected{border-color:var(--loyalist-border);box-shadow:0 20px 50px #3b82f699}.game-chat{display:flex;flex-direction:column;padding:16px;max-height:calc(100vh - 340px)}#chat-messages{flex:1;background:var(--surface);border-radius:var(--radius-md);padding:10px;min-height:200px;max-height:280px;overflow-y:auto;margin-bottom:8px;border:1px solid var(--border)}.chat-message{margin-bottom:10px;padding:10px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--primary);animation:slideInMessage .2s ease}@keyframes slideInMessage{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.chat-message .chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.chat-message .chat-author{color:var(--primary-light);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.chat-message .chat-time{color:var(--text-muted);font-size:.8rem;font-weight:400}.chat-message .chat-text{color:var(--text-primary);line-height:1.6;font-size:.95rem}.chat-message.system-message{background:var(--surface);border-left-color:var(--gold);font-style:italic}.chat-message.system-message.conspirator{border-left-color:var(--conspirator-red);background:#dc26261a}.chat-message.system-message.loyalist{border-left-color:var(--loyalist-blue);background:#2563eb1a}.chat-message.system-message .chat-author.system{color:var(--gold)}#share-cards-container{margin-bottom:12px}.share-cards-section{background:var(--surface);border-radius:var(--radius-md);padding:12px;border:1px solid var(--border)}.share-cards-label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:10px;font-weight:600}.share-cards-buttons{display:flex;gap:10px;flex-wrap:wrap}.share-card-btn{padding:8px 16px;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:1.1rem;cursor:pointer;transition:all var(--transition-base);font-family:Cinzel,serif;letter-spacing:1px}.share-card-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.share-cards-open-btn{width:100%;padding:12px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:1rem;font-weight:700;cursor:pointer;transition:all var(--transition-base);font-family:Cinzel,serif;letter-spacing:1px}.share-cards-open-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.share-cards-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .2s ease}.share-cards-popup-overlay.closing{animation:fadeOut .2s ease forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.share-cards-popup{background:var(--bg-secondary);border:2px solid var(--primary);border-radius:var(--radius-xl);padding:30px;max-width:450px;width:90%;box-shadow:var(--shadow-lg);animation:popupSlideIn .25s ease}@keyframes popupSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.share-cards-popup-header{text-align:center;margin-bottom:20px}.share-cards-popup-header h3{color:var(--primary-light);font-size:1.5rem;margin:0 0 8px;font-family:Cinzel Decorative,cursive}.share-cards-popup-subtitle{color:var(--text-muted);font-size:.9rem}.share-cards-popup-warning{background:#ef44441a;border:1px solid rgba(239,68,68,.4);border-radius:var(--radius-md);padding:12px 15px;margin-bottom:20px;text-align:center;color:var(--danger);font-size:.9rem;font-weight:600}.share-cards-popup-options{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.share-cards-option{display:flex;align-items:center;gap:15px;padding:15px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);font-family:Cinzel,serif}.share-cards-option:hover{background:var(--surface-hover);border-color:var(--primary);transform:translate(3px)}.share-option-icons{font-size:1.8rem;min-width:80px;text-align:center}.share-option-label{color:var(--text-primary);font-size:1rem;font-weight:600}.share-cards-popup-footer{display:flex;justify-content:center}.share-cards-cancel-btn{padding:12px 30px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);font-family:Cinzel,serif}.share-cards-cancel-btn:hover{border-color:var(--danger);color:var(--danger);background:#ef44441a}.chat-input{display:flex;gap:8px}.chat-input input{flex:1;margin-bottom:0;padding:10px 12px;font-size:.9rem}.chat-input button{padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:700;font-family:Cinzel,serif;font-size:.85rem;transition:all var(--transition-base)}.chat-input button:hover{background:var(--primary-hover)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb{background:var(--surface-hover);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}@media (max-width: 1200px){.game-main{grid-template-columns:1fr 1fr;gap:20px}.game-action{grid-column:1 / -1;order:-1}.progression-boards-container{grid-template-columns:1fr 1fr;gap:15px}.game-header{grid-template-columns:1fr;gap:15px;text-align:center}.score-board{justify-content:center}.header-right{justify-content:center;flex-wrap:wrap}.progress-marker{width:70px;height:90px}.marker-card{width:50px}}.power-cards-mobile{display:none}@media (max-width: 900px){.lobby-grid{grid-template-columns:1fr;gap:20px}.lobby-rules-desktop{display:none}.lobby-rules-mobile{display:block}}@media (max-width: 768px){.screen{padding:10px}.container{padding:20px 10px}.auth-layout{display:block}.auth-content{max-width:100%;padding:20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.auth-content .title,.auth-content .subtitle{text-align:center}.waiting-layout{padding:15px}.waiting-header{flex-direction:column;align-items:flex-start;gap:10px}.waiting-header h2{font-size:1.6rem}.waiting-content{grid-template-columns:1fr;gap:15px}.waiting-sidebar{order:-1}.waiting-actions{flex-direction:column}.activity-log{max-height:150px}.waiting-grid{grid-template-columns:1fr;gap:15px}.waiting-activity{order:-1}#activity-log{max-height:150px}.lobby-layout{display:block}.lobby-content{max-width:100%;padding:15px}.lobby-header{flex-direction:column;text-align:center}.lobby-header .title{font-size:1.8rem}.title{font-size:1.8rem;letter-spacing:2px}.subtitle{font-size:.9rem}.logo-container img{max-width:120px}.form-card,.game-over-card,.room-info,.players-list,.player-order,.game-players,.game-action,.game-chat{padding:20px 15px;border-radius:var(--radius-lg)}.lobby-column .form-card h2{font-size:1.1rem}.card-header h2{font-size:1rem!important}.players-row{flex-direction:column;align-items:center}.progress-marker{width:50px;height:65px;font-size:1rem}.marker-card{width:35px}.power-icon{font-size:.6rem}.game-main{grid-template-columns:1fr;gap:10px;min-height:auto}.game-action{order:-1}.game-chat{padding:0;background:transparent;border:none;box-shadow:none}.game-chat.collapsed .section-content,.progression-boards-wrapper.collapsed .section-content{display:none}.section-toggle{display:flex;width:100%;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--primary-light);font-family:Cinzel,serif;font-size:.95rem;font-weight:700;cursor:pointer;align-items:center;justify-content:space-between;margin-bottom:8px}.section-toggle:hover{background:var(--surface-hover)}.section-toggle .toggle-icon{transition:transform var(--transition-base)}.collapsed .section-toggle .toggle-icon{transform:rotate(-90deg)}.section-content{background:var(--bg-secondary);border-radius:var(--radius-md);padding:12px;border:1px solid var(--border)}.progression-boards-wrapper{margin-bottom:10px}.progression-boards-wrapper .section-content{padding:8px}.game-players{padding:10px;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border)}.game-players h3{font-size:.9rem;margin-bottom:8px;color:var(--primary-light)}.game-chat h3{display:none}#game-players-list{max-height:150px;overflow-y:auto}#chat-messages{height:180px;min-height:180px}.game-header{padding:8px;gap:8px;grid-template-columns:1fr}.score-board{flex-direction:row;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}.deck-info{display:none}.scores-container{flex-direction:row;justify-content:center;gap:10px}.score-item{padding:6px 12px;font-size:.8rem;min-width:100px}.score-item .label{font-size:.65rem;margin-bottom:2px}.score-item .count{font-size:1.4rem}.phase-indicator{font-size:.85rem;padding:8px 12px;order:-1}.header-right{flex-direction:row;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap}.player-info-display{padding:4px 10px}.player-info-display .player-name-label{font-size:.8rem}.player-role-display{padding:4px 8px}.player-role-display .role-label{display:none}.player-role-display .role-value{font-size:.75rem;padding:3px 8px}.deadlock-counter{font-size:.75rem;padding:4px 8px}.btn-icon-settings{width:32px;height:32px;font-size:1rem}.progression-boards-container{grid-template-columns:1fr;gap:8px;margin:6px 0}.progression-board{padding:8px 10px}.board-header{font-size:.85rem;margin-bottom:6px}.progress-markers{gap:4px}.progress-marker{flex-direction:row;gap:2px}.marker-emoji{width:32px;height:32px;font-size:1rem}.power-label{font-size:.7rem;height:auto;width:16px}.user-info{flex-direction:column;gap:10px;text-align:center;padding:15px}.btn{padding:12px 20px;font-size:.9rem}.btn-icon{padding:10px 14px;font-size:1.2rem}.game-type-selector{flex-direction:column;gap:10px}.game-type-btn{width:100%;padding:12px}.vote-buttons{flex-direction:column;gap:15px;margin:20px 0}.vote-btn{padding:20px 40px;font-size:1.2rem;min-width:180px}.auth-tabs{flex-direction:column;gap:10px}.auth-tab{width:100%}.games-list{max-height:200px}.game-item{flex-direction:column;gap:12px;padding:15px}.game-actions{width:100%;flex-direction:column}.game-actions .btn{width:100%}#chat-messages{height:300px;padding:15px}.chat-input{flex-direction:column;gap:10px}.chat-input input{width:100%}.chat-input button{width:100%;padding:12px}.share-cards-popup{padding:20px;max-width:95%}.share-cards-popup-header h3{font-size:1.2rem}.share-option-icons{font-size:1.5rem;min-width:60px}.share-option-label{font-size:.9rem}.rules-content{padding:20px 15px}.rules-section{padding:15px 12px;margin-bottom:25px}.rules-section h2{font-size:1.2rem;margin-bottom:15px}.rules-section h3{font-size:1rem}.rules-section p{font-size:.9rem;line-height:1.6}.rules-list,.rules-list-numbered{padding-left:20px}.rules-list li,.rules-list-numbered li{font-size:.9rem}.rules-highlight{padding:12px 10px;font-size:.85rem}.rules-table-container{overflow-x:auto;margin:15px -15px;padding:0 15px}.rules-table{font-size:.8rem;margin:15px 0;min-width:100%}.rules-table th,.rules-table td{padding:8px 6px;white-space:nowrap}.rules-table th{font-size:.7rem}.power-table{display:none}.power-cards-mobile{display:flex;flex-direction:column;gap:10px}.power-card-mobile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px;display:flex;justify-content:space-between;align-items:center}.power-card-mobile .power-number{background:#3b82f633;color:var(--primary-light);font-weight:700;padding:5px 10px;border-radius:5px;font-size:.85rem}.power-card-mobile .power-name{flex:1;text-align:right;font-size:.9rem;color:var(--text-primary)}}@media (max-width: 375px){.title{font-size:1.5rem;letter-spacing:1px}.form-card,.game-over-card,.room-info,.players-list{padding:15px 12px}.lobby-column .form-card h2{font-size:1rem}.btn{padding:10px 16px;font-size:.85rem}input{padding:12px;font-size:.9rem}#chat-messages{height:250px}.chat-message{padding:10px}.chat-message .chat-author,.chat-message .chat-text{font-size:.85rem}}.confirm-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.confirm-popup{background:var(--bg-secondary);border:2px solid var(--primary);border-radius:var(--radius-xl);padding:40px;max-width:450px;width:90%;text-align:center;box-shadow:var(--shadow-lg);animation:popupSlideIn .25s ease}.confirm-popup-icon{font-size:4rem;margin-bottom:20px}.confirm-popup-title{font-family:Cinzel,serif;font-size:1.6rem;font-weight:700;color:var(--primary-light);margin-bottom:15px;text-transform:uppercase;letter-spacing:2px}.confirm-popup-message{font-size:1.1rem;color:var(--text-primary);margin-bottom:30px;line-height:1.6}.confirm-popup-buttons{display:flex;gap:15px;justify-content:center}.confirm-popup-buttons .btn{min-width:130px;padding:15px 25px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.confirm-popup-buttons .btn-secondary{background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.confirm-popup-buttons .btn-secondary:hover{background:var(--surface-hover)}.confirm-popup-buttons .btn-danger{background:var(--danger);color:#fff}.confirm-popup-buttons .btn-danger:hover{background:#dc2626}.confirm-popup-buttons .btn-primary{background:var(--primary);color:#fff}.confirm-popup-buttons .btn-primary:hover{background:var(--primary-hover)}#players-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px;padding:10px 0}.player-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:15px;text-align:center;transition:all var(--transition-base)}.player-card:hover{border-color:var(--primary);transform:translateY(-2px)}.player-card.host{border-color:var(--primary);box-shadow:0 0 10px #3b82f64d}.player-card.self{background:#3b82f61a}.player-card-icon{font-size:2.5rem;margin-bottom:8px}.player-card-name{font-family:Cinzel,serif;font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:12px;word-break:break-word}.player-card.host .player-card-name{color:var(--primary-light)}.player-card-actions{display:flex;gap:8px;justify-content:center}.btn-kick,.btn-ban{flex:1;padding:6px 8px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:1px solid}.btn-kick{background:#f59e0b33;border-color:#f59e0b80;color:var(--warning)}.btn-kick:hover{background:#f59e0b4d;border-color:var(--warning)}.btn-ban{background:#ef444433;border-color:#ef444480;color:var(--danger)}.btn-ban:hover{background:#ef44444d;border-color:var(--danger)}.divider{text-align:center;margin:25px 0;color:var(--text-muted);font-style:italic;opacity:.7;font-size:1.1rem}.btn-icon{background:var(--surface);color:var(--primary-light);border:1px solid var(--border);padding:12px 18px;border-radius:var(--radius-lg);cursor:pointer;font-size:1.5rem;transition:all var(--transition-base)}.btn-icon:hover{background:var(--surface-hover);border-color:var(--primary)}.game-player-item.eliminated{opacity:.6;filter:none;background:#ef44441a;border-color:var(--danger)}.game-player-item.eliminated .player-name{text-decoration:line-through;color:var(--danger)}.game-player-item.eliminated:after{content:"💀";position:absolute;top:5px;right:10px;font-size:1.2rem}.final-roles-container{margin:30px 0}.final-roles-container h3{color:var(--primary-light);text-align:center;margin-bottom:20px;font-size:1.3rem;text-transform:uppercase;letter-spacing:2px}.final-roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.final-role-card{padding:20px 15px;border-radius:var(--radius-lg);text-align:center;border:2px solid;transition:transform var(--transition-base)}.final-role-card:hover{transform:scale(1.03)}.final-role-card.loyalists{background:#2563eb33;border-color:var(--loyalist-blue)}.final-role-card.conspirators{background:#dc262633;border-color:var(--conspirator-red)}.final-role-card.dead{opacity:.6}.final-role-name{font-weight:700;font-size:1.1rem;margin-bottom:8px;color:var(--text-primary)}.final-role-card.dead .final-role-name{text-decoration:line-through;color:var(--text-muted)}.final-role-type{font-size:.95rem;color:var(--primary-light)}.final-role-dead{margin-top:8px;font-size:.85rem;color:var(--danger)}.btn-small{padding:8px 16px;font-size:.9rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 1.5s ease-in-out infinite}.status-badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-lg);font-size:.75rem;font-weight:700;margin-left:8px}.status-badge.public{background:#22c55e33;color:var(--success)}.status-badge.private{background:#f59e0b33;color:var(--warning)}.status-badge.in-progress{background:#3b82f633;color:var(--primary)}.status-badge.paused{background:#ef444433;color:var(--danger)}.form-card h2{color:var(--primary-light);font-family:Cinzel,serif}@media (max-width: 768px){.game-item{flex-direction:column;gap:15px}.game-actions,.game-actions .btn{width:100%}.game-type-selector{flex-direction:column}.game-details{flex-direction:column;gap:8px}}.empty-state{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-state-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state-text{font-size:1.1rem;margin-bottom:10px}.empty-state-hint{font-size:.9rem;color:var(--text-muted)}.game-item{position:relative;overflow:hidden}.game-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.05),transparent);transition:left .5s ease}.game-item:hover:before{left:100%}.activity-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.activity-indicator.active{background:var(--success);box-shadow:0 0 8px var(--success)}.activity-indicator.inactive{background:var(--text-muted)}.rules-content{padding:50px 40px}.rules-section{margin-bottom:50px;padding:25px;background:var(--surface);border-radius:var(--radius-lg);border-left:3px solid var(--primary)}.rules-section h2{margin-bottom:25px;margin-top:0;padding-bottom:15px;border-bottom:1px solid var(--border);color:var(--primary-light)}.rules-section h3{margin-top:20px;margin-bottom:15px;color:var(--text-secondary);font-size:1.2rem}.rules-section p{margin-bottom:18px;line-height:1.8;font-size:1rem;color:var(--text-primary)}.rules-list{margin:20px 0;padding-left:30px}.rules-list li{margin-bottom:12px;line-height:1.7;color:var(--text-primary)}.rules-list-numbered{list-style-type:decimal;margin:20px 0;padding-left:30px}.rules-list-numbered li{margin-bottom:12px;line-height:1.7;color:var(--text-primary)}.rules-highlight{background:#3b82f61a;padding:20px;border-radius:var(--radius-md);border-left:3px solid var(--primary);margin:25px 0;color:var(--text-primary);line-height:1.7}.faction{display:inline-block;padding:6px 14px;border-radius:6px;font-weight:700;margin:5px 8px}.faction.loyalists{background:var(--loyalist-blue);border:1px solid var(--loyalist-border);color:#fff}.faction.conspirators{background:var(--conspirator-red);border:1px solid var(--conspirator-border);color:#fff}.card-badge{display:inline-block;padding:8px 16px;border-radius:var(--radius-md);font-weight:700;margin:8px 5px}.card-badge.card-edit{background:var(--loyalist-blue);border:1px solid var(--loyalist-border);color:#fff}.card-badge.card-plot{background:var(--conspirator-red);border:1px solid var(--conspirator-border);color:#fff}.rules-table{width:100%;border-collapse:collapse;margin:30px 0}.rules-table th,.rules-table td{padding:15px;text-align:center;border:1px solid var(--border);line-height:1.6}.rules-table th{background:var(--surface-hover);color:var(--primary-light);font-weight:700;text-transform:uppercase;letter-spacing:1px}.rules-table tbody tr:nth-child(2n){background:var(--surface)}.rules-table tbody tr:hover{background:var(--surface-hover)}.table-scroll-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.power-table th:first-child,.power-table td:first-child{text-align:left;font-weight:700}.rules-footer{margin-top:50px;padding-top:30px;border-top:1px solid var(--border);text-align:center;line-height:1.8}.rules-warning{background:#ef44441a;padding:20px;border-radius:var(--radius-md);border-left:3px solid var(--danger);margin:25px 0;color:var(--text-primary);line-height:1.7}.site-footer{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:10px 15px;font-size:.7rem;color:var(--text-muted);font-family:Cinzel,serif;letter-spacing:1px;z-index:5;pointer-events:none}.site-footer span{pointer-events:auto;transition:color var(--transition-base)}.site-footer span:hover{color:var(--text-secondary)}.footer-version{font-weight:700}.footer-credit{text-align:right}.btn-icon-settings{background:transparent;color:var(--primary-light);border:none;padding:8px;border-radius:50%;cursor:pointer;font-size:1.4rem;transition:all var(--transition-base);width:40px;height:40px;display:flex;align-items:center;justify-content:center}.btn-icon-settings:hover{background:var(--surface-hover);transform:rotate(45deg)}.settings-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.settings-popup{background:var(--bg-secondary);border:2px solid var(--primary);border-radius:var(--radius-xl);min-width:320px;max-width:90%;box-shadow:var(--shadow-lg);animation:popupSlideIn .25s ease;overflow:hidden}.settings-popup-header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid var(--border);background:var(--surface)}.settings-popup-header h3{font-family:Cinzel,serif;font-size:1.2rem;color:var(--primary-light);margin:0;letter-spacing:1px}.btn-close-settings{background:transparent;border:none;color:var(--text-secondary);font-size:1.8rem;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-fast);line-height:1}.btn-close-settings:hover{background:#ef44441a;color:var(--danger)}.settings-popup-content{padding:25px;display:flex;flex-direction:column;gap:15px}.btn-full{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 20px;font-size:1rem;font-weight:600}.btn-icon-left{font-size:1.2rem}.game-settings.settings-readonly{opacity:.85}.game-settings.settings-readonly h3:after{content:" (définis par l'hôte)";font-size:.75rem;color:var(--text-muted);font-weight:400;text-transform:none}.game-settings.settings-readonly .toggle-label{cursor:not-allowed}.game-settings.settings-readonly .toggle-switch{opacity:.6;cursor:not-allowed}.game-settings.settings-readonly input:disabled+.toggle-switch{background:var(--surface)}.game-settings.settings-readonly input:disabled:checked+.toggle-switch{background:#3b82f666}
