/* Guia Livre Rádio 14.1.140 — layout authority for mode, player and chat. */
/* Prevent mode picker spilling over the device, without changing LCD typography. */
body.wt-100 #device{position:relative;isolation:isolate}
body.wt-100 .glw133-mode-control{position:absolute!important;top:14px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(175px,calc(100% - 112px))!important;max-width:175px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;z-index:85!important}
body.wt-100 .glw133-mode-primary{width:100%!important;min-width:0!important;max-width:100%!important;padding:7px 9px!important;min-height:36px!important;border-radius:12px!important;font-size:12px!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body.wt-100 .glw133-mode-options{position:absolute!important;top:calc(100% + 5px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(204px,80vw)!important;max-width:calc(100vw - 48px)!important;max-height:min(44dvh,270px)!important;overflow:auto!important;z-index:95!important}
body.wt-100 .glw133-mode-options[hidden]{display:none!important}
body.wt-100 .glw133-mode-options button{font-size:12px!important;min-height:34px!important;padding:7px 9px!important}
body.wt-100 .gl135-talk-status{top:57px!important;max-width:190px!important;font-size:11px!important;pointer-events:none!important}
/* Right icons align with mode, within the radio workspace. */
body.wt-100 .gl134-physical-tools{position:absolute!important;right:3px!important;top:15px!important;display:flex!important;flex-direction:column!important;gap:3px!important;width:34px!important;z-index:86!important}
body.wt-100 .gl134-physical-tools>button{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;max-width:34px!important;max-height:34px!important;padding:3px!important;background:transparent!important;box-shadow:none!important;border:0!important}
body.wt-100 .gl134-physical-tools svg{width:21px!important;height:21px!important}
/* Chat: side rail on desktop; full-screen, swipe-switchable on handheld. */
@media(max-width:999px){
 body.wt-100 #gl134ChatModal[open]{position:fixed!important;inset:0!important;margin:0!important;border-radius:0!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;padding:0!important;z-index:1150!important}
 body.wt-100 #gl134ChatModal .gl134-chat-shell{max-height:100dvh!important;height:100dvh!important;min-height:0!important}
 body.wt-100 .gl134-physical-tools{top:13px!important;gap:1px!important}
 body.wt-100 .gl134-physical-tools>button{width:30px!important;height:30px!important;min-height:30px!important;min-width:30px!important}
 body.wt-100 .glw133-mode-control{top:15px!important;max-width:calc(100% - 85px)!important}
 body.wt-100 .glw133-mode-primary{font-size:11px!important;min-height:32px!important}
 body.wt-100 .gl135-talk-status{top:53px!important}
}
.gl140-swipe-indicator{font-size:11px;text-align:center;color:#b3d3e6;padding:4px 12px;background:#10283a}
/* Module dock never stretches across a full-width ad banner. */
#gl140ModuleHost{position:fixed;inset:0;z-index:125;pointer-events:none}
#gl140ModuleHost>*{pointer-events:auto}
.gl140-launch{background:#103650;color:#e8fcff;border:1px solid #387a97;border-radius:10px;min-height:34px;max-width:100%;padding:6px 9px;cursor:pointer;white-space:nowrap;font-size:12px;font-weight:750}
#gl140ModuleHost>.gl140-launch{position:fixed;right:12px;top:calc(env(safe-area-inset-top,0px) + 78px);max-width:142px;overflow:hidden;text-overflow:ellipsis;z-index:2}
.glw133-mode-control>.gl140-launch{margin-top:6px;width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.settings>.gl140-launch{display:block;margin:10px auto 0;width:100%;max-width:250px}
.gl140-radio-dock{position:fixed;right:12px;top:92px;bottom:auto;width:min(500px,calc(100vw - 24px));height:min(68dvh,570px);border-radius:16px;background:#071725;color:#ebf8ff;border:1px solid #2a6e8e;box-shadow:0 18px 70px #0009;overflow:hidden;display:flex;flex-direction:column;z-index:3}
.gl140-dock-bar{display:flex;align-items:center;gap:7px;min-height:47px;background:#0b2940;border-bottom:1px solid #38536a;padding:5px 7px;flex:none}
.gl140-icon{color:#69e4dc!important;font-size:20px!important;border:0!important;background:transparent!important;cursor:pointer}
.gl140-station-label{flex:1;min-width:0;overflow:hidden}
.gl140-station-label strong,.gl140-station-label small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.gl140-station-label strong{font-size:12px;font-weight:850;line-height:1.25}.gl140-station-label small{font-size:10px;color:#97b7c9}
.gl140-radio-dock.minimized{position:fixed;right:10px;top:calc(env(safe-area-inset-top,0px) + 12px);bottom:auto;width:min(300px,calc(100vw - 90px));height:44px;border-radius:13px;overflow:hidden}
.gl140-radio-dock.minimized .gl140-dock-bar{min-height:44px;padding:3px 4px;gap:3px}
.gl140-radio-dock.minimized .gl140-dock-bar .gl140-icon,.gl140-radio-dock.minimized .gl140-station-label small{display:none}
.gl140-radio-dock.minimized .gl140-station-label strong{font-size:11px}
.gl140-radio-dock.minimized iframe{position:absolute!important;left:-200vw!important;top:-200vh!important;width:2px!important;height:2px!important;pointer-events:none!important;opacity:0!important}
.gl140-radio-dock iframe{width:100%;height:100%;flex:1;min-height:0;border:0;background:#0b1729}
.gl140-dock-controls{display:flex;flex:none;gap:2px;align-items:center}
.gl140-dock-controls button{min-width:27px;width:27px;height:29px;padding:0;color:#d6f1fe;background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:14px}
.gl140-dock-controls button:hover{background:#23506b}
.gl140-radio-dock.minimized .gl140-dock-controls button{width:25px;min-width:25px;font-size:13px}
.gl140-playing{font-weight:bold;color:#4aeac4;white-space:nowrap;animation:gl140Pulse 1s ease-in-out infinite alternate}
.gl140-playing[hidden]{display:none}
@keyframes gl140Pulse{to{opacity:.28}}
/* User drawer always above floating or minimized modules. */
body.wt-100 .wt-menu-drawer,body.wt-100 .wt-menu-shade{z-index:500!important}
body.wt-100:has(.wt-menu-drawer.is-open) #gl140ModuleHost,body.wt-100:has(.wt-menu-drawer[aria-hidden="false"]) #gl140ModuleHost{z-index:1}
/* Ads remain unobstructed because the dock is at the top, not bottom. */
.gl140-settings{width:min(420px,calc(100vw - 24px));padding:0;border:1px solid #35617e;border-radius:18px;background:#0b2031;color:#ecfcff;box-shadow:0 20px 80px #0009}
.gl140-settings::backdrop{background:#000b}
.gl140-settings-inner{padding:18px;display:grid;gap:14px}
.gl140-settings h2{font-size:19px;margin:0}.gl140-settings p{color:#9dbbcd;margin:0;font-size:12px;line-height:1.55}
.gl140-settings label{display:grid;gap:7px;font-size:13px;font-weight:750}
.gl140-settings input,.gl140-settings select{max-width:100%;accent-color:#13bcb3;color:#e7faff;background:#102a40;border:1px solid #386784;border-radius:9px;min-height:38px}
.gl140-settings input[type=range]{background:transparent}
.gl140-settings output{color:#54edcf}
.gl140-settings-close{min-height:39px;color:#fff;background:#155b79;border:0;border-radius:10px;cursor:pointer}
.gl140-settings .gl140-note{color:#b5bacb;font-size:11px}
@media(max-width:650px){
 .gl140-radio-dock{inset:4dvh 8px 9px;width:auto;height:auto;max-height:none}
 .gl140-radio-dock.minimized{top:calc(env(safe-area-inset-top,0px) + 10px);right:7px;left:auto;bottom:auto;width:min(254px,calc(100vw - 84px));height:43px}
 .gl140-radio-dock.minimized .gl140-dock-controls button:nth-child(1),.gl140-radio-dock.minimized .gl140-dock-controls button:nth-child(3){display:none}
 .gl140-radio-dock.minimized .gl140-station-label strong{font-size:10px}
}
/* Moderation presentation in the existing Super Admin. */
.gl140-admin-row{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:10px 0 14px}
.gl140-admin-row label{display:grid;gap:5px;flex:1;min-width:160px}
.gl140-admin-row select,.gl140-admin-row button{min-height:38px;max-width:100%;border:1px solid #35617e;border-radius:9px;background:#102d45;color:#fff;padding:8px}
.gl140-admin-row .danger{background:#562b35}
.gl140-admin-messages{max-height:340px;overflow:auto;display:grid;gap:7px}
.gl140-admin-messages article{border:1px solid #2c586b;background:#0c2738;padding:9px 11px;border-radius:9px}
.gl140-admin-messages strong{font-size:12px;color:#87dcea}
.gl140-admin-messages p{font-size:13px;margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.gl140-admin-messages button{padding:5px 10px;border:1px solid #985e6a;background:#542d38;color:#fff;border-radius:7px}

.gl140-chat-moderator{background:#1c576b!important;border:1px solid #3989a2!important;border-radius:10px!important;color:#fff!important;min-height:34px!important;padding:6px 11px!important;margin-right:6px!important;font-size:12px!important}.gl140-chat-moderator[hidden]{display:none!important}

/* Registration above mode selector, mode moves down just enough to remain clickable. */
body.wt-100 .glw133-mode-control{top:6px!important;gap:4px!important}
body.wt-100 .gl140-register{display:block;width:100%;min-height:22px;line-height:22px;box-sizing:border-box;border:1px solid #367a91;border-radius:8px;background:#092b3e;color:#b3edfb;font:700 10px/20px system-ui;text-decoration:none;text-align:center;white-space:nowrap}
body.wt-100 .glw133-mode-primary{min-height:32px!important}
body.wt-100 .gl135-talk-status{top:73px!important}
body.wt-100 #gl140ModuleHost .gl140-topbar{font-size:20px;min-width:34px;min-height:34px;padding:4px;border:0;background:transparent;color:#64e2eb}
.gl140-playing{letter-spacing:1px;font-size:12px;animation:gl140Pulse .55s ease-in-out infinite alternate}
@media(max-width:999px){body.wt-100 .glw133-mode-control{top:5px!important}body.wt-100 .gl135-talk-status{top:68px!important}}
/* Install control stays as the last item of the left rail. */
body.wt-100 .gl137-install-side{margin-top:20px;padding:14px 0 0;border-top:1px solid #275267;max-width:100%}
body.wt-100 .gl137-install-side #gl134Install{width:100%;min-height:40px;max-width:100%;border-radius:11px;border:1px solid #318eac;background:linear-gradient(125deg,#145a77,#10364e);color:#eefbff;font-weight:800;cursor:pointer}
