/* V8.8: clean desktop input-channel controls and remote guest producer panel */
#liveStudio #lsRemoveInput {background:#343039;border:1px solid #85555b;color:#ffccd0;margin-left:auto;padding:5px 10px}
#liveStudio #lsRemoveInput:disabled {opacity:.35;cursor:not-allowed}
#liveStudio #lsSources.lsFourAcross {grid-template-columns:repeat(4,minmax(0,1fr))}
#liveStudio .lsSourceActions button {min-height:28px}
#liveStudio .lsGuestPanel {margin:8px 0 0;background:#152027;border:1px solid #374954; min-width:0;color:#e7f3f8}
#liveStudio .guestCount {display:inline-block;border:1px solid #247957;background:#143326;padding:5px 10px;border-radius:5px;color:#77e2ac;font-weight:700}
#liveStudio .guestBody {padding:13px}
#liveStudio .guestRoomControls {display:flex;align-items:end;gap:10px;flex-wrap:wrap}
#liveStudio .guestRoomControls .guestServerField {display:flex;flex:1 1 320px;flex-direction:column;gap:5px;color:#c2d5df;font-size:12px;font-weight:700}
#liveStudio .guestServerField span {font-size:11px;font-weight:400;color:#a2b8c4}
#liveStudio #guestServerUrl {width:100%;background:#08141a;color:#fff;border:1px solid #48606c;padding:11px;font:12px system-ui;border-radius:4px;min-width:0}
#liveStudio .guestPrimary {background:#216a4e;border-color:#298963;font-weight:800;padding:12px 15px}
#liveStudio .guestStatus {min-height:1.6em;color:#a9d6f3;font-size:12px;margin:10px 0;overflow-wrap:anywhere}
#liveStudio .guestInvite {margin:14px 0;background:#0a1720;border:1px solid #347a67;border-radius:5px;padding:12px}
#liveStudio .guestInviteTitle {font-size:11px;color:#9edebb;font-weight:800;letter-spacing:.08em;margin-bottom:9px}
#liveStudio .guestInviteFields {display:grid;grid-template-columns:minmax(0,1fr) auto 135px auto;gap:8px;align-items:end}
#liveStudio .guestInviteFields label {display:flex;flex-direction:column;gap:4px;min-width:0;font-size:10px;color:#aac4d2;font-weight:700}
#liveStudio .guestInviteFields input {width:100%;min-width:0;height:37px;border:1px solid #455e69;background:#101f2a;padding:8px;color:#fff;border-radius:3px;font:12px system-ui}
#liveStudio .guestPinField input {font-weight:900;letter-spacing:.2em;font-size:18px;text-align:center}
#liveStudio .guestInviteFields button {height:37px;border-color:#397a60;background:#194332;white-space:nowrap}
#liveStudio .guestInvite small {display:block;color:#abc6ce;font-size:11px;line-height:1.5;margin-top:10px}
#liveStudio .guestRosterBar {display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #334752;margin-top:10px;padding-top:10px}
#liveStudio .guestRosterBar label {display:flex;align-items:center;gap:6px;font-size:12px;color:#b8c9d5}
#liveStudio #guestSlot {background:#0b171d;color:#fff;border:1px solid #395260;padding:7px;max-width:min(100%,280px)}
#liveStudio .guestRoster {display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#liveStudio .guestPerson {display:flex;align-items:center;gap:12px;justify-content:space-between;max-width:100%;background:#0e2730;border:1px solid #315e63;border-radius:6px;padding:8px;color:#d6f1eb}
#liveStudio .guestPerson span {overflow-wrap:anywhere}
#liveStudio .guestPerson button {background:#402931;border-color:#8e4c51;color:#ffdedc}
#liveStudio .guestEmpty {color:#9bb7c4;font-style:italic}
#liveStudio .guestFineprint {font-size:11px;color:#93aebd;margin-top:12px;line-height:1.5}
@media(max-width:1500px){#liveStudio #lsSources.lsFourAcross {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){#liveStudio .lsSectionHead{flex-wrap:wrap;gap:6px}#liveStudio .guestInviteFields{grid-template-columns:minmax(0,1fr) auto}#liveStudio .guestPinField{grid-column:1}#liveStudio .guestRosterBar{flex-direction:column;align-items:flex-start}#liveStudio #guestSlot{width:100%;max-width:100%}}
@media(max-width:480px){#liveStudio #lsSources.lsFourAcross{grid-template-columns:repeat(2,minmax(0,1fr))}#liveStudio .guestRoomControls .guestServerField{flex-basis:100%}#liveStudio .guestInviteFields button{font-size:11px;padding:8px}#liveStudio .lsSourceActions button{min-height:36px}}
/* V8.9 — named individual invitations. PIN is shown only at issuance. */
#liveStudio .guestInviteManager{margin:14px 0;background:#0b1b23;border:1px solid #376b65;border-radius:10px;padding:16px;min-width:0}
#liveStudio .guestInviteIntro{font-size:12px;color:#bdd6de;line-height:1.55;margin:4px 0 14px}
#liveStudio .guestInviteCreate{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
#liveStudio .guestInviteCreate label{display:flex;flex-direction:column;gap:6px;flex:1 1 220px;font-size:12px;font-weight:700;color:#c2d5df}
#liveStudio #guestInviteName{width:100%;min-width:0;min-height:44px;color:#fff;background:#08141a;border:1px solid #496673;border-radius:6px;padding:10px;font:14px system-ui}
#liveStudio .guestInviteManager>small{display:block;color:#a6bfca;font-size:11px;line-height:1.6;margin-top:13px}
#liveStudio .guestInvitations{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:12px;margin-top:14px}
#liveStudio .guestInviteCard{background:#112a32;border:1px solid #335960;border-radius:9px;padding:13px;min-width:0}
#liveStudio .guestInviteCardHead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;margin-bottom:12px}
#liveStudio .guestInviteCardHead strong{font-size:15px;color:#f0faff;overflow-wrap:anywhere}
#liveStudio .guestInviteState{font-size:11px;color:#9ff2cb;background:#113f31;border:1px solid #2d7863;border-radius:20px;padding:4px 8px}
#liveStudio .guestInviteCardFields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}
#liveStudio .guestInviteCardFields label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#b2cedc;min-width:0}
#liveStudio .guestInviteCardFields input{width:100%;min-width:0;padding:9px;color:#e9f8ff;background:#07171e;border:1px solid #345464;border-radius:5px;font:11px system-ui}
#liveStudio .guestInviteCardFields button,#liveStudio .guestInviteCardActions button{min-height:36px;border-radius:5px;padding:8px 10px;font-size:12px;white-space:nowrap}
#liveStudio .guestInviteCardActions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:11px;color:#adcad7}
#liveStudio .guestInviteCardActions .guestOneTimePIN{color:#ffda8a;font-size:15px;letter-spacing:.11em}
#liveStudio .guestInviteCardActions .guestRevoke{margin-left:auto;background:#422931;border-color:#89505b;color:#ffd3d9}
#liveStudio .guestInviteCardActions .guestRevoke:disabled{opacity:.4}
@media(max-width:600px){#liveStudio .guestInviteManager{padding:12px}#liveStudio .guestInviteCreate .guestPrimary{width:100%}#liveStudio .guestInviteCardFields{grid-template-columns:minmax(0,1fr)}#liveStudio .guestInviteCardFields button{width:100%}}

/* V9.0 privacy + per-guest PIN rotation */
#liveStudio .guestRotate{border-color:#3579a1;background:#1c4b67;color:#f0faff;font-weight:700}
#liveStudio .guestInviteCardActions{flex-wrap:wrap}
#liveStudio .guestInviteCard .guestOneTimePIN{white-space:nowrap;letter-spacing:.7px}
