
/* V8: role selection, fixed balance and rules */
.balance-table{width:100%;border-collapse:collapse;margin:12px 0 15px;font-size:13px}.balance-table th,.balance-table td{padding:12px 10px;text-align:left;border-bottom:1px solid #343847}.balance-table th{color:#e9d2dd}.balance-table td{color:#f6f0f5}.balance-table tr:last-child td{border-bottom:none}
/* V7: role selection and complete rules */
.role-create-panel{border:1px solid #454052;border-radius:14px;background:#181923;padding:16px;margin:12px 0}
.role-picker-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:6px 0 14px;flex-wrap:wrap}
.role-picker-head h3{margin:0;font-size:17px;letter-spacing:-.02em;color:#f5edf2}
.role-count{font-size:11px;color:#ffd1dc;background:#4d2c3c;padding:6px 10px;border-radius:99px}
.role-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:280px;overflow:auto;margin:12px 0}
.role-choice{border:1px solid #383e4e;border-radius:10px;padding:10px;background:#232632;display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer;color:#eeeef3}
.role-choice input{width:17px;height:17px;accent-color:#e66c91;flex:none;cursor:pointer}
.role-choice:has(input:checked){background:#3a2637;border-color:#a85370}
.role-choice em{font-size:9px;color:#a4a8b7;font-style:normal;margin-left:auto}
.role-hint{font-size:12px;line-height:1.65;color:#c2bdca;margin-top:8px}
.role-hint.warn{color:#ffd0a8}.preset-row{display:flex;gap:8px;flex-wrap:wrap}
.role-lobby-panel{border:1px solid #40394a;background:#181822;border-radius:12px;padding:15px;margin:15px 0}
.role-lobby-panel h3{font-size:15px;margin:0 0 7px}.role-lobby-panel p{color:#a9aab9;font-size:12px;line-height:1.6}
.role-preview-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.role-preview-tags span{font-size:10px;padding:6px 8px;border:1px solid #5a4050;border-radius:7px;background:#302131}
.rules-view{max-width:1100px}.rule-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.rule-overview article{min-width:0}.rule-overview h3,.rules-details h3{font-size:16px;margin-bottom:9px;color:#f5ebf1}
.rule-overview p,.rules-details p,.rules-details li{line-height:1.78;font-size:12px;color:#b8bdcb}
.rules-notice{background:#2b2330;border:1px solid #5b4457;color:#e1cad5;padding:13px 15px;border-radius:12px;font-size:12px;line-height:1.65;margin:16px 0 25px}
.rules-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:25px}
.rule-role-card{background:#1b1c28;border:1px solid #383947;padding:16px;border-radius:13px;min-width:0}
.rule-role-card h4{margin:0;color:#f6f0f5;font-size:16px}.role-card-title{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.team-pill{font-size:10px;background:#283a39;border-radius:99px;color:#97e2c8;padding:5px 9px;white-space:nowrap}.team-pill.mafia{background:#4a2730;color:#ffa1b6}.team-pill.neutral{background:#443826;color:#ffdb96}
.rule-role-card p{font-size:12px;line-height:1.65;color:#b9bfce;margin:7px 0}
.rule-role-card b{color:#f1d2df}.rules-details{margin:18px 0}.rules-details ol{padding-left:23px}
.rules-view .role-picker-head select{border:1px solid #48414b;border-radius:9px;padding:9px 12px;color:white;background:#282632}
.role-action-hint{font-size:12px;color:#b7b9c6;line-height:1.65;padding:9px 0}
@media(max-width:740px){.rule-overview,.rules-catalog{grid-template-columns:1fr}.rule-role-card{padding:14px}}
@media(max-width:470px){.role-choice-grid{grid-template-columns:1fr}.role-picker-head{align-items:flex-start}.preset-row .btn{font-size:11px}}

.game-rules-link{font-size:12px;color:#f7c4d4;border:1px solid #68465a;padding:9px 12px;border-radius:9px;text-decoration:none}.game-rules-link:hover{background:#382a39}

.create-lobby-explainer{background:#1e2830;border:1px solid #38525e;border-radius:10px;color:#b8d4de!important;padding:13px 14px;line-height:1.6;margin-top:4px;font-size:12px}
.role-lobby-panel .role-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:7px}
.role-lobby-panel .role-picker-head h3{margin:0}

.lobby-quick-link{display:inline-flex;margin-top:12px;align-items:center;font-size:12px}

/* V8.4: qat’iy cheklangan rol o‘rinlari va bloklangan tanlovlar */
.role-slot-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.role-slot-summary span{display:block;border:1px solid #454052;background:#252332;border-radius:9px;padding:10px 12px;font-size:11px;color:#e8dfeb;font-weight:650}
.role-slot-summary .role-slot-fixed{background:#273832;border-color:#3d705e;color:#c2e8d4}
.role-slot-summary .role-slot-filled{background:#3d293a;border-color:#ae6685;color:#fbd2e0}
.role-slot-summary .role-slot-empty{background:#24242b;border-style:dashed;color:#a7a6b8}
.role-choice.role-choice-locked:not(.role-choice-required):not(.role-choice-checked){opacity:.43;cursor:not-allowed;filter:saturate(.55)}
.role-choice.role-choice-locked:not(.role-choice-required):not(.role-choice-checked) input{cursor:not-allowed}
.role-choice.role-choice-required{background:#21332d;border-color:#426954;cursor:default}
.role-choice.role-choice-required em{color:#99dcc0}
.role-choice.role-choice-checked:not(.role-choice-required){border-color:#b36081;background:#3c2739}
@media(max-width:470px){.role-slot-summary{grid-template-columns:1fr}}

.ready-panel{border:1px solid #426354;background:#152820;border-radius:12px;padding:14px;margin:14px 0;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.ready-panel strong{color:#bef1d4}.ready-panel p{flex:1;min-width:180px;color:#b7c5c4;font-size:12px}.lobby-capacity{display:grid;gap:7px;margin:14px 0;color:#d2d6e4;font-size:13px}.lobby-capacity select{max-width:250px;padding:10px;background:#232632;color:#fff;border:1px solid #555969;border-radius:9px}.speaking-control{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:13px;margin:12px 0;border:1px solid #3a4158;border-radius:12px}.speaking-control strong{width:100%;font-size:13px}.turn-indicator{margin:12px 0;padding:12px;border-radius:10px;background:#453043;color:#ffd6dc;font-weight:700}.kick.mild{color:#96d6e7;border-color:#436476}.kick.report{color:#e0bd99;border-color:#70574b}

.player-actions{position:relative;flex:none}.player-actions summary{list-style:none;cursor:pointer;padding:6px 9px;font-size:18px;line-height:1;border:1px solid #444859;background:#252735;border-radius:8px;color:#d5d8e2}.player-actions summary::-webkit-details-marker{display:none}.player-actions[open]{z-index:30}.player-actions[open] summary{border-color:#a95166}.player-actions button{position:relative;display:block;width:150px;text-align:left;margin:2px 0;border-radius:6px;padding:8px;background:#242633}.player-actions[open]{background:#1c202b;border-radius:10px;padding:4px}.player-actions[open] summary{margin-bottom:5px}

.connection-state{color:#ffd0a9;background:#4c342e;border-radius:20px;padding:4px 10px;font-size:10px;margin-bottom:4px}
