/* BB Perfect Proposal Manager v3.7.0 — Final UX Consolidation
 * Presentation-only final layer. Keeps application/data/security logic intact.
 */
:root{
  --bb370-page-gap:20px;
  --bb370-card-pad:18px;
  --bb370-control-h:44px;
  --bb370-mobile-header:64px;
  --bb370-mobile-nav:70px;
  --bb370-sticky-action:72px;
  --bb370-focus:0 0 0 3px color-mix(in srgb,var(--bb-primary) 22%,transparent);
}

/* --------------------------------------------------------------------------
   1. GLOBAL APPLICATION LANGUAGE
   -------------------------------------------------------------------------- */
body.bbppm-v370{font-size:14px!important;line-height:1.5!important;text-rendering:optimizeLegibility}
body.bbppm-v370 h1{font-size:30px!important;line-height:1.15!important;font-weight:760!important;letter-spacing:-.028em!important}
body.bbppm-v370 h2{font-size:20px!important;line-height:1.25!important;font-weight:730!important;letter-spacing:-.018em!important}
body.bbppm-v370 h3{font-size:16px!important;line-height:1.35!important;font-weight:700!important}
body.bbppm-v370 :is(p,li,td,label,input,select,textarea,button){font-size:14px}
body.bbppm-v370 :is(.description,.howto,small){font-size:12.5px!important;line-height:1.45!important}
body.bbppm-v370 a{transition:color .14s ease,background-color .14s ease,border-color .14s ease,box-shadow .14s ease}
body.bbppm-v370 :is(button,a,input,select,textarea):focus-visible{outline:none!important;box-shadow:var(--bb370-focus)!important}
body.bbppm-v370 .screen-reader-text:focus{z-index:100000!important}

/* Keep the top-level shell visually identical on custom and WP-backed screens. */
body.bbppm-v370 .bbppm-global-topbar{height:60px!important;min-height:60px!important;padding:8px 18px!important}
body.bbppm-v370 .bbppm-top-search{height:42px!important;border-radius:11px!important}
body.bbppm-v370 .bbppm-app-icon-button,
body.bbppm-v370 .bbppm-topbar-menu>summary{min-width:42px!important;height:42px!important;border-radius:11px!important}
body.bbppm-v370 .bbppm-app-sidebar{box-shadow:8px 0 30px rgba(8,15,35,.08)}
body.bbppm-v370 .bbppm-workspace-nav a{min-height:40px!important;border-radius:10px!important;margin:2px 10px!important;padding:8px 10px!important}
body.bbppm-v370 .bbppm-nav-label{padding:13px 18px 5px!important;letter-spacing:.07em!important;font-size:10px!important}

/* Desktop does not need a hamburger when the persistent sidebar is present. */
@media(min-width:1181px){
  body.bbppm-v370 .bbppm-sidebar-toggle{display:none!important}
  body.bbppm-v370 .bbppm-topbar-left{padding-left:2px}
}

/* --------------------------------------------------------------------------
   2. NATIVE WORDPRESS-BACKED SCREENS -> BB PERFECT WORKSPACES
   -------------------------------------------------------------------------- */
body.bbppm-native-shell.bbppm-v370 #wpcontent{padding-top:82px!important}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-workspace{display:grid;gap:16px}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-page-head{margin:0!important;padding:0 0 2px!important;align-items:center!important}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-page-title{display:grid;gap:4px}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-page-title .wp-heading-inline{font-size:30px!important;line-height:1.12!important}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-context{font-size:12.5px!important;line-height:1.35!important;color:var(--bb-muted)!important}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-page-actions{align-self:center}
body.bbppm-native-shell.bbppm-v370 .bbppm-native-page-actions :is(.button,.page-title-action){min-height:42px!important}
body.bbppm-native-shell.bbppm-v370 .wp-header-end{display:none!important}
body.bbppm-native-shell.bbppm-v370 .bbppm-v370-notices{display:grid;gap:8px;margin:-2px 0 2px}
body.bbppm-native-shell.bbppm-v370 .bbppm-v370-notices:empty{display:none}
body.bbppm-native-shell.bbppm-v370 .bbppm-v370-notices .notice{margin:0!important;border:1px solid var(--bb-border)!important;border-left-width:4px!important;border-radius:10px!important;background:var(--bb-surface)!important;box-shadow:none!important;padding:3px 12px!important}

