/* FANGST v132: persistent radio and participant chat */
.fr131-invites{padding:14px;margin:8px 0 18px;border:1px solid #85bfca;background:#eaf6fa;color:#0b3650;border-radius:15px}
.fr131-invites h2{font-size:17px;margin:0 0 12px}.fr131-invite{border-top:1px solid #b0d6e0;padding:10px 0;line-height:1.5}.fr131-invite p{margin:0}.fr131-invite small{display:block;color:#415f70;margin:4px 0 10px}.fr131-invite-actions{display:flex;gap:8px;flex-wrap:wrap}.fr131-invite-actions button{min-height:42px}
#fangst-v131-chat{position:fixed;z-index:9998;bottom:calc(79px + env(safe-area-inset-bottom,0px));left:12px;right:12px;max-width:444px;margin:auto;pointer-events:none;color:#12364b}
#fangst-v131-chat[hidden],#fangst-v131-chat #fr131-chat-mini[hidden],#fangst-v131-chat #fr131-chat-panel[hidden]{display:none!important}
#fangst-v131-chat button,#fangst-v131-chat textarea{font:inherit}
#fr131-chat-mini{pointer-events:auto;display:flex;align-items:center;gap:8px;margin-left:auto;min-height:45px;max-width:min(100%,265px);border:1px solid #79bbcc;border-radius:24px;background:#092d45;color:white;padding:9px 13px;box-shadow:0 5px 18px #09263e99;font-weight:750;cursor:pointer}
.fr131-chat-icon{font-size:19px}.fr131-chat-mininame{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px;font-size:13px}
#fr131-chat-count{display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:12px;background:#3bdf8c;color:#052d20;font-size:12px;font-weight:900}
#fr131-chat-count[hidden]{display:none!important}
.fr131-unread #fr131-chat-mini{background:#096637;border-color:#62f0a4;animation:fr131-pulse 1.5s ease-in-out infinite}
@keyframes fr131-pulse{50%{box-shadow:0 0 0 5px #38da7645}}
#fr131-chat-panel{pointer-events:auto;display:flex;flex-direction:column;height:min(61dvh,480px);min-height:230px;overflow:hidden;border-radius:17px;background:#f8fcfe;box-shadow:0 8px 30px #06263999;border:1px solid #7fbdcc}
#fr131-chat-panel header{display:flex;align-items:center;justify-content:space-between;background:#0a3048;color:white;padding:11px 14px;gap:10px}
#fr131-chat-panel header>div{display:flex;flex-direction:column;gap:3px;min-width:0}
#fr131-chat-panel header b{font-size:15px}#fr131-chat-panel header small{max-width:230px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:#c7e2ee}
#fr131-chat-panel header button{color:white;background:#255770;border:0;border-radius:8px;min-width:38px;min-height:35px;cursor:pointer}
#fr131-chat-messages{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:10px;display:flex;flex-direction:column;gap:8px}
.fr131-message{background:#e5f0f6;border:1px solid #c6dbe4;border-radius:12px;padding:9px 11px;overflow-wrap:anywhere}
.fr131-message.fr131-own{align-self:flex-end;max-width:94%;background:#d5f4e9;border-color:#b6e0d0}
.fr131-message>div{display:flex;justify-content:space-between;gap:10px;font-size:12px}.fr131-message time{color:#6b7d87}
.fr131-message p{font-size:13px;margin:5px 0 0;white-space:pre-wrap;line-height:1.35}
.fr131-message img{max-width:100%;border-radius:9px;margin:7px 0}
.fr131-photo{border:0;background:none;text-decoration:underline;color:#0c6084;padding:6px 0;text-align:left}
#fr131-chat-form{display:flex;gap:6px;padding:9px;border-top:1px solid #c2dbe4;align-items:flex-end}
#fr131-chat-text{flex:1;min-width:0;border-radius:9px;padding:8px 10px;border:1px solid #a6c5cf;background:white;color:#17394d;resize:vertical;font-size:13px;max-height:100px}
#fr131-chat-form button{border:0;border-radius:9px;background:#0b496a;color:white;font-weight:750;padding:12px;min-height:42px}
#fr131-chat-status{margin:0;padding:0 9px 5px;font-size:12px;color:#ad442d}
#fr131-mini-row{display:flex;justify-content:flex-end;gap:6px;align-items:stretch;max-width:100%;pointer-events:auto}
#fr131-mini-row[hidden]{display:none!important}
#fangst-radio-v120 #fr131-mini-ptt{pointer-events:auto;background:#156c53;color:#fff;border:1px solid #6fdbad;border-radius:22px;padding:5px 13px;min-height:45px;min-width:85px;touch-action:none;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:800}
#fangst-radio-v120 #fr131-mini-ptt[hidden]{display:none!important}
#fangst-radio-v120 #fr131-mini-ptt.fr120-active{background:#c43e2e;border-color:#ffad8e}
#fangst-radio-v120 #fr131-mini-ptt:disabled{opacity:.5}
#fangst-radio-v120{bottom:calc(143px + env(safe-area-inset-bottom,0px));z-index:9997}
#fangst-radio-v120:has(#fr120-panel:not([hidden])){bottom:calc(142px + env(safe-area-inset-bottom,0px))}
#fangst-radio-v120 #fr120-mini{margin-left:0!important;flex:0 1 auto;min-width:0}
#fangst-radio-v120 #fr120-mini #fr120-mini-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(38vw,165px)}
body.fangst-dark .fr131-invites{background:#143f52;color:#e8f4f7;border-color:#47778b}
body.fangst-dark .fr131-invite small{color:#b4d4dd}
body.fangst-dark #fr131-chat-panel{background:#0d2d40;color:#e8f3f8}
body.fangst-dark .fr131-message{background:#244c60;border-color:#397187}
body.fangst-dark .fr131-message.fr131-own{background:#174b42}
@media(max-width:345px){#fr131-mini-row{gap:4px}#fangst-radio-v120 #fr131-mini-ptt{min-width:74px;padding:5px}#fr131-chat-panel header small{max-width:185px}}