.mg2ar-app{--mg2ar-accent:#cebf4b;--mg2ar-primary:#cebf4b;--mg2ar-primary-text:#080808;--mg2ar-app-bg:#050505;--mg2ar-lobby-bg:#050505;--mg2ar-stage-bg:#060606;--mg2ar-chat-bg:#0c0c0c;--mg2ar-panel-bg:#111111;--mg2ar-card-bg:#101010;--mg2ar-control-bg:#101010;--mg2ar-square-bg:#181818;--mg2ar-input-bg:#050505;--mg2ar-text:#fff;--mg2ar-muted:#888;--mg2ar-border:#292929;--mg2ar-leave-bg:#7f2424;--mg2ar-live:#e14343;--mg2ar-notice-bg:#fff;--mg2ar-notice-text:#111;position:relative;background:var(--mg2ar-app-bg);color:var(--mg2ar-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:720px;border-radius:18px;overflow:hidden;line-height:1.35}
.mg2ar-app *{box-sizing:border-box}.mg2ar-app button,.mg2ar-app input{font:inherit}.mg2ar-app button{cursor:pointer}.mg2ar-lobby{background:var(--mg2ar-lobby-bg);color:var(--mg2ar-text)}.mg2ar-shell{max-width:1280px;margin:0 auto;padding:0 28px 90px}.mg2ar-topbar{min-height:76px;display:flex;align-items:center;border-bottom:1px solid var(--mg2ar-border);gap:16px}.mg2ar-brand{font-weight:950;letter-spacing:.08em;font-size:17px;color:var(--mg2ar-text)!important}.mg2ar-brand-dot{color:var(--mg2ar-accent);margin-right:7px}.mg2ar-pill{margin-left:auto;border:1px solid var(--mg2ar-border);background:var(--mg2ar-primary);color:var(--mg2ar-primary-text)!important;border-radius:999px;padding:10px 16px;font-weight:800}.mg2ar-pill:hover{filter:brightness(1.08);border-color:var(--mg2ar-accent)}
.mg2ar-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding:62px 0 54px}.mg2ar-eyebrow,.mg2ar-live-heading{color:var(--mg2ar-accent)!important;font-size:12px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.mg2ar-hero h1{margin:12px 0 18px;font-size:clamp(48px,6vw,86px);line-height:.92;letter-spacing:-.055em;color:var(--mg2ar-text)!important}.mg2ar-hero-copy>p{max-width:650px;color:var(--mg2ar-muted)!important;font-size:17px;line-height:1.65}.mg2ar-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.mg2ar-chips span{border:1px solid var(--mg2ar-border);border-radius:999px;padding:8px 11px;background:var(--mg2ar-panel-bg);color:var(--mg2ar-text);font-size:12px;font-weight:750}
.mg2ar-entry-card{background:var(--mg2ar-panel-bg);border:1px solid var(--mg2ar-border);border-radius:22px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.38)}.mg2ar-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--mg2ar-input-bg);border:1px solid var(--mg2ar-border);padding:4px;border-radius:13px;margin-bottom:18px}.mg2ar-tabs button{border:0!important;background:transparent!important;color:var(--mg2ar-muted)!important;padding:11px 12px;border-radius:10px;font-weight:900;box-shadow:none!important}.mg2ar-tabs button.is-active{background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important}.mg2ar-tabs button:hover{color:var(--mg2ar-text)!important}.mg2ar-tabs button.is-active:hover{color:var(--mg2ar-primary-text)!important}.mg2ar-entry-card>label{display:block;color:var(--mg2ar-text)!important;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin:13px 0}.mg2ar-entry-card input[type=text]{display:block;width:100%;margin-top:7px;background:var(--mg2ar-input-bg);border:1px solid var(--mg2ar-border);color:var(--mg2ar-text)!important;border-radius:11px;padding:13px 14px;outline:none}.mg2ar-entry-card input[type=text]:focus{border-color:var(--mg2ar-accent)}.mg2ar-field-help{display:block;margin-top:6px;color:var(--mg2ar-muted)!important;font-size:9px;line-height:1.4;text-transform:none;letter-spacing:0;font-weight:600}
.mg2ar-avatar-builder{background:var(--mg2ar-card-bg);border:1px solid var(--mg2ar-border);border-radius:14px;padding:14px;margin:16px 0}.mg2ar-avatar-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.mg2ar-avatar-builder-head strong{display:block;color:var(--mg2ar-text)!important}.mg2ar-avatar-builder-head small{display:block;color:var(--mg2ar-muted)!important;font-size:10px;margin-top:4px}.mg2ar-avatar-preview{width:64px;aspect-ratio:1;border:2px solid var(--mg2ar-accent);border-radius:13px;overflow:hidden;background:var(--mg2ar-square-bg);flex:0 0 auto}.mg2ar-avatar-preview img{width:100%;height:100%;display:block;object-fit:cover}.mg2ar-avatar-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:13px}.mg2ar-avatar-modes button,.mg2ar-avatar-popover button{border:1px solid var(--mg2ar-border);background:var(--mg2ar-panel-bg);color:var(--mg2ar-muted)!important;border-radius:9px;padding:9px 7px;font-size:10px;font-weight:850}.mg2ar-avatar-modes button.is-active,.mg2ar-avatar-popover button.is-active{border-color:var(--mg2ar-accent);color:var(--mg2ar-accent)!important}.mg2ar-upload-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.mg2ar-upload{position:relative;overflow:hidden;text-align:center;border:1px dashed var(--mg2ar-border);color:var(--mg2ar-muted);border-radius:9px;padding:9px;font-size:10px;font-weight:850;cursor:pointer}.mg2ar-upload:hover{border-color:var(--mg2ar-accent);color:var(--mg2ar-accent)}.mg2ar-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.mg2ar-primary{width:100%;border:0!important;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-radius:12px;padding:14px;font-weight:950}.mg2ar-primary:hover{filter:brightness(1.08)}.mg2ar-primary:disabled{opacity:.55;cursor:wait}.mg2ar-setup-note{font-size:11px;color:var(--mg2ar-muted)!important;line-height:1.45;margin-top:11px;text-align:center}
.mg2ar-live-heading{margin:4px 0 16px}.mg2ar-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mg2ar-live);margin-right:7px;animation:mg2arpulse 1.8s infinite}.mg2ar-room-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.mg2ar-room-card{text-align:left;min-height:150px;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:15px;padding:18px;transition:.2s ease}.mg2ar-room-card:hover{transform:translateY(-3px);border-color:var(--mg2ar-accent)!important;box-shadow:0 14px 40px rgba(0,0,0,.3)}.mg2ar-room-card small{color:var(--mg2ar-accent)!important;font-weight:950;letter-spacing:.11em}.mg2ar-room-card h3{font-size:18px;margin:10px 0 5px;color:var(--mg2ar-text)!important}.mg2ar-room-card p{margin:0;color:var(--mg2ar-muted)!important;font-size:12px}.mg2ar-empty{grid-column:1/-1;border:1px dashed var(--mg2ar-border);color:var(--mg2ar-muted);border-radius:14px;padding:24px;text-align:center}
.mg2ar-room-view[hidden]{display:none!important}.mg2ar-room-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;min-height:780px}.mg2ar-stage{position:relative;min-width:0;padding:0 28px 142px;background:var(--mg2ar-stage-bg);color:var(--mg2ar-text)}.mg2ar-room-bar{height:72px;display:flex;align-items:center;border-bottom:1px solid var(--mg2ar-border);gap:14px}.mg2ar-link{background:none!important;border:0!important;color:var(--mg2ar-text)!important;padding:6px 0}.mg2ar-live{font-size:11px;font-weight:950;color:var(--mg2ar-text)!important;letter-spacing:.1em}.mg2ar-room-title{padding:30px 0 12px}.mg2ar-room-title h2{font-size:clamp(30px,4vw,54px);margin:5px 0 6px;letter-spacing:-.045em;color:var(--mg2ar-text)!important}.mg2ar-room-title p{margin:0;color:var(--mg2ar-muted)!important;font-size:12px}.mg2ar-presence-note{display:block;margin-top:5px;color:var(--mg2ar-muted)!important;font-size:9px}.mg2ar-group-label{color:var(--mg2ar-muted)!important;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:950;margin:24px 0 10px}.mg2ar-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,148px));gap:17px}.mg2ar-audience{grid-template-columns:repeat(auto-fill,minmax(105px,130px))}.mg2ar-person{text-align:center;min-width:0}.mg2ar-person-button{display:block;width:100%;padding:0!important;border:0!important;background:none!important;color:inherit!important}.mg2ar-square{position:relative;width:100%;aspect-ratio:1;border-radius:18px;overflow:hidden;border:2px solid var(--mg2ar-accent);background:var(--mg2ar-square-bg);box-shadow:0 8px 28px rgba(0,0,0,.3);transition:transform .2s ease,box-shadow .2s ease}.mg2ar-person-button:hover .mg2ar-square{transform:translateY(-3px) scale(1.015)}.mg2ar-square.is-speaking{animation:mg2arspeaking 1.15s ease-in-out infinite}.mg2ar-square img{width:100%;height:100%;display:block;object-fit:cover}.mg2ar-square-shade{position:absolute;inset:auto 0 0;height:48%;background:linear-gradient(transparent,rgba(0,0,0,.86))}.mg2ar-role-badge,.mg2ar-you-badge,.mg2ar-gif-badge,.mg2ar-talk-badge,.mg2ar-hand-badge,.mg2ar-manage-badge{position:absolute;z-index:2;font-size:8px;line-height:1;border-radius:999px;padding:5px 6px;font-weight:950;backdrop-filter:blur(7px)}.mg2ar-role-badge{left:6px;bottom:6px;background:rgba(0,0,0,.78);color:#fff}.mg2ar-you-badge{right:6px;top:6px;background:var(--mg2ar-accent);color:var(--mg2ar-primary-text)}.mg2ar-gif-badge{left:6px;top:6px;background:rgba(0,0,0,.7);color:var(--mg2ar-accent)}.mg2ar-talk-badge{right:6px;bottom:6px;background:#0f743f;color:#fff}.mg2ar-hand-badge{right:6px;top:29px;background:var(--mg2ar-accent);color:var(--mg2ar-primary-text);font-size:12px}.mg2ar-manage-badge{left:6px;top:30px;background:var(--mg2ar-primary);color:var(--mg2ar-primary-text)}.mg2ar-person-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:8px;font-weight:900;font-size:12px;color:var(--mg2ar-text)!important}.mg2ar-person-role{display:block;color:var(--mg2ar-muted)!important;font-size:9px;margin-top:2px}.mg2ar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:950;color:var(--mg2ar-muted);background:var(--mg2ar-square-bg)}
.mg2ar-chat{border-left:1px solid var(--mg2ar-border);background:var(--mg2ar-chat-bg);color:var(--mg2ar-text);display:flex;flex-direction:column;min-width:0}.mg2ar-chat-head{padding:25px 20px;border-bottom:1px solid var(--mg2ar-border);font-weight:950;color:var(--mg2ar-text)!important}.mg2ar-messages{flex:1;min-height:0;max-height:690px;overflow:auto;padding:18px}.mg2ar-message{display:flex;gap:10px;margin:0 0 17px}.mg2ar-message-avatar{width:34px;height:34px;border-radius:9px;background:var(--mg2ar-square-bg);border:1px solid var(--mg2ar-border);display:flex;align-items:center;justify-content:center;color:var(--mg2ar-accent);font-size:9px;font-weight:950;flex:0 0 auto}.mg2ar-message b{font-size:11px;color:var(--mg2ar-text)!important}.mg2ar-message p{margin:3px 0 0;color:var(--mg2ar-muted)!important;font-size:12px;line-height:1.45;word-break:break-word}.mg2ar-chatbox{display:flex;gap:7px;padding:12px;border-top:1px solid var(--mg2ar-border)}.mg2ar-chatbox input{min-width:0;flex:1;border:1px solid var(--mg2ar-border);background:var(--mg2ar-input-bg);color:var(--mg2ar-text)!important;border-radius:10px;padding:11px 12px;outline:none}.mg2ar-chatbox input:focus{border-color:var(--mg2ar-accent)}.mg2ar-chatbox button{width:42px;border:0!important;border-radius:10px;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;font-weight:950}
.mg2ar-controls{position:absolute;left:24px;right:24px;bottom:20px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:calc(100% - 48px);background:var(--mg2ar-control-bg);border:1px solid var(--mg2ar-border);border-radius:22px;padding:10px 12px;box-shadow:0 20px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.03);overflow:hidden}.mg2ar-control,.mg2ar-leave-button{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:0!important;width:auto!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;line-height:1;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-radius:999px;padding:0 15px;min-height:40px;font-weight:850;font-size:12px;letter-spacing:.01em;box-shadow:0 6px 16px rgba(0,0,0,.18);transition:transform .18s ease,filter .18s ease,border-color .18s ease}.mg2ar-control:hover,.mg2ar-leave-button:hover{transform:translateY(-1px);filter:brightness(1.05);border-color:var(--mg2ar-accent)!important}.mg2ar-control.is-active{border-color:var(--mg2ar-accent)!important;box-shadow:inset 0 0 0 1px var(--mg2ar-accent),0 6px 16px rgba(0,0,0,.18)}.mg2ar-leave-button{background:var(--mg2ar-leave-bg)!important;color:#fff!important}.mg2ar-reactions{margin-left:0;display:flex;flex-wrap:nowrap;gap:6px;flex:0 0 auto;min-width:0}.mg2ar-reactions button{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-radius:999px;padding:0;font-size:17px;line-height:1;box-shadow:0 6px 16px rgba(0,0,0,.18);transition:transform .18s ease,filter .18s ease,border-color .18s ease}.mg2ar-reactions button:hover{transform:translateY(-1px);filter:brightness(1.05);border-color:var(--mg2ar-accent)!important}.mg2ar-avatar-popover,.mg2ar-person-menu{position:absolute;z-index:30;border:1px solid var(--mg2ar-border);background:var(--mg2ar-panel-bg);color:var(--mg2ar-text);border-radius:14px;padding:14px;box-shadow:0 20px 60px rgba(0,0,0,.65)}.mg2ar-avatar-popover{bottom:80px;left:145px;width:245px}.mg2ar-avatar-popover[hidden],.mg2ar-person-menu[hidden]{display:none!important}.mg2ar-avatar-popover strong{font-size:12px;color:var(--mg2ar-text)!important}.mg2ar-avatar-popover p,.mg2ar-person-menu p{color:var(--mg2ar-muted)!important;font-size:10px;margin:4px 0 10px}.mg2ar-avatar-popover button{display:block;width:100%;text-align:left;margin-top:5px}.mg2ar-person-menu{right:28px;bottom:88px;width:min(320px,calc(100% - 28px))}.mg2ar-person-menu-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.mg2ar-person-menu-head small{display:block;color:var(--mg2ar-accent);font-size:8px;font-weight:950;letter-spacing:.12em}.mg2ar-person-menu-head strong{display:block;margin-top:3px;color:var(--mg2ar-text)!important}.mg2ar-person-menu-head button{border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:8px;width:30px;height:30px;font-size:18px;line-height:1}.mg2ar-person-actions{display:grid;gap:7px;margin-top:10px}.mg2ar-person-actions button{width:100%;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-radius:9px;padding:10px;text-align:left;font-size:11px;font-weight:900}.mg2ar-person-actions button.is-danger{background:var(--mg2ar-leave-bg)!important;color:#fff!important}.mg2ar-floating-reactions{position:fixed;right:36px;bottom:110px;z-index:50;pointer-events:none}.mg2ar-floating-reactions span{display:block;font-size:31px;animation:mg2arfloat 2s ease-out forwards}.mg2ar-notice{display:none;position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:999999;background:var(--mg2ar-notice-bg);color:var(--mg2ar-notice-text)!important;border-radius:999px;padding:10px 16px;font-weight:850;font-size:12px;box-shadow:0 8px 30px rgba(0,0,0,.35)}.mg2ar-audio-bin{position:absolute;width:1px;height:1px;overflow:hidden;opacity:.001;pointer-events:none}.mg2ar-login-link{color:var(--mg2ar-accent)!important;font-weight:900}
@keyframes mg2arpulse{0%{box-shadow:0 0 0 0 var(--mg2ar-live)}70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}@keyframes mg2arspeaking{0%,100%{box-shadow:0 0 0 2px var(--mg2ar-accent),0 0 16px var(--mg2ar-accent)}50%{box-shadow:0 0 0 5px var(--mg2ar-accent),0 0 32px var(--mg2ar-accent)}}@keyframes mg2arfloat{0%{opacity:0;transform:translateY(20px) scale(.7)}15%{opacity:1}100%{opacity:0;transform:translateY(-130px) scale(1.25)}}
@media(max-width:1050px){.mg2ar-room-grid{grid-template-columns:1fr}.mg2ar-chat{border-left:0;border-top:1px solid var(--mg2ar-border);min-height:370px}.mg2ar-messages{max-height:300px}.mg2ar-hero{grid-template-columns:1fr;gap:28px}.mg2ar-room-list{grid-template-columns:1fr 1fr}.mg2ar-stage{min-height:760px}}
@media(max-width:680px){.mg2ar-app{border-radius:0}.mg2ar-shell{padding:0 14px 70px}.mg2ar-topbar{min-height:64px}.mg2ar-brand{font-size:13px}.mg2ar-pill{padding:8px 10px;font-size:10px}.mg2ar-hero{padding:36px 0}.mg2ar-hero h1{font-size:48px}.mg2ar-room-list{grid-template-columns:1fr}.mg2ar-stage{padding:0 12px 150px}.mg2ar-room-bar{height:62px}.mg2ar-people,.mg2ar-audience{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mg2ar-square{border-radius:15px}.mg2ar-controls{left:8px;right:8px;bottom:8px;flex-wrap:wrap;padding:10px;gap:8px}.mg2ar-control,.mg2ar-leave-button{min-height:52px;padding:0 14px;border-radius:14px}.mg2ar-control[data-mg2ar-mic],.mg2ar-control[data-mg2ar-hand],.mg2ar-control[data-mg2ar-avatar-toggle],.mg2ar-leave-button{min-width:0;flex:1 1 calc(50% - 8px)}.mg2ar-reactions{width:100%;margin-left:0;justify-content:center}.mg2ar-reactions button{width:50px;height:50px;border-radius:14px}.mg2ar-avatar-popover{left:12px;right:12px;bottom:124px;width:auto}.mg2ar-person-menu{left:12px;right:12px;bottom:132px;width:auto}.mg2ar-chatbox{padding:10px}.mg2ar-upload-row{grid-template-columns:1fr}.mg2ar-avatar-modes{grid-template-columns:1fr}}
/* v1.0.12 avatar resilience: prevent theme/lazy-load rules from blanking participant images. */
.mg2ar-app .mg2ar-square img,.mg2ar-app .mg2ar-avatar-preview img{opacity:1!important;visibility:visible!important;filter:none!important;transform:none;max-width:none!important;max-height:none!important;position:relative;z-index:0;background:var(--mg2ar-square-bg)}

/* v1.0.12 sleek horizontal controls */
.mg2ar-app .mg2ar-control span,.mg2ar-app .mg2ar-leave-button span{display:inline!important}

/* v1.0.12 compact pill controls + strict stage containment */
@media(max-width:900px){.mg2ar-controls{left:12px;right:12px;max-width:calc(100% - 24px);bottom:12px}.mg2ar-stage{padding-bottom:176px}.mg2ar-control,.mg2ar-leave-button{min-height:38px;padding:0 13px;font-size:11px}.mg2ar-reactions button{width:38px;height:38px;flex-basis:38px}}
@media(max-width:680px){.mg2ar-controls{left:8px;right:8px;max-width:calc(100% - 16px);padding:9px;gap:7px}.mg2ar-control,.mg2ar-leave-button{flex:0 0 auto!important;min-height:38px!important;padding:0 12px!important;border-radius:999px!important}.mg2ar-reactions{width:auto!important;margin-left:0!important;justify-content:flex-start!important}.mg2ar-reactions button{width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:999px!important}.mg2ar-stage{padding-bottom:205px}}

/* v1.0.12 participant role controls */
.mg2ar-person-actions button:disabled{opacity:.55;cursor:wait;filter:saturate(.7)}

/* v1.0.12 microphone + sound-reactive speaking glow */
.mg2ar-app .mg2ar-square.is-speaking{animation:none}
.mg2ar-app .mg2ar-square.is-sound-reactive{
  transform:scale(var(--mg2ar-glow-scale,1));
  box-shadow:0 0 0 var(--mg2ar-glow-spread,1px) var(--mg2ar-accent),0 0 var(--mg2ar-glow-blur,12px) var(--mg2ar-accent),0 8px 28px rgba(0,0,0,.3);
  transition:box-shadow .07s linear,transform .07s linear;
}
.mg2ar-app .mg2ar-audio-enable{border-color:var(--mg2ar-accent)!important;animation:mg2araudiowake 1.4s ease-in-out infinite}
@keyframes mg2araudiowake{0%,100%{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 0 3px var(--mg2ar-accent)}}

/* v1.0.12 GIF Gallery + microphone status UI */
.mg2ar-gallery-open{width:100%;margin-top:9px;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-panel-bg)!important;color:var(--mg2ar-text)!important;border-radius:10px;padding:10px 12px;font-size:10px;font-weight:900;letter-spacing:.02em}.mg2ar-gallery-open:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important}
.mg2ar-gif-gallery[hidden]{display:none!important}.mg2ar-gif-gallery{position:fixed;inset:0;z-index:999998;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}.mg2ar-gif-gallery-card{width:min(920px,100%);max-height:min(780px,90vh);overflow:auto;background:var(--mg2ar-panel-bg);border:1px solid var(--mg2ar-border);border-radius:24px;padding:20px;box-shadow:0 30px 100px rgba(0,0,0,.65)}.mg2ar-gif-gallery-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.mg2ar-gif-gallery-head small{display:block;color:var(--mg2ar-accent);font-size:10px;font-weight:950;letter-spacing:.14em}.mg2ar-gif-gallery-head strong{display:block;color:var(--mg2ar-text)!important;font-size:24px;margin-top:4px}.mg2ar-gif-gallery-head p{margin:5px 0 0;color:var(--mg2ar-muted)!important;font-size:12px}.mg2ar-gif-gallery-head>button{width:40px;height:40px;flex:0 0 auto;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:12px;font-size:22px;line-height:1}.mg2ar-gif-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:14px}.mg2ar-gif-choice{min-width:0;text-align:left;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:16px;padding:8px;transition:.18s ease}.mg2ar-gif-choice:hover{transform:translateY(-2px);border-color:var(--mg2ar-accent)!important}.mg2ar-gif-choice img{display:block!important;width:100%!important;aspect-ratio:1;object-fit:cover;border-radius:12px;background:var(--mg2ar-square-bg);opacity:1!important;visibility:visible!important}.mg2ar-gif-choice span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:900;margin:8px 3px 1px}.mg2ar-gif-choice small{display:block;color:var(--mg2ar-accent)!important;font-size:8px;font-weight:950;letter-spacing:.08em;margin:0 3px 3px}.mg2ar-gallery-loading{grid-column:1/-1;text-align:center;color:var(--mg2ar-muted);border:1px dashed var(--mg2ar-border);border-radius:14px;padding:28px}.mg2ar-gallery-opened{overflow:hidden}
@media(max-width:680px){.mg2ar-gif-gallery{padding:10px}.mg2ar-gif-gallery-card{border-radius:18px;padding:14px;max-height:92vh}.mg2ar-gif-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mg2ar-gif-gallery-head strong{font-size:20px}}

/* v1.0.12 live-audio connection status + phone GIF picker */
.mg2ar-audio-connection{display:inline-flex;align-items:center;gap:7px;margin-top:10px;min-height:30px;padding:6px 10px;border:1px solid var(--mg2ar-border);border-radius:999px;background:var(--mg2ar-panel-bg);color:var(--mg2ar-muted);font-size:10px;font-weight:850;max-width:100%}
.mg2ar-audio-connection .mg2ar-audio-dot{width:8px;height:8px;border-radius:50%;background:#777;flex:0 0 auto}
.mg2ar-audio-connection[data-state="connecting"] .mg2ar-audio-dot{background:var(--mg2ar-accent);animation:mg2arpulse 1.4s infinite}
.mg2ar-audio-connection[data-state="ready"]{color:var(--mg2ar-text);border-color:color-mix(in srgb,var(--mg2ar-accent) 65%,var(--mg2ar-border) 35%)}
.mg2ar-audio-connection[data-state="ready"] .mg2ar-audio-dot{background:#3cc46d;box-shadow:0 0 12px rgba(60,196,109,.65)}
.mg2ar-audio-connection[data-state="error"]{color:#ffb4b4;border-color:#7e3333;background:color-mix(in srgb,var(--mg2ar-panel-bg) 88%,#5b1111 12%)}
.mg2ar-audio-connection[data-state="error"] .mg2ar-audio-dot{background:#e14343}
.mg2ar-audio-connection button{border:0!important;background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:950;white-space:nowrap}
.mg2ar-device-gif-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px;padding:12px;border:1px solid var(--mg2ar-border);border-radius:16px;background:var(--mg2ar-card-bg)}
.mg2ar-device-gif-button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border-radius:999px;background:var(--mg2ar-primary);color:var(--mg2ar-primary-text);font-size:11px;font-weight:950;cursor:pointer;white-space:nowrap;overflow:hidden}
.mg2ar-device-gif-button input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:100px}
.mg2ar-device-gif-row>span{color:var(--mg2ar-muted);font-size:10px;line-height:1.4;flex:1 1 220px}
@media(max-width:680px){.mg2ar-audio-connection{display:flex;width:100%;border-radius:14px}.mg2ar-audio-connection [data-mg2ar-audio-status]{min-width:0;overflow:hidden;text-overflow:ellipsis}.mg2ar-device-gif-row{align-items:stretch}.mg2ar-device-gif-button{width:100%}.mg2ar-device-gif-row>span{flex-basis:100%}}

/* v1.0.12 direct phone GIF picker */
.mg2ar-phone-gif-open{border:1px dashed var(--mg2ar-border)!important;background:var(--mg2ar-panel-bg)!important;color:var(--mg2ar-text)!important;border-radius:9px;padding:9px;font-size:10px;font-weight:850;cursor:pointer}
.mg2ar-phone-gif-open:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important}
.mg2ar-device-gif-button{appearance:none;-webkit-appearance:none}

/* v1.0.14 Step 1 -> Step 2 transition + shared media stage */
.mg2ar-lobby,.mg2ar-room-view{opacity:1;transform:translateY(0);transition:opacity .32s ease,transform .32s ease}
.mg2ar-view-fade-out{opacity:0!important;transform:translateY(8px)!important;pointer-events:none}
.mg2ar-view-fade-in{opacity:0!important;transform:translateY(10px)!important}
.mg2ar-room-view{background:var(--mg2ar-stage-bg)}
.mg2ar-media-stage{position:relative;width:100%;aspect-ratio:16/9;min-height:320px;max-height:680px;background:#000;overflow:hidden;border-bottom:1px solid var(--mg2ar-border)}
.mg2ar-media-canvas{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000}
.mg2ar-media-canvas:empty{background:#000}
.mg2ar-shared-image,.mg2ar-shared-video,.mg2ar-shared-frame{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;border:0!important;margin:0!important;background:#000}
.mg2ar-shared-image{object-fit:cover}
.mg2ar-shared-video{object-fit:contain}
.mg2ar-shared-frame{border:0!important}
.mg2ar-shared-audio{width:min(620px,86%);display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;color:var(--mg2ar-text)}
.mg2ar-shared-audio .mg2ar-audio-mark{width:92px;height:92px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--mg2ar-accent);box-shadow:0 0 40px color-mix(in srgb,var(--mg2ar-accent) 40%,transparent);font-size:42px;color:var(--mg2ar-accent)}
.mg2ar-shared-audio strong{font-size:clamp(20px,3vw,34px);color:var(--mg2ar-text)!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mg2ar-shared-audio audio{width:min(560px,100%)}
.mg2ar-media-host-controls[hidden]{display:none!important}
.mg2ar-media-host-controls{display:flex;align-items:center;gap:7px;margin-left:auto;min-width:0}
.mg2ar-media-host-controls button{white-space:nowrap;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-input-bg)!important;color:var(--mg2ar-text)!important;border-radius:8px;padding:7px 10px;font-size:9px;font-weight:850;box-shadow:none!important}
.mg2ar-media-host-controls button:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important}
.mg2ar-media-host-controls:not([hidden]) + .mg2ar-pill{margin-left:0}
.mg2ar-media-modal[hidden]{display:none!important}.mg2ar-media-modal{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.82);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.mg2ar-media-modal-card{width:min(620px,100%);background:var(--mg2ar-panel-bg);border:1px solid var(--mg2ar-border);border-radius:22px;padding:20px;box-shadow:0 30px 100px rgba(0,0,0,.68)}
.mg2ar-media-modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.mg2ar-media-modal-head small{display:block;color:var(--mg2ar-accent);font-size:9px;font-weight:950;letter-spacing:.14em}.mg2ar-media-modal-head strong{display:block;color:var(--mg2ar-text)!important;font-size:24px;margin-top:4px}.mg2ar-media-modal-head p{color:var(--mg2ar-muted)!important;font-size:11px;line-height:1.5;margin:6px 0 0}.mg2ar-media-modal-head>button{width:38px;height:38px;flex:0 0 38px;border:1px solid var(--mg2ar-border)!important;border-radius:10px;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;font-size:20px}
.mg2ar-media-form[hidden]{display:none!important}.mg2ar-media-form label{display:block;color:var(--mg2ar-text)!important;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.mg2ar-media-form input[type=url]{display:block;width:100%;margin-top:8px;border:1px solid var(--mg2ar-border);background:var(--mg2ar-input-bg);color:var(--mg2ar-text)!important;border-radius:12px;padding:13px 14px;outline:none}.mg2ar-media-form input[type=url]:focus{border-color:var(--mg2ar-accent)}.mg2ar-media-form>small{display:block;color:var(--mg2ar-muted);font-size:10px;margin-top:8px;line-height:1.45}.mg2ar-media-or{text-align:center;color:var(--mg2ar-muted);font-size:9px;font-weight:900;margin:12px 0}.mg2ar-media-file{position:relative;overflow:hidden;border:1px dashed var(--mg2ar-border);border-radius:12px;padding:18px;text-align:center;cursor:pointer}.mg2ar-media-file:hover{border-color:var(--mg2ar-accent);color:var(--mg2ar-accent)!important}.mg2ar-media-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
.mg2ar-media-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.mg2ar-media-modal-actions button{border:1px solid var(--mg2ar-border)!important;border-radius:999px;padding:10px 16px;font-size:10px;font-weight:950;white-space:nowrap}.mg2ar-media-clear{background:transparent!important;color:var(--mg2ar-text)!important}.mg2ar-media-submit{background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important}.mg2ar-media-submit:disabled{opacity:.55;cursor:wait}.mg2ar-media-opened{overflow:hidden}
@media(max-width:1050px){.mg2ar-media-stage{max-height:none}.mg2ar-media-host-controls{overflow-x:auto;max-width:58vw}.mg2ar-media-host-controls button{flex:0 0 auto}.mg2ar-room-bar{gap:9px}}
@media(max-width:680px){.mg2ar-media-stage{min-height:220px;aspect-ratio:16/10}.mg2ar-room-bar{height:auto;min-height:62px;flex-wrap:wrap;padding:8px 0}.mg2ar-media-host-controls{order:3;width:100%;max-width:100%;margin-left:0;overflow-x:auto;padding-bottom:2px}.mg2ar-media-host-controls button{padding:7px 9px}.mg2ar-media-modal{padding:10px}.mg2ar-media-modal-card{padding:15px;border-radius:18px}.mg2ar-media-modal-head strong{font-size:20px}.mg2ar-media-modal-actions{flex-direction:column}.mg2ar-media-modal-actions button{width:100%}}


/* v1.0.15 room-first return flow */
.mg2ar-app.mg2ar-in-room .mg2ar-room-view{display:block}
.mg2ar-app.mg2ar-in-room .mg2ar-media-stage{margin-top:0}
.mg2ar-app.mg2ar-in-room .mg2ar-stage{padding-top:0}


/* v1.0.16 force lobby to fully disappear once inside the room */
.mg2ar-app.mg2ar-in-room .mg2ar-lobby{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;border:0!important}
.mg2ar-app.mg2ar-in-room .mg2ar-room-view{display:block!important;visibility:visible!important;opacity:1!important}
.mg2ar-room-view{position:relative;z-index:2}


/* v1.0.17 full-phone room + natural shared-media aspect ratio */
.mg2ar-media-stage{
  aspect-ratio:var(--mg2ar-media-ratio,16/9);
  height:auto;
  max-height:min(78vh,760px);
  max-height:min(78dvh,760px);
}
.mg2ar-media-canvas{width:100%;height:100%;}
.mg2ar-shared-image,.mg2ar-shared-video{
  object-fit:contain!important;
  object-position:center center;
  background:#000;
}
.mg2ar-media-stage[data-orientation="portrait"]{max-height:min(78vh,900px);max-height:min(78dvh,900px)}
.mg2ar-media-stage[data-media-type="audio"]{min-height:220px;max-height:360px}

@media(max-width:680px){
  html.mg2ar-room-page-open,body.mg2ar-room-page-open{overflow:hidden!important;overscroll-behavior:none}
  .mg2ar-app.mg2ar-in-room{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    max-width:none!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    background:var(--mg2ar-app-bg)!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-view,
  .mg2ar-app.mg2ar-in-room .mg2ar-room-grid,
  .mg2ar-app.mg2ar-in-room .mg2ar-stage,
  .mg2ar-app.mg2ar-in-room .mg2ar-chat{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage{
    width:100%!important;
    min-height:0!important;
    max-height:72dvh!important;
    border-radius:0!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-orientation="landscape"]{max-height:64dvh!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-orientation="portrait"]{max-height:76dvh!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="audio"]{min-height:190px!important;max-height:300px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-grid{grid-template-columns:1fr!important;min-height:0!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-stage{padding-left:12px!important;padding-right:12px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-chat{min-height:420px}
}


/* v1.0.18 mobile full-image fit + keep site copyright/footer out of active room */
@media(max-width:680px){
  /* Let shared images define their own height. This prevents the mobile stage
     max-height from cropping tall or unusual-aspect artwork. */
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"]{
    aspect-ratio:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    background:#000!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"] .mg2ar-media-canvas{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    display:block!important;
    background:#000!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"] .mg2ar-shared-image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0 auto!important;
  }

  /* The room is a full-screen app layer on phones. Keep theme footer/copyright
     elements in the page footer instead of allowing fixed/absolute footer text
     to float above shared room media. They return when the room closes because
     mg2ar-room-page-open is removed. */
  body.mg2ar-room-page-open footer,
  body.mg2ar-room-page-open #colophon,
  body.mg2ar-room-page-open .site-footer,
  body.mg2ar-room-page-open .footer,
  body.mg2ar-room-page-open .footer-area,
  body.mg2ar-room-page-open .footer-wrap,
  body.mg2ar-room-page-open .site-info,
  body.mg2ar-room-page-open .copyright,
  body.mg2ar-room-page-open .copyright-text,
  body.mg2ar-room-page-open .footer-copyright{
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}


/* v1.0.19: whole-media portrait/landscape fit + GIF chat */
.mg2ar-media-stage[data-media-type="image"],
.mg2ar-media-stage[data-media-type="video"]{
  aspect-ratio:auto!important;
  height:var(--mg2ar-media-fit-height,auto)!important;
  min-height:160px!important;
  max-height:none!important;
  overflow:hidden!important;
  background:#000!important;
}
.mg2ar-media-stage[data-media-type="image"] .mg2ar-media-canvas,
.mg2ar-media-stage[data-media-type="video"] .mg2ar-media-canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#000!important;
}
.mg2ar-media-stage[data-media-type="image"] .mg2ar-shared-image,
.mg2ar-media-stage[data-media-type="video"] .mg2ar-shared-video,
.mg2ar-media-stage[data-media-type="video"] .mg2ar-shared-frame{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  border:0!important;
  background:#000!important;
}
.mg2ar-message-body{min-width:0;max-width:100%}
.mg2ar-chat-gif{display:block!important;width:min(230px,100%)!important;height:auto!important;max-height:280px!important;object-fit:contain!important;border-radius:12px;margin-top:7px;background:#000;border:1px solid var(--mg2ar-border)}
.mg2ar-chatbox .mg2ar-chat-gif-button{width:auto!important;min-width:46px!important;padding:0 9px!important;font-size:10px!important;letter-spacing:.04em;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-accent)!important}
.mg2ar-chatbox .mg2ar-chat-gif-button:hover{border-color:var(--mg2ar-accent)!important}
@media(max-width:680px){
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"],
  .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="video"]{
    height:var(--mg2ar-media-fit-height,55dvh)!important;
    min-height:170px!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  .mg2ar-chat-gif{width:min(190px,72vw)!important;max-height:230px!important}
  .mg2ar-chatbox{gap:6px!important}
  .mg2ar-chatbox .mg2ar-chat-gif-button{min-width:44px!important;padding:0 8px!important}
}


/* v1.0.20 participant avatar tools for every logged-in room member */
.mg2ar-room-avatar-editor-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.mg2ar-room-avatar-editor-head>div:first-child{min-width:0}
.mg2ar-room-avatar-editor-head strong{display:block;font-size:14px;color:var(--mg2ar-text)!important}
.mg2ar-room-avatar-editor-head p{margin:4px 0 0!important;line-height:1.4}
.mg2ar-room-avatar-mini{width:62px;height:62px;flex:0 0 62px;border:2px solid var(--mg2ar-accent);border-radius:14px;overflow:hidden;background:var(--mg2ar-square-bg)}
.mg2ar-room-avatar-mini img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;opacity:1!important;visibility:visible!important}
.mg2ar-room-avatar-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0 12px}
.mg2ar-room-avatar-modes button{min-width:0;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-input-bg)!important;color:var(--mg2ar-muted)!important;border-radius:10px;padding:10px 8px;font-size:10px;font-weight:900;text-transform:uppercase;white-space:normal;line-height:1.2}
.mg2ar-room-avatar-modes button.is-active{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important;box-shadow:inset 0 0 0 1px var(--mg2ar-accent)}
.mg2ar-room-avatar-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.mg2ar-room-avatar-upload{position:relative;display:flex;align-items:center;justify-content:center;min-height:54px;border:1px dashed var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:11px;padding:10px;text-align:center;font-size:10px;font-weight:900;cursor:pointer;overflow:hidden;line-height:1.2}
.mg2ar-room-avatar-upload:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important}
.mg2ar-room-avatar-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}
.mg2ar-room-avatar-gallery{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:46px;margin-top:8px!important;border:1px solid var(--mg2ar-border)!important;background:var(--mg2ar-card-bg)!important;color:var(--mg2ar-text)!important;border-radius:11px!important;text-align:center!important;font-size:10px!important;font-weight:900!important}
.mg2ar-room-avatar-gallery:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important}
@media(max-width:680px){.mg2ar-avatar-popover{max-height:min(78vh,620px);overflow:auto}.mg2ar-room-avatar-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.mg2ar-room-avatar-upload-grid{grid-template-columns:1fr 1fr}.mg2ar-room-avatar-upload{min-height:58px}}