/* Toolbar / filters */
body.bbppm-v370 .bbppm-v370-view-tabs{margin:0!important;gap:7px!important}
body.bbppm-v370 .bbppm-v370-view-tabs li{float:none!important}
body.bbppm-v370 .bbppm-v370-view-tabs a{min-height:36px;align-items:center;padding:7px 11px!important;border-radius:9px!important;font-size:12.5px!important}
body.bbppm-v370 .bbppm-v370-filterbar{min-height:50px;padding:8px!important;margin:0!important;border:1px solid var(--bb-border);border-radius:12px;background:var(--bb-surface);box-shadow:var(--bb-shadow-xs)}
body.bbppm-v370 .bbppm-v370-filterbar .actions{display:flex;gap:7px;align-items:center;padding:0!important}
body.bbppm-v370 .bbppm-v370-filterbar select{max-width:220px!important}
body.bbppm-v370 .bbppm-v370-searchbox{display:flex!important;gap:7px!important;align-items:center!important}
body.bbppm-v370 .bbppm-v370-searchbox input[type=search]{min-height:40px!important}
body.bbppm-v370 .tablenav-pages{display:flex;align-items:center;gap:5px;color:var(--bb-muted)}
body.bbppm-v370 .tablenav-pages .button{min-width:38px!important;padding:7px!important}

/* Tables */
body.bbppm-v370 .bbppm-v370-table-surface{border-radius:14px!important;box-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px rgba(16,24,40,.035)!important}
body.bbppm-v370 .bbppm-v370-data-table{table-layout:auto}
body.bbppm-v370 .bbppm-v370-data-table thead th{height:44px!important;white-space:nowrap}
body.bbppm-v370 .bbppm-v370-data-table tbody td{height:56px!important}
body.bbppm-v370 .bbppm-v370-data-row td:first-of-type{font-weight:600}
body.bbppm-v370 .bbppm-v370-data-row .column-title strong a{font-size:14px!important;font-weight:730!important;color:var(--bb-heading)!important}
body.bbppm-v370 .bbppm-v370-data-row .row-actions{padding-top:5px!important;font-size:11.5px!important;opacity:.78}
body.bbppm-v370 .bbppm-v370-data-row:hover .row-actions{opacity:1}
body.bbppm-v370 .bbppm-v370-data-row .row-actions .trash a,
body.bbppm-v370 .bbppm-v370-danger-action{color:var(--bb-danger)!important}
body.bbppm-v370 .check-column{width:42px!important;text-align:center!important}

