/* Viewport contract: one desktop canvas; a two-column layout on short screens.
   Keep these rules last. Preferences and audio state are independent of layout. */
@media(min-width:740px) and (min-height:600px){
 #dispatchApp#dispatchApp.desk357{padding:12px!important;gap:8px!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:124px minmax(0,1fr) 64px!important;}
 #dispatchApp#dispatchApp.desk357 .desk357-top{display:none!important;}
 #dispatchApp#dispatchApp.desk357>.phone323-header{grid-area:1/1!important;}
 #dispatchApp#dispatchApp.desk357>.mobile-talkgroups{grid-area:2/1!important;}
 #dispatchApp#dispatchApp.desk357>.layout-phone-nav{grid-area:3/1!important;}
 #dispatchApp#dispatchApp.desk357 .desk357-side{display:none!important;}
 #dispatchApp#dispatchApp.desk357.desk373-controls .desk357-side{display:block!important;position:fixed!important;inset:12px 12px 84px auto!important;width:min(390px,calc(100vw - 24px));z-index:1000;box-shadow:0 0 0 100vmax #001018b3,0 20px 60px #0008;}
 #dispatchApp#dispatchApp.desk357 .desk373-close{display:block;float:right;border:1px solid #7393a6;border-radius:8px;padding:6px 10px;background:#143543;color:#dff6ff;font-size:16px;}
 #dispatchApp#dispatchApp.desk357 .svx-phone-ui{grid-template-rows:36px 34px 28px minmax(0,1fr) 38px!important;gap:8px!important;overflow:hidden!important;}
 #dispatchApp#dispatchApp.desk357 .phone-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:0!important;gap:8px!important;}
 #dispatchApp#dispatchApp.desk357 .phone-number{font-size:clamp(22px,2vw,34px)!important;}
 #dmr365{padding:12px!important;box-sizing:border-box;height:100dvh;overflow:hidden;}
 #dmr365 .dmr365-shell{height:100%!important;min-height:0!important;padding:0!important;gap:8px!important;grid-template-rows:124px 36px minmax(0,1fr) 64px!important;}
 #dmr365 .dmr365-content{min-height:0!important;gap:8px!important;grid-template-rows:34px 28px minmax(0,1fr) 38px!important;}
 #dmr365 .dmr365-footer{max-width:none!important;border:1px solid #315568;border-radius:12px;padding:4px;background:#0b2433;}
 #dmr365 .dmr365-grid{gap:8px!important;}
 #dmr365 .dmr365-card{background:linear-gradient(145deg,#113447,#0a2332);border-radius:12px;box-shadow:inset 0 1px #ffffff0b,0 8px 20px #0002;}
 #dmr365 .dmr365-select{display:grid!important;grid-template-rows:12px minmax(24px,1fr) 16px 12px!important;gap:2px!important;padding:8px 10px!important;}
 #dmr365 .dmr365-select>strong{font-size:clamp(22px,2vw,34px)!important;line-height:1!important;align-self:center;}
 #dmr365 .dmr365-select>small{font-size:9px;line-height:12px;}
 #dmr365 .dmr365-select>.dmr365-call{line-height:16px!important;}
 #dmr365 .dmr365-select>time{line-height:12px!important;}
 #dmr365 .dmr365-monitor,#dispatchApp#dispatchApp .swl329-monitor{box-shadow:inset 0 1px #ffffff16,0 8px 30px #0003;}
 #dmr365 .dmr365-log{background:linear-gradient(145deg,#102d40,#071d2a);border-radius:14px;}
 #dispatchApp#dispatchApp .studio271-toolbar button,#dmr365 .studio271-toolbar button{font-size:12px!important;}
}
@media(orientation:landscape) and (max-height:599px){
 :root{--studio271-scope:130px;}
 #dispatchApp#dispatchApp[data-studio271],#dmr365 .dmr365-shell{
  display:grid!important;grid-template-columns:minmax(210px,28%) minmax(0,1fr)!important;
  grid-template-rows:36px 88px 36px minmax(0,1fr) 48px!important;
  gap:6px!important;width:100%!important;max-width:none!important;min-height:0!important;
  height:var(--studio371-vh,100dvh)!important;max-height:var(--studio371-vh,100dvh)!important;
  padding:max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important;
  margin:0!important;box-sizing:border-box!important;overflow:hidden!important;
 }
 #dmr365{padding:0!important;overflow:hidden!important;height:var(--studio371-vh,100dvh)!important;box-sizing:border-box!important;}
 #dispatchApp#dispatchApp>.mobile-talkgroups,#dispatchApp#dispatchApp .svx-phone-ui,#dmr365 .dmr365-content{display:contents!important;}
 #dispatchApp#dispatchApp>.phone323-header,#dmr365 .dmr365-monitor{grid-area:1/1/3/2!important;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;}
 #dispatchApp#dispatchApp .swl329-monitor{height:100%!important;min-height:0!important;}
 #dispatchApp#dispatchApp .swl335-switch,#dmr365 .dmr365-tabs{grid-area:1/2/2/3!important;position:static!important;margin:0!important;height:36px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
 #dispatchApp#dispatchApp .studio271-toolbar,#dmr365 .studio271-toolbar{grid-area:3/1/4/2!important;position:static!important;width:100%!important;max-width:none!important;}
 #dispatchApp#dispatchApp .studio369-listen-status,#dmr365 .studio369-listen-status{grid-area:4/1/5/2!important;align-self:start;display:flex!important;white-space:normal!important;height:auto!important;min-height:28px!important;max-height:100%;margin:0!important;}
 #dispatchApp#dispatchApp .phone-grid,#dmr365 .dmr365-grid{grid-area:2/2/5/3!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(76px,1fr))!important;grid-auto-rows:0!important;gap:5px!important;display:grid!important;min-height:0!important;height:auto!important;padding:0!important;overflow:auto!important;}
 #dispatchApp#dispatchApp:not([data-home-view=groups]) .phone-grid,#dmr365 .dmr365-grid[hidden]{display:none!important;}
 #dispatchApp#dispatchApp .phone-card,#dmr365 .dmr365-card{min-width:0!important;min-height:0!important;overflow:hidden!important;}
 #dispatchApp#dispatchApp .phone-card[hidden]{display:none!important;}
 #dispatchApp#dispatchApp .phone-select{padding:4px 5px 24px!important;gap:1px!important;}
 #dispatchApp#dispatchApp .phone-number,#dmr365 .dmr365-select>strong{font-size:20px!important;line-height:22px!important;}
 #dispatchApp#dispatchApp .phone-card .swl331-controls{height:22px!important;}
 #dmr365 .dmr365-card{grid-template-rows:minmax(0,1fr) 23px!important;}
 #dmr365 .dmr365-select{display:grid!important;grid-template-rows:9px minmax(20px,1fr) 12px 10px!important;padding:3px 5px!important;gap:0!important;overflow:hidden!important;}
 #dmr365 .dmr365-select>.dmr365-name{display:none!important;}
 #dmr365 .dmr365-select>.dmr365-call{font-size:10px!important;line-height:12px!important;}
 #dmr365 .dmr365-select>time{font-size:8px!important;line-height:10px!important;}
 #dmr365 .dmr365-controls{height:23px!important;min-height:0!important;}
 #dmr365 .dmr365-all{grid-area:3/4/4/5!important;min-height:0!important;}
 #dispatchApp#dispatchApp .studio369-pages,#dispatchApp#dispatchApp .studio271-tg-strip,#dmr365 .dmr368-pages,#dmr365 .studio271-tg-strip{grid-area:5/2/6/3!important;position:static!important;width:100%!important;max-width:none!important;margin:0!important;align-self:center;padding:0!important;}
 #dispatchApp#dispatchApp .log341-panel,#dispatchApp#dispatchApp .rvx359-activity-panel,#dmr365 .dmr365-log,#dmr365 .dmr365-activity{grid-area:2/2/6/3!important;min-height:0!important;max-height:100%!important;overflow:auto!important;}
 #dispatchApp#dispatchApp>.layout-phone-nav,#dmr365 .dmr365-footer{grid-area:5/1/6/2!important;position:static!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;height:48px!important;min-height:0!important;margin:0!important;padding:2px!important;}
 #dispatchApp#dispatchApp .layout-phone-nav button,#dmr365 .dmr365-footer button{font-size:10px!important;min-height:0!important;gap:2px!important;padding:2px!important;}
 #dispatchApp#dispatchApp .layout-phone-nav svg,#dmr365 .dmr365-footer svg{width:18px!important;height:18px!important;}
 #dispatchApp#dispatchApp .swl-health-title,#dmr365 .dmr365-heading{grid-template-columns:1fr 1fr!important;height:64px!important;}
 #dispatchApp#dispatchApp .swl330-last,#dmr365 .dmr365-last{grid-column:2!important;grid-row:1!important;}
 #dispatchApp#dispatchApp .rvx358-owncall,#dmr365 .dmr365-identity{position:absolute!important;top:42px!important;left:10px!important;right:10px!important;width:auto!important;transform:none!important;display:flex!important;justify-content:center;align-items:center!important;height:20px!important;gap:5px!important;}
 #dispatchApp#dispatchApp .rvx344-vu,#dmr365 .dmr365-vu{top:66px!important;}
 #dispatchApp#dispatchApp .swl329-wave,#dmr365 [data-scope]{top:75px!important;height:27px!important;}
 #dispatchApp#dispatchApp .studio271-toolbar button,#dmr365 .studio271-toolbar button{font-size:9px!important;}
 #dispatchApp#dispatchApp .desk357-side,#dispatchApp#dispatchApp .desk357-top{display:none!important;}
}
@media(prefers-reduced-motion:reduce){.studio370-launch,.studio370-launch::before,.studio370-launch-wave i{animation:none!important;}}