/* v1.0.21 guest participant avatar tools */
.mg2ar-guest-avatar-note{display:block;margin-top:10px;color:var(--mg2ar-muted)!important;font-size:9px;line-height:1.45;text-align:center}


/* v1.0.22 unified share-style controls + horizontal avatar editor labels */
.mg2ar-avatar-popover{
  width:min(460px,calc(100vw - 32px))!important;
  max-width:calc(100vw - 32px)!important;
}
.mg2ar-room-avatar-modes,
.mg2ar-avatar-modes{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.mg2ar-room-avatar-modes button,
.mg2ar-avatar-modes button,
.mg2ar-avatar-popover button[data-pop-mode],
.mg2ar-avatar-builder button[data-avatar-mode]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:0 12px!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  text-align:center!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  line-height:1.1!important;
  font-size:9px!important;
  letter-spacing:.06em!important;
  border-radius:0!important;
}
.mg2ar-upload-row,
.mg2ar-room-avatar-upload-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.mg2ar-upload,
.mg2ar-phone-gif-open,
.mg2ar-room-avatar-upload,
.mg2ar-room-avatar-gallery,
.mg2ar-gallery-open{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:0 12px!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  text-align:center!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  line-height:1.1!important;
  font-size:9px!important;
  font-weight:900!important;
  border-radius:0!important;
}
.mg2ar-gallery-open,
.mg2ar-room-avatar-gallery{min-height:52px!important}

/* share-button visual language applied to in-room action buttons */
.mg2ar-control,
.mg2ar-leave-button,
.mg2ar-chatbox .mg2ar-chat-gif-button,
.mg2ar-chatbox [data-mg2ar-send],
.mg2ar-audio-connection button,
.mg2ar-reactions button{
  background:var(--mg2ar-input-bg)!important;
  color:var(--mg2ar-text)!important;
  border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}