/* WordPress editor becomes a clear record workspace. */
body.bbppm-v370 .bbppm-v370-record-workspace{margin-top:0!important}
body.bbppm-v370 #post-body.columns-2{display:grid!important;grid-template-columns:minmax(0,1fr) 310px!important;gap:18px!important;margin:0!important}
body.bbppm-v370 #postbox-container-1,
body.bbppm-v370 #postbox-container-2{float:none!important;width:auto!important;margin:0!important}
body.bbppm-v370 #postbox-container-2{grid-column:1}
body.bbppm-v370 #postbox-container-1{grid-column:2;grid-row:1}
body.bbppm-v370 .bbppm-v370-record-main{margin-bottom:14px!important}
body.bbppm-v370 .bbppm-v370-record-title{padding:16px!important;border:1px solid var(--bb-border)!important;border-radius:var(--bb-radius)!important;background:var(--bb-surface)!important;box-shadow:var(--bb-shadow-xs)!important;margin-bottom:14px!important}
body.bbppm-v370 .bbppm-v370-record-title #title{border:0!important;background:transparent!important;box-shadow:none!important;padding:4px 2px!important;font-size:24px!important;height:46px!important}
body.bbppm-v370 .bbppm-v370-record-title #title:focus{box-shadow:none!important}
body.bbppm-v370 .bbppm-v370-section-card{margin:0 0 14px!important;border-radius:14px!important}
body.bbppm-v370 .bbppm-v370-section-card .postbox-header{min-height:50px!important}
body.bbppm-v370 .bbppm-v370-section-card .hndle{display:flex!important;align-items:center!important;gap:9px!important;font-size:14px!important}
body.bbppm-v370 .bbppm-v370-section-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--bb-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--bb-primary) 10%,transparent)}
body.bbppm-v370 .bbppm-v370-section-card .inside{padding:16px!important}
body.bbppm-v370 .bbppm-v370-publish-card{position:sticky;top:76px}
body.bbppm-v370 .bbppm-v370-publish-card #major-publishing-actions{display:grid;grid-template-columns:1fr;gap:8px}
body.bbppm-v370 .bbppm-v370-publish-card #publishing-action{float:none!important;text-align:stretch!important;width:100%}
body.bbppm-v370 .bbppm-v370-publish-card #publish{width:100%;min-height:44px!important}
body.bbppm-v370 .misc-pub-section{padding:9px 0!important;border-bottom:1px solid color-mix(in srgb,var(--bb-border) 70%,transparent)}
body.bbppm-v370 .misc-pub-section:last-child{border-bottom:0}

/* Form tables are never allowed to look like raw WP settings. */
body.bbppm-v370 .bbppm-v370-form-table{border-collapse:separate!important;border-spacing:0 8px!important}
body.bbppm-v370 .bbppm-v370-form-table th{width:220px!important;padding:12px 16px 12px 0!important;font-weight:680!important;color:var(--bb-heading)!important;vertical-align:top!important}
body.bbppm-v370 .bbppm-v370-form-table td{padding:6px 0!important}
body.bbppm-v370 .bbppm-v370-form-table td>p.description{max-width:720px;margin-top:6px!important}
body.bbppm-v370 :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=time],input[type=search],select,textarea){max-width:100%}
body.bbppm-v370 select{padding-right:34px!important}
body.bbppm-v370 textarea{line-height:1.5!important;resize:vertical}
body.bbppm-v370 fieldset{border:0;margin:0;padding:0}

/* --------------------------------------------------------------------------
   3. DARK/LIGHT THEME CONSISTENCY ACROSS CUSTOM + NATIVE SCREENS
   -------------------------------------------------------------------------- */
