[hidden]{display:none!important}
.people-dialog{width:min(740px,calc(100vw - 28px));max-height:85vh;box-sizing:border-box;border:1px solid var(--ui-border,var(--line));border-radius:22px;padding:22px;background:rgba(16,29,24,.96);color:var(--text);box-shadow:0 28px 90px #0006;backdrop-filter:blur(26px)}
html[data-theme=light] .people-dialog{background:rgba(239,249,242,.96)}
.people-dialog::backdrop{background:#0008;backdrop-filter:blur(8px)}
.people-dialog header,.people-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.people-dialog h3{margin:0}.people-dialog input{width:100%;box-sizing:border-box;margin:18px 0}.people-dialog .pv-item,.people-dialog .people-list p{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--ui-border,var(--line));border-radius:14px}.people-dialog img{width:44px;height:44px;border-radius:14px;object-fit:cover;flex-shrink:0}.people-dialog footer{margin-top:18px}.people-dialog .pv-nick{overflow-wrap:anywhere}
.people-dialog button,.temporary-ban button,#dockPairMount button,.account-logout{appearance:none;cursor:pointer;border:1px solid var(--ui-border,var(--line));border-radius:12px;background:var(--ui-fill,rgba(60,130,90,.15));color:var(--text);font:600 13px/1.4 system-ui;padding:11px 15px;transition:transform .15s,background .15s,box-shadow .15s}
.people-dialog input,.temporary-ban input,.temporary-ban select,#dockPairMount input,[data-season]{border:1px solid var(--ui-border,var(--line));border-radius:12px;padding:12px;background:var(--ui-fill,rgba(60,130,90,.15));color:var(--text);font:inherit;box-sizing:border-box;min-width:0}
select option{background:#17271f;color:#e5f3ed}html[data-theme=light] select option{background:#edf6f0;color:#193c2d}
.temporary-ban{padding-top:18px}.temporary-ban h4{margin:0 0 14px}.temporary-ban input,.temporary-ban select,.temporary-ban button{margin:4px 0;max-width:100%}.temporary-ban input{width:100%}.temporary-ban select{width:65%}.temporary-ban button{min-height:42px}
#dockPairMount{display:grid;gap:16px}#dockPairMount .queue-dock-pair{display:grid;gap:12px}#dockPairMount input{width:100%;margin-top:8px}#dockPairMount p{font-size:12px;line-height:1.6;color:var(--muted)}
.dock-indicators{display:flex;gap:8px;flex-wrap:wrap}.dock-indicators span{font-size:12px;padding:7px 10px;border:1px solid var(--ui-border);border-radius:30px;color:var(--ui-muted)}.dock-indicators span::before{content:'●';margin-right:6px;color:#b49160}.dock-indicators [data-online=true]::before{color:#48d596}
.account-menu{display:inline-flex;align-items:center;gap:6px}.account-logout{flex-shrink:0;font-size:20px;padding:8px 12px}.account-menu .nav-account{margin:0}
.demo-panel.card{background:linear-gradient(145deg,rgba(255,255,255,.072),rgba(8,13,13,.55));border:1px solid var(--line);border-radius:16px;box-shadow:inset 0 1px 0 #ffffff14,0 22px 60px #00000029;backdrop-filter:blur(24px) saturate(160%)}
html[data-theme=light] .demo-panel.card{background:linear-gradient(145deg,rgba(255,255,255,.7),rgba(219,237,227,.45));border-color:var(--line)}
.demo-panel button{min-height:64px;border-radius:16px;background:linear-gradient(140deg,rgba(75,170,116,.22),rgba(53,106,77,.12));border:1px solid var(--ui-border);box-shadow:inset 0 1px 0 #ffffff18,0 5px 16px #0002;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s}.demo-panel button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0003}.demo-panel button:active,.people-dialog button:active,.temporary-ban button:active,.account-logout:active,#dockPairMount button:active{transform:scale(.96)}
.voice-card button,.voice-card .copy-btn,.voice-card-action{box-sizing:border-box;width:100%;min-height:42px;padding:11px 14px;border-radius:12px;font:600 12px/1.4 system-ui;cursor:pointer}
[data-rankings] label{display:flex;align-items:center;gap:10px}[data-rank-updated]{color:var(--muted);font-size:12px;line-height:1.7}[data-own-rank]{color:var(--text);font-weight:600}.panel-head{flex-wrap:wrap;gap:8px}
@media(prefers-reduced-motion:reduce){.demo-panel button,.people-dialog button,.temporary-ban button{transition:none}}
.voice-grid .voice-card .voice-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%}.voice-grid .voice-card .voice-actions>button{width:100%;min-height:42px;padding:11px 14px;font-size:12px;line-height:1.4;border:1px solid var(--border-soft,var(--line));background:rgba(47,217,138,.09);color:var(--text);border-radius:12px}.voice-grid .voice-card .voice-actions>.copy::after{content:none}
.rank-season-picker{position:relative;color:var(--text);font-size:14px;z-index:10}.rank-season-picker summary{list-style:none;cursor:pointer;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--ui-fill,rgba(60,130,90,.15));min-width:150px}.rank-season-picker summary::after{content:'⌄';margin-left:18px}.rank-season-options{position:absolute;right:0;top:calc(100% + 6px);display:grid;gap:4px;min-width:220px;max-height:300px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:14px;background:rgba(18,31,24,.98);box-shadow:0 18px 42px #0005}.rank-season-options button{font:inherit;text-align:left;border:0;border-radius:9px;padding:11px 14px;color:var(--text);background:transparent;cursor:pointer}.rank-season-options button:hover,.rank-season-options button[aria-pressed=true]{background:rgba(47,217,138,.16)}html[data-theme=light] .rank-season-options{background:rgba(239,249,242,.98)}
/* Compact remove controls must not inherit the padding of full-size buttons. */
.people-dialog .pv-item .pv-remove,.people-dialog header>button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;line-height:1;font-size:18px;vertical-align:middle}
.people-dialog .pv-item .pv-remove{margin-left:auto;border-radius:50%}.people-dialog .pv-item{min-width:0}.people-dialog .pv-item .pv-nick{flex-shrink:1;min-width:0}.people-dialog .pv-item .pv-voice{min-width:0}
/* Match neighbouring controls instead of tinting the moderation form separately. */
.temporary-ban h4{font:700 12px/1.5 var(--font-body,system-ui);text-transform:uppercase;letter-spacing:.075em;color:var(--text);padding-bottom:12px;border-bottom:1px solid var(--border-soft,var(--line))}
.temporary-ban input,.temporary-ban select,.temporary-ban .glass-select-button{background:linear-gradient(155deg,rgba(23,30,31,.62),rgba(9,14,15,.72));border:1px solid var(--border-soft,var(--line));color:var(--text);border-radius:11px}
.temporary-ban button,.temporary-ban .test-btn{width:100%;padding:12px 16px;border-radius:11px;border:1px solid var(--border-soft,var(--line));background:linear-gradient(155deg,rgba(255,255,255,.09),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.07);color:var(--text);font:600 12px/1.5 var(--font-body,system-ui)}
html[data-theme=light] .temporary-ban input,html[data-theme=light] .temporary-ban select,html[data-theme=light] .temporary-ban .glass-select-button,html[data-theme=light] .temporary-ban button{background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(223,238,229,.38));border-color:var(--border-soft,var(--line));color:var(--text)}