.mg2ar-control:hover,
.mg2ar-leave-button:hover,
.mg2ar-chatbox .mg2ar-chat-gif-button:hover,
.mg2ar-chatbox [data-mg2ar-send]:hover,
.mg2ar-audio-connection button:hover,
.mg2ar-reactions button:hover{
  color:var(--mg2ar-text)!important;
  border-color:var(--mg2ar-accent)!important;
  filter:none!important;
  transform:none!important;
}
.mg2ar-control.is-active,
.mg2ar-leave-button.is-active,
.mg2ar-chatbox .mg2ar-chat-gif-button.is-active,
.mg2ar-audio-connection button.is-active{
  box-shadow:inset 0 0 0 1px var(--mg2ar-accent)!important;
}
.mg2ar-leave-button{color:#fff!important}
.mg2ar-controls{
  gap:12px!important;
}
.mg2ar-control,
.mg2ar-leave-button{
  min-height:58px!important;
  padding:0 20px!important;
  font-size:10px!important;
}
.mg2ar-reactions button{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  font-size:20px!important;
}
.mg2ar-chatbox .mg2ar-chat-gif-button,
.mg2ar-chatbox [data-mg2ar-send]{
  min-width:76px!important;
  height:54px!important;
  padding:0 14px!important;
  font-size:10px!important;
}
.mg2ar-chatbox [data-mg2ar-send]{
  color:var(--mg2ar-text)!important;
  font-weight:900!important;
}
.mg2ar-audio-connection{
  display:inline-flex!important;
  align-items:stretch!important;
  gap:0!important;
  min-height:54px!important;
  padding:0!important;
  background:transparent!important;
  border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;
  overflow:hidden!important;
}
.mg2ar-audio-connection .mg2ar-audio-dot{margin:auto 14px auto 16px}
.mg2ar-audio-connection [data-mg2ar-audio-status]{
  display:flex!important;
  align-items:center!important;
  padding:0 16px 0 0!important;
  min-width:0!important;
  color:var(--mg2ar-text)!important;
  font-size:10px!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
.mg2ar-audio-connection button{
  min-width:170px!important;
  min-height:54px!important;
  padding:0 18px!important;
  font-size:10px!important;
}

@media(max-width:900px){
  .mg2ar-avatar-popover{width:min(430px,calc(100vw - 24px))!important;left:12px!important;right:auto!important}
  .mg2ar-control,
  .mg2ar-leave-button{min-height:52px!important;padding:0 16px!important}
  .mg2ar-reactions button{width:52px!important;height:52px!important;flex-basis:52px!important}
}
@media(max-width:680px){
  .mg2ar-avatar-popover{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;left:12px!important;right:12px!important;bottom:128px!important}
  .mg2ar-room-avatar-modes,
  .mg2ar-avatar-modes{grid-template-columns:1fr!important}
  .mg2ar-room-avatar-modes button,
  .mg2ar-avatar-modes button,
  .mg2ar-avatar-popover button[data-pop-mode],
  .mg2ar-avatar-builder button[data-avatar-mode]{font-size:10px!important}
  .mg2ar-upload-row,
  .mg2ar-room-avatar-upload-grid{grid-template-columns:1fr!important}
  .mg2ar-controls{gap:8px!important}
  .mg2ar-control,
  .mg2ar-leave-button{flex:0 1 auto!important;min-height:48px!important;padding:0 12px!important;border-radius:0!important}
  .mg2ar-reactions{width:100%!important;justify-content:flex-start!important}
  .mg2ar-reactions button{width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:0!important;font-size:16px!important}
  .mg2ar-chatbox .mg2ar-chat-gif-button,
  .mg2ar-chatbox [data-mg2ar-send]{min-width:58px!important;height:48px!important;padding:0 10px!important;font-size:9px!important;border-radius:0!important}
  .mg2ar-audio-connection{display:flex!important;width:100%!important;flex-wrap:wrap!important}
  .mg2ar-audio-connection [data-mg2ar-audio-status]{flex:1 1 auto!important;padding-right:12px!important}
  .mg2ar-audio-connection button{flex:0 0 100%!important;min-width:0!important}
}


/* v1.0.23 brighter in-room control text and icons */
.mg2ar-control,
.mg2ar-leave-button,
.mg2ar-chatbox .mg2ar-chat-gif-button,
.mg2ar-chatbox [data-mg2ar-send],
.mg2ar-audio-connection button,
.mg2ar-reactions button,
.mg2ar-person-actions button,
.mg2ar-media-host-controls button{
  color:#ffffff!important;
}
.mg2ar-control *,
.mg2ar-leave-button *,
.mg2ar-chatbox .mg2ar-chat-gif-button *,
.mg2ar-chatbox [data-mg2ar-send] *,
.mg2ar-audio-connection button *,
.mg2ar-reactions button *,
.mg2ar-person-actions button *,
.mg2ar-media-host-controls button *{
  color:#ffffff!important;
}
.mg2ar-control img,
.mg2ar-control svg,
.mg2ar-leave-button img,
.mg2ar-leave-button svg,
.mg2ar-chatbox .mg2ar-chat-gif-button img,
.mg2ar-chatbox .mg2ar-chat-gif-button svg,
.mg2ar-chatbox [data-mg2ar-send] img,
.mg2ar-chatbox [data-mg2ar-send] svg,
.mg2ar-audio-connection button img,
.mg2ar-audio-connection button svg,
.mg2ar-reactions button img,
.mg2ar-reactions button svg,
.mg2ar-person-actions button img,
.mg2ar-person-actions button svg,
.mg2ar-media-host-controls button img,
.mg2ar-media-host-controls button svg{
  color:#ffffff!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  filter:brightness(0) invert(1);
}
.mg2ar-control:hover,
.mg2ar-leave-button:hover,
.mg2ar-chatbox .mg2ar-chat-gif-button:hover,
.mg2ar-chatbox [data-mg2ar-send]:hover,
.mg2ar-audio-connection button:hover,
.mg2ar-reactions button:hover,
.mg2ar-person-actions button:hover,
.mg2ar-media-host-controls button:hover,
.mg2ar-control.is-active,
.mg2ar-leave-button.is-active,
.mg2ar-chatbox .mg2ar-chat-gif-button.is-active,
.mg2ar-chatbox [data-mg2ar-send].is-active,
.mg2ar-audio-connection button.is-active,
.mg2ar-reactions button.is-active,
.mg2ar-person-actions button.is-active,
.mg2ar-media-host-controls button.is-active{
  color:#ffffff!important;
}


/* v1.0.24 bulletproof reaction icons: SVG + text fallback */
.mg2ar-reactions button{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:3px!important;
  overflow:visible!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  font-size:11px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:Inter,Arial,sans-serif!important;
}
.mg2ar-reaction-glyph{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  opacity:1!important;
  visibility:visible!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  line-height:1!important;
}
.mg2ar-reaction-glyph svg{
  display:block!important;
  width:25px!important;
  height:25px!important;
  max-width:none!important;
  max-height:none!important;
  opacity:1!important;
  visibility:visible!important;
  color:#fff!important;
  fill:currentColor!important;
  stroke:currentColor;
  filter:none!important;
}
.mg2ar-reaction-fallback{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:7px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.05em!important;
  white-space:nowrap!important;
  text-transform:uppercase!important;
}
@media(max-width:680px){
  .mg2ar-reactions button{width:52px!important;height:52px!important;flex:0 0 52px!important;padding:3px!important}
  .mg2ar-reaction-glyph,.mg2ar-reaction-glyph svg{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important}
  .mg2ar-reaction-fallback{font-size:6px!important}
}


/* v1.0.25 Go Live camera avatars */
.mg2ar-room-camera-live{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:54px!important;
  margin-top:8px!important;
  padding:0 16px!important;
  border:1px solid var(--mg2ar-accent)!important;
  border-radius:0!important;
  background:var(--mg2ar-input-bg)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.mg2ar-room-camera-live.is-active{background:#17110a!important;box-shadow:inset 0 0 0 1px var(--mg2ar-accent)!important;color:#fff!important}
.mg2ar-room-camera-live:disabled{opacity:.55;cursor:wait}
.mg2ar-avatar-live-video{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
  opacity:0!important;
  visibility:visible!important;
  transition:none!important;
}
.mg2ar-avatar-live-video.is-ready{opacity:1!important}
.mg2ar-avatar-live-video.is-local{transform:scaleX(-1)!important}
.mg2ar-square.is-camera-live>.mg2ar-square-shade{z-index:2!important;pointer-events:none}
.mg2ar-camera-badge{
  position:absolute;z-index:4;left:6px;top:6px;
  padding:5px 7px;border-radius:999px;
  background:rgba(0,0,0,.82);color:#fff!important;
  font-size:8px;line-height:1;font-weight:950;letter-spacing:.04em;
  border:1px solid var(--mg2ar-accent);
}
.mg2ar-square:has(.mg2ar-avatar-live-video){box-shadow:0 0 0 2px var(--mg2ar-accent),0 0 24px color-mix(in srgb,var(--mg2ar-accent) 40%,transparent)}
@media(max-width:680px){
  .mg2ar-room-camera-live{min-height:52px!important;font-size:9px!important;white-space:normal!important;text-align:center!important}
}


/* v1.0.26 camera permission pop-up */
.mg2ar-camera-permission-modal[hidden]{display:none!important}
.mg2ar-camera-permission-modal{
  position:fixed;inset:0;z-index:1000001;
  display:flex;align-items:center;justify-content:center;
  padding:18px;background:rgba(0,0,0,.82);backdrop-filter:blur(9px);
}
.mg2ar-camera-permission-card{
  width:min(520px,100%);background:var(--mg2ar-panel-bg);
  border:1px solid var(--mg2ar-border);border-radius:22px;
  padding:22px;color:var(--mg2ar-text);box-shadow:0 30px 100px rgba(0,0,0,.7);
}
.mg2ar-camera-permission-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.mg2ar-camera-permission-head small{display:block;color:var(--mg2ar-accent)!important;font-size:9px;font-weight:950;letter-spacing:.14em}
.mg2ar-camera-permission-head strong{display:block;margin-top:4px;color:#fff!important;font-size:25px;line-height:1.1}
.mg2ar-camera-permission-head>button{
  flex:0 0 40px;width:40px;height:40px;border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;background:var(--mg2ar-input-bg)!important;color:#fff!important;
  font-size:22px;font-weight:900;
}
.mg2ar-camera-permission-icon{
  width:86px;height:86px;margin:22px auto 16px;display:flex;align-items:center;justify-content:center;
  border:2px solid var(--mg2ar-accent);border-radius:50%;background:#090909;font-size:38px;
  box-shadow:0 0 32px color-mix(in srgb,var(--mg2ar-accent) 30%,transparent);
}
.mg2ar-camera-permission-card>p{margin:0 auto 18px;max-width:420px;color:var(--mg2ar-muted)!important;font-size:13px;line-height:1.55;text-align:center}
.mg2ar-camera-permission-help{margin:14px 0;padding:14px;border:1px solid #6f3434;background:#1b0e0e;color:#fff}
.mg2ar-camera-permission-help strong{display:block;color:#ffb9b9!important;font-size:12px;margin-bottom:8px}
.mg2ar-camera-permission-help ol{margin:0;padding-left:20px;color:#fff;font-size:11px;line-height:1.65}
.mg2ar-camera-permission-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:18px}
.mg2ar-camera-permission-actions button{
  min-height:54px;border:1px solid var(--mg2ar-border)!important;border-radius:0!important;
  padding:0 16px;font-size:10px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;
}
.mg2ar-camera-permission-cancel{background:var(--mg2ar-input-bg)!important;color:#fff!important}
.mg2ar-camera-permission-allow{background:var(--mg2ar-primary)!important;color:var(--mg2ar-primary-text)!important;border-color:var(--mg2ar-accent)!important}
.mg2ar-camera-permission-allow:disabled{opacity:.6;cursor:wait}
.mg2ar-camera-permission-opened{overflow:hidden!important}
@media(max-width:680px){
  .mg2ar-camera-permission-modal{padding:12px;align-items:flex-end}
  .mg2ar-camera-permission-card{border-radius:20px 20px 0 0;padding:18px;max-height:88dvh;overflow:auto}
  .mg2ar-camera-permission-head strong{font-size:21px}
  .mg2ar-camera-permission-actions{grid-template-columns:1fr}
  .mg2ar-camera-permission-allow{order:-1}
}

/* v1.0.27 camera publish reliability */
.mg2ar-camera-permission-allow:disabled{opacity:.65;cursor:wait}


/* v1.0.28 Chrome 151 <usermedia> permission recovery + camera diagnostics */
.mg2ar-camera-capability[hidden]{display:none!important}
.mg2ar-camera-capability{display:block;flex:1 1 320px;opacity:1!important;min-width:0}
.mg2ar-camera-capability .mg2ar-camera-permission-allow{width:100%!important;min-height:64px!important;opacity:1!important}
.mg2ar-camera-diagnostics{margin:14px 0 0;padding:12px 14px;border:1px solid var(--mg2ar-border);background:#090909;color:#fff!important;font-size:10px;line-height:1.55;letter-spacing:.02em;word-break:break-word}
.mg2ar-camera-diagnostics[hidden]{display:none!important}
@media(max-width:680px){
  .mg2ar-camera-capability{flex:1 1 100%;width:100%}
  .mg2ar-camera-capability .mg2ar-camera-permission-allow{width:100%!important}
}


/* v1.0.29 speaker mic-live speaking badge consistency */
.mg2ar-talk-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;color:#fff!important;background:#0f743f!important;white-space:nowrap!important}
.mg2ar-square.is-sound-reactive .mg2ar-talk-badge{box-shadow:0 0 14px rgba(206,191,75,.45)}


/* v1.0.34 — full-width chat composer with media controls underneath */
.mg2ar-chatbox{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
}
.mg2ar-chatbox input[data-mg2ar-chat-input]{
  grid-column:1 / -1!important;
  width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  box-sizing:border-box!important;
}
.mg2ar-chatbox .mg2ar-chat-media-button,
.mg2ar-chatbox .mg2ar-chat-send-button,
.mg2ar-chatbox [data-mg2ar-chat-image],
.mg2ar-chatbox [data-mg2ar-chat-gif],
.mg2ar-chatbox [data-mg2ar-send]{
  width:100%!important;
  min-width:0!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 10px!important;
  border-radius:0!important;
  background:var(--mg2ar-input-bg)!important;
  color:#fff!important;
  border:1px solid var(--mg2ar-border)!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
}
.mg2ar-chatbox .mg2ar-chat-media-button:hover,
.mg2ar-chatbox .mg2ar-chat-send-button:hover,
.mg2ar-chatbox [data-mg2ar-chat-image]:hover,
.mg2ar-chatbox [data-mg2ar-chat-gif]:hover,
.mg2ar-chatbox [data-mg2ar-send]:hover{border-color:var(--mg2ar-accent)!important}
.mg2ar-chat-image{display:block!important;width:min(230px,100%)!important;height:auto!important;max-height:300px!important;object-fit:contain!important;border-radius:12px;margin-top:7px;background:#000;border:1px solid var(--mg2ar-border)}
@media(max-width:680px){
  .mg2ar-chatbox{grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:10px!important}
  .mg2ar-chatbox input[data-mg2ar-chat-input]{min-height:50px!important}
  .mg2ar-chatbox [data-mg2ar-chat-image],.mg2ar-chatbox [data-mg2ar-chat-gif],.mg2ar-chatbox [data-mg2ar-send]{height:48px!important;min-height:48px!important}
  .mg2ar-chat-image{width:min(190px,72vw)!important;max-height:240px!important}
}


/* v1.0.39 admin-controlled chat typography and reaction colors */
.mg2ar-message b{
  color:var(--mg2ar-chat-name-color,#fff)!important;
  font-size:var(--mg2ar-chat-name-size,11px)!important;
}
.mg2ar-message p{
  color:var(--mg2ar-chat-message-color,#888)!important;
  font-size:var(--mg2ar-chat-message-size,12px)!important;
}
.mg2ar-chatbox input[data-mg2ar-chat-input]{
  color:var(--mg2ar-chat-input-text-color,#fff)!important;
  font-size:var(--mg2ar-chat-input-text-size,12px)!important;
}
.mg2ar-chatbox input[data-mg2ar-chat-input]::placeholder{
  color:var(--mg2ar-chat-placeholder-color,#888)!important;
  opacity:1!important;
}
.mg2ar-reactions button{
  background:var(--mg2ar-reaction-bg,#050505)!important;
  border-color:var(--mg2ar-reaction-border,#292929)!important;
  color:var(--mg2ar-reaction-icon-color,#fff)!important;
  -webkit-text-fill-color:var(--mg2ar-reaction-icon-color,#fff)!important;
}
.mg2ar-reactions button .mg2ar-reaction-glyph,
.mg2ar-reactions button .mg2ar-reaction-glyph svg,
.mg2ar-reactions button .mg2ar-reaction-fallback{
  color:var(--mg2ar-reaction-icon-color,#fff)!important;
  -webkit-text-fill-color:var(--mg2ar-reaction-icon-color,#fff)!important;
}
.mg2ar-reactions button:hover,
.mg2ar-reactions button:focus-visible{
  background:var(--mg2ar-reaction-hover-bg,#111)!important;
  border-color:var(--mg2ar-reaction-hover-border,#cebf4b)!important;
  color:var(--mg2ar-reaction-hover-icon-color,#fff)!important;
  -webkit-text-fill-color:var(--mg2ar-reaction-hover-icon-color,#fff)!important;
}
.mg2ar-reactions button:hover .mg2ar-reaction-glyph,
.mg2ar-reactions button:hover .mg2ar-reaction-glyph svg,
.mg2ar-reactions button:hover .mg2ar-reaction-fallback,
.mg2ar-reactions button:focus-visible .mg2ar-reaction-glyph,
.mg2ar-reactions button:focus-visible .mg2ar-reaction-glyph svg,
.mg2ar-reactions button:focus-visible .mg2ar-reaction-fallback{
  color:var(--mg2ar-reaction-hover-icon-color,#fff)!important;
  -webkit-text-fill-color:var(--mg2ar-reaction-hover-icon-color,#fff)!important;
}


/* v1.0.40 — readable dark controls, stable Avatar control row, and online GIPHY browser */

/* Keep every dark action/control legible even when a theme or saved color setting
   makes the button background nearly black. Active gold avatar-mode tabs keep their
   configured contrast; the dark/inactive states stay white. */
.mg2ar-app .mg2ar-entry-card .mg2ar-primary,
.mg2ar-app .mg2ar-entry-card .mg2ar-primary:disabled,
.mg2ar-app .mg2ar-tabs button:not(.is-active),
.mg2ar-app .mg2ar-audio-connection button,
.mg2ar-app .mg2ar-media-submit,
.mg2ar-app .mg2ar-camera-permission-allow,
.mg2ar-app .mg2ar-avatar-modes button:not(.is-active),
.mg2ar-app .mg2ar-room-avatar-modes button:not(.is-active),
.mg2ar-app .mg2ar-avatar-popover button[data-pop-mode]:not(.is-active),
.mg2ar-app .mg2ar-upload,
.mg2ar-app .mg2ar-phone-gif-open,
.mg2ar-app .mg2ar-gallery-open,
.mg2ar-app .mg2ar-room-avatar-upload,
.mg2ar-app .mg2ar-room-avatar-gallery,
.mg2ar-app .mg2ar-room-camera-live,
.mg2ar-app .mg2ar-controls .mg2ar-control,
.mg2ar-app .mg2ar-controls .mg2ar-leave-button,
.mg2ar-app .mg2ar-person-actions button,
.mg2ar-app .mg2ar-media-host-controls button,
.mg2ar-app .mg2ar-chatbox .mg2ar-chat-media-button,
.mg2ar-app .mg2ar-chatbox .mg2ar-chat-send-button,
.mg2ar-app .mg2ar-device-gif-button,
.mg2ar-app .mg2ar-gif-choice,
.mg2ar-app .mg2ar-giphy-search button{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.mg2ar-app .mg2ar-entry-card .mg2ar-primary *,
.mg2ar-app .mg2ar-controls .mg2ar-control *,
.mg2ar-app .mg2ar-controls .mg2ar-leave-button *,
.mg2ar-app .mg2ar-room-camera-live *,
.mg2ar-app .mg2ar-gif-choice *{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* The five main room controls are one stable row. Avatar always stays directly
   after Raise Hand instead of being pushed between reaction buttons on wide screens. */
.mg2ar-controls{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  flex-wrap:nowrap!important;
  overflow:hidden!important;
}
.mg2ar-control-main-row{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:nowrap!important;
  width:100%!important;
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.mg2ar-control-main-row>.mg2ar-control,
.mg2ar-control-main-row>.mg2ar-leave-button{
  flex:0 0 auto!important;
  order:initial!important;
}
.mg2ar-controls>.mg2ar-reactions{
  width:100%!important;
  margin:0!important;
  padding-top:10px!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
}
@media(max-width:900px){
  .mg2ar-control-main-row{gap:8px!important}
}
@media(max-width:680px){
  .mg2ar-control-main-row{
    flex-wrap:wrap!important;
    overflow-x:visible!important;
  }
  .mg2ar-control-main-row>.mg2ar-control,
  .mg2ar-control-main-row>.mg2ar-leave-button{
    flex:0 1 auto!important;
  }
  .mg2ar-controls>.mg2ar-reactions{padding-top:6px!important}
}

/* Built-in online GIF browser (Room Chat only). */
.mg2ar-online-gif-panel[hidden]{display:none!important}
.mg2ar-online-gif-panel{
  margin:0 0 20px;
  padding:16px;
  border:1px solid var(--mg2ar-border);
  background:#090909;
  border-radius:16px;
}
.mg2ar-online-gif-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}
.mg2ar-online-gif-head strong{
  display:block;
  color:#fff!important;
  font-size:14px;
  font-weight:950;
}
.mg2ar-online-gif-head small{
  display:block;
  margin-top:4px;
  color:var(--mg2ar-muted)!important;
  font-size:10px;
  line-height:1.4;
}
.mg2ar-giphy-attribution{
  flex:0 0 auto;
  padding:6px 9px;
  border:1px solid #3a3a3a;
  background:#000;
  color:#fff!important;
  font-size:8px;
  font-weight:950;
  letter-spacing:.12em;
  white-space:nowrap;
}
.mg2ar-giphy-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px;
  margin:0 0 10px;
}
.mg2ar-giphy-search input{
  min-width:0;
  min-height:46px;
  border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;
  background:var(--mg2ar-input-bg)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  padding:0 13px!important;
  outline:none!important;
  font-size:11px!important;
}
.mg2ar-giphy-search input::placeholder{color:#8a8a8a!important;opacity:1!important}
.mg2ar-giphy-search input:focus{border-color:var(--mg2ar-accent)!important}
.mg2ar-giphy-search button{
  min-height:46px;
  padding:0 16px!important;
  border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;
  background:var(--mg2ar-input-bg)!important;
  font-size:9px!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
.mg2ar-giphy-search button:hover{border-color:var(--mg2ar-accent)!important}
.mg2ar-giphy-search button:disabled{opacity:.55;cursor:wait}
.mg2ar-giphy-status{
  min-height:18px;
  margin:0 0 10px;
  color:var(--mg2ar-muted)!important;
  font-size:9px;
  line-height:1.45;
}
.mg2ar-giphy-status[data-state="ready"]{color:#fff!important}
.mg2ar-giphy-status[data-state="error"]{color:#ffb4b4!important}
.mg2ar-giphy-status[data-state="setup"]{
  padding:10px 12px;
  border:1px dashed var(--mg2ar-border);
  color:#fff!important;
  background:#050505;
}
.mg2ar-giphy-grid{margin-top:4px}
.mg2ar-gif-choice.is-giphy small{color:#fff!important;-webkit-text-fill-color:#fff!important}
.mg2ar-local-gif-title{
  margin:0 0 10px;
  color:#fff!important;
  font-size:10px;
  font-weight:950;
  letter-spacing:.1em;
  text-transform:uppercase;
}
@media(max-width:680px){
  .mg2ar-online-gif-panel{padding:12px;border-radius:12px}
  .mg2ar-online-gif-head{align-items:flex-start;flex-direction:column;gap:8px}
  .mg2ar-giphy-search{grid-template-columns:1fr 1fr}
  .mg2ar-giphy-search input{grid-column:1 / -1}
  .mg2ar-giphy-search button{width:100%!important;padding:0 10px!important}
}

.mg2ar-chat-giphy-credit{display:block;margin-top:4px;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:7px!important;font-weight:950!important;letter-spacing:.12em!important;opacity:.72}

/* v1.0.41 — LiveKit camera permission/source normalization + native camera publish fallback */

/* v1.0.42 — reliable live-camera rendering inside avatar squares */

/* v1.0.43 — persistent camera video node / no-flicker rendering */
.mg2ar-camera-video-keeper{position:fixed!important;left:-10000px!important;top:0!important;width:2px!important;height:2px!important;overflow:hidden!important;opacity:.001!important;pointer-events:none!important;z-index:-1!important}
.mg2ar-square.is-camera-live>img,.mg2ar-square.is-camera-live>.mg2ar-initials{z-index:0!important}
.mg2ar-avatar-live-video{will-change:auto!important;-webkit-transform-style:preserve-3d;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important}

.mg2ar-square.is-camera-live .mg2ar-role-badge,.mg2ar-square.is-camera-live .mg2ar-you-badge,.mg2ar-square.is-camera-live .mg2ar-gif-badge,.mg2ar-square.is-camera-live .mg2ar-talk-badge,.mg2ar-square.is-camera-live .mg2ar-hand-badge,.mg2ar-square.is-camera-live .mg2ar-manage-badge{z-index:4!important}

/* v1.0.44 — Safari/WebKit stable live-camera rendering. Live video stays mounted in its avatar card; no off-screen video keeper. */
.mg2ar-camera-video-keeper{display:none!important}
.mg2ar-square.is-camera-live{contain:paint!important}
.mg2ar-avatar-live-video{pointer-events:none!important;-webkit-appearance:none!important}


/* v1.0.45 — Safari/WebKit no-flicker camera path.
   WebKit has had MediaStream painting issues around transforms/resizing and
   composited containment. Keep the live video on the simplest possible layer. */
.mg2ar-app.mg2ar-safari .mg2ar-square.is-camera-live{contain:none!important}
.mg2ar-app.mg2ar-safari .mg2ar-avatar-live-video,
.mg2ar-app.mg2ar-safari .mg2ar-avatar-live-video.is-local{
  transform:none!important;
  -webkit-transform:none!important;
  transform-style:flat!important;
  -webkit-transform-style:flat!important;
  backface-visibility:visible!important;
  -webkit-backface-visibility:visible!important;
  will-change:auto!important;
}


/* v1.0.46 — Safari one-tap Start Live Camera path. */
.mg2ar-app.mg2ar-safari .mg2ar-camera-permission-allow{background:var(--mg2ar-primary)!important;color:#fff!important;opacity:1!important}
.mg2ar-app.mg2ar-safari .mg2ar-camera-permission-actions{align-items:stretch}


/* v1.0.47 — Host Share Live button beside Lobby. */
.mg2ar-share-live[hidden]{display:none!important}
.mg2ar-share-live{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  min-height:42px!important;
  padding:0 18px!important;
  border:1px solid var(--mg2ar-border)!important;
  border-radius:0!important;
  background:var(--mg2ar-input-bg)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.mg2ar-share-live .mg2ar-live-dot{margin-right:8px!important;flex:0 0 auto!important}
.mg2ar-share-live:hover{border-color:var(--mg2ar-accent)!important;color:#fff!important}
.mg2ar-share-live.is-active{
  border-color:var(--mg2ar-accent)!important;
  background:#17110a!important;
  box-shadow:inset 0 0 0 1px var(--mg2ar-accent)!important;
  color:#fff!important;
}
.mg2ar-share-live:disabled{opacity:.55!important;cursor:wait!important}
@media(max-width:680px){
  .mg2ar-share-live{min-height:40px!important;padding:0 12px!important;font-size:9px!important}
}

/* v1.0.48 — Equal-width horizontal room-bar buttons.
   On desktop, Lobby / Share Live / Share Video / Share Image / Share MP3 / Share
   share the available row evenly and their labels never wrap vertically. */
@media (min-width:681px){
  .mg2ar-room-bar{
    display:flex!important;
    align-items:stretch!important;
    gap:10px!important;
    height:auto!important;
    min-height:72px!important;
    padding:8px 0!important;
  }
  /* Flatten the media-control wrapper so every action participates equally. */
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]){
    display:contents!important;
  }
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-pill{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:56px!important;
    height:auto!important;
    margin:0!important;
    padding:0 10px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    line-height:1.1!important;
    font-size:clamp(9px,1vw,13px)!important;
    letter-spacing:.035em!important;
  }
  .mg2ar-room-bar > .mg2ar-pill{
    border-radius:0!important;
  }
  .mg2ar-room-bar > .mg2ar-link{
    border:1px solid transparent!important;
  }
}

/* Keep labels horizontal on tablets/phones too; the row can scroll instead of
   breaking a word such as SHARE into stacked letters. */
@media (max-width:680px){
  .mg2ar-room-bar .mg2ar-link,
  .mg2ar-room-bar .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls button,
  .mg2ar-room-bar .mg2ar-pill{
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
}


/* v1.0.49 — Share Live is now separate from Go Live In My Avatar.
   The avatar camera can remain live in the participant square while the host
   independently mirrors that same LiveKit camera into the large media area. */
.mg2ar-media-stage[data-media-type="live"]{
  min-height:320px;
  background:#000!important;
}
.mg2ar-media-stage[data-media-type="live"] .mg2ar-media-canvas{
  background:#000!important;
}
.mg2ar-shared-live-wrap{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#000;
}
.mg2ar-shared-live-video{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#000!important;
}
.mg2ar-shared-live-video.is-local{transform:scaleX(-1)}
.mg2ar-app.mg2ar-safari .mg2ar-shared-live-video,
.mg2ar-app.mg2ar-safari .mg2ar-shared-live-video.is-local{transform:none!important}
.mg2ar-shared-live-badge{
  position:absolute;
  z-index:4;
  left:18px;
  top:18px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.76);
  border:1px solid rgba(255,255,255,.22);
  color:#fff!important;
  font-size:11px;
  font-weight:950;
  letter-spacing:.05em;
  pointer-events:none;
}
.mg2ar-shared-live-name{
  position:absolute;
  z-index:4;
  left:18px;
  bottom:18px;
  max-width:calc(100% - 36px);
  padding:8px 12px;
  border-radius:9px;
  background:rgba(0,0,0,.68);
  color:#fff!important;
  font-size:12px;
  font-weight:900;
  pointer-events:none;
}
.mg2ar-shared-live-waiting{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:220px;
  color:#fff!important;
  text-align:center;
}
.mg2ar-shared-live-waiting strong{font-size:18px;color:#fff!important}
.mg2ar-shared-live-waiting span{font-size:11px;color:var(--mg2ar-muted)!important}
.mg2ar-share-live.is-ready:not(.is-active){
  border-color:var(--mg2ar-accent)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mg2ar-accent) 45%,transparent)!important;
}
.mg2ar-share-live.is-active{
  background:var(--mg2ar-primary)!important;
  color:var(--mg2ar-primary-text)!important;
  border-color:var(--mg2ar-accent)!important;
}
.mg2ar-share-live.is-active .mg2ar-live-dot{background:currentColor!important}
@media(max-width:680px){
  .mg2ar-media-stage[data-media-type="live"]{min-height:220px}
  .mg2ar-shared-live-badge{left:10px;top:10px;padding:6px 9px;font-size:9px}
  .mg2ar-shared-live-name{left:10px;bottom:10px;max-width:calc(100% - 20px);font-size:10px}
}


/* v1.0.51 — Reliable Speaker 50/50 invite with explicit Accept control. */
.mg2ar-shared-live-wrap.is-split{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:1fr!important;
  gap:2px!important;
  background:var(--mg2ar-border,#222)!important;
}
.mg2ar-shared-live-pane{
  position:relative;
  min-width:0;
  min-height:0;
  width:100%;
  height:100%;
  overflow:hidden;
  background:#000;
  display:flex;
  align-items:center;
  justify-content:center;
}
.mg2ar-shared-live-wrap.is-split .mg2ar-shared-live-video{object-fit:cover!important}
.mg2ar-shared-live-wrap.is-split .mg2ar-shared-live-name{max-width:calc(100% - 36px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg2ar-split-invite-modal{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mg2ar-split-invite-modal[hidden]{display:none!important}
.mg2ar-split-invite-card{width:min(560px,100%);background:var(--mg2ar-panel-bg,#101010);border:1px solid var(--mg2ar-border,#2c2c2c);border-radius:24px;padding:30px;color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.7)}
.mg2ar-split-invite-card small{display:block;color:var(--mg2ar-accent,#f5b73f)!important;font-weight:950;letter-spacing:.13em;margin-bottom:12px}
.mg2ar-split-invite-card h2{margin:0 0 12px;color:#fff!important;font-size:30px;line-height:1.05}
.mg2ar-split-invite-card p{margin:0;color:var(--mg2ar-muted,#999)!important;font-size:14px;line-height:1.65}
.mg2ar-split-invite-card p strong{color:#fff!important}
.mg2ar-split-invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.mg2ar-split-invite-actions button{min-height:54px;border:1px solid var(--mg2ar-border,#333)!important;background:#050505!important;color:#fff!important;font-weight:950;letter-spacing:.04em}
.mg2ar-split-invite-actions button.is-primary{background:var(--mg2ar-accent,#f5b73f)!important;color:#000!important;border-color:var(--mg2ar-accent,#f5b73f)!important}
.mg2ar-person-actions [data-mg2ar-invite-split]{border-color:var(--mg2ar-accent)!important;color:#fff!important}
@media(max-width:680px){
  .mg2ar-shared-live-wrap.is-split{grid-template-columns:1fr 1fr!important}
  .mg2ar-shared-live-wrap.is-split .mg2ar-shared-live-badge{font-size:7px;padding:5px 7px}
  .mg2ar-shared-live-wrap.is-split .mg2ar-shared-live-name{font-size:9px;padding:6px 7px;max-width:calc(100% - 18px);left:9px;bottom:9px}
  .mg2ar-split-invite-card{border-radius:18px;padding:22px}
  .mg2ar-split-invite-card h2{font-size:24px}
  .mg2ar-split-invite-actions{grid-template-columns:1fr}
}

/* v1.0.51 — Make the Speaker acceptance action impossible to lose behind
   theme/button overrides. The invite is also restored by room heartbeat. */
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  visibility:visible!important;
  opacity:1!important;
  white-space:nowrap!important;
  min-width:0!important;
  background:var(--mg2ar-accent,#f5b73f)!important;
  color:#000!important;
  border-color:var(--mg2ar-accent,#f5b73f)!important;
}
.mg2ar-split-invite-actions [data-mg2ar-split-invite-decline]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  visibility:visible!important;
  opacity:1!important;
}


/* v1.0.52 — Speaker invite button always uses bright white text, regardless
   of theme accent/button overrides. */
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept],
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept] *,
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept]:hover,
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept]:focus,
.mg2ar-split-invite-actions [data-mg2ar-split-invite-accept]:active{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.65)!important;
}


/* v1.0.54 — Cash App-style member tipping. Payments are completed by Cash App;
   this UI intentionally does not claim or record unverified payments. */
.mg2ar-tip-settings-open{
  width:100%!important;margin-top:8px!important;border:1px solid var(--mg2ar-accent)!important;
  background:#050505!important;color:#fff!important;font-weight:950!important;letter-spacing:.04em!important;
}
.mg2ar-tip-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  max-width:100%;margin:7px auto 0!important;padding:7px 9px!important;border-radius:999px!important;
  border:1px solid var(--mg2ar-accent)!important;background:#050505!important;color:#fff!important;
  -webkit-text-fill-color:#fff!important;font-size:8px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:.035em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.mg2ar-tip-button:hover{background:var(--mg2ar-accent)!important;color:#050505!important;-webkit-text-fill-color:#050505!important}
.mg2ar-tip-modal,.mg2ar-tip-settings-modal{
  position:fixed;inset:0;z-index:1000002;display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(0,0,0,.82);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)
}
.mg2ar-tip-modal[hidden],.mg2ar-tip-settings-modal[hidden]{display:none!important}
.mg2ar-tip-card{width:min(520px,100%);background:#101010;border:1px solid var(--mg2ar-border,#292929);border-radius:24px;padding:28px;color:#fff;box-shadow:0 30px 100px rgba(0,0,0,.72)}
.mg2ar-tip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.mg2ar-tip-head small{display:block;color:var(--mg2ar-accent)!important;font-size:9px;font-weight:950;letter-spacing:.13em}
.mg2ar-tip-head h2{margin:7px 0 0;color:#fff!important;font-size:29px;line-height:1.05}
.mg2ar-tip-head>button{flex:0 0 44px;width:44px;height:44px;border:1px solid var(--mg2ar-border)!important;background:#050505!important;color:#fff!important;font-size:22px}
.mg2ar-tip-card>p{margin:18px 0;color:var(--mg2ar-muted)!important;line-height:1.6;font-size:14px}
.mg2ar-tip-card>p strong,.mg2ar-tip-card [data-mg2ar-tip-cashtag]{color:#fff!important;font-weight:950}
.mg2ar-tip-amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}
.mg2ar-tip-amounts button{min-height:52px;border:1px solid var(--mg2ar-border)!important;background:#050505!important;color:#fff!important;font-weight:950;font-size:14px}
.mg2ar-tip-amounts button.is-active,.mg2ar-tip-amounts button:hover{border-color:var(--mg2ar-accent)!important;box-shadow:inset 0 0 0 1px var(--mg2ar-accent)}
.mg2ar-tip-custom{display:block;color:#fff!important;font-size:11px;font-weight:900}
.mg2ar-tip-custom input{display:block;width:100%;margin-top:7px;min-height:52px;border:1px solid var(--mg2ar-border)!important;background:#050505!important;color:#fff!important;-webkit-text-fill-color:#fff!important;padding:0 14px;font-size:15px}
.mg2ar-tip-disclaimer{margin:14px 0;color:var(--mg2ar-muted)!important;font-size:10px;line-height:1.55}
.mg2ar-tip-open-cashapp{width:100%!important;min-height:56px!important;border:1px solid var(--mg2ar-accent)!important;background:var(--mg2ar-accent)!important;color:#050505!important;font-weight:950!important;letter-spacing:.04em!important}
.mg2ar-tip-burst{position:fixed;left:50%;top:50%;z-index:1000005;pointer-events:none}
.mg2ar-tip-burst span{position:absolute;color:var(--mg2ar-accent,#cebf4b);font-size:30px;font-weight:950;animation:mg2artipburst 1.5s ease-out var(--d,0s) forwards}
@keyframes mg2artipburst{0%{opacity:0;transform:translate(0,0) scale(.5)}15%{opacity:1}100%{opacity:0;transform:translate(var(--x,0),-180px) scale(1.35) rotate(12deg)}}
@media(max-width:680px){
  .mg2ar-tip-card{padding:22px;border-radius:18px}.mg2ar-tip-head h2{font-size:24px}.mg2ar-tip-amounts{grid-template-columns:repeat(2,1fr)}
  .mg2ar-tip-button{font-size:8px!important;padding:7px 8px!important}
}


/* v1.0.54 — Cash App Tip Settings button visibility/polish.
   Keep this control readable even when the site/theme overrides generic button colors. */
.mg2ar-tip-settings-modal [data-mg2ar-tip-settings-save],
.mg2ar-tip-settings-modal button[data-mg2ar-tip-settings-save] {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  background:#050505 !important;
  border:1px solid var(--mg2ar-accent) !important;
  text-shadow:none !important;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease !important;
}
.mg2ar-tip-settings-modal [data-mg2ar-tip-settings-save] *,
.mg2ar-tip-settings-modal button[data-mg2ar-tip-settings-save] * {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}
.mg2ar-tip-settings-modal [data-mg2ar-tip-settings-save]:hover,
.mg2ar-tip-settings-modal [data-mg2ar-tip-settings-save]:focus-visible,
.mg2ar-tip-settings-modal [data-mg2ar-tip-settings-save]:active {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:var(--mg2ar-accent) !important;
  box-shadow:0 0 0 1px var(--mg2ar-accent), 0 0 18px color-mix(in srgb, var(--mg2ar-accent) 65%, transparent) !important;
  transform:translateY(-1px);
}

/* v1.0.55 — Cash App tip modal readability/polish.
   Keep all interactive tip controls readable even when a theme overrides button text. */
.mg2ar-tip-modal [data-mg2ar-tip-open-cashapp],
.mg2ar-tip-modal button[data-mg2ar-tip-open-cashapp] {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  background:#050505 !important;
  border:1px solid var(--mg2ar-accent) !important;
  text-shadow:none !important;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease !important;
}
.mg2ar-tip-modal [data-mg2ar-tip-open-cashapp] *,
.mg2ar-tip-modal button[data-mg2ar-tip-open-cashapp] * {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  fill:#ffffff !important;
  stroke:#ffffff !important;
  opacity:1 !important;
}
.mg2ar-tip-modal [data-mg2ar-tip-open-cashapp]:hover,
.mg2ar-tip-modal [data-mg2ar-tip-open-cashapp]:focus-visible,
.mg2ar-tip-modal [data-mg2ar-tip-open-cashapp]:active {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:var(--mg2ar-accent) !important;
  box-shadow:0 0 0 1px var(--mg2ar-accent), 0 0 18px rgba(206,191,75,.36) !important;
  transform:translateY(-1px);
}

.mg2ar-tip-modal [data-tip-amount],
.mg2ar-tip-modal button[data-tip-amount] {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.mg2ar-tip-modal [data-tip-amount]:hover,
.mg2ar-tip-modal [data-tip-amount]:focus-visible,
.mg2ar-tip-modal [data-tip-amount].is-active {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:var(--mg2ar-accent) !important;
}

.mg2ar-tip-modal [data-mg2ar-tip-custom],
.mg2ar-tip-modal input[data-mg2ar-tip-custom] {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  caret-color:#ffffff !important;
  opacity:1 !important;
}
.mg2ar-tip-modal input[data-mg2ar-tip-custom]::placeholder {
  color:#bdbdbd !important;
  -webkit-text-fill-color:#bdbdbd !important;
  opacity:1 !important;
}


/* v1.0.56 — 2MG split-screen emblem and compact TIP badge. */
.mg2ar-shared-live-wrap{position:relative}
.mg2ar-5050-emblem{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%) translateY(16px);
  width:clamp(118px,18vw,210px);
  max-width:38%;
  z-index:7;
  pointer-events:none;
  opacity:0;
  filter:drop-shadow(0 10px 35px rgba(0,0,0,.55));
  animation:mg2ar5050fade .85s ease-out .12s forwards;
}
@keyframes mg2ar5050fade{
  0%{opacity:0;transform:translate(-50%,-50%) translateY(20px) scale(.92)}
  100%{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}
}
.mg2ar-tip-button,
.mg2ar-tip-button:link,
.mg2ar-tip-button:visited,
.mg2ar-tip-button span{
  min-width:54px!important;
  min-height:36px!important;
  padding:8px 13px!important;
  border-radius:12px!important;
  border:2px solid #f2c14e!important;
  background:linear-gradient(180deg, rgba(16,16,16,.98), rgba(0,0,0,1))!important;
  color:#f2c14e!important;
  -webkit-text-fill-color:#f2c14e!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 10px rgba(242,193,78,.16)!important;
  box-shadow:inset 0 0 0 1px rgba(242,193,78,.28), 0 0 0 1px rgba(242,193,78,.24), 0 0 18px rgba(242,193,78,.16)!important;
}
.mg2ar-tip-button:hover,
.mg2ar-tip-button:focus-visible,
.mg2ar-tip-button:active{
  background:linear-gradient(180deg, rgba(24,24,24,1), rgba(6,6,6,1))!important;
  color:#ffd86b!important;
  -webkit-text-fill-color:#ffd86b!important;
  border-color:#ffd86b!important;
  text-shadow:0 0 14px rgba(255,216,107,.26)!important;
  box-shadow:inset 0 0 0 1px rgba(255,216,107,.45), 0 0 0 1px rgba(255,216,107,.28), 0 0 22px rgba(255,216,107,.22)!important;
}
@media(max-width:680px){
  .mg2ar-5050-emblem{width:min(134px,42vw);max-width:46%}
  .mg2ar-tip-button{min-width:48px!important;min-height:33px!important;padding:7px 11px!important;font-size:10px!important}
}


/* v1.0.57 — Pass the Crown host-transfer control. */
.mg2ar-person-actions .mg2ar-pass-crown,
.mg2ar-person-actions [data-mg2ar-pass-crown]{
  border:1px solid var(--mg2ar-accent,#cebf4b)!important;
  background:#050505!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:950!important;
  letter-spacing:.045em!important;
  box-shadow:inset 0 0 0 1px rgba(206,191,75,.18)!important;
}
.mg2ar-person-actions .mg2ar-pass-crown:hover,
.mg2ar-person-actions [data-mg2ar-pass-crown]:hover,
.mg2ar-person-actions [data-mg2ar-pass-crown]:focus-visible{
  border-color:var(--mg2ar-accent,#cebf4b)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 0 16px rgba(206,191,75,.25), inset 0 0 0 1px rgba(206,191,75,.3)!important;
}


/* v1.0.58 — force vivid gold default styling for compact TIP badge/buttons. */
.mg2ar-tip-button, .mg2ar-tip-button *, .mg2ar-person-card .mg2ar-tip-button, .mg2ar-person-card .mg2ar-tip-button *{
  color:#f2c14e!important;
  -webkit-text-fill-color:#f2c14e!important;
  border-color:#f2c14e!important;
}


/* v1.0.59 — All participant-management buttons glow gold on hover/focus. */
.mg2ar-person-actions button{
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, filter .18s ease!important;
}
.mg2ar-person-actions button:not(:disabled):hover,
.mg2ar-person-actions button:not(:disabled):focus-visible{
  border-color:var(--mg2ar-accent,#cebf4b)!important;
  box-shadow:0 0 16px rgba(206,191,75,.25), inset 0 0 0 1px rgba(206,191,75,.30)!important;
  transform:translateY(-1px)!important;
  filter:brightness(1.04)!important;
}
.mg2ar-person-actions [data-mg2ar-invite-split]{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}


/* v1.0.61 — Private room creation + access code flow. */
.mg2ar-private-create{margin:14px 0 0;padding:14px;border:1px solid var(--mg2ar-border,#2b2b2b);background:#080808}
.mg2ar-private-create[hidden],.mg2ar-private-code-row[hidden],.mg2ar-private-room-status[hidden]{display:none!important}
.mg2ar-private-toggle{display:flex!important;align-items:center;gap:10px;color:#fff!important;font-weight:900!important;cursor:pointer}
.mg2ar-private-toggle input{width:18px!important;height:18px!important;min-height:18px!important;margin:0!important;accent-color:var(--mg2ar-accent,#cebf4b)}
.mg2ar-private-code-row{margin-top:14px}
.mg2ar-private-code-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px}
.mg2ar-private-code-input input{margin:0!important;text-transform:uppercase;letter-spacing:.14em;font-weight:900}
.mg2ar-private-code-input button{min-width:110px;border:1px solid var(--mg2ar-accent,#cebf4b)!important;background:#050505!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:900!important}
.mg2ar-private-code-row small{display:block;margin-top:7px;color:var(--mg2ar-muted,#999)!important;line-height:1.45}
.mg2ar-room-card.is-private{border-color:color-mix(in srgb,var(--mg2ar-accent,#cebf4b) 55%,var(--mg2ar-border,#292929))!important}
.mg2ar-room-card.is-private:hover,.mg2ar-room-card.is-private:focus-visible{box-shadow:0 0 20px rgba(206,191,75,.16)!important;border-color:var(--mg2ar-accent,#cebf4b)!important}
.mg2ar-private-room-status{display:inline-flex;align-items:center;margin-top:10px;padding:8px 11px;border:1px solid rgba(206,191,75,.5);background:#080808;color:#f2c14e!important;font-size:10px;font-weight:900;letter-spacing:.055em}
.mg2ar-private-room-modal{position:fixed;inset:0;z-index:1000006;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.84);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.mg2ar-private-room-modal[hidden]{display:none!important}
.mg2ar-private-room-card{width:min(540px,100%);background:#101010;border:1px solid var(--mg2ar-border,#2b2b2b);border-radius:24px;padding:28px;color:#fff;box-shadow:0 30px 100px rgba(0,0,0,.74)}
.mg2ar-private-room-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.mg2ar-private-room-head small{display:block;color:var(--mg2ar-accent,#cebf4b)!important;font-size:9px;font-weight:950;letter-spacing:.13em}
.mg2ar-private-room-head h2{margin:7px 0 0;color:#fff!important;font-size:30px;line-height:1.05}
.mg2ar-private-room-head>button{flex:0 0 46px;width:46px;height:46px;border:1px solid var(--mg2ar-border,#333)!important;background:#050505!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:22px}
.mg2ar-private-room-card>p{margin:20px 0;color:var(--mg2ar-muted,#aaa)!important;line-height:1.6}.mg2ar-private-room-card>p strong{color:#fff!important}
.mg2ar-private-room-card label{display:block;color:#fff!important;font-weight:900}.mg2ar-private-room-card label input{display:block;width:100%;margin-top:8px;min-height:54px;border:1px solid var(--mg2ar-border,#333)!important;background:#050505!important;color:#fff!important;-webkit-text-fill-color:#fff!important;padding:0 14px;font-size:18px;letter-spacing:.12em}
.mg2ar-private-room-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.mg2ar-private-room-actions button{min-height:54px;border:1px solid var(--mg2ar-border,#333)!important;background:#050505!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:950!important}.mg2ar-private-room-actions button.is-primary{border-color:var(--mg2ar-accent,#cebf4b)!important;box-shadow:0 0 16px rgba(206,191,75,.14)!important}
.mg2ar-private-room-actions button:hover,.mg2ar-private-room-actions button:focus-visible,.mg2ar-private-code-input button:hover,.mg2ar-private-code-input button:focus-visible{border-color:var(--mg2ar-accent,#cebf4b)!important;box-shadow:0 0 18px rgba(206,191,75,.22)!important}
@media(max-width:680px){.mg2ar-private-code-input{grid-template-columns:1fr}.mg2ar-private-code-input button{min-height:48px}.mg2ar-private-room-card{padding:22px;border-radius:18px}.mg2ar-private-room-head h2{font-size:25px}.mg2ar-private-room-actions{grid-template-columns:1fr}}


/* v1.0.62 — keep lobby tabs and avatar-mode labels readable in every state. */
.mg2ar-app .mg2ar-tabs button[data-mg2ar-mode="listener"],
.mg2ar-app .mg2ar-tabs button[data-mg2ar-mode="listener"]:hover,
.mg2ar-app .mg2ar-tabs button[data-mg2ar-mode="listener"]:focus-visible,
.mg2ar-app .mg2ar-tabs button[data-mg2ar-mode="listener"].is-active {
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  opacity:1!important;
  text-shadow:0 1px 2px rgba(0,0,0,.65)!important;
}

/* All three avatar mode buttons now share the same Photo-style look:
   black background, bright white text, and a gold outline that stays visible. */
.mg2ar-app .mg2ar-room-avatar-modes button,
.mg2ar-app .mg2ar-avatar-builder button[data-avatar-mode],
.mg2ar-app .mg2ar-avatar-popover button[data-pop-mode] {
  background:#050505!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  opacity:1!important;
  border:2px solid #ffd86b!important;
  text-shadow:none!important;
  box-shadow:inset 0 0 0 1px rgba(255,216,107,.16), 0 0 16px rgba(255,216,107,.14)!important;
}

/* Selection keeps the same style instead of changing colors. */
.mg2ar-app .mg2ar-room-avatar-modes button.is-active,
.mg2ar-app .mg2ar-avatar-builder button[data-avatar-mode].is-active,
.mg2ar-app .mg2ar-avatar-popover button[data-pop-mode].is-active {
  background:#050505!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  opacity:1!important;
  border-color:#ffd86b!important;
  box-shadow:inset 0 0 0 2px #ffd86b, 0 0 18px rgba(255,216,107,.28)!important;
}

/* v1.0.63 safeguard: keep Photo / GIF / GIF WHEN SPEAKING labels white and visible. */
.mg2ar-app .mg2ar-room-avatar-modes button *,
.mg2ar-app .mg2ar-avatar-builder button[data-avatar-mode] *,
.mg2ar-app .mg2ar-avatar-popover button[data-pop-mode] *{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}


/* v1.0.64 — placeholder avatar defaults: thin gold outline + white initials. */
.mg2ar-app .mg2ar-message-avatar{
  background:#111111!important;
  border:1px solid #f2c14e!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  box-shadow:inset 0 0 0 1px rgba(242,193,78,.12)!important;
}
.mg2ar-app .mg2ar-initials,
.mg2ar-app .mg2ar-message-avatar .mg2ar-initials,
.mg2ar-app .mg2ar-message-avatar span,
.mg2ar-app .mg2ar-message-avatar strong{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.mg2ar-app .mg2ar-initials{
  background:var(--mg2ar-square-bg)!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}


/* v1.0.65 — every Speaker/Moderator keeps a visible TIP badge. */
.mg2ar-app .mg2ar-tip-button,
.mg2ar-app .mg2ar-tip-button.is-unconfigured{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  color:#f2c14e!important;
  -webkit-text-fill-color:#f2c14e!important;
  border-color:#f2c14e!important;
  background:linear-gradient(180deg,rgba(16,16,16,.98),rgba(0,0,0,1))!important;
}
.mg2ar-app .mg2ar-tip-button.is-unconfigured{
  cursor:pointer!important;
}
.mg2ar-app .mg2ar-tip-button:hover,
.mg2ar-app .mg2ar-tip-button:focus-visible{
  color:#ffd86b!important;
  -webkit-text-fill-color:#ffd86b!important;
  border-color:#ffd86b!important;
  box-shadow:inset 0 0 0 1px rgba(255,216,107,.45),0 0 0 1px rgba(255,216,107,.28),0 0 22px rgba(255,216,107,.22)!important;
}


/* v1.0.66 — Splash preview / Audience text-chat-only mode */
.mg2ar-demo-guest-banner{
  position:sticky;top:0;z-index:80;
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  padding:10px 16px;background:#050505;border-bottom:1px solid var(--mg2ar-primary,#cebf4b);
  color:#fff;text-align:center;font-size:12px;letter-spacing:.02em
}
.mg2ar-demo-guest-banner strong{color:var(--mg2ar-primary,#cebf4b);letter-spacing:.12em}
.mg2ar-demo-guest [data-mg2ar-mode="host"],
.mg2ar-demo-guest .mg2ar-avatar-builder,
.mg2ar-demo-guest .mg2ar-reactions,
.mg2ar-demo-guest [data-mg2ar-hand],
.mg2ar-demo-guest [data-mg2ar-mic],
.mg2ar-demo-guest [data-mg2ar-avatar-toggle],
.mg2ar-demo-guest [data-mg2ar-camera-live],
.mg2ar-demo-guest [data-mg2ar-share-live],
.mg2ar-demo-guest [data-mg2ar-media-host-controls],
.mg2ar-demo-guest [data-mg2ar-chat-gif],
.mg2ar-demo-guest [data-mg2ar-chat-image],
.mg2ar-demo-guest [data-mg2ar-notifications],
.mg2ar-demo-guest [data-mg2ar-share],
.mg2ar-demo-guest .mg2ar-tip-button,
.mg2ar-demo-guest [data-mg2ar-gif-gallery],
.mg2ar-demo-guest [data-mg2ar-tip-modal],
.mg2ar-demo-guest [data-mg2ar-tip-settings-modal],
.mg2ar-demo-guest [data-mg2ar-person-menu],
.mg2ar-demo-guest [data-mg2ar-split-invite-modal],
.mg2ar-demo-guest [data-mg2ar-camera-permission-modal]{
  display:none!important
}
.mg2ar-demo-guest .mg2ar-tabs{grid-template-columns:1fr}
.mg2ar-demo-guest .mg2ar-entry-card:before{
  content:"AUDIENCE PREVIEW";
  display:block;margin:0 0 12px;padding:7px 10px;border:1px solid var(--mg2ar-primary,#cebf4b);
  color:var(--mg2ar-primary,#cebf4b);font-size:11px;font-weight:900;letter-spacing:.12em;text-align:center
}
.mg2ar-demo-guest .mg2ar-control-main-row{justify-content:flex-start}
.mg2ar-demo-guest .mg2ar-chatbox{grid-template-columns:1fr auto}
.mg2ar-demo-guest .mg2ar-chatbox [data-mg2ar-send]{display:inline-flex!important}
.mg2ar-demo-guest .mg2ar-guest-avatar-note{display:none!important}
@media(max-width:700px){
  .mg2ar-demo-guest-banner{font-size:11px;line-height:1.35}
}

/* v1.0.67 — visual sync with 2MG Splash Registration v1.0.4
   Keeps the existing app copy and behavior while carrying the same luxury
   black / metallic-gold / soft-glow design language into the full app. */
.mg2ar-app{
  --mg2ar-app-bg:#050505;
  --mg2ar-lobby-bg:#050505;
  --mg2ar-stage-bg:#060606;
  --mg2ar-chat-bg:#080808;
  --mg2ar-panel-bg:#0b0b0b;
  --mg2ar-card-bg:#0d0d0d;
  --mg2ar-control-bg:#0a0a0a;
  --mg2ar-square-bg:#111111;
  --mg2ar-input-bg:#040404;
  --mg2ar-border:#2a281b;
  background:
    radial-gradient(circle at 88% 4%,rgba(206,191,75,.11),transparent 19%),
    radial-gradient(circle at 18% 9%,rgba(206,191,75,.055),transparent 22%),
    linear-gradient(180deg,#090909 0%,#030303 100%)!important;
  border:1px solid rgba(206,191,75,.18)!important;
  border-radius:18px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.018)!important;
}
.mg2ar-app:before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 28%);
}
.mg2ar-app>.mg2ar-notice,.mg2ar-app>.mg2ar-lobby,.mg2ar-app>.mg2ar-room-view,.mg2ar-app>.mg2ar-demo-guest-banner{position:relative;z-index:1}

/* Lobby shell / header */
.mg2ar-lobby{background:transparent!important}
.mg2ar-shell{max-width:1380px!important;padding:0 32px 96px!important}
.mg2ar-topbar{
  min-height:88px!important;
  border-bottom:1px solid rgba(206,191,75,.25)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)!important;
}
.mg2ar-brand{font-size:18px!important;font-weight:950!important;letter-spacing:.09em!important;text-shadow:0 0 15px rgba(255,255,255,.04)}
.mg2ar-brand-dot{color:var(--mg2ar-accent)!important;text-shadow:0 0 16px rgba(206,191,75,.45)}
.mg2ar-pill{
  border:1px solid rgba(206,191,75,.62)!important;
  border-radius:4px!important;
  background:linear-gradient(180deg,#111,#080808)!important;
  color:#fff!important;
  padding:11px 18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.mg2ar-pill:hover{color:var(--mg2ar-accent)!important;box-shadow:0 0 22px rgba(206,191,75,.16)!important}

/* Hero + marketing side */
.mg2ar-hero{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;gap:54px!important;align-items:center!important;padding:56px 0 48px!important}
.mg2ar-eyebrow,.mg2ar-live-heading{color:var(--mg2ar-accent)!important;letter-spacing:.19em!important}
.mg2ar-hero h1{
  margin:14px 0 20px!important;
  font-size:clamp(58px,6.4vw,102px)!important;
  line-height:.9!important;
  letter-spacing:-.06em!important;
  text-transform:uppercase!important;
  color:#f7f7f7!important;
  text-shadow:0 0 16px rgba(255,255,255,.035)!important;
}
.mg2ar-hero h1 br{display:block}
.mg2ar-hero-copy>p{max-width:690px!important;color:#bdbdbd!important;font-size:16px!important;line-height:1.72!important}
.mg2ar-chips{gap:12px!important;margin-top:28px!important}
.mg2ar-chips span{
  border:1px solid rgba(206,191,75,.45)!important;
  border-radius:12px!important;
  padding:11px 15px!important;
  background:linear-gradient(180deg,#111 0%,#070707 100%)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 10px 28px rgba(0,0,0,.18)!important;
}

/* Join/Create card */
.mg2ar-entry-card{
  position:relative!important;
  border:1px solid rgba(206,191,75,.62)!important;
  border-radius:30px!important;
  padding:24px!important;
  background:
    radial-gradient(circle at 50% 0,rgba(255,255,255,.035),transparent 28%),
    linear-gradient(180deg,rgba(24,24,24,.94),rgba(9,9,9,.97))!important;
  box-shadow:0 26px 64px rgba(0,0,0,.38),0 0 44px rgba(206,191,75,.07),inset 0 0 0 1px rgba(255,255,255,.02)!important;
  overflow:hidden!important;
}
.mg2ar-entry-card:after{content:"";position:absolute;left:14%;right:14%;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,#f4d96f,transparent);box-shadow:0 0 14px rgba(244,217,111,.65);pointer-events:none}
.mg2ar-tabs{
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  padding:4px!important;
  border:1px solid rgba(206,191,75,.3)!important;
  border-radius:14px!important;
  background:#050505!important;
  margin-bottom:20px!important;
}
.mg2ar-tabs button{
  border:1px solid transparent!important;
  border-radius:10px!important;
  padding:12px 12px!important;
  color:#fff!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
.mg2ar-tabs button.is-active{
  border-color:rgba(206,191,75,.68)!important;
  background:linear-gradient(135deg,#f5e391,#d5b64e 48%,#b68b2c 100%)!important;
  color:#111!important;
  box-shadow:0 0 24px rgba(206,191,75,.18)!important;
}
.mg2ar-entry-card>label{font-size:12px!important;letter-spacing:.09em!important;margin:15px 0!important}
.mg2ar-entry-card input[type=text],.mg2ar-private-code-input input{
  min-height:50px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:5px!important;
  background:#040404!important;
  color:#fff!important;
  padding:13px 14px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.mg2ar-entry-card input[type=text]:focus,.mg2ar-private-code-input input:focus{border-color:rgba(206,191,75,.8)!important;box-shadow:0 0 0 2px rgba(206,191,75,.08)!important}
.mg2ar-field-help{font-size:10px!important;color:#a9a9a9!important;line-height:1.5!important}
.mg2ar-avatar-builder{
  border:1px solid rgba(206,191,75,.28)!important;
  border-radius:16px!important;
  padding:16px!important;
  background:linear-gradient(180deg,#111,#080808)!important;
}
.mg2ar-avatar-preview{border:1px solid var(--mg2ar-accent)!important;border-radius:12px!important;box-shadow:0 0 20px rgba(206,191,75,.13)!important}
.mg2ar-avatar-modes button,.mg2ar-avatar-popover button,.mg2ar-gallery-open,.mg2ar-tip-settings-open,.mg2ar-phone-gif-open{
  border:1px solid rgba(206,191,75,.55)!important;
  border-radius:4px!important;
  background:linear-gradient(180deg,#0e0e0e,#050505)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.mg2ar-avatar-modes button:hover,.mg2ar-avatar-popover button:hover,.mg2ar-gallery-open:hover,.mg2ar-tip-settings-open:hover,.mg2ar-phone-gif-open:hover{color:var(--mg2ar-accent)!important;box-shadow:0 0 18px rgba(206,191,75,.14)!important}
.mg2ar-avatar-modes button.is-active,.mg2ar-avatar-popover button.is-active{border-color:#f2d56c!important;color:#fff!important;box-shadow:0 0 0 1px rgba(242,213,108,.18),0 0 18px rgba(242,213,108,.12)!important}
.mg2ar-upload{border:1px dashed rgba(206,191,75,.36)!important;border-radius:5px!important;background:#070707!important;color:#d5d5d5!important}
.mg2ar-primary{
  min-height:56px!important;
  border:1px solid rgba(206,191,75,.82)!important;
  border-radius:5px!important;
  background:linear-gradient(135deg,#f8e7a1 0%,#dfc05f 36%,#bd902f 70%,#f3dc84 100%)!important;
  color:#111!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 25px rgba(208,176,67,.14),inset 0 1px 0 rgba(255,255,255,.35)!important;
}
.mg2ar-primary:hover{filter:none!important;transform:translateY(-1px);box-shadow:0 0 28px rgba(206,191,75,.24),0 10px 25px rgba(208,176,67,.16)!important}

/* Live room cards */
.mg2ar-live-heading{margin:2px 0 18px!important;font-size:13px!important}
.mg2ar-live-dot{box-shadow:0 0 14px rgba(225,67,67,.5)}
.mg2ar-room-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.mg2ar-room-card{
  position:relative!important;
  min-height:160px!important;
  border:1px solid rgba(206,191,75,.5)!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 100% 100%,rgba(206,191,75,.12),transparent 38%),linear-gradient(180deg,#111,#080808)!important;
  padding:20px!important;
  box-shadow:0 16px 38px rgba(0,0,0,.25)!important;
  overflow:hidden!important;
}
.mg2ar-room-card:hover{transform:translateY(-3px)!important;border-color:#e8cd66!important;box-shadow:0 18px 45px rgba(0,0,0,.34),0 0 26px rgba(206,191,75,.11)!important}
.mg2ar-room-card small{color:#e7ca60!important;letter-spacing:.14em!important}
.mg2ar-room-card h3{font-size:19px!important;margin:12px 0 7px!important}
.mg2ar-room-card p{font-size:12px!important;color:#aaa!important}

/* In-room stage / chat sync */
.mg2ar-room-view{background:#050505!important}
.mg2ar-room-grid{grid-template-columns:minmax(0,1fr) 350px!important;background:#050505!important}
.mg2ar-stage{
  background:radial-gradient(circle at 10% 0,rgba(206,191,75,.055),transparent 23%),linear-gradient(180deg,#080808,#040404)!important;
  border-right:1px solid rgba(206,191,75,.18)!important;
}
.mg2ar-room-bar{border-bottom:1px solid rgba(206,191,75,.22)!important}
.mg2ar-room-title h2{color:#fff!important;text-shadow:0 0 16px rgba(255,255,255,.03)!important}
.mg2ar-square{border:1px solid var(--mg2ar-accent)!important;border-radius:16px!important;box-shadow:0 10px 30px rgba(0,0,0,.34),0 0 0 1px rgba(206,191,75,.08)!important}
.mg2ar-person-button:hover .mg2ar-square{box-shadow:0 14px 34px rgba(0,0,0,.4),0 0 22px rgba(206,191,75,.13)!important}
.mg2ar-group-label{color:#d6c35a!important;letter-spacing:.16em!important}
.mg2ar-controls{background:linear-gradient(180deg,rgba(9,9,9,.98),rgba(3,3,3,.99))!important;border-top:1px solid rgba(206,191,75,.22)!important;box-shadow:0 -14px 38px rgba(0,0,0,.32)!important}
.mg2ar-control,.mg2ar-reactions button,.mg2ar-media-host-controls button{
  border:1px solid rgba(206,191,75,.48)!important;
  background:linear-gradient(180deg,#111,#070707)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.mg2ar-control:hover,.mg2ar-reactions button:hover,.mg2ar-media-host-controls button:hover{border-color:#e5ca61!important;box-shadow:0 0 18px rgba(206,191,75,.12)!important}
.mg2ar-chat{
  background:linear-gradient(180deg,#090909,#050505)!important;
  border-left:1px solid rgba(206,191,75,.2)!important;
}
.mg2ar-chat-head{color:#e5cd67!important;border-bottom:1px solid rgba(206,191,75,.22)!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.mg2ar-messages{background:transparent!important}
.mg2ar-chatbox{border-top:1px solid rgba(206,191,75,.18)!important;background:#060606!important}
.mg2ar-chatbox input{
  border:1px solid rgba(255,255,255,.13)!important;
  background:#020202!important;
  color:#fff!important;
  border-radius:6px!important;
}
.mg2ar-chatbox input:focus{border-color:rgba(206,191,75,.72)!important}
.mg2ar-chat-media-button,.mg2ar-chat-send-button{
  border:1px solid rgba(206,191,75,.5)!important;
  background:linear-gradient(180deg,#111,#070707)!important;
  color:#fff!important;
}
.mg2ar-chat-send-button{background:linear-gradient(135deg,#f6e393,#d6b650 60%,#b68a2b)!important;color:#111!important}

/* Modal / popover polish */
.mg2ar-media-modal-card,.mg2ar-avatar-popover,.mg2ar-person-menu,.mg2ar-tip-card,.mg2ar-tip-settings-card,.mg2ar-split-invite-card{
  border-color:rgba(206,191,75,.58)!important;
  background:linear-gradient(180deg,#111,#060606)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 32px rgba(206,191,75,.08)!important;
}

/* Demo guest banner now matches the v1.0.4 splash chrome. */
.mg2ar-demo-guest-banner{
  background:linear-gradient(180deg,#0b0b0b,#060606)!important;
  border-bottom:1px solid rgba(206,191,75,.55)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.2)!important;
}
.mg2ar-demo-guest .mg2ar-entry-card:before{
  border:1px solid rgba(206,191,75,.65)!important;
  background:linear-gradient(180deg,rgba(206,191,75,.08),rgba(206,191,75,.02))!important;
  color:#efd166!important;
  border-radius:4px!important;
}

@media(max-width:1050px){
  .mg2ar-hero{grid-template-columns:1fr!important;gap:30px!important;padding:42px 0 38px!important}
  .mg2ar-room-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mg2ar-entry-card{max-width:720px!important;width:100%!important}
}
@media(max-width:680px){
  .mg2ar-app{border-radius:0!important;border-left:0!important;border-right:0!important}
  .mg2ar-shell{padding:0 16px 72px!important}
  .mg2ar-topbar{min-height:70px!important}
  .mg2ar-brand{font-size:15px!important}
  .mg2ar-hero{padding:34px 0 30px!important}
  .mg2ar-hero h1{font-size:clamp(48px,16vw,72px)!important}
  .mg2ar-entry-card{padding:17px!important;border-radius:22px!important}
  .mg2ar-room-list{grid-template-columns:1fr!important}
  .mg2ar-room-grid{grid-template-columns:1fr!important}
}


/* v1.0.70 — TIP interaction reliability. Keep TIP controls above participant-card
   click layers and guarantee the Cash App dialogs receive pointer input. */
.mg2ar-app .mg2ar-person{position:relative!important}
.mg2ar-app .mg2ar-tip-button{position:relative!important;z-index:25!important;pointer-events:auto!important;touch-action:manipulation!important}
.mg2ar-app .mg2ar-tip-modal,.mg2ar-app .mg2ar-tip-settings-modal{z-index:2147482000!important;pointer-events:auto!important}
.mg2ar-app .mg2ar-tip-card,.mg2ar-app .mg2ar-tip-card *{pointer-events:auto!important}
.mg2ar-app .mg2ar-tip-button.is-unconfigured{opacity:1!important;filter:none!important}


/* v1.0.78 — Modern horizontal recording-permission switch on Live Now cards. */
.mg2ar-room-card{cursor:pointer!important;padding-right:208px!important}
.mg2ar-room-card:focus-visible{outline:2px solid var(--mg2ar-accent,#cebf4b)!important;outline-offset:3px}
.mg2ar-recording-toggle{
  position:absolute;
  top:16px;
  right:16px;
  z-index:4;
  width:168px;
  min-width:168px;
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  cursor:pointer;
  font:inherit;
  opacity:1!important;
}
.mg2ar-recording-toggle:disabled{cursor:default!important;opacity:1!important}
.mg2ar-recording-rocker{
  position:relative;
  display:block;
  width:152px;
  height:50px;
  border-radius:999px;
  border:4px solid #111;
  background:linear-gradient(180deg,#252525 0%,#050505 100%);
  box-shadow:inset 0 0 0 1px #4b4b4b,0 6px 16px rgba(0,0,0,.58);
  overflow:hidden;
  transition:box-shadow .18s ease,border-color .18s ease;
}
.mg2ar-recording-rocker::before{
  content:'';
  position:absolute;
  inset:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#151515 0%,#151515 52%,#db1818 52%,#ff2323 100%);
  box-shadow:inset 0 9px 10px rgba(255,255,255,.14),inset 0 -12px 12px rgba(0,0,0,.34);
  transition:background .18s ease,box-shadow .18s ease;
}
.mg2ar-recording-toggle.is-on .mg2ar-recording-rocker::before{
  background:linear-gradient(90deg,#51e44c 0%,#43d73d 48%,#121212 48%,#0a0a0a 100%);
  box-shadow:inset 0 9px 10px rgba(255,255,255,.18),inset 0 -12px 12px rgba(0,0,0,.30),0 0 15px rgba(54,215,86,.20);
}
.mg2ar-recording-i,.mg2ar-recording-o{
  position:absolute;
  top:50%;
  bottom:auto;
  z-index:3;
  line-height:1;
  font-weight:950;
  font-size:0;
  text-shadow:0 1px 2px #000;
  transform:translateY(-50%);
}
.mg2ar-recording-i{left:16px;right:auto}
.mg2ar-recording-o{right:16px;left:auto}
.mg2ar-recording-i::before,.mg2ar-recording-o::before{
  display:block;
  font-size:16px;
  letter-spacing:.04em;
}
.mg2ar-recording-i::before{content:'ON';color:rgba(255,255,255,.18)}
.mg2ar-recording-o::before{content:'OFF';color:#fff}
.mg2ar-recording-toggle.is-on .mg2ar-recording-i::before{color:#fff}
.mg2ar-recording-toggle.is-on .mg2ar-recording-o::before{color:rgba(255,255,255,.18)}
.mg2ar-recording-handle{
  position:absolute;
  z-index:4;
  top:50%;
  left:8px;
  right:auto;
  width:58px;
  height:34px;
  border-radius:999px;
  background:radial-gradient(circle at 35% 30%,#505050 0%,#1d1d1d 46%,#050505 100%);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 4px 12px rgba(0,0,0,.68),inset 0 1px 0 rgba(255,255,255,.16);
  transition:left .22s cubic-bezier(.2,.75,.25,1),transform .22s cubic-bezier(.2,.75,.25,1);
  transform:translateY(-50%);
}
.mg2ar-recording-toggle.is-on .mg2ar-recording-handle{left:86px}
.mg2ar-recording-state{
  display:block;
  width:168px;
  font-family:Georgia,'Times New Roman',serif;
  font-size:10px;
  line-height:1.02;
  font-weight:700;
  letter-spacing:.01em;
  text-align:center;
  text-transform:uppercase;
  color:#ff3a3a;
  text-shadow:0 1px 2px #000;
}
.mg2ar-recording-toggle.is-on .mg2ar-recording-state{color:#52de63}
.mg2ar-recording-toggle[data-host-control="1"]:hover .mg2ar-recording-rocker,
.mg2ar-recording-toggle[data-host-control="1"]:focus-visible .mg2ar-recording-rocker{border-color:#393939;box-shadow:inset 0 0 0 1px #5a5a5a,0 0 16px rgba(206,191,75,.26)}
.mg2ar-recording-toggle:focus-visible{outline:2px solid var(--mg2ar-accent,#cebf4b);outline-offset:3px;border-radius:20px}
@media(max-width:960px){
  .mg2ar-room-card{padding-right:184px!important}
  .mg2ar-recording-toggle{top:14px;right:12px;transform:scale(.92);transform-origin:top right}
}
@media(max-width:620px){
  .mg2ar-room-card{padding-right:146px!important}
  .mg2ar-recording-toggle{right:8px;top:10px;transform:scale(.76);transform-origin:top right}
}

/* v1.0.75 — member profile card modal */
.mg2ar-member-profile-modal[hidden]{display:none!important}.mg2ar-member-profile-modal{position:fixed;inset:0;z-index:2147482600;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.88);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.mg2ar-member-profile-card{position:relative;width:min(720px,95vw);max-height:90vh;overflow:auto;background:#111;border:1px solid var(--mg2ar-accent,#cebf4b);padding:14px}.mg2ar-member-profile-close{position:absolute;right:20px;top:16px;z-index:4;width:42px;height:42px;border:1px solid #cebf4b;background:#050505;color:#fff;font-size:28px;cursor:pointer}.mg2ar-member-profile-loading{padding:80px 20px;color:#bbb;text-align:center}.mg2ar-profile-public{background:#e9e9e9;color:#1d1d1d;border:4px solid #333;overflow:hidden}.mg2ar-profile-image{padding:0 16%}.mg2ar-profile-image img{display:block;width:100%;aspect-ratio:1.22/1;object-fit:cover;border:3px solid #fff}.mg2ar-profile-placeholder{aspect-ratio:1.22/1;display:flex;align-items:center;justify-content:center;background:#bbb;color:#555}.mg2ar-profile-body{text-align:center;padding:54px 42px 38px}.mg2ar-profile-greetings{font-size:18px;letter-spacing:.38em;margin-bottom:28px}.mg2ar-profile-body h2{margin:0 0 34px!important;color:#050505!important;font-size:36px!important;line-height:1.1!important}.mg2ar-profile-body p{margin:0 auto!important;max-width:560px;color:#272727!important;font-size:22px!important;line-height:1.55!important}.mg2ar-profile-stars{font-size:20px;letter-spacing:.08em;margin:40px 0}.mg2ar-profile-socials{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.mg2ar-profile-social{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border:2px solid #cebf4b;border-radius:12px;background:#080808;color:#fff!important;text-decoration:none!important;font-size:20px;font-weight:900}.mg2ar-member-profile-manage{width:100%;min-height:50px;margin-top:12px;border:1px solid #cebf4b;background:#080808;color:#fff;font-weight:900;letter-spacing:.08em;cursor:pointer}.mg2ar-member-profile-manage:hover{color:#cebf4b}.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"]{display:none!important}
@media(max-width:600px){.mg2ar-member-profile-modal{padding:8px}.mg2ar-member-profile-card{padding:8px}.mg2ar-profile-body{padding:36px 20px 28px}.mg2ar-profile-body h2{font-size:28px!important}.mg2ar-profile-body p{font-size:18px!important}.mg2ar-profile-social{width:48px;height:48px}}


/* v1.0.76 — profile editor button + toggleable in-room profile drawer */
.mg2ar-avatar-actions-grid,.mg2ar-room-avatar-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.mg2ar-avatar-actions-grid .mg2ar-gallery-open,.mg2ar-avatar-actions-grid .mg2ar-tip-settings-open,.mg2ar-room-avatar-action-grid .mg2ar-room-avatar-gallery{width:100%!important;margin:0!important;min-height:54px!important}
.mg2ar-edit-profile-open{width:100%!important;min-height:56px!important;margin-top:10px!important;border:1px solid var(--mg2ar-accent)!important;border-radius:7px!important;background:linear-gradient(180deg,#111,#070707)!important;color:#fff!important;font-size:16px!important;font-weight:500!important;letter-spacing:.18em!important;text-transform:uppercase!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 8px 24px rgba(0,0,0,.22)!important;cursor:pointer!important}
.mg2ar-edit-profile-open:hover,.mg2ar-edit-profile-open:focus-visible{color:var(--mg2ar-accent)!important;box-shadow:0 0 22px rgba(206,191,75,.18)!important}
.mg2ar-square-wrap{position:relative;width:100%;min-width:0}
.mg2ar-profile-toggle{position:absolute;right:7px;bottom:7px;z-index:10;min-height:24px!important;height:24px!important;width:auto!important;padding:0 9px!important;border:1px solid var(--mg2ar-accent)!important;border-radius:999px!important;background:var(--mg2ar-accent)!important;color:#111!important;font-size:8px!important;line-height:1!important;font-weight:950!important;letter-spacing:.12em!important;text-transform:uppercase!important;box-shadow:0 3px 10px rgba(0,0,0,.36)!important;cursor:pointer!important}
.mg2ar-profile-toggle.is-active{background:#fff!important;color:#111!important;box-shadow:0 0 0 2px rgba(206,191,75,.28),0 0 18px rgba(206,191,75,.34)!important}
.mg2ar-square-wrap:has(.mg2ar-profile-toggle) .mg2ar-talk-badge{bottom:35px!important}
.mg2ar-member-profile-modal[hidden]{display:none!important}
.mg2ar-member-profile-modal{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:2147482600!important;width:min(720px,52vw)!important;display:flex!important;align-items:flex-start!important;justify-content:flex-end!important;padding:22px!important;background:transparent!important;pointer-events:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.mg2ar-member-profile-card{pointer-events:auto!important;position:relative!important;width:100%!important;max-width:690px!important;max-height:calc(100% - 44px)!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;background:#111!important;border:1px solid var(--mg2ar-accent)!important;padding:12px!important;box-shadow:-18px 20px 64px rgba(0,0,0,.48),0 0 32px rgba(206,191,75,.08)!important;animation:mg2arProfileDrawerIn .24s ease-out both!important}
@keyframes mg2arProfileDrawerIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.mg2ar-member-profile-card{animation:none!important}}
.mg2ar-member-profile-close{position:sticky!important;float:right!important;right:8px!important;top:8px!important;z-index:20!important;width:42px!important;height:42px!important;border:1px solid var(--mg2ar-accent)!important;border-radius:50%!important;background:#050505!important;color:#fff!important;font-size:28px!important;line-height:1!important;cursor:pointer!important;margin-bottom:-42px!important}
.mg2ar-profile-public{width:100%!important;max-width:660px!important;margin:0 auto!important;background:#ededed!important;color:#1d1d1d!important;border:4px solid #333!important;overflow:hidden!important}
.mg2ar-profile-image{padding:0 16%!important;background:#ededed!important}
.mg2ar-profile-image img{display:block!important;width:100%!important;aspect-ratio:1.22/1!important;object-fit:cover!important;border:3px solid #fff!important}
.mg2ar-profile-body{padding:52px 42px 40px!important;text-align:center!important}
.mg2ar-profile-greetings{font-size:17px!important;letter-spacing:.38em!important;margin-bottom:28px!important;color:#292929!important}
.mg2ar-profile-body h2{margin:0 0 32px!important;color:#050505!important;font-size:34px!important;line-height:1.1!important;font-weight:900!important}
.mg2ar-profile-body p{margin:0 auto!important;max-width:560px!important;color:#292929!important;font-size:21px!important;line-height:1.55!important}
.mg2ar-profile-stars{margin:38px 0!important;color:#151515!important;font-size:18px!important;letter-spacing:.08em!important}
.mg2ar-profile-socials{display:flex!important;justify-content:center!important;gap:20px!important;flex-wrap:wrap!important}
.mg2ar-profile-social{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:52px!important;height:52px!important;border:2px solid var(--mg2ar-accent)!important;border-radius:11px!important;background:#080808!important;color:#fff!important;text-decoration:none!important;font-size:17px!important;font-weight:900!important}
.mg2ar-member-profile-manage{width:100%!important;min-height:50px!important;margin-top:12px!important;border:1px solid var(--mg2ar-accent)!important;background:#080808!important;color:#fff!important;font-weight:900!important;letter-spacing:.08em!important;cursor:pointer!important}
@media(max-width:900px){.mg2ar-member-profile-modal{width:100vw!important;padding:8px!important;background:rgba(0,0,0,.6)!important}.mg2ar-member-profile-card{max-width:100%!important;max-height:calc(100% - 16px)!important}.mg2ar-profile-body{padding:38px 20px 30px!important}.mg2ar-profile-body h2{font-size:28px!important}.mg2ar-profile-body p{font-size:18px!important}.mg2ar-avatar-actions-grid,.mg2ar-room-avatar-action-grid{grid-template-columns:1fr}.mg2ar-edit-profile-open{font-size:14px!important}}


/* v1.0.77 — move MANAGE beside the role badge and place PROFILE below subscriber avatars */
.mg2ar-manage-badge{
  left:auto!important;
  right:6px!important;
  top:auto!important;
  bottom:6px!important;
  background:var(--mg2ar-accent,#cebf4b)!important;
  color:#111!important;
  border:1px solid rgba(255,255,255,.15)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.34)!important;
}
.mg2ar-square:has(.mg2ar-manage-badge) .mg2ar-talk-badge{
  right:6px!important;
  bottom:34px!important;
}
.mg2ar-square-wrap:has(.mg2ar-profile-toggle) .mg2ar-talk-badge{
  bottom:34px!important;
}
.mg2ar-profile-toggle{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:calc(100% - 18px)!important;
  min-height:32px!important;
  height:32px!important;
  margin:8px auto 0!important;
  padding:0 12px!important;
  border:1px solid var(--mg2ar-accent,#cebf4b)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#e6d85e,#bda533)!important;
  color:#111!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  box-shadow:0 4px 12px rgba(0,0,0,.28)!important;
}
.mg2ar-profile-toggle.is-active{
  background:#fff!important;
  color:#111!important;
  box-shadow:0 0 0 2px rgba(206,191,75,.28),0 0 18px rgba(206,191,75,.25)!important;
}
@media(max-width:600px){
  .mg2ar-manage-badge{right:5px!important;bottom:5px!important}
  .mg2ar-square:has(.mg2ar-manage-badge) .mg2ar-talk-badge{right:5px!important;bottom:31px!important}
  .mg2ar-profile-toggle{width:calc(100% - 12px)!important;min-height:30px!important;height:30px!important;margin-top:6px!important;font-size:8px!important}
}


/* v1.0.79 — honor saved 2MG Member Profile image reposition/zoom on the Stage profile drawer. */
.mg2ar-profile-image{overflow:hidden!important}
.mg2ar-profile-image img{
  object-position:var(--mg2ar-profile-image-x,50%) var(--mg2ar-profile-image-y,50%)!important;
  transform:scale(var(--mg2ar-profile-image-scale,1))!important;
  transform-origin:center center!important;
}


/* v1.0.80 — live lobby room occupancy counter. */
.mg2ar-room-card .mg2ar-room-count{
  margin-top:8px!important;
  color:var(--mg2ar-accent,#cebf4b)!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:850!important;
  letter-spacing:.02em!important;
}
@media(max-width:720px){
  .mg2ar-room-card .mg2ar-room-count{
    margin-top:7px!important;
    font-size:10px!important;
  }
}

/* v1.0.81 — in-room logout and host chat moderation. */
.mg2ar-room-logout{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:52px!important;
  margin-top:10px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(206,191,75,.72)!important;
  background:#070707!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.mg2ar-room-logout:hover,.mg2ar-room-logout:focus-visible{border-color:var(--mg2ar-accent,#cebf4b)!important;color:var(--mg2ar-accent,#cebf4b)!important;outline:none!important}
.mg2ar-message-body{position:relative!important}
.mg2ar-chat-delete{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  margin-top:8px!important;
  padding:5px 9px!important;
  border:1px solid #8f2b2b!important;
  border-radius:6px!important;
  background:#160707!important;
  color:#ff7272!important;
  font-size:8px!important;
  font-weight:950!important;
  letter-spacing:.12em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.mg2ar-chat-delete:hover,.mg2ar-chat-delete:focus-visible{background:#7f2424!important;color:#fff!important;border-color:#cf4a4a!important;outline:none!important}
@media(max-width:680px){
  .mg2ar-room-logout{min-height:54px!important;font-size:12px!important}
  .mg2ar-chat-delete{min-height:34px!important;padding:7px 10px!important;font-size:9px!important}
}


/* v1.0.82 — lobby WHO'S IN HERE dropdown roster. */
.mg2ar-room-card{position:relative!important}
.mg2ar-room-roster-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:34px!important;
  margin-top:12px!important;
  padding:7px 10px!important;
  border:1px solid rgba(206,191,75,.68)!important;
  border-radius:8px!important;
  background:#070707!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:14!important;
}
.mg2ar-room-roster-toggle:hover,.mg2ar-room-roster-toggle:focus-visible{
  color:var(--mg2ar-accent,#cebf4b)!important;
  border-color:var(--mg2ar-accent,#cebf4b)!important;
  outline:none!important;
}
.mg2ar-room-roster-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:20px!important;
  height:20px!important;
  padding:0 5px!important;
  border-radius:999px!important;
  background:var(--mg2ar-accent,#cebf4b)!important;
  color:#111!important;
  font-size:9px!important;
  font-weight:950!important;
}
.mg2ar-room-roster-arrow{color:var(--mg2ar-accent,#cebf4b)!important;font-size:8px!important}
.mg2ar-room-roster-panel{
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:54px!important;
  z-index:30!important;
  max-height:54%!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  padding:10px!important;
  border:1px solid rgba(206,191,75,.78)!important;
  border-radius:11px!important;
  background:rgba(5,5,5,.97)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.58)!important;
  color:#fff!important;
}
.mg2ar-room-roster-panel[hidden]{display:none!important}
.mg2ar-room-roster-person{
  display:grid!important;
  grid-template-columns:9px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  min-height:32px!important;
  padding:5px 4px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.mg2ar-room-roster-person:last-child{border-bottom:0!important}
.mg2ar-room-roster-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#61d77b!important;box-shadow:0 0 8px rgba(97,215,123,.34)!important}
.mg2ar-room-roster-name{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#fff!important;font-size:10px!important;font-weight:800!important}
.mg2ar-room-roster-role{color:var(--mg2ar-accent,#cebf4b)!important;font-size:7px!important;font-weight:950!important;letter-spacing:.08em!important;white-space:nowrap!important}
.mg2ar-room-roster-empty{padding:10px 6px!important;color:#aaa!important;font-size:9px!important;line-height:1.35!important;text-align:center!important}
@media(max-width:720px){
  .mg2ar-room-roster-toggle{min-height:32px!important;margin-top:9px!important;padding:6px 8px!important;font-size:8px!important;gap:5px!important}
  .mg2ar-room-roster-count{min-width:18px!important;height:18px!important;font-size:8px!important}
  .mg2ar-room-roster-panel{left:8px!important;right:8px!important;bottom:46px!important;max-height:50%!important;padding:8px!important}
  .mg2ar-room-roster-person{min-height:30px!important;gap:6px!important}
  .mg2ar-room-roster-name{font-size:9px!important}
  .mg2ar-room-roster-role{font-size:6.5px!important}
  .mg2pl-phone-active .mg2ar-room-card .mg2ar-room-roster-toggle{position:absolute!important;left:12px!important;bottom:12px!important;margin:0!important;max-width:calc(100% - 24px)!important}
  .mg2pl-phone-active .mg2ar-room-card .mg2ar-room-roster-panel{bottom:50px!important}
}


/* v1.0.83 — expanded reactions + moderation mute controls */
.mg2ar-controls>.mg2ar-reactions{
  flex-wrap:wrap!important;
  row-gap:6px!important;
  overflow:visible!important;
}
.mg2ar-reaction-emoji{
  display:block;
  font-size:22px;
  line-height:1;
  font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;
}
.mg2ar-reactions button .mg2ar-reaction-emoji{
  color:initial!important;
  -webkit-text-fill-color:initial!important;
}
.mg2ar-mute-person{
  border-color:#8d6f00!important;
}
.mg2ar-mute-room-control{
  position:relative!important;
  overflow:hidden!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  touch-action:manipulation!important;
  border-color:#8d6f00!important;
}
.mg2ar-mute-room-control::after{
  content:'';
  position:absolute;
  left:0;bottom:0;
  height:3px;width:0;
  background:var(--mg2ar-accent,#cebf4b);
}
.mg2ar-mute-room-control.is-holding::after{
  width:100%;
  transition:width 3s linear;
}
@media(max-width:680px){
  .mg2ar-controls>.mg2ar-reactions{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
  }
  .mg2ar-controls>.mg2ar-reactions button{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    flex:none!important;
  }
  .mg2ar-reaction-emoji{font-size:21px!important}
  .mg2ar-mute-room-control{min-height:38px!important}
}


/* v1.0.85 — lobby logout button + centered 18+ Only badge. */
.mg2ar-topbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:18px!important;
  position:relative!important;
}
.mg2ar-topbar .mg2ar-brand{justify-self:start!important;min-width:0!important}
.mg2ar-topbar .mg2ar-pill{justify-self:end!important;margin-left:0!important}
.mg2ar-age-badge{
  justify-self:center!important;
  align-self:center!important;
  width:92px!important;
  height:76px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.mg2ar-age-badge img{
  display:block!important;
  width:92px!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
}
.mg2ar-lobby-logout{
  margin-top:10px!important;
  border-radius:7px!important;
  min-height:56px!important;
  font-size:16px!important;
  letter-spacing:.18em!important;
}
@media(max-width:680px){
  .mg2ar-topbar{column-gap:8px!important;min-height:72px!important}
  .mg2ar-age-badge{width:64px!important;height:56px!important}
  .mg2ar-age-badge img{width:68px!important}
  .mg2ar-topbar .mg2ar-brand{font-size:11px!important;letter-spacing:.06em!important;white-space:nowrap!important}
  .mg2ar-topbar .mg2ar-pill{padding:8px 8px!important;font-size:9px!important;white-space:nowrap!important}
  .mg2ar-lobby-logout{min-height:54px!important;font-size:12px!important}
}
@media(max-width:420px){
  .mg2ar-age-badge{width:54px!important;height:48px!important}
  .mg2ar-age-badge img{width:58px!important}
  .mg2ar-topbar .mg2ar-brand{font-size:10px!important}
  .mg2ar-topbar .mg2ar-pill{font-size:8px!important;padding:7px 6px!important}
}


/* v1.0.87 — protected members + host-only room deletion. */
.mg2ar-protected-member-note{
  margin:8px 0 10px!important;
  padding:8px 10px!important;
  border:1px solid rgba(35,180,84,.65)!important;
  border-radius:8px!important;
  background:rgba(35,180,84,.10)!important;
  color:#58d878!important;
  font-size:9px!important;
  line-height:1.35!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
}
.mg2ar-delete-room{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:52px!important;
  margin-top:10px!important;
  box-sizing:border-box!important;
  border:1px solid #b43b3b!important;
  border-radius:0!important;
  background:#160707!important;
  color:#ff7474!important;
  text-align:center!important;
  font-weight:950!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.mg2ar-delete-room[hidden]{display:none!important}
.mg2ar-delete-room:hover,.mg2ar-delete-room:focus-visible{background:#7f2424!important;color:#fff!important;border-color:#df5b5b!important;outline:none!important}
.mg2ar-delete-room:disabled{opacity:.55!important;cursor:wait!important}
@media(max-width:680px){.mg2ar-delete-room{min-height:54px!important;font-size:12px!important}}

/* v1.0.88: cache-busted desktop/mobile participant protection and speaker self-demotion controls. */


/* v1.0.89 — per-member Notification List + profile editor */
.mg2ar-notification-profile-open{
  width:100%;min-height:58px;margin-top:12px;border:1px solid var(--mg2ar-accent,#cebf4b);background:#080808;color:#fff;
  font:800 14px/1.2 inherit;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;
}
.mg2ar-notification-profile-open:hover,.mg2ar-notification-profile-open:focus-visible{box-shadow:0 0 22px rgba(206,191,75,.26);outline:none}
.mg2ar-notification-modal,.mg2ar-notification-editor-modal{
  position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.82);display:flex;align-items:flex-start;justify-content:center;
  overflow:auto;padding:24px 14px;-webkit-overflow-scrolling:touch;
}
.mg2ar-notification-modal[hidden],.mg2ar-notification-editor-modal[hidden]{display:none!important}
.mg2ar-notification-card{
  position:relative;width:min(560px,96vw);background:#181818;border:3px solid #d9c95a;border-radius:30px;padding:28px 28px 24px;
  color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.65),inset 0 0 0 2px rgba(255,227,116,.35);
}
.mg2ar-notification-close{position:absolute;right:14px;top:12px;width:42px;height:42px;border:1px solid #d9c95a;background:#090909;color:#fff;font-size:22px;cursor:pointer;z-index:2}
.mg2ar-notification-title{margin:8px 28px 10px;background:linear-gradient(90deg,#f4dc82,#cfaa42,#f4dc82);color:#161616;text-align:center;font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,6vw,48px);line-height:1;padding:10px 12px;text-transform:uppercase}
.mg2ar-notification-intro{margin:12px auto 18px;max-width:440px;text-align:center;color:#fff;font-weight:700;letter-spacing:.14em;line-height:1.7;font-size:13px;text-transform:uppercase}
.mg2ar-notification-artist-image{width:156px;height:156px;margin:12px auto;border:2px solid #d9c95a;border-radius:30px;overflow:hidden;background:#080808}
.mg2ar-notification-artist-image img{width:100%;height:100%;object-fit:cover;display:block}
.mg2ar-notification-artist-name{margin:14px 0 22px;text-align:center;color:#f2d36c;font-family:Georgia,'Times New Roman',serif;font-size:clamp(24px,5vw,38px);line-height:1.15;text-transform:uppercase;overflow-wrap:anywhere}
.mg2ar-notification-signup-form label,.mg2ar-notification-editor-card form>label{display:block;margin:14px 0;color:#fff;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mg2ar-notification-signup-form input,.mg2ar-notification-editor-card input[type=text],.mg2ar-notification-editor-card input[type=email],.mg2ar-notification-editor-card input[type=file]{box-sizing:border-box;width:100%;min-height:48px;margin-top:7px;border:1px solid #d9c95a;background:#f4d77a;color:#111;padding:10px 12px;font:700 16px/1.2 inherit;border-radius:2px}
.mg2ar-notification-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mg2ar-notification-logo{display:block;width:min(330px,80%);max-height:300px;object-fit:contain;margin:24px auto 18px;background:#000}
.mg2ar-notification-submit{width:100%;min-height:62px;border:1px solid #f1dd78;background:linear-gradient(100deg,#f7e49b,#cda636,#f7e49b);color:#111;font-family:Georgia,'Times New Roman',serif;font-size:clamp(20px,4.5vw,30px);text-transform:uppercase;cursor:pointer;padding:12px 18px}
.mg2ar-notification-submit:disabled{opacity:.65;cursor:wait}
.mg2ar-notification-privacy{margin:20px auto 0;text-align:center;color:#fff;font-weight:700;letter-spacing:.12em;line-height:1.5;font-size:11px;text-transform:uppercase}
.mg2ar-notification-result{min-height:20px;margin:12px 0 0;text-align:center;color:#ff8e8e;font-weight:700}.mg2ar-notification-result.is-success{color:#65e38b}
.mg2ar-notification-editor-card{position:relative;width:min(680px,96vw);background:#121212;border:2px solid #d9c95a;border-radius:24px;padding:30px;color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.65)}
.mg2ar-notification-editor-heading{color:#e7d259;font-weight:900;font-size:clamp(24px,5vw,38px);letter-spacing:.1em;text-transform:uppercase;padding-right:48px}.mg2ar-notification-editor-card>p{color:#aaa;line-height:1.6}
.mg2ar-notification-editor-preview{margin:22px auto;padding:20px;border:1px solid #746b2b;background:#090909;text-align:center}.mg2ar-notification-editor-image{width:180px;height:180px;margin:0 auto 14px;border:2px solid #d9c95a;border-radius:28px;overflow:hidden}.mg2ar-notification-editor-image img{width:100%;height:100%;object-fit:cover;display:block}.mg2ar-notification-editor-preview strong{display:block;color:#f2d36c;font-family:Georgia,'Times New Roman',serif;font-size:28px;text-transform:uppercase;overflow-wrap:anywhere}
.mg2ar-notification-editor-card small{display:block;margin-top:7px;color:#9d9d9d;font-weight:400;letter-spacing:.03em;line-height:1.5;text-transform:none}
/* Preview guests should be able to join a notification list too. */
.mg2ar-demo-guest [data-mg2ar-notifications]{display:inline-flex!important}
@media(max-width:640px){
  .mg2ar-notification-modal,.mg2ar-notification-editor-modal{padding:8px 5px 28px;align-items:flex-start}
  .mg2ar-notification-card,.mg2ar-notification-editor-card{width:100%;border-radius:22px;padding:22px 16px 20px}
  .mg2ar-notification-title{margin:18px 28px 8px;font-size:32px}.mg2ar-notification-intro{font-size:11px;letter-spacing:.09em}.mg2ar-notification-artist-image{width:138px;height:138px;border-radius:24px}
  .mg2ar-notification-logo{width:74%;margin-top:18px}.mg2ar-notification-editor-image{width:150px;height:150px}
}


/* v1.0.90 — in-room Get Notified shortcut next to Retry Audio */
.mg2ar-audio-connection .mg2ar-get-notified{
  min-width:210px!important;
  color:var(--mg2ar-accent,#cebf4b)!important;
  background:#080808!important;
  border-left:1px solid var(--mg2ar-accent,#cebf4b)!important;
  border-top:0!important;
  border-right:0!important;
  border-bottom:0!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:16px!important;
  font-weight:500!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.mg2ar-audio-connection .mg2ar-get-notified:hover,
.mg2ar-audio-connection .mg2ar-get-notified:focus-visible{
  color:#f4dc82!important;
  border-left-color:#f4dc82!important;
  box-shadow:inset 0 0 22px rgba(206,191,75,.13)!important;
  outline:none!important;
}
@media(max-width:680px){
  .mg2ar-audio-connection .mg2ar-get-notified{
    flex:0 0 100%!important;
    min-width:0!important;
    min-height:54px!important;
    border-left:0!important;
    border-top:1px solid var(--mg2ar-accent,#cebf4b)!important;
    font-size:14px!important;
  }
}


/* v1.0.92 — Get Notified typography parity + neon-green selected-room confirmation. */
.mg2ar-audio-connection .mg2ar-get-notified{
  min-width:170px!important;
  min-height:54px!important;
  padding:0 18px!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}

/* The exact live-room card chosen for entry gets a strong neon-green confirmation. */
.mg2ar-room-card.is-selected-room,
.mg2ar-room-card.is-selected-room:hover,
.mg2ar-room-card.is-selected-room:focus,
.mg2ar-room-card.is-selected-room:focus-visible{
  border-color:#39ff14!important;
  box-shadow:0 0 0 2px rgba(57,255,20,.62),0 0 22px rgba(57,255,20,.82),0 0 48px rgba(57,255,20,.34)!important;
  outline:none!important;
  transform:none!important;
}
@media(max-width:680px){
  .mg2ar-audio-connection .mg2ar-get-notified{
    min-width:0!important;
    min-height:54px!important;
    font-size:10px!important;
  }
}

/* v1.0.93 — selected room stays steadily neon green until entry. */
.mg2ar-room-card.is-selected-room{
  animation:none!important;
  transition:border-color .12s ease,box-shadow .12s ease!important;
  border-color:#39ff14!important;
  box-shadow:0 0 0 2px rgba(57,255,20,.72),0 0 24px rgba(57,255,20,.88),0 0 48px rgba(57,255,20,.36)!important;
}


/* v1.0.94 — keep the selected-room neon confirmation visibly locked on phones.
   2MG Phone Layout applies its own !important room-card border and shadow after
   Audio Rooms. These more-specific rules intentionally win only for the
   selected card, while leaving every other mobile room card unchanged. */
@media (max-width: 720px){
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card.is-selected-room,
  .mg2pl-phone-active .mg2ar-app .mg2ar-room-list .mg2ar-room-card.is-selected-room,
  .mg2ar-app.mg2pl-create-room-screen .mg2ar-room-list .mg2ar-room-card.is-selected-room{
    border-color:#39ff14!important;
    border-width:2px!important;
    box-shadow:
      0 0 0 2px rgba(57,255,20,.76),
      0 0 20px rgba(57,255,20,.94),
      0 0 42px rgba(57,255,20,.48)!important;
    outline:none!important;
    animation:none!important;
    transform:none!important;
    transition:none!important;
  }

  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room:active,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room:hover,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room:focus,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room:focus-visible{
    border-color:#39ff14!important;
    box-shadow:
      0 0 0 2px rgba(57,255,20,.76),
      0 0 20px rgba(57,255,20,.94),
      0 0 42px rgba(57,255,20,.48)!important;
    animation:none!important;
    transform:none!important;
  }
}

/* v1.0.95 — recording permission moved to Create Room + status-driven selected-room neon. */
.mg2ar-room-create-options{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:72px!important;
}
.mg2ar-room-create-options .mg2ar-private-toggle{
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
}
.mg2ar-create-recording-wrap{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.mg2ar-create-recording-title{
  color:#fff!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.mg2ar-create-recording-toggle{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  display:block!important;
  width:136px!important;
  min-width:136px!important;
  height:48px!important;
  min-height:48px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
  overflow:visible!important;
}
.mg2ar-create-recording-rocker{
  position:relative!important;
  display:block!important;
  width:136px!important;
  height:48px!important;
  border-radius:999px!important;
  border:4px solid #111!important;
  background:linear-gradient(180deg,#252525 0%,#050505 100%)!important;
  box-shadow:inset 0 0 0 1px #4b4b4b,0 6px 16px rgba(0,0,0,.58)!important;
  overflow:hidden!important;
}
.mg2ar-create-recording-rocker::before{
  content:''!important;
  position:absolute!important;
  inset:4px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#151515 0%,#151515 52%,#db1818 52%,#ff2323 100%)!important;
  box-shadow:inset 0 9px 10px rgba(255,255,255,.14),inset 0 -12px 12px rgba(0,0,0,.34)!important;
}
.mg2ar-create-recording-toggle.is-on .mg2ar-create-recording-rocker::before{
  background:linear-gradient(90deg,#51e44c 0%,#43d73d 48%,#121212 48%,#0a0a0a 100%)!important;
  box-shadow:inset 0 9px 10px rgba(255,255,255,.18),inset 0 -12px 12px rgba(0,0,0,.30),0 0 15px rgba(54,215,86,.20)!important;
}
.mg2ar-create-rec-on,.mg2ar-create-rec-off{
  position:absolute!important;
  z-index:3!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:950!important;
  line-height:1!important;
  text-shadow:0 1px 2px #000!important;
}
.mg2ar-create-rec-on{left:15px!important;color:rgba(255,255,255,.2)!important}
.mg2ar-create-rec-off{right:12px!important}
.mg2ar-create-recording-toggle.is-on .mg2ar-create-rec-on{color:#fff!important}
.mg2ar-create-recording-toggle.is-on .mg2ar-create-rec-off{color:rgba(255,255,255,.2)!important}
.mg2ar-create-recording-handle{
  position:absolute!important;
  z-index:4!important;
  top:50%!important;
  left:8px!important;
  width:54px!important;
  height:32px!important;
  transform:translateY(-50%)!important;
  border-radius:999px!important;
  background:radial-gradient(circle at 35% 30%,#505050 0%,#1d1d1d 46%,#050505 100%)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.68),inset 0 1px 0 rgba(255,255,255,.16)!important;
  transition:left .2s ease!important;
}
.mg2ar-create-recording-toggle.is-on .mg2ar-create-recording-handle{left:70px!important}
.mg2ar-create-recording-toggle:focus-visible{outline:2px solid var(--mg2ar-accent,#cebf4b)!important;outline-offset:3px!important}

/* LIVE NOW cards no longer show a rocker. Keep only a clear top-right status. */
.mg2ar-room-card{
  padding-right:190px!important;
}
.mg2ar-room-recording-status{
  position:absolute!important;
  top:22px!important;
  right:22px!important;
  z-index:5!important;
  width:170px!important;
  max-width:42%!important;
  text-align:right!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:12px!important;
  line-height:1.12!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.01em!important;
  pointer-events:none!important;
  text-shadow:0 1px 2px #000!important;
}
.mg2ar-room-card.is-recording-allowed .mg2ar-room-recording-status{color:#38d34c!important}
.mg2ar-room-card.is-recording-not-allowed .mg2ar-room-recording-status{color:#ff3434!important}
.mg2ar-room-card .mg2ar-recording-toggle{display:none!important}

/* Selected room = recording status color. Green means recording is allowed. */
.mg2ar-room-card.is-selected-room.is-recording-allowed,
.mg2ar-room-card.is-selected-room.is-recording-allowed:hover,
.mg2ar-room-card.is-selected-room.is-recording-allowed:focus,
.mg2ar-room-card.is-selected-room.is-recording-allowed:focus-visible{
  border-color:#39ff14!important;
  border-width:2px!important;
  box-shadow:0 0 0 2px rgba(57,255,20,.75),0 0 24px rgba(57,255,20,.95),0 0 50px rgba(57,255,20,.48)!important;
  outline:none!important;
  animation:none!important;
  transform:none!important;
  transition:none!important;
}
/* Red means recording is NOT allowed. */
.mg2ar-room-card.is-selected-room.is-recording-not-allowed,
.mg2ar-room-card.is-selected-room.is-recording-not-allowed:hover,
.mg2ar-room-card.is-selected-room.is-recording-not-allowed:focus,
.mg2ar-room-card.is-selected-room.is-recording-not-allowed:focus-visible{
  border-color:#ff2447!important;
  border-width:2px!important;
  box-shadow:0 0 0 2px rgba(255,36,71,.74),0 0 24px rgba(255,36,71,.95),0 0 50px rgba(255,36,71,.48)!important;
  outline:none!important;
  animation:none!important;
  transform:none!important;
  transition:none!important;
}

@media(max-width:720px){
  .mg2ar-room-create-options{
    gap:10px!important;
  }
  .mg2ar-room-create-options .mg2ar-private-toggle{
    font-size:12px!important;
    line-height:1.25!important;
  }
  .mg2ar-create-recording-wrap{
    gap:6px!important;
  }
  .mg2ar-create-recording-title{
    display:none!important;
  }
  .mg2ar-create-recording-toggle,
  .mg2ar-create-recording-rocker{
    width:122px!important;
    min-width:122px!important;
    height:44px!important;
    min-height:44px!important;
  }
  .mg2ar-create-recording-handle{width:48px!important;height:29px!important}
  .mg2ar-create-recording-toggle.is-on .mg2ar-create-recording-handle{left:64px!important}
  .mg2ar-create-rec-on,.mg2ar-create-rec-off{font-size:14px!important}

  .mg2ar-room-card,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card{
    padding-right:142px!important;
  }
  .mg2ar-room-recording-status{
    top:20px!important;
    right:16px!important;
    width:125px!important;
    max-width:39%!important;
    font-size:10px!important;
    line-height:1.1!important;
  }
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room.is-recording-allowed,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card.is-selected-room.is-recording-allowed,
  .mg2ar-app.mg2pl-create-room-screen .mg2ar-room-list .mg2ar-room-card.is-selected-room.is-recording-allowed{
    border-color:#39ff14!important;
    box-shadow:0 0 0 2px rgba(57,255,20,.78),0 0 22px rgba(57,255,20,.98),0 0 46px rgba(57,255,20,.52)!important;
  }
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.is-selected-room.is-recording-not-allowed,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card.is-selected-room.is-recording-not-allowed,
  .mg2ar-app.mg2pl-create-room-screen .mg2ar-room-list .mg2ar-room-card.is-selected-room.is-recording-not-allowed{
    border-color:#ff2447!important;
    box-shadow:0 0 0 2px rgba(255,36,71,.78),0 0 22px rgba(255,36,71,.98),0 0 46px rgba(255,36,71,.52)!important;
  }
}

@media(max-width:430px){
  .mg2ar-room-create-options .mg2ar-private-toggle span{font-size:11px!important}
  .mg2ar-create-recording-toggle,
  .mg2ar-create-recording-rocker{width:108px!important;min-width:108px!important;height:42px!important;min-height:42px!important}
  .mg2ar-create-recording-handle{width:43px!important;height:27px!important;left:7px!important}
  .mg2ar-create-recording-toggle.is-on .mg2ar-create-recording-handle{left:56px!important}
  .mg2ar-create-rec-on{left:12px!important}.mg2ar-create-rec-off{right:9px!important}
  .mg2ar-room-card,
  .mg2pl-phone-active .mg2ar-room-list .mg2ar-room-card{padding-right:126px!important}
  .mg2ar-room-recording-status{right:12px!important;width:112px!important;font-size:9px!important}
}


/* v1.0.96 — server-enforced Room Content Restrictions settings. */


/* v1.0.97 — cleaner Create Room privacy/recording row.
   The recording rocker remains functional, but the extra center label is removed. */
.mg2ar-create-recording-title{display:none!important;}
.mg2ar-create-recording-wrap{gap:0!important;margin-left:auto!important;}
.mg2ar-room-create-options .mg2ar-private-toggle{padding-right:12px!important;}
@media (max-width:640px){
  .mg2ar-room-create-options{gap:10px!important;}
  .mg2ar-room-create-options .mg2ar-private-toggle{padding-right:4px!important;}
}

/* v1.0.98 — phone live-room fit correction.
   Keeps the 2MG Preview Room and every other active room inside the actual
   phone viewport, including shared preview media, titles, audio controls,
   participant sections, main controls and reactions. */
@media (max-width:720px){
  html.mg2pl-phone-active body.mg2ar-room-page-open,
  body.mg2ar-room-page-open{
    overflow-x:hidden!important;
    max-width:100vw!important;
  }

  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room,
  body .mg2ar-app.mg2ar-in-room{
    left:0!important;
    right:0!important;
    width:100vw!important;
    max-width:100vw!important;
    min-width:0!important;
    margin:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }

  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-view,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-grid,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-stage,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-bar,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-people,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-controls,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-chat{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Preview media: never let a large logo/image establish an oversized room canvas. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage,
  body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage{
    width:100vw!important;
    max-width:100vw!important;
    min-width:0!important;
    height:min(62vw,52dvh)!important;
    min-height:220px!important;
    max-height:52dvh!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    margin:0!important;
    background:#000!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage .mg2ar-media-canvas,
  body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage .mg2ar-media-canvas{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    max-width:100%!important;
    height:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-shared-image,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-shared-video,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-shared-frame,
  body .mg2ar-app.mg2ar-in-room .mg2ar-shared-image,
  body .mg2ar-app.mg2ar-in-room .mg2ar-shared-video,
  body .mg2ar-app.mg2ar-in-room .mg2ar-shared-frame{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0!important;
    transform:none!important;
  }
  /* Audio shares remain compact rather than inheriting the image/video height. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="audio"],
  body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="audio"]{
    height:240px!important;
    min-height:200px!important;
    max-height:280px!important;
  }

  /* Room header/title stays inside the phone instead of pushing the stage wide. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-stage,
  body .mg2ar-app.mg2ar-in-room .mg2ar-stage{
    padding:14px 14px 34px!important;
    overflow-x:hidden!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-bar,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-bar{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    overflow:visible!important;
    white-space:normal!important;
    height:auto!important;
    min-height:58px!important;
    padding:8px 0 12px!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-bar button,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-bar button{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-title{
    overflow:hidden!important;
    padding:24px 0 10px!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:8px 0!important;
    font-size:clamp(34px,10.5vw,50px)!important;
    line-height:.98!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title p,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-presence-note,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-title p,
  body .mg2ar-app.mg2ar-in-room .mg2ar-presence-note{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  /* Audio Ready / Retry / Get Notified stays as a contained mobile panel. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-top:14px!important;
    overflow:hidden!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection>[data-mg2ar-audio-status],
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection>[data-mg2ar-audio-status]{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection button,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:52px!important;
    padding:8px 10px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection .mg2ar-get-notified,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection .mg2ar-get-notified{
    flex:none!important;
    border-left:1px solid rgba(206,191,75,.35)!important;
    border-top:0!important;
  }

  /* Participant groups stay in the same clean phone width as the rest of the app. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-people,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audience,
  body .mg2ar-app.mg2ar-in-room .mg2ar-people,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audience{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-person,
  body .mg2ar-app.mg2ar-in-room .mg2ar-person{
    width:100%!important;
    max-width:150px!important;
    min-width:0!important;
  }

  /* Replace the old sideways-scrolling control strip with a fitting grid. */
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-controls,
  body .mg2ar-app.mg2ar-in-room .mg2ar-controls{
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:30px 0 0!important;
    padding:10px!important;
    overflow:hidden!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-control-main-row,
  body .mg2ar-app.mg2ar-in-room .mg2ar-control-main-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-control-main-row>button,
  body .mg2ar-app.mg2ar-in-room .mg2ar-control-main-row>button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    padding:8px 7px!important;
    border-radius:8px!important;
    white-space:normal!important;
    line-height:1.15!important;
    text-align:center!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-reactions,
  body .mg2ar-app.mg2ar-in-room .mg2ar-reactions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:10px 0 0!important;
    overflow:hidden!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-reactions button,
  body .mg2ar-app.mg2ar-in-room .mg2ar-reactions button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:70px!important;
    min-height:70px!important;
    border-radius:8px!important;
  }

  /* The Stage/Chat pane switch added by 2MG Phone Layout must also fit the viewport. */
  html.mg2pl-phone-active body .mg2pl-room-pane-switch,
  body .mg2pl-room-pane-switch{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  html.mg2pl-phone-active body .mg2pl-room-pane-switch button,
  body .mg2pl-room-pane-switch button{
    flex:1 1 0!important;
    min-width:0!important;
    max-width:50%!important;
  }
}

@media (max-width:420px){
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage,
  body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage{
    height:min(68vw,46dvh)!important;
    min-height:190px!important;
    max-height:46dvh!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2{
    font-size:clamp(32px,10vw,44px)!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection{
    grid-template-columns:1fr!important;
  }
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection .mg2ar-get-notified,
  body .mg2ar-app.mg2ar-in-room .mg2ar-audio-connection .mg2ar-get-notified{
    border-left:0!important;
    border-top:1px solid rgba(206,191,75,.35)!important;
  }
}

/* v1.0.100 — Host multistream diagnostics + verified status */
.mg2ar-multistream-open{
  appearance:none;border:1px solid var(--mg2ar-primary,#cebf4b);background:#080808;color:#fff;
  min-height:44px;padding:0 16px;font:800 12px/1.1 inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
}
.mg2ar-multistream-open:hover,.mg2ar-multistream-open:focus-visible{box-shadow:0 0 16px rgba(206,191,75,.34);outline:none}
.mg2ar-multistream-open.is-active{border-color:#ff3b3b;box-shadow:0 0 18px rgba(255,59,59,.34)}
.mg2ar-multistream-modal[hidden]{display:none!important}
.mg2ar-multistream-modal{
  position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.82);display:grid;place-items:center;padding:20px;
}
.mg2ar-multistream-card{
  width:min(760px,96vw);max-height:min(760px,90vh);overflow:auto;background:#0d0d0d;color:#fff;border:1px solid var(--mg2ar-primary,#cebf4b);
  border-radius:24px;padding:24px;box-shadow:0 28px 90px rgba(0,0,0,.72),0 0 28px rgba(206,191,75,.12);
}
.mg2ar-multistream-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(206,191,75,.25);padding-bottom:18px;margin-bottom:18px}
.mg2ar-multistream-head small{display:block;color:var(--mg2ar-primary,#cebf4b);font-weight:900;letter-spacing:.16em;margin-bottom:7px}
.mg2ar-multistream-head h2{margin:0 0 6px;font-size:30px;line-height:1.05;color:#fff}
.mg2ar-multistream-head p{margin:0;color:#aaa}
.mg2ar-multistream-head>button{flex:0 0 48px;width:48px;height:48px;border:1px solid #333;background:#111;color:#fff;font-size:24px;cursor:pointer}
.mg2ar-multistream-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mg2ar-multistream-choice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #353535;border-radius:14px;background:#090909;padding:15px 16px;cursor:pointer}
.mg2ar-multistream-choice:has(input:checked){border-color:var(--mg2ar-primary,#cebf4b);box-shadow:inset 0 0 0 1px rgba(206,191,75,.18)}
.mg2ar-multistream-choice input{width:20px;height:20px;accent-color:#cebf4b}
.mg2ar-multistream-choice span{font-weight:900;letter-spacing:.04em}
.mg2ar-multistream-choice small{color:#39d86a;font-weight:900;font-size:10px;letter-spacing:.12em}
.mg2ar-multistream-empty{grid-column:1/-1;border:1px dashed #444;padding:18px;border-radius:12px;color:#aaa}
.mg2ar-multistream-status{margin:18px 0 14px;padding:14px 16px;border:1px solid #333;background:#080808;border-radius:12px;color:#aaa;font-weight:800}
.mg2ar-multistream-status.is-live{border-color:#36d66b;color:#55ef82;box-shadow:0 0 18px rgba(54,214,107,.16)}
.mg2ar-multistream-status.is-error{border-color:#ff4141;color:#ff8b8b;box-shadow:0 0 18px rgba(255,65,65,.14);white-space:normal;line-height:1.45}
.mg2ar-multistream-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mg2ar-multistream-actions button{min-height:58px;border:1px solid var(--mg2ar-primary,#cebf4b);background:#080808;color:#fff;font-weight:900;letter-spacing:.07em;cursor:pointer}
.mg2ar-multistream-actions button.is-primary{background:linear-gradient(100deg,#f6df8c,#c79b2d,#f0d36e);color:#090909}
.mg2ar-multistream-actions button:disabled{opacity:.38;cursor:not-allowed}
.mg2ar-multistream-note{display:block;margin-top:12px;color:#888;line-height:1.5}
@media (max-width:700px){
  .mg2ar-multistream-open{min-height:42px;padding:0 11px;font-size:10px}
  .mg2ar-multistream-modal{padding:10px}
  .mg2ar-multistream-card{width:calc(100vw - 20px);max-height:88dvh;border-radius:18px;padding:16px}
  .mg2ar-multistream-head h2{font-size:24px}
  .mg2ar-multistream-list{grid-template-columns:1fr}
  .mg2ar-multistream-actions{grid-template-columns:1fr}
}

/* v1.0.101 — Host MP4 + MP3 recording inside the multistream window */
.mg2ar-recording-panel{margin-top:20px;border:1px solid rgba(206,191,75,.5);border-radius:16px;background:linear-gradient(145deg,#111,#070707);padding:16px}
.mg2ar-recording-panel[hidden]{display:none!important}
.mg2ar-recording-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.mg2ar-recording-head small{display:block;color:var(--mg2ar-primary,#cebf4b);font-weight:900;letter-spacing:.16em;margin-bottom:5px}
.mg2ar-recording-head h3{margin:0 0 5px;color:#fff;font-size:22px;line-height:1.1;text-transform:uppercase}
.mg2ar-recording-head p{margin:0;color:#999;line-height:1.4}
.mg2ar-recording-head>span{flex:0 0 auto;border:1px solid #3a3a3a;border-radius:999px;padding:8px 11px;color:#aaa;font-size:10px;font-weight:900;letter-spacing:.12em}
.mg2ar-recording-head>span.is-live{border-color:#ff4141;color:#ff6969;box-shadow:0 0 16px rgba(255,65,65,.16)}
.mg2ar-recording-head>span.is-error{border-color:#ff4141;color:#ff8b8b}
.mg2ar-recording-status{margin:12px 0;padding:12px 14px;border:1px solid #303030;background:#070707;border-radius:11px;color:#aaa;font-weight:800}
.mg2ar-recording-status.is-live{border-color:#ff3b3b;color:#ff7373;box-shadow:0 0 16px rgba(255,59,59,.16)}
.mg2ar-recording-status.is-error{border-color:#ff4141;color:#ff8b8b}
.mg2ar-recording-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mg2ar-recording-actions button{min-height:52px;border:1px solid var(--mg2ar-primary,#cebf4b);background:#080808;color:#fff;font-weight:900;letter-spacing:.06em;cursor:pointer}
.mg2ar-recording-actions button.is-primary{background:linear-gradient(100deg,#f6df8c,#c79b2d,#f0d36e);color:#090909}
.mg2ar-recording-actions button:disabled{opacity:.38;cursor:not-allowed}
.mg2ar-recording-library{margin-top:15px;border-top:1px solid rgba(206,191,75,.22);padding-top:13px}
.mg2ar-recording-library-title{color:var(--mg2ar-primary,#cebf4b);font-size:11px;font-weight:900;letter-spacing:.16em;margin-bottom:8px}
.mg2ar-recording-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #292929;background:#090909;padding:10px 11px;margin-top:7px}
.mg2ar-recording-meta{min-width:0;display:flex;flex-direction:column;gap:3px}.mg2ar-recording-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.mg2ar-recording-meta small,.mg2ar-recording-empty{color:#888}
.mg2ar-recording-downloads{display:flex;align-items:center;gap:7px;flex:0 0 auto}.mg2ar-recording-downloads a{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cebf4b;color:#fff;text-decoration:none;padding:8px 10px;font-size:11px;font-weight:900}.mg2ar-recording-downloads a:hover{background:#cebf4b;color:#070707}.mg2ar-recording-downloads small{color:#aaa;font-weight:800}
@media(max-width:640px){.mg2ar-recording-head{display:block}.mg2ar-recording-head>span{display:inline-block;margin-top:10px}.mg2ar-recording-actions{grid-template-columns:1fr}.mg2ar-recording-row{align-items:flex-start;flex-direction:column}.mg2ar-recording-downloads{width:100%}.mg2ar-recording-downloads a{flex:1}}

/* v1.0.102 — secure signed recording downloads; no visual changes. */


/* v1.0.103 — Host real-time room-title editor. */
.mg2ar-room-title-heading{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
}
.mg2ar-room-title-heading h2{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important}
.mg2ar-edit-room-title[hidden],.mg2ar-room-title-editor[hidden]{display:none!important}
.mg2ar-edit-room-title{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:0 13px!important;
  border:1px solid rgba(206,191,75,.62)!important;
  border-radius:999px!important;
  background:#080808!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:9px!important;
  font-weight:950!important;
  letter-spacing:.075em!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.mg2ar-edit-room-title:hover{border-color:#e5ca61!important;box-shadow:0 0 18px rgba(206,191,75,.14)!important}
.mg2ar-room-title-editor{
  width:min(760px,100%)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:8px!important;
  margin:10px 0 12px!important;
  padding:10px!important;
  border:1px solid rgba(206,191,75,.35)!important;
  border-radius:16px!important;
  background:#090909!important;
}
.mg2ar-room-title-editor input{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  box-sizing:border-box!important;
  padding:0 13px!important;
  border:1px solid rgba(206,191,75,.46)!important;
  border-radius:11px!important;
  background:#050505!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  outline:none!important;
  font-size:12px!important;
  font-weight:800!important;
}
.mg2ar-room-title-editor input:focus{border-color:#e5ca61!important;box-shadow:0 0 0 2px rgba(206,191,75,.12)!important}
.mg2ar-room-title-editor button{
  min-height:42px!important;
  padding:0 14px!important;
  border:1px solid rgba(206,191,75,.62)!important;
  border-radius:11px!important;
  background:#080808!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:9px!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
  white-space:nowrap!important;
}
.mg2ar-room-title-editor button:hover{border-color:#e5ca61!important}
.mg2ar-room-title-editor button:disabled{opacity:.55!important;cursor:wait!important}

/* v1.0.104 — Rebuild the room action bar so labels size to their content,
   wrap cleanly across rows, and never clip inside the gold boxes. */
@media (min-width:681px){
  .mg2ar-room-bar{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:12px!important;
    height:auto!important;
    min-height:82px!important;
    padding:14px 0!important;
    overflow:visible!important;
  }
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]){
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:12px!important;
    margin-left:0!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    box-sizing:border-box!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:100%!important;
    min-height:58px!important;
    height:auto!important;
    margin:0!important;
    padding:0 24px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border:1px solid rgba(206,191,75,.55)!important;
    border-radius:22px!important;
    background:#080808!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    overflow:visible!important;
    text-overflow:unset!important;
    line-height:1!important;
    font-size:clamp(11px,.95vw,16px)!important;
    font-weight:950!important;
    letter-spacing:.03em!important;
    box-shadow:none!important;
  }
  .mg2ar-room-bar > .mg2ar-link:hover,
  .mg2ar-room-bar > .mg2ar-share-live:hover,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button:hover,
  .mg2ar-room-bar > .mg2ar-multistream-open:hover,
  .mg2ar-room-bar > .mg2ar-pill:hover{
    border-color:#e5ca61!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 0 18px rgba(206,191,75,.12)!important;
  }
  .mg2ar-room-bar > .mg2ar-link{min-width:170px!important}
  .mg2ar-room-bar > .mg2ar-share-live{min-width:190px!important}
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button{min-width:200px!important}
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{min-width:150px!important}
  .mg2ar-room-bar .mg2ar-live-dot{flex:0 0 10px!important;width:10px!important;height:10px!important;margin:0 8px 0 0!important}
}

@media (min-width:681px) and (max-width:1180px){
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    font-size:11px!important;
    min-height:54px!important;
  }
  .mg2ar-room-bar > .mg2ar-link{min-width:150px!important}
  .mg2ar-room-bar > .mg2ar-share-live{min-width:170px!important}
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button{min-width:176px!important}
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{min-width:132px!important}
}

@media (max-width:680px){
  .mg2ar-room-title-heading{align-items:flex-start!important;gap:8px!important}
  .mg2ar-edit-room-title{min-height:34px!important;font-size:8px!important;padding:0 10px!important}
  .mg2ar-room-title-editor{grid-template-columns:1fr 1fr!important;padding:8px!important}
  .mg2ar-room-title-editor input{grid-column:1 / -1!important}
  .mg2ar-room-title-editor button{width:100%!important;padding:0 8px!important}
  .mg2ar-room-bar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    height:auto!important;
    min-height:0!important;
    padding:8px 0!important;
    overflow:visible!important;
  }
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]){display:contents!important}
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 10px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(206,191,75,.55)!important;
    border-radius:18px!important;
    background:#080808!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:unset!important;
    font-size:10px!important;
    font-weight:950!important;
    letter-spacing:.02em!important;
    line-height:1!important;
  }
}


/* v1.0.104 final safeguard — never clip room-bar labels. */
.mg2ar-room-bar > .mg2ar-link,
.mg2ar-room-bar > .mg2ar-share-live,
.mg2ar-room-bar .mg2ar-media-host-controls button,
.mg2ar-room-bar > .mg2ar-multistream-open,
.mg2ar-room-bar > .mg2ar-pill,
.mg2ar-room-bar > .mg2ar-link span,
.mg2ar-room-bar > .mg2ar-share-live span,
.mg2ar-room-bar .mg2ar-media-host-controls button span,
.mg2ar-room-bar > .mg2ar-multistream-open span,
.mg2ar-room-bar > .mg2ar-pill span{
  overflow:visible!important;
  text-overflow:unset!important;
  min-width:0!important;
}


/* v1.0.105 — Make room-bar label text smaller so every word fits cleanly
   inside the gold boxes on desktop and laptop widths. */
@media (min-width:681px){
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill,
  .mg2ar-room-bar > .mg2ar-link span,
  .mg2ar-room-bar > .mg2ar-share-live span,
  .mg2ar-room-bar .mg2ar-media-host-controls button span,
  .mg2ar-room-bar > .mg2ar-multistream-open span,
  .mg2ar-room-bar > .mg2ar-pill span{
    font-size:clamp(8px,.72vw,11px)!important;
    letter-spacing:.015em!important;
    line-height:1!important;
  }
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    padding:0 14px!important;
  }
}
@media (min-width:681px) and (max-width:1180px){
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill,
  .mg2ar-room-bar > .mg2ar-link span,
  .mg2ar-room-bar > .mg2ar-share-live span,
  .mg2ar-room-bar .mg2ar-media-host-controls button span,
  .mg2ar-room-bar > .mg2ar-multistream-open span,
  .mg2ar-room-bar > .mg2ar-pill span{
    font-size:9px!important;
  }
}


/* v1.0.106 — Force the top in-room action buttons onto a single desktop row.
   Use compact equal-width buttons so every visible action fits on one line. */
@media (min-width: 1000px){
  .mg2ar-room-bar{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    gap:8px!important;
    min-height:64px!important;
    padding:10px 0!important;
    overflow:visible!important;
  }
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]){
    display:contents!important;
    margin-left:0!important;
    min-width:0!important;
  }
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:50px!important;
    height:auto!important;
    margin:0!important;
    padding:0 8px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border:1px solid rgba(206,191,75,.55)!important;
    border-radius:18px!important;
    background:#080808!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    font-size:clamp(7px,.58vw,10px)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.01em!important;
    box-shadow:none!important;
  }
  .mg2ar-room-bar > .mg2ar-link *,
  .mg2ar-room-bar > .mg2ar-share-live *,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button *,
  .mg2ar-room-bar > .mg2ar-multistream-open *,
  .mg2ar-room-bar > .mg2ar-pill *{
    font-size:inherit!important;
    line-height:1!important;
    letter-spacing:inherit!important;
    white-space:nowrap!important;
  }
  .mg2ar-room-bar .mg2ar-live-dot{
    flex:0 0 8px!important;
    width:8px!important;
    height:8px!important;
    margin:0 6px 0 0!important;
  }
}

/* Keep tablet/mobile behavior available below desktop so controls can wrap when needed. */
@media (min-width: 681px) and (max-width: 999px){
  .mg2ar-room-bar{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]){
    display:contents!important;
  }
  .mg2ar-room-bar > .mg2ar-link,
  .mg2ar-room-bar > .mg2ar-share-live,
  .mg2ar-room-bar .mg2ar-media-host-controls:not([hidden]) > button,
  .mg2ar-room-bar > .mg2ar-multistream-open,
  .mg2ar-room-bar > .mg2ar-pill{
    flex:1 1 calc(25% - 8px)!important;
    min-width:140px!important;
  }
}


/* v1.0.107 — Total Number Of Members counter in the lobby.
   Uses the site's existing registered non-administrator accounts immediately,
   then refreshes the aggregate count while the lobby remains open. */
.mg2ar-member-counter{
  width:100%!important;
  margin:18px auto 0!important;
  padding:10px 14px 2px!important;
  text-align:center!important;
  color:#fff!important;
}
.mg2ar-member-counter-label{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(20px,2.2vw,38px)!important;
  font-weight:400!important;
  line-height:1.15!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.mg2ar-member-counter-number{
  margin-top:14px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(25px,2.45vw,42px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.2em!important;
  font-variant-numeric:tabular-nums!important;
}
.mg2ar-member-counter + .mg2ar-hero{
  padding-top:18px!important;
}
@media(max-width:680px){
  .mg2ar-member-counter{margin-top:12px!important;padding:8px 4px 0!important}
  .mg2ar-member-counter-label{font-size:clamp(16px,5.4vw,23px)!important;letter-spacing:.11em!important}
  .mg2ar-member-counter-number{font-size:clamp(22px,7vw,31px)!important;margin-top:10px!important;letter-spacing:.16em!important}
  .mg2ar-member-counter + .mg2ar-hero{padding-top:14px!important}
}


/* v1.0.108 — Move the member counter from the middle of the lobby
   into the right-side entry area above the Join/Create tabs. */
.mg2ar-entry-card .mg2ar-member-counter{
  width:100%!important;
  margin:0 0 16px!important;
  padding:0 0 4px!important;
  text-align:center!important;
}
.mg2ar-entry-card .mg2ar-member-counter-label{
  font-size:clamp(12px,1.2vw,22px)!important;
  letter-spacing:.12em!important;
  line-height:1.15!important;
}
.mg2ar-entry-card .mg2ar-member-counter-number{
  margin-top:8px!important;
  font-size:clamp(22px,2vw,36px)!important;
  letter-spacing:.16em!important;
  line-height:1!important;
}
.mg2ar-hero > .mg2ar-member-counter,
.mg2ar-shell > .mg2ar-member-counter{
  margin-left:0!important;
  margin-right:0!important;
}
@media(max-width:680px){
  .mg2ar-entry-card .mg2ar-member-counter{margin:0 0 12px!important;padding:0 0 2px!important}
  .mg2ar-entry-card .mg2ar-member-counter-label{font-size:clamp(12px,4vw,18px)!important;letter-spacing:.09em!important}
  .mg2ar-entry-card .mg2ar-member-counter-number{font-size:clamp(20px,6vw,28px)!important;margin-top:6px!important;letter-spacing:.13em!important}
}


/* v1.0.109 — Match the member counter typography to the Create Room button.
   Use the same bold sans-serif feel and roughly the same text size. */
.mg2ar-entry-card .mg2ar-member-counter-label,
.mg2ar-entry-card .mg2ar-member-counter-number{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-weight:900!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 2px rgba(0,0,0,.65)!important;
}
.mg2ar-entry-card .mg2ar-member-counter-label{
  font-size:clamp(15px,1.2vw,18px)!important;
  line-height:1.2!important;
  letter-spacing:.06em!important;
}
.mg2ar-entry-card .mg2ar-member-counter-number{
  margin-top:10px!important;
  font-size:clamp(15px,1.2vw,18px)!important;
  line-height:1.2!important;
  letter-spacing:.06em!important;
  font-variant-numeric:normal!important;
}
@media(max-width:680px){
  .mg2ar-entry-card .mg2ar-member-counter-label,
  .mg2ar-entry-card .mg2ar-member-counter-number{
    font-size:16px!important;
    letter-spacing:.05em!important;
  }
  .mg2ar-entry-card .mg2ar-member-counter-number{margin-top:8px!important}
}


/* v1.0.110 — Match the member counter layout to the approved screenshot.
   Restore the elegant serif display font, centered layout, and larger sizes. */
.mg2ar-entry-card .mg2ar-member-counter,
.mg2ar-entry-card .mg2ar-member-counter--entry{
  width:100%!important;
  margin:4px 0 14px!important;
  padding:0 0 2px!important;
  text-align:center!important;
}
.mg2ar-entry-card .mg2ar-member-counter-label{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-transform:uppercase!important;
  font-size:clamp(28px,3.05vw,52px)!important;
  line-height:1.04!important;
  letter-spacing:.14em!important;
  text-shadow:none!important;
  margin:0!important;
}
.mg2ar-entry-card .mg2ar-member-counter-number{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-transform:uppercase!important;
  font-size:clamp(30px,3.25vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:.22em!important;
  text-shadow:none!important;
  margin:18px 0 0!important;
  font-variant-numeric:tabular-nums!important;
}
@media(max-width:680px){
  .mg2ar-entry-card .mg2ar-member-counter,
  .mg2ar-entry-card .mg2ar-member-counter--entry{
    margin:2px 0 12px!important;
  }
  .mg2ar-entry-card .mg2ar-member-counter-label{
    font-size:clamp(18px,6vw,28px)!important;
    letter-spacing:.10em!important;
    line-height:1.08!important;
  }
  .mg2ar-entry-card .mg2ar-member-counter-number{
    font-size:clamp(22px,7vw,36px)!important;
    letter-spacing:.16em!important;
    margin-top:12px!important;
  }
}


/* v1.0.111 — Match the member counter layout to the second reference screenshot.
   Keep the counter compact, on one line, and set the visible counter text to 16px. */
.mg2ar-entry-card .mg2ar-member-counter,
.mg2ar-entry-card .mg2ar-member-counter--entry{
  width:100%!important;
  margin:0 0 10px!important;
  padding:0!important;
  text-align:center!important;
}
.mg2ar-entry-card .mg2ar-member-counter-label{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-transform:uppercase!important;
  font-size:16px!important;
  line-height:1.12!important;
  letter-spacing:.08em!important;
  text-shadow:none!important;
  margin:0!important;
  white-space:nowrap!important;
}
.mg2ar-entry-card .mg2ar-member-counter-number{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  text-transform:uppercase!important;
  font-size:16px!important;
  line-height:1.12!important;
  letter-spacing:.14em!important;
  text-shadow:none!important;
  margin:8px 0 0!important;
  font-variant-numeric:tabular-nums!important;
}
@media(max-width:680px){
  .mg2ar-entry-card .mg2ar-member-counter{margin:0 0 10px!important}
  .mg2ar-entry-card .mg2ar-member-counter-label,
  .mg2ar-entry-card .mg2ar-member-counter-number{
    font-size:16px!important;
    line-height:1.12!important;
  }
}


/* v1.0.112 — permission/recording additions only. Existing v1.0.111 lobby/room layout above is unchanged. */
.mg2ar-recording-responsibility{margin:12px 0 0;padding:10px 12px;border:1px solid rgba(206,191,75,.42);border-radius:10px;background:rgba(206,191,75,.06)}
.mg2ar-recording-responsibility strong{display:block;color:var(--mg2ar-accent);font-size:11px;letter-spacing:.12em;margin-bottom:5px}
.mg2ar-recording-responsibility p{margin:0;color:var(--mg2ar-muted);font-size:11px;line-height:1.5}

/* v1.0.113 — Admin Room Monitor is scoped so the v1.0.111/1.0.112 member-facing layout stays unchanged. */
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-back-lobby],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-leave],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-share],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-get-notified],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-mic],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-hand],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-avatar-toggle],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-camera-live],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-share-live],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-multistream-open],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-edit-room-title],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-media-host-controls],
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-self-audience],
.mg2ar-app.mg2ar-admin-monitor-mode .mg2ar-reactions{display:none!important}
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-chat-input]:disabled{opacity:.72!important;cursor:default!important}
.mg2ar-app.mg2ar-admin-monitor-mode [data-mg2ar-send]{display:none!important}

/* v1.0.114 — public live-room recording banner removed. Recording permissions/status remain active in Host/Admin controls. */


/* v1.0.115 — APPROVED CELL-PHONE ROOM LAYOUT
   IMPORTANT: every layout rule below is capped at 720px so the existing desktop
   experience remains untouched. JavaScript moves the original working controls
   into these slots only while the phone breakpoint is active. */
.mg2ar-mobile-command-panel,.mg2ar-mobile-floating-controls{display:none}
.mg2ar-message-meta{display:flex;align-items:baseline;gap:8px;min-width:0}
.mg2ar-message-meta>b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mg2ar-message-time{flex:0 0 auto;color:var(--mg2ar-muted,#888)!important;font-size:9px!important;font-weight:700!important;letter-spacing:.02em;white-space:nowrap}

@media (max-width:720px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;
    background:#030303!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-view,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-grid{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-media-stage{
    width:100%!important;max-width:100%!important;height:clamp(270px,42dvh,390px)!important;
    min-height:270px!important;max-height:390px!important;margin:0!important;border-radius:0!important;
    border-bottom:1px solid rgba(206,191,75,.2)!important;background:#000!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
    min-height:calc(100dvh - 270px)!important;padding:0 14px 118px!important;overflow:visible!important;
    background:linear-gradient(180deg,#090b07 0,#020202 44%,#020202 100%)!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-bar{display:none!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title{
    width:100%!important;max-width:100%!important;padding:12px 0 2px!important;text-align:center!important;overflow:visible!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title>.mg2ar-eyebrow{
    margin:0 0 5px!important;color:var(--mg2ar-accent)!important;font-size:11px!important;font-weight:950!important;letter-spacing:.22em!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title-heading{display:block!important;width:100%!important;margin:0!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title-heading h2{
    width:100%!important;max-width:100%!important;margin:0 0 10px!important;color:#fff!important;
    font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(28px,7.6vw,38px)!important;font-weight:400!important;
    line-height:1.02!important;letter-spacing:.02em!important;text-align:center!important;text-transform:uppercase!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui [data-mg2ar-role-line],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-presence-note{display:none!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title-editor{
    position:relative!important;z-index:120!important;width:100%!important;grid-template-columns:1fr!important;margin:7px 0 10px!important;
  }

  /* Compact two-button row + three screenshot-style dropdown columns. */
  .mg2ar-mobile-command-panel{display:block!important;width:100%!important;max-width:100%!important;margin:0 0 8px!important;text-align:left!important}
  .mg2ar-mobile-command-top{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;margin:0 0 7px!important}
  .mg2ar-mobile-command-slot{min-width:0!important}
  .mg2ar-mobile-command-slot>button,
  .mg2ar-mobile-command-slot>a{
    display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;min-width:0!important;
    min-height:40px!important;margin:0!important;padding:0 12px!important;border:1px solid rgba(206,191,75,.72)!important;border-radius:11px!important;
    background:#090a08!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important;
  }
  .mg2ar-mobile-menus{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;width:100%!important;align-items:start!important}
  .mg2ar-mobile-menu{min-width:0!important}
  .mg2ar-mobile-menu.is-empty{display:none!important}
  .mg2ar-mobile-force-hidden{display:none!important}
  .mg2ar-mobile-menu-head{
    display:grid!important;grid-template-columns:minmax(0,1fr) 34px!important;width:100%!important;min-height:38px!important;
    border:1px solid rgba(206,191,75,.52)!important;border-radius:9px!important;background:#0b0c0a!important;overflow:hidden!important;
  }
  .mg2ar-mobile-primary-slot{min-width:0!important;display:flex!important;align-items:stretch!important}
  .mg2ar-mobile-primary-slot>button,
  .mg2ar-mobile-primary-slot>a{
    display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:1 1 auto!important;width:100%!important;min-width:0!important;max-width:none!important;
    min-height:38px!important;height:38px!important;margin:0!important;padding:0 5px!important;border:0!important;border-radius:0!important;background:#0b0c0a!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.04em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
    box-shadow:none!important;transform:none!important;
  }
  .mg2ar-mobile-primary-slot .mg2ar-share-live .mg2ar-live-dot{width:10px!important;height:10px!important;margin:0 4px 0 0!important}
  .mg2ar-mobile-primary-slot [data-reaction="❤️"] .mg2ar-reaction-glyph{width:24px!important;height:24px!important}
  .mg2ar-mobile-primary-slot [data-reaction="❤️"] .mg2ar-reaction-fallback{display:inline!important;color:var(--mg2ar-accent)!important;font-size:9px!important}
  .mg2ar-mobile-menu-arrow{
    display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;min-width:34px!important;height:38px!important;margin:0!important;padding:0!important;
    border:0!important;border-left:1px solid rgba(206,191,75,.24)!important;border-radius:0!important;background:#0b0c0a!important;color:#fff!important;font-size:24px!important;line-height:1!important;box-shadow:none!important;
  }
  .mg2ar-mobile-menu-arrow span{display:block!important;transform:translateY(-2px) rotate(0deg)!important;transition:transform .2s ease!important}
  .mg2ar-mobile-menu.is-open .mg2ar-mobile-menu-arrow span{transform:translateY(1px) rotate(180deg)!important}
  .mg2ar-mobile-dropdown-wrap{display:grid!important;grid-template-rows:0fr!important;transition:grid-template-rows .24s ease!important}
  .mg2ar-mobile-menu.is-open .mg2ar-mobile-dropdown-wrap{grid-template-rows:1fr!important}
  .mg2ar-mobile-dropdown{min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;gap:5px!important;padding:0!important}
  .mg2ar-mobile-menu.is-open .mg2ar-mobile-dropdown{padding-top:6px!important}
  .mg2ar-mobile-dropdown>button,
  .mg2ar-mobile-dropdown>a{
    display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;min-width:0!important;
    min-height:36px!important;height:auto!important;margin:0!important;padding:6px 5px!important;border:1px solid rgba(206,191,75,.36)!important;border-radius:8px!important;
    background:#0b0c0a!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:9px!important;font-weight:800!important;letter-spacing:.035em!important;
    white-space:normal!important;line-height:1.1!important;text-align:center!important;box-shadow:none!important;transform:none!important;
  }
  .mg2ar-mobile-dropdown>.mg2ar-leave-button{background:#0b0c0a!important;color:#fff!important}
  .mg2ar-mobile-dropdown>[data-reaction]{flex-direction:row!important;gap:7px!important;color:var(--mg2ar-accent)!important}
  .mg2ar-mobile-dropdown>[data-reaction] .mg2ar-reaction-fallback{display:inline!important;color:var(--mg2ar-accent)!important;font-size:8px!important}
  .mg2ar-mobile-dropdown>[data-reaction] .mg2ar-reaction-glyph,
  .mg2ar-mobile-dropdown>[data-reaction] .mg2ar-reaction-emoji{width:21px!important;height:21px!important;font-size:20px!important;color:#fff!important}

  /* Audio Ready panel sits directly below the compact controls, then Host. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;width:100%!important;max-width:100%!important;
    min-height:34px!important;margin:6px 0 0!important;padding:5px 7px!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:left!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection>[data-mg2ar-audio-status]{font-size:10px!important;font-weight:900!important;letter-spacing:.04em!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection .mg2ar-get-notified,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection [data-mg2ar-retry-audio]{width:auto!important;min-height:30px!important;margin-left:auto!important;padding:0 9px!important;font-size:8px!important}

  /* Participant area matches the narrow phone composition. Menu expansion above
     remains in normal flow, so Host automatically shifts down/up without JS offsets. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-group-label{
    margin:17px 0 10px!important;color:var(--mg2ar-accent)!important;-webkit-text-fill-color:var(--mg2ar-accent)!important;
    font-size:11px!important;font-weight:950!important;letter-spacing:.18em!important;text-align:left!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-people,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audience{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;width:100%!important;max-width:100%!important;
    justify-items:start!important;align-items:start!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-person{width:100%!important;max-width:180px!important;min-width:0!important;text-align:left!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-person-name{font-size:12px!important;text-align:left!important;white-space:normal!important;line-height:1.15!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-person-role{font-size:9px!important;text-align:center!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-square{border-radius:17px!important}

  /* Original bottom control container is only a source holder on phone; all visible
     phone controls are moved into the command panel or floating bar. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-controls{display:none!important}

  /* Floating phone buttons: Mic + context-sensitive Chat/Stage. */
  .mg2ar-mobile-floating-controls{
    position:fixed!important;left:50%!important;bottom:max(12px,env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;
    z-index:2147482500!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;
    width:min(calc(100vw - 28px),540px)!important;max-width:calc(100vw - 28px)!important;padding:0!important;pointer-events:auto!important;
  }
  .mg2ar-mobile-floating-controls.mg2ar-mobile-no-mic{grid-template-columns:1fr!important}
  .mg2ar-mobile-mic-slot{min-width:0!important}
  .mg2ar-mobile-mic-slot:empty{display:none!important}
  .mg2ar-mobile-mic-slot>[data-mg2ar-mic],
  .mg2ar-mobile-pane-toggle{
    display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:100%!important;max-width:100%!important;min-width:0!important;
    min-height:64px!important;height:64px!important;margin:0!important;padding:0 14px!important;border:1px solid rgba(206,191,75,.58)!important;border-radius:0!important;
    background:rgba(3,3,3,.94)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;backdrop-filter:blur(12px)!important;
    font-size:17px!important;font-weight:900!important;letter-spacing:.04em!important;line-height:1!important;box-shadow:0 12px 34px rgba(0,0,0,.55)!important;
  }
  .mg2ar-mobile-pane-toggle span{color:var(--mg2ar-accent)!important;font-weight:500!important;letter-spacing:.04em!important}
  .mg2ar-mobile-pane-toggle strong{color:#fff!important;font-size:20px!important;letter-spacing:.08em!important}

  /* One pane at a time on phones. Desktop retains its two-column Stage + Chat. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-stage-view .mg2ar-chat{display:none!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-media-stage,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-stage{display:none!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-room-grid{display:block!important;min-height:100dvh!important;background:#050505!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-chat{
    display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-height:100dvh!important;height:100dvh!important;
    padding:0 0 calc(92px + env(safe-area-inset-bottom))!important;border:0!important;background:var(--mg2ar-chat-bg,#0c0c0c)!important;overflow:hidden!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-chat-head{
    flex:0 0 auto!important;padding:18px 16px!important;border-bottom:1px solid rgba(206,191,75,.24)!important;color:var(--mg2ar-accent)!important;font-size:15px!important;letter-spacing:.08em!important;text-transform:uppercase!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-messages{
    flex:1 1 auto!important;min-height:0!important;max-height:none!important;width:100%!important;padding:16px!important;overflow-y:auto!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-chatbox{flex:0 0 auto!important;width:100%!important;max-width:100%!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-message-time{font-size:9px!important}

  /* The older separate phone-layout pane switch is hidden when present so there
     is only one Stage/Chat control and the new label can always describe destination. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2pl-room-pane-switch,
  body.mg2ar-room-page-open .mg2pl-room-pane-switch{display:none!important}
}

@media (max-width:430px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage{padding-left:10px!important;padding-right:10px!important}
  .mg2ar-mobile-command-top{gap:7px!important}.mg2ar-mobile-menus{gap:4px!important}
  .mg2ar-mobile-menu-head{grid-template-columns:minmax(0,1fr) 30px!important}.mg2ar-mobile-menu-arrow{width:30px!important;min-width:30px!important}
  .mg2ar-mobile-primary-slot>button,.mg2ar-mobile-primary-slot>a{font-size:8px!important;padding:0 3px!important}
  .mg2ar-mobile-dropdown>button,.mg2ar-mobile-dropdown>a{font-size:8px!important;padding-left:3px!important;padding-right:3px!important}
  .mg2ar-mobile-floating-controls{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;gap:8px!important}
  .mg2ar-mobile-mic-slot>[data-mg2ar-mic],.mg2ar-mobile-pane-toggle{height:60px!important;min-height:60px!important;font-size:15px!important}
}

/* v1.0.115 — desktop and tablet above 720px intentionally inherit v1.0.114 unchanged. */

/* v1.0.116 — phone layout polish + alternate support links + Host desktop screen share. */
.mg2ar-tip-open-support{margin-top:10px!important}
.mg2ar-screen-share-control.is-active{border-color:var(--mg2ar-accent)!important;box-shadow:inset 0 0 0 1px rgba(206,191,75,.35),0 0 16px rgba(206,191,75,.16)!important}
.mg2ar-screen-share-wrap{position:relative;width:100%;height:100%;min-height:220px;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}
.mg2ar-screen-share-video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.mg2ar-screen-share-waiting{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;min-height:220px;color:#fff;text-align:center;background:#000}
.mg2ar-screen-share-waiting strong{color:var(--mg2ar-accent)!important;font-size:14px;letter-spacing:.12em}
.mg2ar-screen-share-waiting span{color:var(--mg2ar-muted)!important;font-size:11px}
.mg2ar-screen-share-badge,.mg2ar-screen-share-name{position:absolute;z-index:4;left:12px;padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.78);backdrop-filter:blur(7px);font-size:9px;font-weight:950;line-height:1;color:#fff!important}
.mg2ar-screen-share-badge{top:12px;color:var(--mg2ar-accent)!important}
.mg2ar-screen-share-name{bottom:12px;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mg2ar-media-stage[data-media-type="screen"]{background:#000;aspect-ratio:16/9}
.mg2ar-media-stage[data-media-type="screen"] .mg2ar-media-canvas{width:100%;height:100%;background:#000}

@media (max-width:720px){
  /* Bring the shared-media area/title junction higher and tighter on phones. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-media-stage{
    height:clamp(220px,31dvh,300px)!important;min-height:220px!important;max-height:300px!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage{
    min-height:calc(100dvh - 220px)!important;padding-bottom:112px!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title{
    padding:5px 0 0!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title>.mg2ar-eyebrow{
    margin:0 0 3px!important;font-size:10px!important;
  }
  /* Room title now uses the same clean sans-serif family/weight as SHARE and is
     approximately half the previous phone size. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title-heading h2{
    margin:0 0 7px!important;font-family:inherit!important;font-size:clamp(15px,4.2vw,19px)!important;
    font-weight:900!important;line-height:1.08!important;letter-spacing:.045em!important;
  }

  /* Keep SHARE LIVE and AVATAR: PHOTO fully inside their one-third-width boxes. */
  .mg2ar-mobile-primary-slot>button,.mg2ar-mobile-primary-slot>a{
    gap:3px!important;padding:0 3px!important;font-size:8px!important;letter-spacing:.01em!important;
    text-overflow:clip!important;
  }
  .mg2ar-mobile-primary-slot .mg2ar-share-live .mg2ar-live-dot{
    flex:0 0 8px!important;width:8px!important;height:8px!important;margin:0 2px 0 0!important;
  }
  .mg2ar-mobile-primary-slot [data-mg2ar-share-live-label]{font-size:inherit!important;white-space:nowrap!important}
  .mg2ar-mobile-primary-slot [data-mg2ar-avatar-toggle]{font-size:8px!important;letter-spacing:0!important;white-space:nowrap!important}

  /* Screen Share is Host-desktop-only. The real button is not moved into the
     phone dropdown and stays hidden at the phone breakpoint. */
  .mg2ar-app.mg2ar-in-room [data-mg2ar-screen-share]{display:none!important}

  /* Bottom floating row now contains Get Notified, Mic, and Chat/Stage. */
  .mg2ar-mobile-floating-controls{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;
    width:min(calc(100vw - 20px),560px)!important;max-width:calc(100vw - 20px)!important;
  }
  .mg2ar-mobile-floating-controls.mg2ar-mobile-no-mic{grid-template-columns:1fr 1fr!important}
  .mg2ar-mobile-notify-slot,.mg2ar-mobile-mic-slot{min-width:0!important}
  .mg2ar-mobile-notify-slot:empty,.mg2ar-mobile-mic-slot:empty{display:none!important}
  .mg2ar-mobile-notify-slot>[data-mg2ar-get-notified],
  .mg2ar-mobile-mic-slot>[data-mg2ar-mic],
  .mg2ar-mobile-pane-toggle{
    display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:100%!important;min-width:0!important;
    height:60px!important;min-height:60px!important;margin:0!important;padding:0 5px!important;border:1px solid rgba(206,191,75,.58)!important;border-radius:0!important;
    background:rgba(3,3,3,.94)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;backdrop-filter:blur(12px)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.55)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;
  }
  .mg2ar-mobile-notify-slot>[data-mg2ar-get-notified]{font-size:11px!important;font-weight:500!important;letter-spacing:.015em!important;line-height:1!important}
  .mg2ar-mobile-mic-slot>[data-mg2ar-mic]{gap:6px!important;font-size:15px!important;font-weight:900!important;letter-spacing:.02em!important;line-height:1!important}
  .mg2ar-mobile-pane-toggle{gap:6px!important;font-size:12px!important;font-weight:900!important;letter-spacing:.015em!important;line-height:1!important}
  .mg2ar-mobile-pane-toggle span{font-size:12px!important;white-space:nowrap!important}
  .mg2ar-mobile-pane-toggle strong{font-size:15px!important;letter-spacing:.02em!important;white-space:nowrap!important}
}

@media (max-width:430px){
  .mg2ar-mobile-primary-slot>button,.mg2ar-mobile-primary-slot>a,
  .mg2ar-mobile-primary-slot [data-mg2ar-avatar-toggle]{font-size:7.5px!important;padding-left:2px!important;padding-right:2px!important}
  .mg2ar-mobile-notify-slot>[data-mg2ar-get-notified]{font-size:10px!important;letter-spacing:0!important}
  .mg2ar-mobile-mic-slot>[data-mg2ar-mic]{font-size:14px!important;padding-left:3px!important;padding-right:3px!important}
  .mg2ar-mobile-pane-toggle,.mg2ar-mobile-pane-toggle span{font-size:11px!important}
  .mg2ar-mobile-pane-toggle strong{font-size:13px!important}
}


/* v1.0.117 — hard mobile title lock + fullscreen Host screen-share viewer.
   This block is intentionally LAST so older phone-template rules cannot enlarge
   the room title after the approved compact mobile layout is applied. */
@media (max-width:720px){
  html body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title .mg2ar-room-title-heading h2,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title .mg2ar-room-title-heading h2{
    width:100%!important;max-width:100%!important;margin:0 0 7px!important;
    font-family:inherit!important;font-size:clamp(16px,4.4vw,19px)!important;font-weight:800!important;
    line-height:1.12!important;letter-spacing:.035em!important;text-align:center!important;text-transform:uppercase!important;
    white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;
  }
}
@media (max-width:430px){
  html body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title .mg2ar-room-title-heading h2,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title .mg2ar-room-title-heading h2{
    font-size:clamp(15px,4.35vw,18px)!important;
  }
}

/* Screen-share viewing controls are supplemental. They never expose the Host's
   desktop SHARE SCREEN start control on phones. */
.mg2ar-screen-share-viewer-controls{
  position:absolute;z-index:20;right:10px;top:10px;display:none;align-items:center;gap:6px;
}
.mg2ar-screen-share-viewer-controls button{
  appearance:none;min-height:32px;margin:0;padding:0 10px;border:1px solid rgba(206,191,75,.75);border-radius:999px;
  background:rgba(0,0,0,.78);color:#fff!important;-webkit-text-fill-color:#fff!important;backdrop-filter:blur(8px);
  font-family:inherit;font-size:9px;font-weight:900;line-height:1;letter-spacing:.045em;white-space:nowrap;box-shadow:0 5px 18px rgba(0,0,0,.42);cursor:pointer;
}
.mg2ar-screen-share-viewer-controls button:active{transform:scale(.98)}
.mg2ar-screen-share-wrap.is-fill .mg2ar-screen-share-video{object-fit:cover!important}

/* Phone/coarse-pointer viewers keep access to the controls in both portrait and
   landscape. Desktop mouse users keep the existing normal stage experience. */
@media (max-width:720px), (pointer:coarse){
  .mg2ar-screen-share-viewer-controls{display:flex!important}
}
@media (max-width:430px){
  .mg2ar-screen-share-viewer-controls{right:7px;top:7px;gap:4px}
  .mg2ar-screen-share-viewer-controls button{min-height:29px;padding:0 8px;font-size:8px;letter-spacing:.025em}
}

/* Fullscreen fills the physical phone viewport in either orientation. The
   default FIT mode preserves the entire desktop; viewers can tap FILL when they
   prefer edge-to-edge coverage. */
.mg2ar-screen-share-wrap:fullscreen,
.mg2ar-screen-share-wrap:-webkit-full-screen{
  width:100vw!important;height:100vh!important;min-width:100vw!important;min-height:100vh!important;
  max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:#000!important;overflow:hidden!important;
}
@supports (height:100dvh){
  .mg2ar-screen-share-wrap:fullscreen,
  .mg2ar-screen-share-wrap:-webkit-full-screen{
    height:100dvh!important;min-height:100dvh!important;
  }
}
.mg2ar-screen-share-wrap:fullscreen .mg2ar-screen-share-video,
.mg2ar-screen-share-wrap:-webkit-full-screen .mg2ar-screen-share-video{
  width:100vw!important;height:100vh!important;min-width:100vw!important;min-height:100vh!important;max-width:none!important;max-height:none!important;
  object-fit:contain;background:#000!important;
}
@supports (height:100dvh){
  .mg2ar-screen-share-wrap:fullscreen .mg2ar-screen-share-video,
  .mg2ar-screen-share-wrap:-webkit-full-screen .mg2ar-screen-share-video{
    height:100dvh!important;min-height:100dvh!important;
  }
}
.mg2ar-screen-share-wrap.is-fill:fullscreen .mg2ar-screen-share-video,
.mg2ar-screen-share-wrap.is-fill:-webkit-full-screen .mg2ar-screen-share-video{object-fit:cover!important}
.mg2ar-screen-share-wrap:fullscreen .mg2ar-screen-share-viewer-controls,
.mg2ar-screen-share-wrap:-webkit-full-screen .mg2ar-screen-share-viewer-controls{display:flex!important;position:fixed!important;top:max(10px,env(safe-area-inset-top))!important;right:max(10px,env(safe-area-inset-right))!important}
.mg2ar-screen-share-wrap:fullscreen .mg2ar-screen-share-badge,
.mg2ar-screen-share-wrap:-webkit-full-screen .mg2ar-screen-share-badge{top:max(10px,env(safe-area-inset-top))!important;left:max(10px,env(safe-area-inset-left))!important}
.mg2ar-screen-share-wrap:fullscreen .mg2ar-screen-share-name,
.mg2ar-screen-share-wrap:-webkit-full-screen .mg2ar-screen-share-name{bottom:max(10px,env(safe-area-inset-bottom))!important;left:max(10px,env(safe-area-inset-left))!important}


/* v1.0.118 — Host screen-share chooser helper. Chrome owns the final picker and
   keeps its Share button disabled until the Host selects a preview tile. */
.mg2ar-screen-share-help{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.84);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}
.mg2ar-screen-share-help-card{position:relative;width:min(610px,100%);background:#090a07;border:1px solid var(--mg2ar-border,#cdbf49);border-radius:22px;padding:26px;box-shadow:0 30px 100px rgba(0,0,0,.7);color:#fff;font-family:Arial,Helvetica,sans-serif}
.mg2ar-screen-share-help-card small{display:block;color:var(--mg2ar-accent,#d6c947);font-size:12px;font-weight:900;letter-spacing:.16em;margin:0 46px 8px 0}
.mg2ar-screen-share-help-card strong{display:block;font-size:25px;line-height:1.2;margin:0 46px 12px 0;color:#fff}
.mg2ar-screen-share-help-card p{font-size:15px;line-height:1.55;color:#e9e9e9;margin:10px 0}
.mg2ar-screen-share-help-card ol{margin:16px 0 14px 22px;padding:0;color:#fff;font-size:16px;line-height:1.65}
.mg2ar-screen-share-help-card li{padding-left:5px;margin:5px 0}
.mg2ar-screen-share-help-note{border:1px solid rgba(214,201,71,.45);background:rgba(214,201,71,.06);border-radius:12px;padding:12px!important;color:#f1eca9!important}
.mg2ar-screen-share-help-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:1px solid var(--mg2ar-border,#cdbf49)!important;border-radius:999px;background:#050505!important;color:#fff!important;font-size:25px;line-height:1;cursor:pointer}
.mg2ar-screen-share-help-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}
.mg2ar-screen-share-help-actions button{min-height:46px;padding:10px 18px;border:1px solid var(--mg2ar-border,#cdbf49)!important;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.05em;cursor:pointer}
.mg2ar-screen-share-help-actions [data-mg2ar-screen-help-cancel]{background:#050505!important;color:#fff!important}
.mg2ar-screen-share-help-actions [data-mg2ar-screen-help-open]{background:var(--mg2ar-primary,#d6c947)!important;color:var(--mg2ar-primary-text,#000)!important}
@media(max-width:680px){.mg2ar-screen-share-help{display:none!important}}


/* v1.0.121 — Visitor-visible Host controls.
   EDIT ROOM TITLE and SHARE LIVE stay visually present for Stage visitors,
   while JavaScript keeps their actions Host-only. */
.mg2ar-view-only-control[aria-disabled="true"]{
  opacity:1;
}

/* v1.0.122 — stage polish requested for the phone layout while preserving desktop behavior. */
@keyframes mg2arfloat-to-title{
  0%{opacity:0;transform:translate3d(0,18px,0) scale(.72)}
  12%{opacity:1}
  72%{opacity:1;transform:translate3d(var(--mg2ar-reaction-drift-mid,0px),var(--mg2ar-reaction-y-mid,-320px),0) scale(1.12)}
  100%{opacity:0;transform:translate3d(var(--mg2ar-reaction-drift,0px),var(--mg2ar-reaction-y,-430px),0) scale(1.28)}
}
.mg2ar-app.mg2ar-in-room .mg2ar-floating-reactions span{
  animation:mg2arfloat-to-title 3.15s cubic-bezier(.18,.72,.24,1) forwards!important;
  will-change:transform,opacity!important;
}

/* Desktop: top Stage controls use the same 12px text size as the bottom room controls.
   Also compress empty participant sections so Audience cards/profile buttons sit higher
   and stay clear of the fixed bottom control bar. */
@media (min-width:721px){
  .mg2ar-app.mg2ar-in-room .mg2ar-room-bar > button,
  .mg2ar-app.mg2ar-in-room .mg2ar-room-bar .mg2ar-media-host-controls > button,
  .mg2ar-app.mg2ar-in-room .mg2ar-edit-room-title,
  .mg2ar-app.mg2ar-in-room .mg2ar-room-title-editor button{
    font-size:12px!important;
    line-height:1!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-group-label{
    margin-top:16px!important;
    margin-bottom:7px!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-group-label:has(+ .mg2ar-people:empty){
    margin-top:7px!important;
    margin-bottom:1px!important;
    line-height:1!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-people:empty{min-height:0!important;height:0!important;margin:0!important;padding:0!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-group-label:has(+ [data-mg2ar-audience]){margin-top:12px!important}
  .mg2ar-app.mg2ar-in-room [data-mg2ar-audience]{margin-top:0!important;padding-bottom:8px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-stage{padding-bottom:168px!important}
}

@media (max-width:720px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui{
    --mg2ar-phone-button-font:clamp(9px,2.7vw,11px);
  }

  /* Screen Share is started by the Host on desktop only. Remove the desktop starter
     completely from phone composition so no blank row/gap is left below the media. */
  html body .mg2ar-app.mg2ar-in-room [data-mg2ar-screen-share],
  html body .mg2ar-app.mg2ar-in-room .mg2ar-screen-share-control,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room [data-mg2ar-screen-share],
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-screen-share-control{
    display:none!important;
    visibility:hidden!important;
    position:absolute!important;
    width:0!important;height:0!important;min-width:0!important;min-height:0!important;
    margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;
    pointer-events:none!important;
  }

  /* Give the recovered Screen Share row back to the actual media canvas. */
  html body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-media-stage,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-media-stage{
    height:clamp(285px,42dvh,405px)!important;
    min-height:285px!important;
    max-height:405px!important;
    margin:0!important;
  }
  html body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage{
    min-height:calc(100dvh - 285px)!important;
  }

  /* Top and bottom button labels now share one responsive font size. Icons and
     reaction glyphs retain their intended visual size. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-command-slot>button,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-command-slot>a,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-primary-slot>button,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-primary-slot>a,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-dropdown>button,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-dropdown>a,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-notify-slot>[data-mg2ar-get-notified],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-mic-slot>[data-mg2ar-mic],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-pane-toggle,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-pane-toggle span,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-pane-toggle strong,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui [data-mg2ar-share-live-label],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui [data-mg2ar-avatar-toggle]{
    font-size:var(--mg2ar-phone-button-font)!important;
    line-height:1.08!important;
    letter-spacing:.01em!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-primary-slot>button,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-primary-slot>a{
    gap:3px!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }

  /* Start reactions just above the floating controls. JavaScript computes the exact
     distance to the live Room Title so every reaction reaches that title on phones. */
  .mg2ar-app.mg2ar-in-room .mg2ar-floating-reactions{
    position:fixed!important;
    right:16px!important;
    bottom:max(106px,calc(80px + env(safe-area-inset-bottom)))!important;
    z-index:2147482600!important;
    pointer-events:none!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-floating-reactions span{
    display:block!important;
    font-size:34px!important;
    line-height:1!important;
  }
}
@media (max-width:430px){
  .mg2ar-app.mg2ar-in-room .mg2ar-floating-reactions{right:11px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-floating-reactions span{font-size:31px!important}
}


/* v1.0.123 — admin text size/font controls for room titles and key stage buttons. */
.mg2ar-app .mg2ar-room-title>.mg2ar-eyebrow,
.mg2ar-app .mg2ar-room-title .mg2ar-eyebrow,
.mg2ar-app .mg2ar-live-heading,
.mg2ar-app .mg2ar-chat-title{font-size:var(--mg2ar-room-eyebrow-size,12px)!important}
.mg2ar-app .mg2ar-room-title h2,
.mg2ar-app .mg2ar-room-title .mg2ar-room-title-heading h2{font-size:var(--mg2ar-room-title-size-desktop,54px)!important;line-height:.95!important;font-family:var(--mg2ar-room-title-font-family,inherit)!important}
.mg2ar-app .mg2ar-edit-room-title,
.mg2ar-app .mg2ar-room-title-editor button,
.mg2ar-app .mg2ar-room-bar .mg2ar-media-host-controls button,
.mg2ar-app .mg2ar-room-bar .mg2ar-media-host-controls button span{font-size:var(--mg2ar-top-button-font-size,12px)!important;font-family:var(--mg2ar-top-button-font-family,inherit)!important}
.mg2ar-app .mg2ar-controls .mg2ar-control,
.mg2ar-app .mg2ar-controls .mg2ar-leave-button,
.mg2ar-app .mg2ar-mobile-floating-controls button,
.mg2ar-app .mg2ar-mobile-command-panel button,
.mg2ar-app .mg2ar-person-actions button{font-size:var(--mg2ar-bottom-button-font-size,12px)!important;font-family:var(--mg2ar-bottom-button-font-family,inherit)!important}
.mg2ar-app .mg2ar-audio-connection,
.mg2ar-app .mg2ar-audio-connection>[data-mg2ar-audio-status],
.mg2ar-app .mg2ar-audio-connection button{font-size:var(--mg2ar-status-font-size,12px)!important}
.mg2ar-app .mg2ar-group-label,
.mg2ar-app .mg2ar-chat-head .mg2ar-chat-title{font-size:var(--mg2ar-section-heading-font-size,10px)!important}
@media(max-width:680px){
  html body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2,
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2,
  body .mg2ar-app.mg2ar-in-room .mg2ar-room-title h2{font-size:var(--mg2ar-room-title-size-mobile,28px)!important}
}


/* v1.0.125 — never show the GIF status badge on participant avatars. Real GIF avatars still animate normally. */
.mg2ar-app .mg2ar-gif-badge{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}

/* v1.0.128: never show the small GIF badge on participant avatars. */
.mg2ar-gif-badge{display:none!important}


/* v1.0.130 — approved phone footer/reaction/audio-row layout. Desktop is untouched. */
@media (max-width:720px){
  /* Top row now contains only Share Live and Avatar; reactions live in the footer. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-menus{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  /* Audio status remains one compact row: status -> Retry Audio -> Get Notified. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:5px 0!important;
    margin:6px 0 0!important;
    overflow:visible!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection .mg2ar-audio-dot{
    flex:0 0 9px!important;width:9px!important;height:9px!important;margin:0 3px 0 0!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection>[data-mg2ar-audio-status]{
    flex:1 1 auto!important;min-width:0!important;margin:0!important;
    font-size:clamp(8px,2.3vw,10px)!important;line-height:1.05!important;white-space:nowrap!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection [data-mg2ar-retry-audio],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection .mg2ar-get-notified{
    flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;
    min-height:34px!important;height:34px!important;margin:0!important;padding:0 9px!important;
    border:1px solid rgba(206,191,75,.58)!important;border-radius:0!important;background:#070707!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(7px,2vw,9px)!important;font-weight:900!important;
    line-height:1!important;letter-spacing:.02em!important;white-space:nowrap!important;
  }

  /* Three fixed phone controls: MIC left, LOVE reactions center, CHAT/STAGE right. */
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-floating-controls{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:min(calc(100vw - 20px),560px)!important;
    max-width:calc(100vw - 20px)!important;
    overflow:visible!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-floating-controls.mg2ar-mobile-no-mic{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .mg2ar-mobile-mic-slot,.mg2ar-mobile-reaction-slot{min-width:0!important;position:relative!important}
  .mg2ar-mobile-mic-slot:empty{display:none!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-mic-slot>[data-mg2ar-mic],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-reaction-toggle,
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-pane-toggle{
    display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
    width:100%!important;max-width:100%!important;min-width:0!important;height:60px!important;min-height:60px!important;
    margin:0!important;padding:0 6px!important;border:1px solid rgba(206,191,75,.72)!important;border-radius:0!important;
    background:rgba(3,3,3,.96)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
    box-shadow:0 12px 34px rgba(0,0,0,.55)!important;backdrop-filter:blur(12px)!important;
    font-size:clamp(11px,3.2vw,15px)!important;font-weight:900!important;line-height:1!important;letter-spacing:.025em!important;
    white-space:nowrap!important;overflow:hidden!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-mic-slot>[data-mg2ar-mic]{
    gap:0!important;text-transform:uppercase!important;
  }
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-reaction-toggle{
    border-color:var(--mg2ar-accent,#cebf4b)!important;
  }
  .mg2ar-mobile-reaction-heart{font-size:27px!important;line-height:1!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
  .mg2ar-mobile-reaction-toggle strong{font-size:17px!important;line-height:1!important;transition:transform .2s ease!important}
  .mg2ar-mobile-reaction-slot.is-open .mg2ar-mobile-reaction-toggle strong{transform:rotate(180deg)!important}
  .mg2ar-mobile-pane-toggle span,.mg2ar-mobile-pane-toggle strong{font-size:inherit!important;color:#fff!important;-webkit-text-fill-color:#fff!important}

  /* Reaction tray grows upward from the bottom-center LOVE button. */
  .mg2ar-mobile-reaction-tray{
    position:absolute!important;left:50%!important;bottom:calc(100% + 10px)!important;transform:translateX(-50%) translateY(8px)!important;
    z-index:2147482700!important;width:min(calc(100vw - 28px),520px)!important;max-width:calc(100vw - 28px)!important;
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;
    padding:12px!important;border:1px solid rgba(206,191,75,.42)!important;border-radius:18px!important;
    background:rgba(5,5,5,.98)!important;box-shadow:0 18px 60px rgba(0,0,0,.72)!important;backdrop-filter:blur(16px)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
  }
  .mg2ar-mobile-reaction-tray:after{
    content:"";position:absolute;left:50%;bottom:-8px;transform:translateX(-50%) rotate(45deg);width:15px;height:15px;
    background:#050505;border-right:1px solid rgba(206,191,75,.42);border-bottom:1px solid rgba(206,191,75,.42);
  }
  .mg2ar-mobile-reaction-slot.is-open .mg2ar-mobile-reaction-tray{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateX(-50%) translateY(0)!important;
  }
  .mg2ar-mobile-reaction-tray>[data-reaction]{
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
    width:100%!important;min-width:0!important;min-height:64px!important;height:auto!important;margin:0!important;padding:5px 2px!important;
    border:1px solid rgba(255,255,255,.12)!important;border-radius:999px!important;background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
    box-shadow:none!important;transform:none!important;overflow:visible!important;
  }
  .mg2ar-mobile-reaction-tray>[data-reaction] .mg2ar-reaction-glyph{
    display:block!important;width:28px!important;height:28px!important;color:#fff!important;fill:currentColor!important;
  }
  .mg2ar-mobile-reaction-tray>[data-reaction] .mg2ar-reaction-emoji{
    display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;font-size:25px!important;line-height:1!important;
  }
  .mg2ar-mobile-reaction-tray>[data-reaction] .mg2ar-reaction-fallback{
    display:block!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:7px!important;font-weight:800!important;line-height:1!important;letter-spacing:.02em!important;
  }
}
@media (max-width:430px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection{gap:5px!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection>[data-mg2ar-audio-status]{font-size:7.5px!important;letter-spacing:.015em!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection [data-mg2ar-retry-audio],
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection .mg2ar-get-notified{padding:0 6px!important;font-size:7px!important}
  .mg2ar-mobile-reaction-tray{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;padding:10px 8px!important}
  .mg2ar-mobile-reaction-tray>[data-reaction]{min-height:58px!important}
  .mg2ar-mobile-reaction-heart{font-size:24px!important}
}

@media (max-width:720px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-mobile-reaction-toggle[hidden]{display:none!important}
}

/* v1.0.130.3 — tap/click chat-message reactions */
.mg2ar-app .mg2ar-messages{overflow-x:hidden!important;}
.mg2ar-app .mg2ar-message{align-items:flex-start!important;overflow:visible!important;position:relative!important;}
.mg2ar-app .mg2ar-message-body{
  position:relative!important;
  display:block!important;
  width:fit-content!important;
  max-width:calc(100% - 2px)!important;
  min-width:94px!important;
  padding:9px 12px 10px!important;
  border:1px solid rgba(255,255,255,.055)!important;
  border-radius:15px!important;
  background:#30323a!important;
  box-shadow:0 7px 20px rgba(0,0,0,.18)!important;
  cursor:pointer!important;
  overflow:visible!important;
  touch-action:manipulation!important;
}
.mg2ar-app .mg2ar-message-body:hover{border-color:rgba(206,191,75,.28)!important;}
.mg2ar-app .mg2ar-message-meta{gap:8px!important;margin-bottom:2px!important;}
.mg2ar-app .mg2ar-message-meta>b{color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:850!important;}
.mg2ar-app .mg2ar-message-time{color:rgba(255,255,255,.52)!important;-webkit-text-fill-color:rgba(255,255,255,.52)!important;}
.mg2ar-app .mg2ar-message p{color:#fff!important;-webkit-text-fill-color:#fff!important;margin:4px 0 0!important;}
.mg2ar-app .mg2ar-message .mg2ar-chat-gif{border-radius:11px!important;overflow:hidden!important;}
.mg2ar-app .mg2ar-chat-reaction-picker{
  position:absolute!important;
  left:4px!important;
  bottom:calc(100% + 8px)!important;
  z-index:2147481500!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  width:max-content!important;
  max-width:min(330px,calc(100vw - 46px))!important;
  padding:6px 7px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:999px!important;
  background:rgba(25,26,31,.98)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.58)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(7px) scale(.97)!important;
  transform-origin:left bottom!important;
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
}
.mg2ar-app .mg2ar-message.is-reaction-open .mg2ar-chat-reaction-picker{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0) scale(1)!important;
}
.mg2ar-app .mg2ar-chat-reaction-picker button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:35px!important;
  min-width:35px!important;
  height:35px!important;
  min-height:35px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:999px!important;
  background:#17181d!important;
  color:#fff!important;
  font-size:21px!important;
  line-height:1!important;
  box-shadow:none!important;
  transform:none!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}
.mg2ar-app .mg2ar-chat-reaction-picker button:hover,
.mg2ar-app .mg2ar-chat-reaction-picker button:focus-visible{
  border-color:var(--mg2ar-accent,#cebf4b)!important;
  transform:translateY(-2px) scale(1.08)!important;
  outline:0!important;
}
.mg2ar-app .mg2ar-chat-reaction-summary{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:4px!important;
  margin:7px 0 -3px!important;
  min-height:22px!important;
}
.mg2ar-app .mg2ar-chat-reaction-summary[hidden]{display:none!important;}
.mg2ar-app .mg2ar-chat-reaction-chip{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:38px!important;
  width:auto!important;
  height:24px!important;
  min-height:24px!important;
  margin:0!important;
  padding:0 7px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:999px!important;
  background:#18191e!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:14px!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.mg2ar-app .mg2ar-chat-reaction-chip b{font-size:9px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.mg2ar-app .mg2ar-chat-reaction-burst{
  position:absolute!important;
  right:8px!important;
  top:45%!important;
  z-index:2147481600!important;
  display:block!important;
  font-size:46px!important;
  line-height:1!important;
  pointer-events:none!important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.42))!important;
  animation:mg2arChatReactionBurst 1.2s cubic-bezier(.2,.8,.2,1) forwards!important;
}
@keyframes mg2arChatReactionBurst{
  0%{opacity:0;transform:translate(20px,10px) scale(.45) rotate(-10deg)}
  24%{opacity:1;transform:translate(10px,-10px) scale(1.12) rotate(5deg)}
  72%{opacity:1;transform:translate(-12px,-36px) scale(1) rotate(-3deg)}
  100%{opacity:0;transform:translate(-22px,-70px) scale(.82) rotate(8deg)}
}
@media(max-width:680px){
  .mg2ar-app .mg2ar-message-body{max-width:calc(100% - 1px)!important;border-radius:14px!important;padding:9px 10px!important;}
  .mg2ar-app .mg2ar-chat-reaction-picker{left:0!important;gap:3px!important;padding:6px!important;max-width:calc(100vw - 34px)!important;}
  .mg2ar-app .mg2ar-chat-reaction-picker button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;font-size:20px!important;}
  .mg2ar-app .mg2ar-chat-reaction-burst{font-size:42px!important;}
}

/* v1.0.130.4 — robust viewport-level chat reaction picker.
   It is appended to <body>, so Room Chat overflow/scroll containers cannot clip it. */
.mg2ar-chat-reaction-portal{
  position:fixed!important;
  z-index:2147483646!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  width:max-content!important;
  max-width:calc(100vw - 16px)!important;
  padding:7px 8px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;
  background:rgba(27,28,34,.99)!important;
  box-shadow:0 16px 46px rgba(0,0,0,.72)!important;
  overflow:visible!important;
}
.mg2ar-chat-reaction-portal[hidden]{display:none!important;}
.mg2ar-chat-reaction-portal button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:999px!important;
  background:#16171c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:24px!important;
  line-height:1!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  box-shadow:none!important;
}
.mg2ar-chat-reaction-portal button:hover,
.mg2ar-chat-reaction-portal button:focus-visible{
  border-color:#cebf4b!important;
  background:#222329!important;
  transform:scale(1.08)!important;
  outline:none!important;
}
.mg2ar-app .mg2ar-message.is-reaction-open .mg2ar-message-body{
  border-color:rgba(206,191,75,.72)!important;
  box-shadow:0 0 0 1px rgba(206,191,75,.15),0 8px 24px rgba(0,0,0,.26)!important;
}
/* Retire the old in-message picker; the viewport picker above is the active UI. */
.mg2ar-app .mg2ar-chat-reaction-picker{display:none!important;}
@media(max-width:680px){
  .mg2ar-chat-reaction-portal{gap:4px!important;padding:6px!important;}
  .mg2ar-chat-reaction-portal button{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;font-size:21px!important;}
}


/* v1.0.130.5 — expanded admin-configurable Chat + Stage reaction emoji sets. */
.mg2ar-chat-reaction-portal{
  flex-wrap:wrap!important;
  justify-content:center!important;
  width:auto!important;
  max-width:min(520px,calc(100vw - 16px))!important;
  border-radius:22px!important;
}
.mg2ar-chat-reaction-portal button{flex:0 0 40px!important;}
@media(max-width:680px){
  .mg2ar-chat-reaction-portal{max-width:calc(100vw - 18px)!important;border-radius:18px!important;}
  .mg2ar-chat-reaction-portal button{flex-basis:36px!important;}
}
/* Extra Stage reactions use the same sizing/color system as the built-in reaction buttons. */
.mg2ar-reactions button .mg2ar-reaction-emoji{font-size:clamp(20px,2.2vw,32px)!important;line-height:1!important;}


/* v1.0.130.6 desktop-only single-row reaction tray with horizontal scroll */
@media (min-width: 681px){
  .mg2ar-controls{
    overflow:hidden!important;
  }
  .mg2ar-controls>.mg2ar-reactions{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    gap:8px!important;
    row-gap:0!important;
    margin:0!important;
    padding:10px 0 4px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    scrollbar-width:thin;
    scrollbar-color:var(--mg2ar-accent,#cebf4b) rgba(255,255,255,.08);
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar{
    height:10px;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar-track{
    background:rgba(255,255,255,.06);
    border-radius:999px;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar-thumb{
    background:var(--mg2ar-accent,#cebf4b);
    border-radius:999px;
  }
  .mg2ar-controls>.mg2ar-reactions button{
    flex:0 0 86px!important;
    width:86px!important;
    min-width:86px!important;
    max-width:86px!important;
    height:92px!important;
    min-height:92px!important;
  }
  .mg2ar-reaction-emoji{
    font-size:21px!important;
  }
  .mg2ar-reaction-fallback{
    font-size:6.5px!important;
    letter-spacing:.04em!important;
  }
}


/* v1.0.130.7 — tighter desktop reaction rail + 2MG black/gold scrollbar */
@media (min-width:681px){
  .mg2ar-controls>.mg2ar-reactions{
    gap:6px!important;
    padding:8px 2px 7px!important;
    scroll-padding-inline:8px!important;
    scrollbar-width:thin!important;
    scrollbar-color:var(--mg2ar-accent,#cebf4b) #080808!important;
    background:linear-gradient(90deg,rgba(0,0,0,.98),rgba(8,8,8,.98),rgba(0,0,0,.98))!important;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar{
    height:7px!important;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar-track{
    background:#070707!important;
    border:1px solid rgba(206,191,75,.18)!important;
    border-radius:999px!important;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar-thumb{
    background:linear-gradient(90deg,#9f8f19,var(--mg2ar-accent,#cebf4b),#e5d65f)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:999px!important;
    box-shadow:0 0 8px rgba(206,191,75,.22)!important;
  }
  .mg2ar-controls>.mg2ar-reactions::-webkit-scrollbar-thumb:hover{
    background:linear-gradient(90deg,#b6a32a,#f2df59,#b6a32a)!important;
  }
  .mg2ar-controls>.mg2ar-reactions button{
    flex:0 0 72px!important;
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    height:78px!important;
    min-height:78px!important;
    padding:5px 4px!important;
    gap:4px!important;
    border-radius:6px!important;
    background:#070707!important;
    border-color:rgba(206,191,75,.42)!important;
    box-shadow:none!important;
  }
  .mg2ar-controls>.mg2ar-reactions button:hover,
  .mg2ar-controls>.mg2ar-reactions button:focus-visible{
    border-color:var(--mg2ar-accent,#cebf4b)!important;
    background:#101009!important;
    box-shadow:inset 0 0 0 1px rgba(206,191,75,.22),0 0 12px rgba(206,191,75,.10)!important;
    transform:translateY(-1px)!important;
  }
  .mg2ar-controls>.mg2ar-reactions .mg2ar-reaction-glyph,
  .mg2ar-controls>.mg2ar-reactions .mg2ar-reaction-glyph svg{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
  }
  .mg2ar-controls>.mg2ar-reactions .mg2ar-reaction-emoji{
    font-size:23px!important;
    line-height:1!important;
  }
  .mg2ar-controls>.mg2ar-reactions .mg2ar-reaction-fallback{
    font-size:6px!important;
    line-height:1.05!important;
    letter-spacing:.035em!important;
    max-width:64px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

/* v1.0.130.8 custom social icon images inside room member profiles */
.mg2ar-profile-social.has-image{border:0!important;background:transparent!important;overflow:hidden!important}.mg2ar-profile-social.has-image img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;border-radius:11px!important}.mg2ar-profile-social:not(.has-image){font-size:20px!important}

/* v1.0.130.9 — match Member Profile 25% larger fixed image frame and saved zoom */
.mg2ar-profile-image{padding:0 7.5%!important;background:#ededed!important;overflow:visible!important}
.mg2ar-profile-image-frame{position:relative;width:100%;aspect-ratio:1.22/1;overflow:hidden;border:3px solid #fff;background:#bbb}
.mg2ar-profile-image-frame img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;border:0!important;object-position:var(--mg2ar-profile-image-x,50%) var(--mg2ar-profile-image-y,50%)!important;transform:scale(var(--mg2ar-profile-image-scale,1))!important;transform-origin:center center!important}
.mg2ar-profile-image-frame .mg2ar-profile-placeholder{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto!important;display:flex;align-items:center;justify-content:center}

/* v1.0.130.11 — phone lobby room-title word integrity.
   Keep room names reading horizontally like desktop: never split a word into
   narrow vertical fragments, even when the separate 2MG Phone Layout keeps
   two room cards side-by-side. Desktop layout is unchanged. */
@media (max-width:720px){
  html body .mg2ar-app .mg2ar-room-list .mg2ar-room-card,
  html.mg2pl-phone-active body .mg2ar-app .mg2ar-room-list .mg2ar-room-card,
  html.mg2pl-phone-active body .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card{
    padding-right:18px!important;
  }
  html body .mg2ar-app .mg2ar-room-list .mg2ar-room-card h3,
  html.mg2pl-phone-active body .mg2ar-app .mg2ar-room-list .mg2ar-room-card h3,
  html.mg2pl-phone-active body .mg2ar-room-list .mg2ar-room-card.mg2pl-preview-style-room-card h3{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-right:0!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    -webkit-hyphens:none!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    font-size:clamp(15px,4.3vw,18px)!important;
    line-height:1.15!important;
  }
  /* The recording label stays in its top-right corner; titles get the full
     card width below it rather than inheriting a huge permanent right inset. */
  html body .mg2ar-app .mg2ar-room-list .mg2ar-room-recording-status,
  html.mg2pl-phone-active body .mg2ar-app .mg2ar-room-list .mg2ar-room-recording-status{
    z-index:3!important;
  }
}

/* v1.0.130.12 — Host shared-image full-fit fix.
   Shared still images now define their own stage height from the image's
   natural aspect ratio so the entire picture is visible from edge to edge
   without center-cropping. Video, Live, Screen Share, and audio sizing are
   intentionally unchanged. */
html body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"]{
  aspect-ratio:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  background:#000!important;
}
html body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"] .mg2ar-media-canvas{
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  background:#000!important;
}
html body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"] .mg2ar-shared-image{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto!important;
  transform:none!important;
  background:#000!important;
}

/* The phone-room layout in v1.0.116 applies a fixed media-stage height.
   Cancel that fixed height for still images only so portrait, square, and
   landscape images all remain completely visible. */
@media (max-width:720px){
  html body .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-media-stage[data-media-type="image"],
  html.mg2pl-phone-active body .mg2ar-app.mg2ar-in-room .mg2ar-media-stage[data-media-type="image"]{
    aspect-ratio:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
}


/* v1.0.130.13 — PING MEMBER: isolated UI additions only. */
.mg2ar-ping-open{border-color:#cebf4b!important;color:#fff!important;background:#111!important}
.mg2ar-ping-open:hover{box-shadow:0 0 0 2px rgba(206,191,75,.28),0 0 18px rgba(206,191,75,.24)!important}
.mg2ar-ping-picker-modal{position:fixed;inset:0;z-index:999970;background:rgba(0,0,0,.68);display:flex;align-items:center;justify-content:center;padding:18px}
.mg2ar-ping-picker-modal[hidden]{display:none!important}
.mg2ar-ping-picker-card{width:min(620px,94vw);max-height:min(720px,86vh);overflow:auto;background:#0a0a0a;color:#fff;border:2px solid #cebf4b;border-radius:20px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.55);position:relative}
.mg2ar-ping-picker-card h3{margin:4px 0 8px;color:#fff;font-size:30px;letter-spacing:.04em}.mg2ar-ping-picker-card>p{color:#bbb;margin:0 36px 16px 0;line-height:1.45}.mg2ar-ping-picker-kicker{color:#cebf4b;font-size:11px;font-weight:900;letter-spacing:.2em}.mg2ar-ping-picker-close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:#fff;font-size:34px;line-height:1;cursor:pointer}.mg2ar-ping-picker-status{padding:10px 12px;margin:10px 0;background:#151515;border:1px solid #252525;border-radius:10px;color:#ccc;font-size:13px}
.mg2ar-ping-picker-list{display:grid;gap:9px}.mg2ar-ping-target-row{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;border:1px solid #292929;border-radius:13px;padding:10px;background:#111}.mg2ar-ping-target-row img{width:52px;height:52px;border-radius:10px;object-fit:cover;border:1px solid rgba(206,191,75,.55)}.mg2ar-ping-target-copy{min-width:0}.mg2ar-ping-target-copy strong{display:block;color:#fff;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mg2ar-ping-target-copy small{display:block;color:#aaa;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mg2ar-ping-target-row button{border:1px solid #cebf4b;background:#cebf4b;color:#080808;border-radius:9px;padding:9px 13px;font-weight:900;cursor:pointer}.mg2ar-ping-target-row button.is-sent{background:#1bd100;border-color:#1bd100}.mg2ar-ping-target-row button:disabled{opacity:.72;cursor:wait}
.mg2ar-ping-invite-overlay{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:18px;isolation:isolate}
.mg2ar-ping-invite-overlay[hidden]{display:none!important}.mg2ar-ping-invite-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.36);opacity:1;transition:opacity .25s ease}.mg2ar-ping-bubble{position:relative;z-index:2;width:min(720px,94vw);background:#fff;color:#111;border:6px solid #d4b52c;border-radius:24px;padding:17px 22px 23px;box-shadow:0 26px 80px rgba(0,0,0,.42),0 0 0 2px rgba(255,231,93,.55) inset;transform:scale(1);opacity:1;transition:opacity .25s ease,transform .25s ease;text-align:center}.mg2ar-ping-bubble:after{content:"";position:absolute;left:72px;bottom:-61px;width:0;height:0;border-top:62px solid #d4b52c;border-right:95px solid transparent;filter:drop-shadow(0 7px 4px rgba(0,0,0,.15))}.mg2ar-ping-bubble:before{content:"";position:absolute;left:80px;bottom:-48px;width:0;height:0;border-top:49px solid #fff;border-right:78px solid transparent;z-index:1}
.mg2ar-ping-title{font-size:clamp(30px,4vw,48px);line-height:1.03;font-weight:400;letter-spacing:-.02em}.mg2ar-ping-from{font-size:13px;color:#666;margin:6px 0 11px}.mg2ar-ping-choice-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(170px,230px) minmax(90px,1fr);gap:15px;align-items:center}.mg2ar-ping-accept,.mg2ar-ping-decline{border:0;background:transparent;font-weight:900;font-family:Arial,sans-serif;cursor:pointer;line-height:.9;padding:6px}.mg2ar-ping-accept{color:#31df08;font-size:104px}.mg2ar-ping-decline{color:#f12b20;font-size:112px}.mg2ar-ping-accept:hover,.mg2ar-ping-decline:hover{transform:scale(1.06)}.mg2ar-ping-accept:disabled,.mg2ar-ping-decline:disabled{opacity:.5;cursor:wait}
.mg2ar-ping-room-card{background:linear-gradient(145deg,#181818,#060606);color:#fff;border-radius:11px;border:1px solid #333;padding:11px 10px 10px;min-height:150px;display:flex;flex-direction:column;justify-content:center;text-align:left;box-shadow:0 8px 24px rgba(0,0,0,.26)}.mg2ar-ping-room-top{display:flex;justify-content:space-between;gap:6px;align-items:flex-start;font-size:7px;font-weight:900;letter-spacing:.06em;margin-bottom:10px}.mg2ar-ping-room-top span:first-child{color:#f2d83f}.mg2ar-ping-room-top span:last-child{color:#f0544c;text-align:right}.mg2ar-ping-room-top span.is-allowed{color:#34d058}.mg2ar-ping-room-card strong{font-size:18px;line-height:1.1;margin-bottom:5px}.mg2ar-ping-room-card small{font-size:10px;color:#aaa;margin-bottom:12px}.mg2ar-ping-people{font-size:10px;color:#ddd;margin-bottom:8px}.mg2ar-ping-live-label{display:inline-block;width:max-content;border:1px solid #cebf4b;color:#fff;border-radius:8px;padding:5px 8px;font-size:8px;font-weight:900;letter-spacing:.04em}.mg2ar-ping-invite-overlay.is-closing .mg2ar-ping-invite-backdrop{opacity:0}.mg2ar-ping-invite-overlay.is-closing .mg2ar-ping-bubble{opacity:0;transform:scale(.94)}body.mg2ar-ping-invite-open{overflow:hidden}
@media(max-width:600px){.mg2ar-ping-bubble{padding:14px 10px 20px;border-width:4px;border-radius:18px}.mg2ar-ping-title{font-size:30px}.mg2ar-ping-choice-row{grid-template-columns:82px minmax(130px,190px) 82px;gap:5px}.mg2ar-ping-accept{font-size:78px}.mg2ar-ping-decline{font-size:84px}.mg2ar-ping-room-card{min-height:136px;padding:9px}.mg2ar-ping-room-card strong{font-size:15px}.mg2ar-ping-bubble:after{left:45px;bottom:-48px;border-top-width:49px;border-right-width:75px}.mg2ar-ping-bubble:before{left:51px;bottom:-38px;border-top-width:39px;border-right-width:62px}.mg2ar-ping-target-row{grid-template-columns:46px 1fr auto}.mg2ar-ping-target-row img{width:46px;height:46px}.mg2ar-ping-target-copy small{max-width:155px}.mg2ar-ping-picker-card{padding:20px 15px}}


/* v1.0.130.14 — Ping invite visual stability + 75% larger accept/decline marks.
   Avoid backdrop-filter on the full-screen overlay because Safari/Chrome can
   flicker when it is composited above WebRTC/video/camera layers. Blur only
   the already-rendered room content while the invite is visible. */
.mg2ar-ping-invite-backdrop{
  background:rgba(0,0,0,.46)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.mg2ar-room-view.mg2ar-ping-background-blurred>.mg2ar-media-stage,
.mg2ar-room-view.mg2ar-ping-background-blurred>.mg2ar-room-grid>.mg2ar-chat,
.mg2ar-room-view.mg2ar-ping-background-blurred>.mg2ar-room-grid>.mg2ar-stage>:not(.mg2ar-ping-invite-overlay):not(.mg2ar-ping-picker-modal){
  filter:blur(7px)!important;
  opacity:.52!important;
  pointer-events:none!important;
  transition:filter .16s ease,opacity .16s ease!important;
}
.mg2ar-ping-accept,
.mg2ar-ping-decline{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:150px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:900!important;
  line-height:.72!important;
  text-transform:none!important;
  letter-spacing:0!important;
  -webkit-text-fill-color:currentColor!important;
}
.mg2ar-ping-accept{font-size:220px!important;color:#31df08!important;transform-origin:center center!important}
.mg2ar-ping-decline{font-size:232px!important;color:#f12b20!important;transform-origin:center center!important}
.mg2ar-ping-accept:hover{transform:scale(1.04)!important}
.mg2ar-ping-decline:hover{transform:scale(1.04)!important}
@media(max-width:600px){
  .mg2ar-ping-choice-row{grid-template-columns:minmax(98px,1fr) minmax(128px,188px) minmax(98px,1fr)!important;gap:4px!important}
  .mg2ar-ping-accept,.mg2ar-ping-decline{min-height:136px!important}
  .mg2ar-ping-accept{font-size:150px!important}
  .mg2ar-ping-decline{font-size:164px!important}
}

/* v1.0.130.16 — lock ping accept/decline artwork to the large reference size.
   Inline SVG avoids theme/global button font-size rules shrinking the glyphs. */
.mg2ar-ping-accept,
.mg2ar-ping-decline{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:160px!important;
  width:100%!important;
  min-height:170px!important;
  height:170px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  font-size:0!important;
  line-height:0!important;
}
.mg2ar-ping-accept .mg2ar-ping-icon,
.mg2ar-ping-decline .mg2ar-ping-icon{
  display:block!important;
  width:160px!important;
  height:160px!important;
  min-width:160px!important;
  min-height:160px!important;
  max-width:none!important;
  max-height:none!important;
  flex:0 0 160px!important;
  overflow:visible!important;
}
.mg2ar-ping-accept:hover .mg2ar-ping-icon,
.mg2ar-ping-decline:hover .mg2ar-ping-icon{transform:scale(1.04)!important}
@media(max-width:600px){
  .mg2ar-ping-choice-row{
    grid-template-columns:minmax(145px,1fr) minmax(128px,188px) minmax(145px,1fr)!important;
    gap:4px!important;
  }
  .mg2ar-ping-accept,.mg2ar-ping-decline{
    min-width:145px!important;
    min-height:158px!important;
    height:158px!important;
  }
  .mg2ar-ping-accept .mg2ar-ping-icon,
  .mg2ar-ping-decline .mg2ar-ping-icon{
    width:150px!important;
    height:150px!important;
    min-width:150px!important;
    min-height:150px!important;
    flex-basis:150px!important;
  }
}
@media(max-width:480px){
  .mg2ar-ping-choice-row{
    grid-template-columns:minmax(110px,1fr) minmax(124px,172px) minmax(110px,1fr)!important;
  }
  .mg2ar-ping-accept,.mg2ar-ping-decline{
    min-width:110px!important;
    min-height:132px!important;
    height:132px!important;
  }
  .mg2ar-ping-accept .mg2ar-ping-icon,
  .mg2ar-ping-decline .mg2ar-ping-icon{
    width:128px!important;
    height:128px!important;
    min-width:128px!important;
    min-height:128px!important;
    flex-basis:128px!important;
  }
}


/* v1.0.130.19 — consistent large close X across 2MG Audio Rooms.
   Matches the large black circular close control with a gold ring. */
.mg2ar-app [aria-label="Close"],
.mg2ar-app [data-mg2ar-person-close],
.mg2ar-screen-share-help-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:72px!important;
  min-width:72px!important;
  max-width:72px!important;
  height:72px!important;
  min-height:72px!important;
  max-height:72px!important;
  padding:0!important;
  border:2px solid var(--mg2ar-accent,#cebf4b)!important;
  border-radius:50%!important;
  background:#050505!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:48px!important;
  font-weight:300!important;
  line-height:1!important;
  text-align:center!important;
  box-shadow:0 6px 18px rgba(0,0,0,.42)!important;
  cursor:pointer!important;
}
.mg2ar-app [aria-label="Close"]:hover,
.mg2ar-app [data-mg2ar-person-close]:hover,
.mg2ar-screen-share-help-close:hover{
  border-color:#f1dc63!important;
  color:#fff!important;
  transform:scale(1.03)!important;
  box-shadow:0 0 20px rgba(206,191,75,.22),0 6px 18px rgba(0,0,0,.42)!important;
}
/* Keep modal close buttons pinned cleanly in the upper-right after enlarging them. */
.mg2ar-member-profile-close,
.mg2ar-notification-close,
.mg2ar-ping-picker-close{
  right:14px!important;
  top:12px!important;
}
@media(max-width:680px){
  .mg2ar-app [aria-label="Close"],
  .mg2ar-app [data-mg2ar-person-close],
  .mg2ar-screen-share-help-close{
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    font-size:40px!important;
  }
}

/* v1.0.130.21 — center the lobby / Join/Create layout inside the 2MG phone frame.
   The separate Phone Layout plugin can expose a wider CSS viewport than the
   visible phone canvas, which lets the desktop two-column hero survive. These
   rules key off the phone-layout helper class as well as normal mobile widths,
   and only affect the lobby (never the approved in-room or desktop layout). */
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-shell,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero-copy,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card{
  box-sizing:border-box!important;
  min-width:0!important;
  left:auto!important;
  right:auto!important;
  float:none!important;
  transform:none!important;
}
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-shell{
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:16px!important;
  padding-right:16px!important;
  overflow-x:hidden!important;
}
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:stretch!important;
  align-items:start!important;
  gap:26px!important;
  width:100%!important;
  max-width:680px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero-copy,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card *{
  max-inline-size:100%;
}
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card input,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-avatar-builder,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-upload-row,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-avatar-modes,
html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-primary{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

@media (max-width:1050px){
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-shell{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:stretch!important;
    width:100%!important;
    max-width:720px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero-copy,
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }
}

@media (max-width:680px){
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-shell,
  html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-shell{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero,
  html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-hero{
    max-width:100%!important;
    gap:20px!important;
    padding-top:28px!important;
  }
  html body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card,
  html.mg2pl-phone-active body .mg2ar-app:not(.mg2ar-in-room) .mg2ar-entry-card{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding:16px!important;
  }
}


/* v1.0.130.22 host room counter */
.mg2ar-room-counter[hidden]{display:none!important}
.mg2ar-room-counter{margin:14px 0 8px;text-align:center}
.mg2ar-room-counter-label{margin:0 0 8px;color:var(--mg2ar-accent)!important;font-size:12px!important;font-weight:950!important;letter-spacing:.24em!important;text-transform:uppercase}
.mg2ar-room-counter-pill{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:min(100%,440px);padding:16px 30px;border:2px solid rgba(206,191,75,.92);border-radius:999px;background:radial-gradient(circle at center,rgba(206,191,75,.16) 0,rgba(206,191,75,.06) 22%,rgba(8,8,8,.96) 64%,#040404 100%);box-shadow:0 0 0 1px rgba(206,191,75,.16) inset,0 0 24px rgba(206,191,75,.08)}
.mg2ar-room-counter-wave{display:inline-block;color:#f1d867!important;font-size:40px!important;line-height:1!important;font-weight:700!important;text-shadow:0 0 14px rgba(241,216,103,.35)}
.mg2ar-room-counter-number{display:inline-block;min-width:1.7em;color:#fff3a6!important;font-size:54px!important;line-height:.95!important;font-weight:950!important;letter-spacing:-.03em!important;text-shadow:0 0 12px rgba(255,229,124,.5),0 0 22px rgba(255,208,74,.28)}
.mg2ar-room-counter.mg2ar-room-counter-flash .mg2ar-room-counter-pill,.mg2ar-room-counter.mg2ar-room-counter-flash .mg2ar-room-counter-number,.mg2ar-room-counter.mg2ar-room-counter-flash .mg2ar-room-counter-wave{animation:mg2arRoomCountFlash .32s ease-in-out 3}
@keyframes mg2arRoomCountFlash{0%,100%{opacity:1;filter:none}50%{opacity:.32;filter:brightness(1.45)}}
@media (min-width:721px){
  .mg2ar-room-counter{margin:12px 0 10px;text-align:left}
  .mg2ar-room-counter-pill{min-width:0;padding:12px 22px;gap:12px}
  .mg2ar-room-counter-label{font-size:10px!important;letter-spacing:.18em!important;text-align:left}
  .mg2ar-room-counter-wave{font-size:26px!important}
  .mg2ar-room-counter-number{font-size:34px!important}
}
@media (max-width:720px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter{margin:10px auto 8px!important;width:100%!important;max-width:100%!important;text-align:center!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-label{margin:0 0 8px!important;font-size:11px!important;letter-spacing:.23em!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-pill{display:inline-flex!important;width:min(100%,420px)!important;max-width:100%!important;padding:14px 24px!important;gap:14px!important;border-radius:999px!important;background:radial-gradient(circle at center,rgba(206,191,75,.2) 0,rgba(206,191,75,.09) 18%,rgba(8,8,8,.98) 68%,#040404 100%)!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-wave{font-size:34px!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-number{font-size:46px!important}
}
@media (max-width:420px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-pill{padding:12px 20px!important;gap:12px!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-wave{font-size:28px!important}
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-counter-number{font-size:40px!important}
}


/* v1.0.130.26 — room counter lives in the normal-flow top tools row. */
.mg2ar-app.mg2ar-in-room .mg2ar-room-title{padding-top:12px!important}
.mg2ar-room-top-tools .mg2ar-room-counter{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  z-index:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:52px!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  pointer-events:none!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter[hidden]{display:none!important}
.mg2ar-room-top-tools .mg2ar-room-counter-label{
  margin:0 0 2px!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.32em!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-pill{
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
  gap:8px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:23px!important;line-height:1!important}
.mg2ar-room-top-tools .mg2ar-room-counter-number{min-width:1em!important;font-size:32px!important;line-height:1!important}
@media(max-width:720px){
  .mg2ar-app.mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title{padding-top:10px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter{height:42px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:6px!important;letter-spacing:.22em!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:4px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:15px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:22px!important}
}
@media(max-width:390px){
  .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:5.5px!important;letter-spacing:.18em!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:13px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:20px!important}
}


/* v1.0.130.27 — approved room counter sizing/alignment in top tools row */
.mg2ar-room-top-tools>.mg2ar-room-counter{
  flex:0 0 clamp(120px,14%,160px)!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  height:50px!important;
  padding:0 2px 2px!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-label{
  margin:0 0 2px!important;
  font-size:8px!important;
  letter-spacing:.34em!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:7px!important}
.mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:20px!important}
.mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:30px!important}
@media(max-width:720px){
  .mg2ar-room-top-tools>.mg2ar-room-counter{
    flex:0 0 18%!important;
    width:18%!important;
    height:40px!important;
    padding:0 1px 1px!important;
  }
  .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:5.8px!important;letter-spacing:.22em!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:3px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:13px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:20px!important}
}
@media(max-width:420px){
  .mg2ar-room-top-tools>.mg2ar-room-counter{flex-basis:18%!important;width:18%!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:5.2px!important;letter-spacing:.16em!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:12px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:18px!important}
}


/* v1.0.130.28 — counter directly beside Earned */
.mg2ar-room-top-tools>.mg2ar-room-counter{
  justify-content:flex-end!important;
  padding:0 0 3px!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-label{
  margin-bottom:1px!important;
  font-size:7.5px!important;
  letter-spacing:.30em!important;
}
.mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:5px!important}
.mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:18px!important}
.mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:28px!important}
@media(max-width:720px){
  .mg2ar-room-top-tools>.mg2ar-room-counter{padding:0 0 2px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:5.2px!important;letter-spacing:.16em!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:2px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:11px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:18px!important}
}


/* v1.0.130.29 — host counter must remain visible in the approved top row */
.mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){display:flex!important;visibility:visible!important;opacity:1!important}
.mg2ar-room-top-tools .mg2ar-room-counter-number{visibility:visible!important;opacity:1!important}

/* v1.0.130.29.6 — subscriber Dark / Light Mode. Layout intentionally unchanged. */
.mg2ar-theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;
  min-height:38px;padding:8px 12px;border:1px solid var(--mg2ar-border)!important;
  border-radius:999px;background:var(--mg2ar-control-bg)!important;color:var(--mg2ar-text)!important;
  font-size:10px;font-weight:950;letter-spacing:.03em;line-height:1;white-space:nowrap;
  transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease;
}
.mg2ar-theme-toggle:hover{border-color:var(--mg2ar-accent)!important;color:var(--mg2ar-accent)!important;transform:translateY(-1px)}
.mg2ar-theme-toggle [data-mg2ar-theme-icon]{font-size:14px;line-height:1}
.mg2ar-theme-toggle--room{margin-left:auto}.mg2ar-theme-toggle--room + .mg2ar-pill{margin-left:0}
.mg2ar-media-host-controls:not([hidden]) ~ .mg2ar-theme-toggle--room{margin-left:0}

/* !important is intentional: the app's admin-defined dark colors are inline CSS variables. */
.mg2ar-app[data-theme="light"]{
  --mg2ar-app-bg:#f6f6f3!important;
  --mg2ar-lobby-bg:#f6f6f3!important;
  --mg2ar-stage-bg:#f8f8f5!important;
  --mg2ar-chat-bg:#ffffff!important;
  --mg2ar-panel-bg:#ffffff!important;
  --mg2ar-card-bg:#ffffff!important;
  --mg2ar-control-bg:#f2f2ee!important;
  --mg2ar-square-bg:#e9e9e4!important;
  --mg2ar-input-bg:#ffffff!important;
  --mg2ar-text:#151515!important;
  --mg2ar-muted:#66665f!important;
  --mg2ar-border:#d8d8d0!important;
  --mg2ar-notice-bg:#151515!important;
  --mg2ar-notice-text:#ffffff!important;
  --mg2ar-chat-message-color:#4f4f49!important;
  --mg2ar-chat-name-color:#151515!important;
  --mg2ar-chat-input-text-color:#151515!important;
  --mg2ar-chat-placeholder-color:#777770!important;
  --mg2ar-reaction-bg:#ffffff!important;
  --mg2ar-reaction-border:#d8d8d0!important;
  --mg2ar-reaction-icon-color:#151515!important;
  --mg2ar-reaction-hover-bg:#f2f2ee!important;
  --mg2ar-reaction-hover-border:#cebf4b!important;
  --mg2ar-reaction-hover-icon-color:#151515!important;
  color-scheme:light;
}
.mg2ar-app[data-theme="light"] .mg2ar-entry-card,
.mg2ar-app[data-theme="light"] .mg2ar-room-card,
.mg2ar-app[data-theme="light"] .mg2ar-chat,
.mg2ar-app[data-theme="light"] .mg2ar-avatar-builder{box-shadow:0 14px 38px rgba(0,0,0,.07)}
.mg2ar-app[data-theme="light"] .mg2ar-room-card:hover{box-shadow:0 14px 40px rgba(0,0,0,.11)}
.mg2ar-app[data-theme="light"] .mg2ar-square{box-shadow:0 8px 24px rgba(0,0,0,.12)}
.mg2ar-app[data-theme="light"] input,
.mg2ar-app[data-theme="light"] textarea,
.mg2ar-app[data-theme="light"] select{color-scheme:light}
/* Keep actual shared media/video canvas black so artwork and video are never washed out. */
.mg2ar-app[data-theme="light"] .mg2ar-media-stage,
.mg2ar-app[data-theme="light"] .mg2ar-media-canvas,
.mg2ar-app[data-theme="light"] .mg2ar-shared-image,
.mg2ar-app[data-theme="light"] .mg2ar-shared-video,
.mg2ar-app[data-theme="light"] .mg2ar-shared-frame{background:#000!important}
@media(max-width:680px){
  .mg2ar-theme-toggle{min-height:34px;padding:7px 9px;font-size:9px}
  .mg2ar-topbar .mg2ar-theme-toggle [data-mg2ar-theme-label]{display:none}
  .mg2ar-room-bar .mg2ar-theme-toggle--room{margin-left:0}
}


/* v1.0.130.29.7 — phone-only three-button lobby row + compact Earned-style room count. */
.mg2ar-theme-toggle--tabs{display:none!important}
@media(max-width:680px){
  /* Theme control belongs beside JOIN ROOM and CREATE ROOM on phones. */
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-topbar>.mg2ar-theme-toggle{display:none!important}
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    padding:8px!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(0,0,0,.28)!important;
    overflow:visible!important;
  }
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    width:100%!important;
    min-height:72px!important;
    margin:0!important;
    padding:8px 4px!important;
    border:2px solid #e2c951!important;
    border-radius:0!important;
    background:#050505!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 0 0 1px rgba(226,201,81,.16) inset,0 0 16px rgba(226,201,81,.08)!important;
    font-size:clamp(10px,3.2vw,15px)!important;
    font-weight:900!important;
    line-height:1.12!important;
    letter-spacing:0!important;
    text-transform:uppercase!important;
    white-space:normal!important;
  }
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>button.is-active{
    border-color:#f0d963!important;
    background:#080808!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 0 0 2px rgba(240,217,99,.16) inset,0 0 18px rgba(240,217,99,.16)!important;
  }
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>.mg2ar-theme-toggle--tabs{
    display:flex!important;
    gap:0!important;
  }
  .mg2ar-theme-tabs-text{display:block;text-align:center}

  /* Restore the host room count as a compact gold-outlined pill matching EARNED. */
  .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){
    display:flex!important;
    flex:0 0 16%!important;
    width:16%!important;
    min-width:54px!important;
    height:40px!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    margin:0!important;
    padding:0 5px!important;
    border:1px solid #cebf4b!important;
    border-radius:999px!important;
    background:#080808!important;
    box-shadow:0 0 14px rgba(206,191,75,.12)!important;
    pointer-events:none!important;
  }
  .mg2ar-room-top-tools .mg2ar-room-counter-label{
    display:none!important;
  }
  .mg2ar-room-top-tools .mg2ar-room-counter-pill{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    gap:3px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .mg2ar-room-top-tools .mg2ar-room-counter-pill:before{
    content:"COUNT";
    color:#fff!important;
    font-size:clamp(6px,1.8vw,8px)!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.02em!important;
  }
  .mg2ar-room-top-tools .mg2ar-room-counter-wave{display:none!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{
    min-width:0!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-size:clamp(10px,3vw,15px)!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:0!important;
    text-shadow:none!important;
  }
}
@media(max-width:420px){
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs{gap:6px!important;padding:6px!important}
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>button{min-height:68px!important;padding:7px 3px!important}
  .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){flex-basis:16%!important;width:16%!important;min-width:50px!important;padding:0 3px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-pill:before{font-size:6px!important}
  .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:11px!important}
}

/* Light mode still uses the exact same structure; only surfaces/text change. */
.mg2ar-app[data-theme="light"] .mg2ar-entry-card{
  background:linear-gradient(180deg,#ffffff,#f1f1ed)!important;
  border-color:rgba(160,143,42,.58)!important;
}
.mg2ar-app[data-theme="light"] .mg2ar-tabs{background:#ecece7!important}
.mg2ar-app[data-theme="light"] .mg2ar-tabs>button:not(.is-active):not(.mg2ar-theme-toggle--tabs){color:#171717!important;-webkit-text-fill-color:#171717!important}
.mg2ar-app[data-theme="light"] .mg2ar-entry-card input[type=text],
.mg2ar-app[data-theme="light"] .mg2ar-private-code-input input{background:#fff!important;color:#171717!important;border-color:#cfcfc7!important}
.mg2ar-app[data-theme="light"] .mg2ar-coins-proxy button,
.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){background:#fff!important;color:#171717!important;-webkit-text-fill-color:#171717!important}
.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools .mg2ar-room-counter-pill:before,
.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools .mg2ar-room-counter-number{color:#171717!important;-webkit-text-fill-color:#171717!important}
@media(max-width:680px){
  .mg2ar-app[data-theme="light"]:not(.mg2ar-in-room) .mg2ar-tabs>button{
    background:#fff!important;color:#171717!important;-webkit-text-fill-color:#171717!important;
  }
  .mg2ar-app[data-theme="light"]:not(.mg2ar-in-room) .mg2ar-tabs>button.is-active{
    background:#f7f2d8!important;color:#171717!important;-webkit-text-fill-color:#171717!important;
  }
}


/* v1.0.130.29.8 — phone-only 3-button row + complete subscriber light mode.
   This block is intentionally last so legacy dark-only overrides cannot win. */

/* Phone lobby: force JOIN / CREATE / LIGHT-DARK onto one single row.
   .mg2ar-phone-layout is added client-side from device detection so this still works
   on phones whose browser reports a desktop-style CSS viewport. */
.mg2ar-app.mg2ar-phone-layout:not(.mg2ar-in-room) .mg2ar-topbar>.mg2ar-theme-toggle{display:none!important}
.mg2ar-app.mg2ar-phone-layout:not(.mg2ar-in-room) .mg2ar-tabs{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  width:100%!important;
  max-width:100%!important;
  gap:8px!important;
  padding:8px!important;
  margin:0 0 18px!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(0,0,0,.28)!important;
  overflow:hidden!important;
}
.mg2ar-app.mg2ar-phone-layout:not(.mg2ar-in-room) .mg2ar-tabs>button{
  display:flex!important;
  flex:1 1 0!important;
  align-items:center!important;
  justify-content:center!important;
  width:0!important;
  min-width:0!important;
  max-width:none!important;
  min-height:78px!important;
  margin:0!important;
  padding:8px 3px!important;
  border:2px solid #e2c951!important;
  border-radius:0!important;
  background:#050505!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 0 0 1px rgba(226,201,81,.14) inset!important;
  font-size:clamp(10px,3.25vw,15px)!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.mg2ar-app.mg2ar-phone-layout:not(.mg2ar-in-room) .mg2ar-tabs>button.is-active{
  background:#050505!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:#f0d963!important;
}
.mg2ar-app.mg2ar-phone-layout:not(.mg2ar-in-room) .mg2ar-tabs>.mg2ar-theme-toggle--tabs{
  display:flex!important;
  flex:1 1 0!important;
  width:0!important;
  min-width:0!important;
  gap:0!important;
}
.mg2ar-app.mg2ar-phone-layout .mg2ar-theme-tabs-text{display:block!important;text-align:center!important}

/* Fallback for normal responsive phone viewports if device detection is unavailable. */
@media(max-width:760px){
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs{
    display:flex!important;flex-flow:row nowrap!important;align-items:stretch!important;width:100%!important;gap:7px!important;overflow:hidden!important;
  }
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>button{
    flex:1 1 0!important;width:0!important;min-width:0!important;max-width:none!important;min-height:76px!important;margin:0!important;padding:8px 3px!important;
  }
  .mg2ar-app:not(.mg2ar-in-room) .mg2ar-tabs>.mg2ar-theme-toggle--tabs{display:flex!important;flex:1 1 0!important;width:0!important;min-width:0!important}
}

/* COMPLETE LIGHT MODE ------------------------------------------------------
   Core shell, lobby, stage, chat, command areas, popovers and dialogs all become
   light. Shared photo/video/live/screen media stays black by design. */
.mg2ar-app.mg2ar-app[data-theme="light"],
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-lobby,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-view,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-grid,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-stage,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat{
  background:#f7f7f3!important;
  color:#151515!important;
  color-scheme:light!important;
}

/* Main cards / panels / popovers. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-entry-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-avatar-builder,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-controls,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chatbox,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-avatar-popover,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-person-menu,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-roster-panel,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-gif-gallery-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-media-modal-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-camera-permission-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-split-invite-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-tip-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-private-create,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-private-room-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-member-profile-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-notification-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-notification-editor-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-multistream-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-help-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-ping-picker-card,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-ping-target-row,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-recording-row,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-title-editor{
  background:#fff!important;
  color:#151515!important;
  border-color:#d5d5cc!important;
}

/* Light controls and form fields. */
.mg2ar-app.mg2ar-app[data-theme="light"] input:not([type="checkbox"]):not([type="radio"]),
.mg2ar-app.mg2ar-app[data-theme="light"] textarea,
.mg2ar-app.mg2ar-app[data-theme="light"] select,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-control,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-reactions button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-media-host-controls button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-person-actions button:not(.is-danger),
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-audio-connection button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-avatar-modes button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-avatar-builder button[data-avatar-mode],
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-avatar-popover button[data-pop-mode],
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-avatar-upload,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-avatar-gallery,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-upload,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-phone-gif-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-gallery-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-edit-profile-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-notification-profile-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-logout,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-roster-toggle,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-multistream-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-edit-room-title,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-theme-toggle,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-media-button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-send-button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-reaction-picker button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-reaction-chip,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-reaction-portal button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-private-code-input button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-private-room-actions button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-tip-amounts button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-tip-head>button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-split-invite-actions button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-help-close,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-help-actions button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-ping-open,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-ping-picker-close{
  background:#fff!important;
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
  border-color:#d4c55a!important;
  box-shadow:none!important;
}

/* Readable black text everywhere in the light UI, including inside rooms. */
.mg2ar-app.mg2ar-app[data-theme="light"] h1,
.mg2ar-app.mg2ar-app[data-theme="light"] h2,
.mg2ar-app.mg2ar-app[data-theme="light"] h3,
.mg2ar-app.mg2ar-app[data-theme="light"] h4,
.mg2ar-app.mg2ar-app[data-theme="light"] h5,
.mg2ar-app.mg2ar-app[data-theme="light"] h6,
.mg2ar-app.mg2ar-app[data-theme="light"] p,
.mg2ar-app.mg2ar-app[data-theme="light"] label,
.mg2ar-app.mg2ar-app[data-theme="light"] small,
.mg2ar-app.mg2ar-app[data-theme="light"] strong,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-brand,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-member-counter-label,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-member-counter-number,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-person-name,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-person-role,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-message-meta>b,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-message p,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-message-time,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-head,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-title h2,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-title p,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-presence-note,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-field-help,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-setup-note{
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"] input::placeholder,
.mg2ar-app.mg2ar-app[data-theme="light"] textarea::placeholder{color:#6b6b65!important;-webkit-text-fill-color:#6b6b65!important;opacity:1!important}

/* Gold remains the 2MG accent rather than being turned black. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-eyebrow,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-live-heading,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-group-label,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-brand-dot,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-card small,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-ping-picker-kicker{
  color:#9a8120!important;
  -webkit-text-fill-color:#9a8120!important;
}

/* Primary gold actions use black text in light mode. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-primary,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-pill,
.mg2ar-app.mg2ar-app[data-theme="light"] button.is-primary,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-tip-open-cashapp{
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
}

/* Explicit light styling for the phone room UI, whose older layout intentionally
   hard-coded black panels and white type. */
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-stage,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-room-grid,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-chat-view .mg2ar-chat{
  background:#f7f7f3!important;
  color:#151515!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-room-title-heading h2,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-person-name,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-person-role,
.mg2ar-app.mg2ar-app[data-theme="light"].mg2ar-in-room.mg2ar-mobile-room-ui .mg2ar-audio-connection [data-mg2ar-audio-status]{
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-command-slot>button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-command-slot>a,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-menu-head,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-primary-slot>button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-primary-slot>a,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-menu-arrow,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-dropdown>button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-dropdown>a,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-mic-slot>[data-mg2ar-mic],
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-pane-toggle,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-reaction-toggle,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-reaction-tray>[data-reaction]{
  background:#fff!important;
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
  border-color:rgba(154,129,32,.48)!important;
  box-shadow:none!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-pane-toggle strong,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-pane-toggle span,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-mobile-reaction-tray .mg2ar-reaction-fallback{
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
}

/* Phone lobby buttons stay one row in light mode too. */
.mg2ar-app.mg2ar-phone-layout[data-theme="light"]:not(.mg2ar-in-room) .mg2ar-tabs{background:#ecece7!important}
.mg2ar-app.mg2ar-phone-layout[data-theme="light"]:not(.mg2ar-in-room) .mg2ar-tabs>button,
.mg2ar-app.mg2ar-phone-layout[data-theme="light"]:not(.mg2ar-in-room) .mg2ar-tabs>button.is-active{
  background:#fff!important;
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
  border-color:#b9a536!important;
}

/* Earned-style room counter remains readable in both themes. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){
  background:#fff!important;border-color:#b9a536!important;color:#151515!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools .mg2ar-room-counter-pill:before,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-top-tools .mg2ar-room-counter-number{
  color:#151515!important;-webkit-text-fill-color:#151515!important;text-shadow:none!important;
}

/* Media is intentionally the only dark canvas in light mode. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-media-stage,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-media-canvas,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-image,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-video,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-frame,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-live-wrap,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-live-video,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-live-pane,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-wrap,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-video,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-waiting,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-image,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat-gif{
  background:#000!important;
}
/* Text that is physically over black/live media keeps white contrast. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-role-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-gif-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-talk-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-camera-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-live-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-shared-live-name,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-badge,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-name,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-waiting,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-screen-share-waiting strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Danger controls use a pale warning surface with dark text in light mode. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-leave-button,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-person-actions button.is-danger,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-delete-room{
  background:#f3dddd!important;
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
  border-color:#c98b8b!important;
}

/* v1.0.130.29.9 — restore the original host ROOM COUNTER presentation on phones.
   Keep the top-row position from v1.0.130.29, but use the original unboxed label + (( count )) look. */
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){
  display:flex!important;
  flex:0 0 15%!important;
  width:15%!important;
  min-width:0!important;
  max-width:none!important;
  height:58px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:0!important;
  overflow:visible!important;
}
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label{
  display:block!important;
  margin:0 0 4px!important;
  color:#e6cf62!important;
  -webkit-text-fill-color:#e6cf62!important;
  font-size:clamp(6px,1.55vw,8px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.20em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill{
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  padding:0!important;
  gap:3px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill:before{
  content:none!important;
  display:none!important;
}
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave{
  display:inline-block!important;
  color:#f1d867!important;
  -webkit-text-fill-color:#f1d867!important;
  font-size:clamp(11px,2.7vw,17px)!important;
  line-height:1!important;
  font-weight:800!important;
  text-shadow:0 0 10px rgba(241,216,103,.34)!important;
}
.mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{
  display:inline-block!important;
  min-width:.8em!important;
  color:#fff3a6!important;
  -webkit-text-fill-color:#fff3a6!important;
  font-size:clamp(23px,5vw,32px)!important;
  line-height:.9!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
  text-align:center!important;
  text-shadow:0 0 10px rgba(255,229,124,.52),0 0 18px rgba(255,208,74,.24)!important;
}

@media(max-width:760px){
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){
    display:flex!important;
    flex:0 0 15%!important;
    width:15%!important;
    min-width:0!important;
    max-width:none!important;
    height:58px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    overflow:visible!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label{
    display:block!important;
    margin:0 0 4px!important;
    color:#e6cf62!important;
    -webkit-text-fill-color:#e6cf62!important;
    font-size:clamp(6px,1.55vw,8px)!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.20em!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill{
    display:inline-flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    padding:0!important;
    gap:3px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill:before{content:none!important;display:none!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave{
    display:inline-block!important;
    color:#f1d867!important;
    -webkit-text-fill-color:#f1d867!important;
    font-size:clamp(11px,2.7vw,17px)!important;
    line-height:1!important;
    font-weight:800!important;
    text-shadow:0 0 10px rgba(241,216,103,.34)!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{
    display:inline-block!important;
    min-width:.8em!important;
    color:#fff3a6!important;
    -webkit-text-fill-color:#fff3a6!important;
    font-size:clamp(23px,5vw,32px)!important;
    line-height:.9!important;
    font-weight:950!important;
    letter-spacing:-.03em!important;
    text-align:center!important;
    text-shadow:0 0 10px rgba(255,229,124,.52),0 0 18px rgba(255,208,74,.24)!important;
  }
}
@media(max-width:420px){
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]),
  .mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools>.mg2ar-room-counter:not([hidden]){
    flex-basis:14%!important;
    width:14%!important;
    height:54px!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label,
  .mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label{
    margin-bottom:3px!important;
    font-size:5.5px!important;
    letter-spacing:.14em!important;
  }
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill,
  .mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-pill{gap:1.5px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave,
  .mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:9px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number,
  .mg2ar-app.mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:22px!important}
}
@media(max-width:360px){
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label{font-size:5px!important;letter-spacing:.10em!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave{font-size:8px!important}
  .mg2ar-app.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{font-size:20px!important}
}

/* In subscriber Light Mode keep the restored counter readable with dark text. */
.mg2ar-app[data-theme="light"].mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label,
.mg2ar-app[data-theme="light"].mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave,
.mg2ar-app[data-theme="light"].mg2ar-phone-layout.mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{
  color:#151515!important;
  -webkit-text-fill-color:#151515!important;
  text-shadow:none!important;
}
@media(max-width:760px){
  .mg2ar-app[data-theme="light"].mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-label,
  .mg2ar-app[data-theme="light"].mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-wave,
  .mg2ar-app[data-theme="light"].mg2ar-in-room .mg2ar-room-top-tools .mg2ar-room-counter-number{
    color:#151515!important;
    -webkit-text-fill-color:#151515!important;
    text-shadow:none!important;
  }
}



/* v1.0.130.29.10 — Free Listener tier. Keep CREATE ROOM visible as the upgrade feature
   so the approved JOIN / CREATE / LIGHT-DARK one-row phone layout does not collapse. */
.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"]{display:inline-flex!important;opacity:.72;position:relative}
.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"]::after{content:"UPGRADE";font-size:8px;line-height:1;position:absolute;right:5px;top:4px;letter-spacing:.05em;color:var(--mg2ar-accent,#cebf4b)}
.mg2ar-free-listener-banner{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;padding:10px 12px;border:1px solid var(--mg2ar-accent,#cebf4b);border-radius:12px;background:rgba(206,191,75,.08);font-size:12px;line-height:1.35}
.mg2ar-free-listener-banner strong{flex:0 0 auto;color:var(--mg2ar-accent,#cebf4b);letter-spacing:.06em}
.mg2ar-free-listener-banner span{opacity:.92}
.mg2ar-app[data-theme="light"] .mg2ar-free-listener-banner{background:rgba(206,191,75,.16);color:#111}
@media(max-width:700px){.mg2ar-free-listener-banner{font-size:10px;padding:8px 9px;gap:7px}.mg2ar-free-listener-banner strong{font-size:9px}.mg2ar-free-listener-banner span{font-size:10px}}

/* v1.0.130.29.11 — desktop/laptop stage reaction icons + Light Mode chat contrast.
   Desktop/laptop only: render the actual reaction emoji as a dedicated icon above
   its existing label. Phone reaction layout is intentionally unchanged. */
@media (min-width:681px){
  .mg2ar-app .mg2ar-controls>.mg2ar-reactions button[data-reaction]{
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
  }
  /* Use data-reaction as a bulletproof visual icon. This avoids theme/font rules
     that can collapse the inline emoji span to its tiny fallback label. */
  .mg2ar-app .mg2ar-controls>.mg2ar-reactions button[data-reaction]::before{
    content:attr(data-reaction)!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    color:initial!important;
    -webkit-text-fill-color:initial!important;
    font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif!important;
    font-size:27px!important;
    font-weight:400!important;
    line-height:1!important;
    letter-spacing:0!important;
    text-transform:none!important;
    text-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
  }
  /* Hide the duplicate inline emoji on larger screens; its value remains in the
     markup/data attribute and the text label remains visible underneath. */
  .mg2ar-app .mg2ar-controls>.mg2ar-reactions button[data-reaction]>.mg2ar-reaction-emoji{
    display:none!important;
  }
  .mg2ar-app .mg2ar-controls>.mg2ar-reactions button[data-reaction]>.mg2ar-reaction-fallback{
    display:block!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
}

/* Chat bubbles intentionally stay dark in Light Mode, so keep every piece of
   message text bright white for contrast. This changes color only, not layout. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat .mg2ar-message-body,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat .mg2ar-message-body p,
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat .mg2ar-message-body .mg2ar-message-meta>b{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-chat .mg2ar-message-body .mg2ar-message-time{
  color:rgba(255,255,255,.72)!important;
  -webkit-text-fill-color:rgba(255,255,255,.72)!important;
}


/* v1.0.130.29.13 — remove obsolete lobby Notifications button + restore
   readable reaction labels by theme on desktop/laptop. Room GET NOTIFIED remains. */
/* The lobby Notifications button was removed from the PHP template in v1.0.130.29.12.
   Keep this cache-safe rule so any stale/cached copy of that old header button can
   never reappear, including the older demo-guest rule that forced it visible. */
.mg2ar-app .mg2ar-lobby .mg2ar-topbar [data-mg2ar-notifications]{
  display:none!important;
  visibility:hidden!important;
}

@media (min-width:681px){
  /* Light Mode reaction cards are white, so labels must be black. */
  .mg2ar-app[data-theme="light"] .mg2ar-controls>.mg2ar-reactions button[data-reaction]>.mg2ar-reaction-fallback{
    display:block!important;
    color:#151515!important;
    -webkit-text-fill-color:#151515!important;
    opacity:1!important;
    visibility:visible!important;
  }

  /* Dark Mode keeps the labels white. */
  .mg2ar-app[data-theme="dark"] .mg2ar-controls>.mg2ar-reactions button[data-reaction]>.mg2ar-reaction-fallback{
    display:block!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
  }
}


/* v1.0.130.29.14 — keep the room SHARE label visible in Light Mode.
   The desktop room bar intentionally keeps SHARE on a black button, so override
   the broader Light Mode pill text rule for this one control only. */
.mg2ar-app.mg2ar-app[data-theme="light"] .mg2ar-room-bar > [data-mg2ar-share]{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}


/* v1.0.130.29.15 — Free Listener Create Room lock.
   Free Listeners can still see where CREATE ROOM lives, but the control is
   unmistakably disabled. Server-side create_room_record() already rejects
   non-full-access accounts; this is the matching visual/UI lock. */
.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"],
.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"]:disabled{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  background:#b9b9b9!important;
  background-image:none!important;
  border-color:#9b9b9b!important;
  color:#5b5b5b!important;
  -webkit-text-fill-color:#5b5b5b!important;
  opacity:.78!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:grayscale(1)!important;
}
.mg2ar-app[data-subscription-listener="1"] [data-mg2ar-mode="host"]::after{
  content:"PREMIUM"!important;
  font-size:8px!important;
  font-weight:800!important;
  line-height:1!important;
  position:absolute!important;
  right:5px!important;
  top:4px!important;
  letter-spacing:.05em!important;
  color:#555!important;
  -webkit-text-fill-color:#555!important;
}
.mg2ar-app[data-theme="dark"][data-subscription-listener="1"] [data-mg2ar-mode="host"],
.mg2ar-app[data-theme="dark"][data-subscription-listener="1"] [data-mg2ar-mode="host"]:disabled{
  background:#595959!important;
  border-color:#777!important;
  color:#c9c9c9!important;
  -webkit-text-fill-color:#c9c9c9!important;
  opacity:.72!important;
}
.mg2ar-app[data-theme="dark"][data-subscription-listener="1"] [data-mg2ar-mode="host"]::after{
  color:#c9c9c9!important;
  -webkit-text-fill-color:#c9c9c9!important;
}