body[data-bbppm-theme="dark"].bbppm-v370{
  --bb-app-bg:#071B17;
  --bb-surface:#0B241E;
  --bb-surface-soft:#0E2A23;
  --bb-heading:#F5FAF8;
  --bb-body:#D5E3DE;
  --bb-muted:#8FA9A0;
  --bb-border:#204039;
  --bb370-field:#0A211C;
  --bb370-hover:#102F27;
}
body[data-bbppm-theme="light"].bbppm-v370{--bb370-field:#fff;--bb370-hover:#FAFBFD}
body[data-bbppm-theme="dark"].bbppm-v370,
body[data-bbppm-theme="dark"].bbppm-v370 #wpcontent,
body[data-bbppm-theme="dark"].bbppm-v370 #wpbody-content{background:var(--bb-app-bg)!important;color:var(--bb-body)!important}
body[data-bbppm-theme="dark"].bbppm-v370 :is(.wrap,p,td,th,label){color:var(--bb-body)}
body[data-bbppm-theme="dark"].bbppm-v370 :is(h1,h2,h3,h4,.wp-heading-inline,.column-title strong a){color:var(--bb-heading)!important}
body[data-bbppm-theme="dark"].bbppm-v370 :is(.postbox,.card,.bbppm-layout-card,.bbppm-control-card,.bbppm-v370-filterbar,.bbppm-v370-record-title,.bbppm-v370-notices .notice){background:var(--bb-surface)!important;border-color:var(--bb-border)!important;color:var(--bb-body)!important}
body[data-bbppm-theme="dark"].bbppm-v370 :is(.postbox .postbox-header,#major-publishing-actions,.bbppm-native-table-scroll,.subsubsub a){background:var(--bb-surface-soft)!important;border-color:var(--bb-border)!important}
body[data-bbppm-theme="dark"].bbppm-v370 table.wp-list-table thead th,
body[data-bbppm-theme="dark"].bbppm-v370 table.widefat thead th{background:var(--bb-surface-soft)!important;border-color:var(--bb-border)!important;color:var(--bb-muted)!important}
body[data-bbppm-theme="dark"].bbppm-v370 table.wp-list-table tbody td,
body[data-bbppm-theme="dark"].bbppm-v370 table.widefat tbody td{border-color:var(--bb-border)!important;color:var(--bb-body)!important}
body[data-bbppm-theme="dark"].bbppm-v370 table.wp-list-table tbody tr:hover td{background:var(--bb370-hover)!important}
body[data-bbppm-theme="dark"].bbppm-v370 :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=time],input[type=search],select,textarea){background:var(--bb370-field)!important;border-color:#315149!important;color:var(--bb-heading)!important}
body[data-bbppm-theme="dark"].bbppm-v370 :is(input,textarea)::placeholder{color:#78958B!important}
body[data-bbppm-theme="dark"].bbppm-v370 .button:not(.button-primary):not(.page-title-action){background:var(--bb-surface-soft)!important;border-color:var(--bb-border)!important;color:var(--bb-heading)!important}
body[data-bbppm-theme="dark"].bbppm-v370 .subsubsub a.current{background:color-mix(in srgb,var(--bb-primary) 19%,var(--bb-surface))!important;border-color:color-mix(in srgb,var(--bb-primary) 45%,var(--bb-border))!important;color:#C7CAFF!important}
body[data-bbppm-theme="dark"].bbppm-v370 .bbppm-native-context,
body[data-bbppm-theme="dark"].bbppm-v370 :is(.description,.howto,small,.row-actions){color:var(--bb-muted)!important}

/* --------------------------------------------------------------------------
   4. SCREEN-SPECIFIC CONSOLIDATION
   -------------------------------------------------------------------------- */
/* Dashboard / priorities */
body.bbppm-v370-screen-dashboard .bbppm-priority-grid,
body.bbppm-v370-screen-dashboard .bbppm-overview-grid{gap:12px!important}
body.bbppm-v370-screen-dashboard .bbppm-priority-card,
body.bbppm-v370-screen-dashboard [class*="bbppm-kpi"]{min-width:0!important}
body.bbppm-v370-screen-dashboard .bbppm-priority-title h2{color:var(--bb-heading)!important}

/* Jobs + recurring + quote native lists */
body.bbppm-v370-screen-jobs .column-title,
body.bbppm-v370-screen-recurring .column-title,
body.bbppm-v370-screen-quotes .column-title{min-width:230px}
body.bbppm-v370-screen-jobs .bbppm-v370-data-row,
body.bbppm-v370-screen-recurring .bbppm-v370-data-row,
body.bbppm-v370-screen-quotes .bbppm-v370-data-row{--bb370-row-accent:var(--bb-primary)}

/* Schedule / dispatch / today */
body.bbppm-v370-screen-schedule :is(.bbppm-schedule-card,.bbppm-day-card,.bbppm-job-card),
body.bbppm-v370-screen-dispatch :is(.bbppm-dispatch-card,.bbppm-job-card),
body.bbppm-v370-screen-today :is(.bbppm-today-card,.bbppm-job-card){border-radius:var(--bb-radius)!important;border-color:var(--bb-border)!important;box-shadow:var(--bb-shadow-xs)!important}

/* Customers / Team cards */
body.bbppm-v370-screen-clients :is(.bbppm-customer-card,.bbppm-customer-summary),
body.bbppm-v370-screen-team :is(.bbppm-team-card,.bbppm-cleaner-card){border-radius:var(--bb-radius)!important;box-shadow:var(--bb-shadow-xs)!important}

/* Finance */
body.bbppm-v370-screen-invoices :is(.bbppm-money-card,.bbppm-invoice-card,.bbppm-finance-card),
body.bbppm-v370-screen-payments :is(.bbppm-money-card,.bbppm-payment-card,.bbppm-finance-card),
body.bbppm-v370-screen-profitability :is(.bbppm-profit-card,.bbppm-finance-card){border-radius:var(--bb-radius)!important;border-color:var(--bb-border)!important}
body.bbppm-v370-screen-invoices .bbppm-money-actions,
body.bbppm-v370-screen-payments .bbppm-money-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Access / organization / control screens */
body.bbppm-v370-screen-access :is(.bbppm-access-card,.bbppm-capability-card),
body.bbppm-v370-screen-organization :is(.bbppm-org-card,.bbppm-org-node),
body.bbppm-v370-screen-control .bbppm-control-card,
body.bbppm-v370-screen-interface .bbppm-builder-card{border-radius:var(--bb-radius)!important}

/* --------------------------------------------------------------------------
   5. JOB MESSAGING — FINAL COMPOSER / THREAD GEOMETRY
   -------------------------------------------------------------------------- */
.bbppm-v370-message-center{border-radius:var(--bb-radius)!important;isolation:isolate}
.bbppm-v370-message-center .bbppm-message-center-head{padding:15px 16px!important}
.bbppm-v370-message-center .bbppm-v3-thread{min-height:86px;max-height:360px!important;padding:14px 16px!important;overscroll-behavior:contain}
.bbppm-v370-message-center .bbppm-v3-message-form{padding:14px 16px 15px!important;gap:12px!important}
.bbppm-v370-message-center .bbppm-message-compose textarea{min-height:92px!important;width:100%!important}
.bbppm-v370-message-center .bbppm-message-form-actions{grid-template-columns:minmax(180px,280px) minmax(140px,180px)!important;justify-content:end!important}
.bbppm-v370-message-center .bbppm-message-send{width:100%!important}
body.bbppm-cleaner-app-page .bbppm-v370-message-center{margin-bottom:14px!important}
body.bbppm-cleaner-app-page .bbppm-v370-message-center .bbppm-message-form-actions{grid-template-columns:minmax(0,1fr) minmax(130px,170px)!important}

/* --------------------------------------------------------------------------
   6. ONE MOBILE SHELL: ADMIN + CLEANER + CUSTOMER
   -------------------------------------------------------------------------- */
@media(max-width:782px){
  :root{--bb-mobile-header-h:var(--bb370-mobile-header);--bb-mobile-nav-h:var(--bb370-mobile-nav)}
  body.bbppm-v370 h1{font-size:25px!important}
  body.bbppm-v370 h2{font-size:18px!important}

  /* Admin app */
  body.bbppm-native-shell.bbppm-v370 #wpcontent{margin:0!important;padding:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px) + 14px) 12px calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px) + 22px)!important}
  body.bbppm-v370 .bbppm-global-topbar{height:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px))!important;min-height:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px))!important;padding:env(safe-area-inset-top,0px) 10px 0!important;position:fixed!important;top:0!important;left:0!important;right:0!important;margin:0!important;border-radius:0!important}
  body.bbppm-v370 .bbppm-global-topbar .bbppm-topbar-left{min-width:0;flex:1}
  body.bbppm-v370 .bbppm-global-topbar .bbppm-top-search{min-width:0!important;width:100%!important;height:42px!important}
  body.bbppm-v370 .bbppm-global-topbar .bbppm-top-search kbd{display:none!important}
  body.bbppm-v370 .bbppm-topbar-actions{flex:0 0 auto!important}
  body.bbppm-v370 .bbppm-quick-menu,body.bbppm-v370 .bbppm-language-menu{display:none!important}
  body.bbppm-v370 .bbppm-mobile-nav{height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;min-height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;padding:5px 6px env(safe-area-inset-bottom,0px)!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
  body.bbppm-v370 .bbppm-mobile-nav a{min-height:58px!important;border-radius:12px!important;gap:3px!important}
  body.bbppm-v370 .bbppm-mobile-nav a small{font-size:9px!important;line-height:1.1!important;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  body.bbppm-v370 .bbppm-mobile-nav a .dashicons{font-size:21px!important;width:21px!important;height:21px!important}

  /* Native page geometry */
  body.bbppm-v370 .bbppm-native-page-head{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  body.bbppm-v370 .bbppm-native-page-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
  body.bbppm-v370 .bbppm-native-page-actions :is(.button,.page-title-action){width:100%!important;min-width:0!important;white-space:normal!important;text-align:center!important}
  body.bbppm-v370 .bbppm-v370-filterbar{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;padding:8px!important}
  body.bbppm-v370 .bbppm-v370-filterbar .actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
  body.bbppm-v370 .bbppm-v370-filterbar .actions select{width:100%!important;max-width:none!important}
  body.bbppm-v370 .bbppm-v370-searchbox{width:100%!important}
  body.bbppm-v370 .bbppm-v370-searchbox input[type=search]{width:100%!important;min-width:0!important}

  /* Record screen becomes single-column; action card is normal-flow on mobile. */
  body.bbppm-v370 #post-body.columns-2{display:block!important;margin:0!important}
  body.bbppm-v370 #postbox-container-1,body.bbppm-v370 #postbox-container-2{width:100%!important;margin:0!important}
  body.bbppm-v370 .bbppm-v370-publish-card{position:static!important}
  body.bbppm-v370 .bbppm-v370-record-title{padding:13px!important}
  body.bbppm-v370 .bbppm-v370-record-title #title{font-size:21px!important}
  body.bbppm-v370 .bbppm-v370-form-table,body.bbppm-v370 .bbppm-v370-form-table tbody,body.bbppm-v370 .bbppm-v370-form-table tr,body.bbppm-v370 .bbppm-v370-form-table th,body.bbppm-v370 .bbppm-v370-form-table td{display:block!important;width:100%!important}
  body.bbppm-v370 .bbppm-v370-form-table th{padding:8px 0 4px!important}
  body.bbppm-v370 .bbppm-v370-form-table td{padding:0 0 10px!important}

  /* WP list tables -> cards, but keep primary row information easy to scan. */
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table tr{border-radius:13px!important;margin:10px 0!important;box-shadow:0 1px 2px rgba(16,24,40,.05)!important}
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table td{padding:11px 12px 11px 40%!important;min-height:44px!important;overflow-wrap:anywhere}
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table td:before{width:34%!important;top:12px!important;font-size:9.5px!important}
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table td.column-title{padding-left:12px!important}
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table td.column-title:before{display:none!important}
  body.bbppm-v370 table.wp-list-table.bbppm-mobile-card-table .row-actions{display:flex!important;gap:7px!important;flex-wrap:wrap!important;padding-top:7px!important}

  /* Messaging */
  .bbppm-v370-message-center .bbppm-message-form-actions,
  body.bbppm-cleaner-app-page .bbppm-v370-message-center .bbppm-message-form-actions{grid-template-columns:1fr!important}
  .bbppm-v370-message-center .bbppm-message-send{min-height:46px!important}
  .bbppm-v370-message-center .bbppm-v3-thread{max-height:320px!important}

  /* Cleaner app: same 64 / 70 geometry; Clock action sits ABOVE the nav. */
  body.bbppm-cleaner-app-page .bbppm-cleaner-appbar{left:0!important;right:0!important;transform:none!important;width:100%!important;height:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px))!important;min-height:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px))!important;padding:env(safe-area-inset-top,0px) 14px 0!important;border-radius:0!important}
  body.bbppm-cleaner-app-page .bbppm-cleaner-app-main{padding-top:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px) + 12px)!important;padding-bottom:calc(var(--bb370-mobile-nav) + var(--bb370-sticky-action) + env(safe-area-inset-bottom,0px) + 26px)!important}
  body.bbppm-cleaner-app-page .bbppm-cleaner-bottom-nav{left:0!important;right:0!important;transform:none!important;width:100%!important;height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;min-height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;padding:5px 5px env(safe-area-inset-bottom,0px)!important}
  body.bbppm-cleaner-app-page .bbppm-cleaner-bottom-nav a{min-height:58px!important;border-radius:12px!important}
  body.bbppm-cleaner-app-page .bbppm-sticky-action{bottom:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;left:0!important;right:0!important;min-height:var(--bb370-sticky-action)!important;padding:9px 12px!important;background:color-mix(in srgb,var(--bb-surface) 95%,transparent)!important;backdrop-filter:blur(16px)!important;z-index:195!important}
  body.bbppm-cleaner-app-page .bbppm-sticky-action .primary{min-height:52px!important;border-radius:12px!important}
  html.bbppm-has-sticky-job-action body.bbppm-cleaner-app-page .bbppm-message-center{margin-bottom:0!important}

  /* Customer portal matches same chrome dimensions. */
  .bbppm-customer-app{padding:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px) + 14px) 12px calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px) + 22px)!important}
  .bbppm-portal-appbar{height:calc(var(--bb370-mobile-header) + env(safe-area-inset-top,0px))!important;padding:env(safe-area-inset-top,0px) 14px 0!important}
  .bbppm-portal-bottom-nav{height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;min-height:calc(var(--bb370-mobile-nav) + env(safe-area-inset-bottom,0px))!important;padding:5px 5px env(safe-area-inset-bottom,0px)!important}
  .bbppm-portal-bottom-nav a{min-height:58px!important;border-radius:12px!important}
}

