/* Mobile UI v7 — second-pass real-device refinement. */
@media (max-width: 760px) {
  /* ------------------------------------------------------------
     Global density + typography
     ------------------------------------------------------------ */
  .page-header h1,
  .page-header h2 { font-size: 24px !important; line-height: 1.08 !important; letter-spacing: -.025em !important; }
  .page-header > div > p,
  .page-header .muted { font-size: 12px !important; line-height: 1.35 !important; }
  .full-bleed > h2,
  .system-settings-page > h2 { font-size: 22px !important; }
  .settings-modal fieldset { box-shadow: none !important; }
  .settings-modal fieldset + fieldset { margin-top: 7px !important; }
  .settings-modal legend { font-size: 13px !important; }
  .settings-modal .muted { line-height: 1.3 !important; }

  /* ------------------------------------------------------------
     Bottom navigation: consistent, app-like icon language
     ------------------------------------------------------------ */
  .topbar > nav > a,
  .topbar > nav > details > summary {
    position: relative !important;
    color: #a9bcc9 !important;
  }
  .topbar > nav > a.active,
  .topbar > nav > a[aria-current="page"] { color: #fff !important; }
  .topbar > nav > a::before,
  .topbar > nav > details > summary::before {
    content: '' !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 auto 4px !important;
    background: currentColor !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    -webkit-mask-size: contain !important;
    mask-size: contain !important;
  }
  .topbar > nav > a[href^="/sites"]::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.8 12 3l9 7.8V21h-7v-6h-4v6H3V10.8Zm2 1V19h3v-6h8v6h3v-7.2l-7-6.1-7 6.1Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.8 12 3l9 7.8V21h-7v-6h-4v6H3V10.8Zm2 1V19h3v-6h8v6h3v-7.2l-7-6.1-7 6.1Z'/%3E%3C/svg%3E") !important;
  }
  .topbar > nav > a[href^="/rounds"]::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 3h8v2h3v16H5V5h3V3Zm2 2h4V4h-4v1ZM7 7v12h10V7h-2v1H9V7H7Zm2 4h6v2H9v-2Zm0 4h5v2H9v-2Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 3h8v2h3v16H5V5h3V3Zm2 2h4V4h-4v1ZM7 7v12h10V7h-2v1H9V7H7Zm2 4h6v2H9v-2Zm0 4h5v2H9v-2Z'/%3E%3C/svg%3E") !important;
  }
  .topbar > nav > a[href^="/cases"]::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 3h8l2 3h3v14H3V6h3l2-3Zm1.1 2L8 7h8l-1.1-2H9.1ZM5 9v9h14V9H5Zm3 2h8v2H8v-2Zm0 4h5v2H8v-2Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 3h8l2 3h3v14H3V6h3l2-3Zm1.1 2L8 7h8l-1.1-2H9.1ZM5 9v9h14V9H5Zm3 2h8v2H8v-2Zm0 4h5v2H8v-2Z'/%3E%3C/svg%3E") !important;
  }
  .topbar > nav > details > summary::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4Zm7 0a2 2 0 1 1 0 4 2 2 0 0 1 0-4Zm7 0a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4Zm7 0a2 2 0 1 1 0 4 2 2 0 0 1 0-4Zm7 0a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E") !important;
  }

  /* ------------------------------------------------------------
     Team Connect operating groups: half-height scan rows
     ------------------------------------------------------------ */
  .team-connect-coverage { margin: 0 !important; padding: 8px !important; }
  .team-connect-section-heading { margin: 0 0 6px !important; }
  .team-connect-section-heading h3 { margin: 0 !important; font-size: 17px !important; }
  .team-connect-section-heading p { margin: 2px 0 0 !important; font-size: 10px !important; }
  .team-connect-coverage-grid { gap: 6px !important; }
  .team-connect-coverage-grid > article {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: 3px 8px !important;
    min-height: 92px !important;
    padding: 9px 10px !important;
    border-radius: 11px !important;
  }
  .team-connect-coverage-grid > article > div:first-child { min-width: 0 !important; }
  .team-connect-coverage-grid > article > div:first-child > strong { display:block !important; font-size: 15px !important; line-height: 1.15 !important; }
  .team-connect-coverage-grid > article > div:first-child > span,
  .team-connect-coverage-grid > article > div:first-child > small {
    display: inline !important;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
    color: #617483 !important;
  }
  .team-connect-coverage-grid > article > div:first-child > span:not(:last-of-type)::after,
  .team-connect-coverage-grid > article > div:first-child > small:not(:last-child)::after { content: ' · '; color:#9caab3; }
  .team-connect-coverage-grid > article > div:first-child > small.warning-text { color:#8b5a09 !important; font-weight:700; }
  .team-connect-coverage-grid > article > div:first-child > small:last-child { display:none !important; }
  .team-connect-coverage-grid > article > div:nth-child(2) {
    grid-column: 1 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 3px 8px !important;
    align-items: center !important;
  }
  .team-connect-coverage-grid > article > div:nth-child(2) span { font-size: 9px !important; color:#6a7c89 !important; line-height:1.2 !important; }
  .team-connect-coverage-grid > article > button {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    min-height: 34px !important;
    padding: 5px 9px !important;
    font-size: 10px !important;
  }

  /* ------------------------------------------------------------
     Team Connect modal: chips first, compact rows second
     ------------------------------------------------------------ */
  .team-connect-coverage-form { gap: 7px !important; }
  .team-connect-coverage-form > fieldset { padding: 8px !important; margin:0 !important; border-radius:10px !important; }
  .team-connect-coverage-form > fieldset > p.muted { margin: 1px 0 6px !important; font-size: 9px !important; }
  .team-connect-coverage-form .assignment-selected + .assignment-picker .assignment-row.added { display:none !important; }
  .team-connect-coverage-form .assignment-picker { max-height: 210px !important; padding: 4px !important; gap: 2px !important; }
  .team-connect-coverage-form .assignment-row { min-height: 34px !important; padding: 4px 5px 4px 8px !important; }
  .team-connect-coverage-form .assignment-row > span { font-size: 10px !important; }
  .team-connect-coverage-form .assignment-row > button { min-height: 26px !important; font-size: 9px !important; }
  .team-connect-recipient-list { display:block !important; }
  .team-connect-recipient-list > div {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:center !important;
    gap:4px 8px !important;
    min-height:46px !important;
    padding:6px 7px !important;
    margin:0 !important;
    border:0 !important;
    border-bottom:1px solid #e2e8ec !important;
    border-radius:0 !important;
  }
  .team-connect-recipient-list > div:last-child { border-bottom:0 !important; }
  .team-connect-recipient-list > div > span { min-width:0 !important; }
  .team-connect-recipient-list > div > span strong { display:block !important; font-size:11px !important; line-height:1.1 !important; }
  .team-connect-recipient-list > div > span small { display:block !important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:8.5px !important; color:#738592; }
  .team-connect-recipient-list .check-label { margin:0 !important; font-size:9px !important; }
  .team-connect-recipient-list input[type="checkbox"] { width:20px !important; height:20px !important; min-width:20px !important; }

  /* ------------------------------------------------------------
     System Health: camera rows become scan rows
     ------------------------------------------------------------ */
  .diagnostics-category-body .device-status-grid,
  .diagnostics-category-body .diagnostics-device-list { gap:4px !important; }
  .diagnostics-category-body .device-status-tile,
  .diagnostics-category-body .diagnostics-device-row {
    min-height:64px !important;
    padding:7px 9px !important;
    border-radius:9px !important;
  }
  .diagnostics-category-body .device-status-tile strong,
  .diagnostics-category-body .diagnostics-device-row strong { font-size:12px !important; }
  .diagnostics-category-body .device-status-tile span,
  .diagnostics-category-body .device-status-tile small,
  .diagnostics-category-body .diagnostics-device-row span,
  .diagnostics-category-body .diagnostics-device-row small { font-size:9px !important; line-height:1.25 !important; }
  .camera-maintenance-result { padding:8px !important; gap:6px !important; border-radius:9px !important; }
  .camera-maintenance-title { gap:6px !important; }
  .camera-maintenance-title > span { font-size:8px !important; padding:3px 5px !important; }
  .camera-maintenance-title strong { font-size:11px !important; }
  .camera-maintenance-title h4 { margin:1px 0 0 !important; font-size:10px !important; line-height:1.2 !important; }
  .camera-maintenance-title > b { font-size:15px !important; }
  .camera-maintenance-result-main > p { margin:4px 0 !important; font-size:9px !important; line-height:1.3 !important; }
  .camera-maintenance-meta { gap:3px 6px !important; }
  .camera-maintenance-meta span { font-size:8px !important; }
  .camera-maintenance-actions { gap:4px !important; }
  .camera-maintenance-actions button,
  .camera-maintenance-actions .button-link { min-height:28px !important; padding:4px 7px !important; font-size:8.5px !important; }

  /* ------------------------------------------------------------
     Team Maps: controls collapse into a compact command strip
     ------------------------------------------------------------ */
  .group-maps-page .page-header { grid-template-columns:minmax(0,1fr) auto !important; gap:4px 8px !important; padding-bottom:6px !important; }
  .group-maps-page .page-header > div > p { display:none !important; }
  .group-maps-page .page-header .page-header-actions button,
  .group-maps-page .page-header > button { min-width:38px !important; width:38px !important; min-height:34px !important; padding:0 !important; font-size:0 !important; }
  .group-maps-page .page-header .page-header-actions button::before,
  .group-maps-page .page-header > button::before { content:'↻'; font-size:19px; }
  .map-tab-row {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:5px !important;
    margin:0 8px 6px !important;
    align-items:center !important;
  }
  .map-tabs { display:flex !important; gap:4px !important; overflow-x:auto !important; scrollbar-width:none; }
  .map-tabs::-webkit-scrollbar { display:none; }
  .map-tabs button { min-height:34px !important; padding:5px 9px !important; font-size:10px !important; white-space:nowrap !important; }
  .map-default-button,
  .map-default-label { min-height:32px !important; padding:5px 8px !important; font-size:9px !important; white-space:nowrap !important; }
  .map-default-label { display:flex !important; align-items:center; }
  .map-coverage-summary {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:3px 8px !important;
    margin:0 8px 5px !important;
    padding:7px 9px !important;
    border-radius:9px !important;
  }
  .map-coverage-summary strong { width:auto !important; font-size:11px !important; }
  .map-coverage-summary span { font-size:9px !important; }
  .map-legend { margin:0 8px 5px !important; gap:3px 8px !important; }
  .map-legend span { font-size:8.5px !important; }
  .map-legend .map-zoom-hint { display:none !important; }
  .group-live-map-shell { margin:0 8px 7px !important; }

  /* Map roster: search + status stay compact and useful. */
  .map-roster-tabs { margin-bottom:6px !important; }
  .map-roster-tabs button { min-height:36px !important; padding:5px 8px !important; font-size:11px !important; }
  .settings-modal .map-roster-tabs + .filter-bar {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(110px,.75fr) !important;
    gap:5px !important;
    padding:6px !important;
    margin:0 0 6px !important;
  }
  .settings-modal .map-roster-tabs + .filter-bar > label { margin:0 !important; }
  .settings-modal .map-roster-tabs + .filter-bar input,
  .settings-modal .map-roster-tabs + .filter-bar select { min-height:34px !important; height:34px !important; font-size:10px !important; }
  .settings-modal .map-roster-tabs + .filter-bar .filter-bar-clear { grid-column:1 / -1 !important; min-height:28px !important; font-size:9px !important; }
  .map-roster-list { gap:4px !important; }
  .map-roster-list article { min-height:58px !important; padding:7px 9px !important; border-radius:9px !important; }
  .map-roster-list article strong { font-size:12px !important; }
  .map-roster-list article span,
  .map-roster-list article time { font-size:9px !important; line-height:1.25 !important; }

  /* ------------------------------------------------------------
     Motion: review decision first; mute becomes secondary
     ------------------------------------------------------------ */
  .motion-card:not(.reviewed) .site-motion-mute-control {
    margin:5px 0 0 !important;
    padding:5px 7px !important;
    border-width:1px !important;
    border-left-width:3px !important;
    border-radius:8px !important;
    background:#fffdf6 !important;
  }
  .motion-card:not(.reviewed) .site-motion-mute-control > div:first-child strong { font-size:10px !important; }
  .motion-card:not(.reviewed) .site-motion-mute-control > div:first-child p,
  .motion-card:not(.reviewed) .site-motion-mute-control .muted { display:none !important; }
  .motion-card:not(.reviewed) .site-motion-mute-control select { min-height:29px !important; height:29px !important; font-size:9px !important; padding:3px 5px !important; }
  .motion-card:not(.reviewed) .site-motion-mute-control button { min-height:29px !important; padding:3px 6px !important; font-size:9px !important; }
  .motion-card:not(.reviewed) .motion-actions {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:4px !important;
    padding-top:5px !important;
    border-top:1px solid #e5ebef !important;
  }
  .motion-card:not(.reviewed) .motion-review-action { min-width:0 !important; }
  .motion-card:not(.reviewed) .motion-review-action > button:first-child {
    width:100% !important;
    min-height:36px !important;
    padding:5px 3px !important;
    font-size:9.5px !important;
    font-weight:800 !important;
  }
  .motion-card:not(.reviewed) .motion-actions .motion-review-action:nth-child(n+4) { grid-column:span 1 !important; }
  .motion-card:not(.reviewed) .motion-action-help-intro,
  .motion-card:not(.reviewed) .ai-action-help-button,
  .motion-card:not(.reviewed) .ai-action-tooltip { display:none !important; }

  /* ------------------------------------------------------------
     Relationship editors: avoid duplicate selected cards everywhere
     ------------------------------------------------------------ */
  .settings-modal .assignment-selected + .assignment-picker .assignment-row.added { display:none !important; }
  .settings-modal .assignment-selected-chips { gap:3px !important; }
  .settings-modal .assignment-selected-chips button { min-height:26px !important; padding:3px 6px !important; font-size:8.5px !important; }

  /* ------------------------------------------------------------
     Admin list finishing pass
     ------------------------------------------------------------ */
  .settings-user-table tr { min-height:82px !important; padding:8px 9px !important; }
  .settings-user-table td[data-label="User"] strong { font-size:13px !important; }
  .settings-user-table td[data-label="Capabilities"] { font-size:9px !important; }
  .settings-map-table tr { min-height:68px !important; padding:8px 9px !important; }
  .settings-map-table td[data-label="Map"] strong { font-size:13px !important; }
  .setup-site-list tr { min-height:70px !important; padding:8px 9px !important; }

  /* Make nested white-on-white cards feel like one editing surface. */
  .settings-modal-body > .form > fieldset,
  .team-connect-coverage-form > fieldset,
  .group-edit-form > fieldset,
  .map-edit-form .group-assignment-section { box-shadow:none !important; }
}
