
.status-control,.custom-status-control{
    position:relative;
    display:none;
}
.status-control.visible,.custom-status-control.visible{
    display:block;
}
.status-button{
    background:#171d28;
    border:1px solid #354156;
    color:#e8ebf0;
    border-radius:9px;
    padding:8px 11px;
    font-size:.76rem;
    font-weight:800;
    white-space:nowrap;
}
.status-menu,.custom-status-menu{
    display:none;
    position:absolute;
    right:0;
    top:calc(100% + 7px);
    z-index:60;
    border:1px solid #354156;
    border-radius:12px;
    background:#10151e;
    box-shadow:0 18px 45px #000a;
}
.status-menu.open,.custom-status-menu.open{display:grid}
.status-menu{
    width:185px;
    padding:7px;
    gap:6px;
}
.status-menu button{
    min-height:38px;
    border:1px solid #293345;
    border-radius:8px;
    background:#151b25;
    color:#e9edf3;
    text-align:left;
    padding:7px 9px;
}
.status-menu button:hover{border-color:#ff6c31}
.custom-status-menu{
    width:310px;
    padding:12px;
    gap:8px;
}
.custom-status-menu label{
    font-size:.72rem;
    font-weight:900;
    color:#c8d0dc;
}
.custom-status-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:7px;
}
.custom-status-row input{
    min-width:0;
    background:#0d1118;
    color:#f1f3f6;
    border:1px solid #303b4e;
    border-radius:8px;
    padding:9px 10px;
}
.custom-status-row button,.clear-custom-status{
    border:1px solid #7a4329;
    border-radius:8px;
    background:#2b160c;
    color:#ffad77;
    padding:8px 10px;
    font-weight:900;
}
.clear-custom-status{
    border-color:#354156;
    background:#151b25;
    color:#cbd2dc;
}
.custom-status-menu small{color:#7f8a99}
.member-custom-status{
    margin-top:3px;
    max-width:185px;
    color:#ffb178;
    font-size:.68rem;
    line-height:1.25;
    overflow-wrap:anywhere;
}
.special-status{margin-top:4px;min-height:18px}
.onair-badge{
    display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;
    border:1px solid #ff514e;background:#531113;color:#fff;font-size:.65rem;
    line-height:1;font-weight:1000;letter-spacing:.08em;box-shadow:0 0 10px #ff2e2e55;
    animation:sopOnAirPulse 1s steps(2,end) infinite
}
.onair-badge::before{
    content:"";width:6px;height:6px;border-radius:50%;background:#ff302d;
    box-shadow:0 0 8px #ff302d
}
@keyframes sopOnAirPulse{
    0%,45%{opacity:1;filter:brightness(1.3)}
    46%,100%{opacity:.48;filter:brightness(.7)}
}
.chatwatch-badge{
    display:inline-flex;align-items:center;gap:6px;color:#cfd8e5;font-size:.65rem;
    font-weight:900;letter-spacing:.04em
}
.police-light{
    display:inline-flex;width:24px;height:11px;overflow:hidden;border:1px solid #536173;
    border-radius:4px 4px 3px 3px;background:#151922;box-shadow:0 0 6px #000
}
.police-light i{width:50%;height:100%}
.police-light i:first-child{background:#ff3038;animation:sopRedFlash .75s infinite}
.police-light i:last-child{background:#2788ff;animation:sopBlueFlash .75s infinite}
@keyframes sopRedFlash{
    0%,42%{opacity:1;box-shadow:0 0 10px #ff3038}
    43%,100%{opacity:.15;box-shadow:none}
}
@keyframes sopBlueFlash{
    0%,49%{opacity:.15;box-shadow:none}
    50%,92%{opacity:1;box-shadow:0 0 10px #2788ff}
    93%,100%{opacity:.15}
}
.mini-onair{color:#ff7672;font-weight:1000;letter-spacing:.08em}
.mini-siren{
    display:inline-flex;width:20px;height:9px;overflow:hidden;border-radius:3px;vertical-align:middle
}
.mini-siren i{width:50%}
.mini-siren i:first-child{background:#ff3038}
.mini-siren i:last-child{background:#2788ff}
@media(max-width:900px){
    .head-actions{flex-wrap:wrap}
    .custom-status-menu{right:auto;left:0;width:min(310px,90vw)}
}
