.entry-room-name{color:var(--gold);font-weight:600;margin-bottom:20px}
.entry-roles{border:0;padding:0;margin:0 0 15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.entry-roles legend{font-size:13px;color:var(--muted);margin-bottom:12px}
.entry-roles label{position:relative;border:1px solid var(--line);border-radius:9px;padding:17px;cursor:pointer;background:var(--input)}
.entry-roles label:has(input:checked){border-color:var(--gold);background:var(--accent)}
.entry-roles label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.entry-roles input{position:absolute;top:14px;right:14px;accent-color:var(--gold)}
.entry-roles label>span{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding-right:10px}
.entry-roles .icon{color:var(--gold);margin-bottom:6px}
.entry-roles strong{font-size:14px;color:var(--text)}
.entry-roles small{font-size:11px;color:var(--muted);line-height:1.5}
.room-settings-fields{max-height:60dvh;overflow:auto;padding-right:10px}
.room-settings-group{border:1px solid var(--line);border-radius:9px;padding:16px;margin-bottom:14px;background:var(--input)}
.room-settings-group h3{font:bold 13px/1.4 Arial,sans-serif;color:var(--text);margin-bottom:9px}
.room-settings-group>small,.room-settings-group>p{font-size:11px;line-height:1.6;color:var(--muted);display:block}
.room-settings-group .field{margin-bottom:8px}
.room-settings-group .field input{width:100%}
.room-toggle{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;cursor:pointer}
.room-toggle>span{display:flex;flex-direction:column;gap:6px;max-width:85%}
.room-toggle strong{font-size:13px;color:var(--text)}
.room-toggle small{font-size:11px;line-height:1.6;color:var(--muted)}
.room-toggle>input{width:18px;height:18px;margin-top:2px;accent-color:var(--primary)}
.room-gm-list{max-height:170px;overflow:auto;display:grid;gap:6px;margin-top:12px}
.room-gm-list>label{display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--raised);border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:12px}
.room-gm-list input{accent-color:var(--primary)}
.room-color{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0;font-size:12px;color:var(--muted)}
.room-color input{width:42px;height:30px;padding:2px;border-radius:5px;cursor:pointer}
.room-clear-actions{display:flex;gap:10px;margin:12px 0;flex-wrap:wrap}
.room-clear-actions .btn{color:var(--danger);background:var(--danger-bg);border-color:var(--danger)}
.lobby-cover>img{width:100%;height:100%;object-fit:cover}
.tabletop-mode .resource-track i{background:var(--room-hp,var(--green))}
.tabletop-mode .player-resource.hp b{color:var(--room-hp,var(--green))}
.tabletop-mode .player-resource.mp i{background:var(--room-mp,var(--info))}
.tabletop-mode .player-resource.mp b{color:var(--room-mp,var(--info))}
.player-summary>span.player-name{display:block;cursor:default}
@media(max-width:520px){.entry-roles{grid-template-columns:1fr}.room-settings-group{padding:13px}}

.resource-value{cursor:text;border-radius:2px;user-select:none}.resource-value:hover{background:var(--accent)}.tabletop-mode .resource-value-input{flex:0 0 68px;width:68px;min-width:0;height:22px;padding:2px 4px;font:11px monospace;text-align:right;color:var(--text);background:var(--input);border:1px solid var(--gold);border-radius:3px}.resource-value-input[aria-invalid=true]{border-color:var(--danger)!important}