@media(max-width:520px){
  :root{--bb370-card-pad:14px}
  body.bbppm-v370 .bbppm-native-page-actions{grid-template-columns:1fr!important}
  body.bbppm-v370 .bbppm-v370-filterbar .actions{grid-template-columns:1fr!important}
  body.bbppm-v370 .bbppm-v370-view-tabs{overflow:auto;flex-wrap:nowrap!important;scrollbar-width:none}
  body.bbppm-v370 .bbppm-v370-view-tabs::-webkit-scrollbar{display:none}
  body.bbppm-v370 .bbppm-v370-view-tabs a{white-space:nowrap}
  body.bbppm-cleaner-app-page .bbppm-job-section,
  .bbppm-customer-app .bbppm-portal-card{padding:14px!important}
  .bbppm-v370-message-center .bbppm-message-center-head{padding:12px 13px!important}
  .bbppm-v370-message-center .bbppm-v3-thread{padding:11px 12px!important}
  .bbppm-v370-message-center .bbppm-v3-message-form{padding:12px!important}
  .bbppm-thread-message{max-width:96%!important}
}

/* Large desktop: cleaner content width, no stretched forms/tables. */
@media(min-width:1440px){
  body.bbppm-native-shell.bbppm-v370 #wpcontent{padding-left:30px!important;padding-right:30px!important}
  body.bbppm-v370 .bbppm-native-workspace{padding-bottom:28px}
}

/* Print: no application chrome. */
@media print{
  .bbppm-global-topbar,.bbppm-app-sidebar,.bbppm-mobile-nav,.bbppm-cleaner-appbar,.bbppm-cleaner-bottom-nav,.bbppm-sticky-action,.bbppm-assistant-fab{display:none!important}
  body.bbppm-native-shell #wpcontent{margin:0!important;padding:0!important}
}

/* Accessibility preferences */
@media(prefers-contrast:more){
  body.bbppm-v370{--bb-border:currentColor}
  body.bbppm-v370 :is(.button,input,select,textarea,.postbox,.card){border-width:2px!important}
}
@media(prefers-reduced-motion:reduce){
  body.bbppm-v370 *,body.bbppm-cleaner-app-page *, .bbppm-customer-app *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