@media(orientation:landscape) and (max-height:599px){
 #dispatchApp#dispatchApp .layout-phone-nav,#dmr365 .dmr365-footer{display:grid!important;grid-template-columns:1fr 1.8fr 1fr!important;gap:3px!important;}
 #dispatchApp#dispatchApp .layout-phone-nav [data-swl-rx] svg,#dmr365 [data-play] svg{display:none!important;}
 #dispatchApp#dispatchApp .layout-phone-nav button span,#dmr365 .dmr365-footer button{white-space:normal!important;overflow-wrap:normal!important;}
 #dispatchApp#dispatchApp .swl329-telemetry,#dmr365 .dmr365-telemetry{font-size:8px!important;gap:2px!important;}
}
@media(orientation:landscape) and (max-height:599px){
 #dispatchApp#dispatchApp .swl329-telemetry{flex-direction:row!important;right:47px!important;}
 #dispatchApp#dispatchApp .swl329-telemetry span{font-size:7px!important;line-height:10px!important;}
 #dispatchApp#dispatchApp .swl329-feed-bars{display:none!important;}
 #dispatchApp#dispatchApp .swl329-telemetry .swl329-feed-metric{gap:0!important;}
 #dispatchApp#dispatchApp .phone-card[data-special] .phone-tg-label{position:absolute!important;top:4px!important;left:5px!important;right:25px!important;padding:0!important;font-size:7px!important;text-align:left!important;}
 #dispatchApp#dispatchApp .phone-card[data-special] .phone-select{padding-top:16px!important;}
 #dispatchApp#dispatchApp .phone-card .swl331-tg-controls{height:22px!important;}
}

@media(min-width:740px) and (min-height:600px){
 #dmr365{background:radial-gradient(ellipse at 12% 0%,#103c4b99,transparent 55%),#06121c;}
 #dmr365 .dmr365-log::before{content:'TG LOGGING';font:700 17px/1.4 system-ui;letter-spacing:.06em;color:#d4f2ff;padding:12px 10px;}
 #dmr365 .dmr365-footer button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;}
 #dmr365 .dmr365-footer button svg{width:23px;height:23px;}
}
