 .hvacmp-shell{max-width:1480px;margin:24px 24px 40px 0;color:#142338}.hvacmp-top{display:flex;justify-content:space-between;align-items:center;margin:12px 0 26px}.hvacmp-top h1{font-size:30px;font-weight:750;letter-spacing:-1px;margin:4px 0;color:#10243c}.hvacmp-top h1 span{color:#1686e8}.hvacmp-top p{margin:0;color:#68788b;font-size:14px}.hvacmp-kicker{font-size:10px;letter-spacing:2px;font-weight:800;color:#1686e8}.hvacmp-version,.hvacmp-pill{border:1px solid #dce5ef;border-radius:30px;padding:7px 12px;color:#53677d;font-size:10px;font-weight:800;letter-spacing:1px;background:#fff}.hvacmp-hero{background:linear-gradient(115deg,#10243c,#173b5d 70%,#1769a4);border-radius:18px;padding:28px 34px;color:white;display:flex;align-items:center;justify-content:space-between;box-shadow:0 14px 36px #132c471c}.hvacmp-hero h2{color:white;font-size:25px;margin:7px 0}.hvacmp-hero p{color:#c7d7e8;margin:0}.hvacmp-hero-mark{font-size:34px;font-weight:900;letter-spacing:-2px;color:#d9eaff}.hvacmp-hero-mark span{color:#45b3ff}.hvacmp-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:14px;margin:18px 0}.hvacmp-stat,.hvacmp-panel{background:#fff;border:1px solid #e2e9f1;border-radius:15px;padding:19px;box-shadow:0 5px 20px #152c4408}.hvacmp-stat div{font-size:12px;color:#65768a;font-weight:650}.hvacmp-stat strong{display:block;font-size:31px;letter-spacing:-1px;margin:9px 0 3px;color:#142b45}.hvacmp-stat small,.hvacmp-muted{font-size:11px;color:#8492a2}.hvacmp-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hvacmp-panel{margin-bottom:16px}.hvacmp-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.hvacmp-panel h2{font-size:16px;margin:0;color:#172d46}.hvacmp-pill{background:#eff7ff;color:#1976c8;border:0}.hvacmp-pill.amber{background:#fff6e7;color:#a76b10}.hvacmp-actions{display:grid;gap:8px}.hvacmp-actions a{display:flex;align-items:center;gap:14px;text-decoration:none;padding:13px;border:1px solid #edf1f5;border-radius:11px;color:#52677c}.hvacmp-actions a:hover{border-color:#9dcdf6;background:#f8fbff}.hvacmp-actions a>b{font-size:12px;color:#1686e8}.hvacmp-actions a span{flex:1}.hvacmp-actions strong,.hvacmp-actions small{display:block}.hvacmp-actions strong{font-size:13px;color:#1b3048}.hvacmp-actions small{font-size:11px;color:#8492a2;margin-top:3px}.hvacmp-panel p{color:#61748a;font-size:13px;line-height:1.6}.hvacmp-inline{display:inline-block;margin:8px 0}.hvacmp-inline .button-primary{background:#167bd0;border-color:#167bd0;border-radius:7px;padding:4px 15px}.hvacmp-foot{font-size:11px;color:#8794a2;padding:8px 2px}.hvacmp-table-wrap{overflow:auto}.hvacmp-table{width:100%;border-collapse:collapse}.hvacmp-table th,.hvacmp-table td{padding:12px 10px;text-align:left;border-bottom:1px solid #edf1f5;font-size:12px}.hvacmp-table th{color:#687a8e;font-size:10px;letter-spacing:.7px;text-transform:uppercase}.hvacmp-status{display:inline-block;border-radius:20px;padding:4px 8px;background:#eaf7ef;color:#237b49;font-size:10px;font-weight:700}.hvacmp-status.demo{background:#fff3dc;color:#95620e}@media(max-width:1100px){.hvacmp-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:782px){.hvacmp-shell{margin-right:10px}.hvacmp-grid{grid-template-columns:repeat(2,1fr)}.hvacmp-columns{grid-template-columns:1fr}.hvacmp-hero{padding:22px}.hvacmp-hero-mark{display:none}}
.hvacmp-form-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:13px;margin:16px 0}.hvacmp-form-grid label{display:flex;flex-direction:column;gap:6px;color:#53677d;font-size:11px;font-weight:700}.hvacmp-form-grid input,.hvacmp-form-grid textarea{width:100%;max-width:none;border:1px solid #dbe4ee;border-radius:8px;padding:9px 10px;min-height:38px;color:#172d46;background:#fff}.hvacmp-form-grid textarea{min-height:82px}.hvacmp-form-grid .wide{grid-column:span 2}.hvacmp-form-message{font-size:12px;color:#1769a4;margin-left:8px}.hvacmp-module-links{display:flex;flex-wrap:wrap;gap:9px}.hvacmp-module-links a{display:inline-block;padding:10px 14px;border:1px solid #dfe8f1;border-radius:9px;text-decoration:none;color:#1769a4;font-weight:650;background:#f9fbfd}.hvacmp-module-links a:hover{background:#edf7ff;border-color:#9dcdf6}.hvacmp-empty{padding:12px;color:#8492a2}.hvacmp-table select{max-width:160px;font-size:11px}.hvacmp-table a{margin-left:5px;font-size:11px}@media(max-width:1000px){.hvacmp-form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media(max-width:782px){.hvacmp-form-grid{grid-template-columns:1fr}.hvacmp-form-grid .wide{grid-column:auto}}
.hvacmp-workorder-actions{min-width:360px;white-space:normal}.hvacmp-workorder-actions .button{margin:3px 2px;font-size:11px;line-height:1.6;min-height:28px;padding:2px 8px}.hvacmp-workorder-actions .hvacmp-review-report{border-color:#cbd8e5}.hvacmp-workorder-actions .hvacmp-submit-report{border-color:#9bc8ef;color:#135f9f}
.hvacmp-select-wide{display:flex;flex-direction:column;gap:7px;max-width:620px;color:#53677d;font-size:12px;font-weight:700}.hvacmp-select-wide select,.hvacmp-form-grid select{width:100%;max-width:none;min-height:39px;border:1px solid #dbe4ee;border-radius:8px;padding:7px 10px;background:#fff;color:#172d46}.hvacmp-profile-state{margin-top:16px;padding:15px;border:1px dashed #cbd8e5;border-radius:10px;color:#718196;font-size:13px}.hvacmp-profile-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 14px}.hvacmp-profile-heading h2{font-size:22px;margin:5px 0;color:#142b45}.hvacmp-profile-heading p{margin:0;color:#718196}.hvacmp-info-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin:14px 0 20px}.hvacmp-info-grid>div{padding:12px;border:1px solid #e5ebf2;border-radius:9px;background:#fbfcfe;min-width:0}.hvacmp-info-grid small,.hvacmp-info-grid strong{display:block;overflow-wrap:anywhere}.hvacmp-info-grid small{font-size:10px;color:#75869a;margin-bottom:5px}.hvacmp-info-grid strong{font-size:12px;color:#1b3048;font-weight:650}.hvacmp-profile-section{margin-top:22px;padding-top:16px;border-top:1px solid #e8edf3}.hvacmp-profile-section h3{font-size:15px;color:#173653;margin:0 0 12px}.hvacmp-profile-section .hvacmp-form-grid{padding:13px;background:#f8fafc;border-radius:10px}.hvacmp-profile-section .hvacmp-form-grid button{align-self:end;min-height:38px}.hvacmp-profile-section .hvacmp-form-message{align-self:center;font-size:12px;color:#1769a4}@media(max-width:1100px){.hvacmp-info-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media(max-width:782px){.hvacmp-info-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}}
.hvacmp-approval-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 10px}.hvacmp-approval-actions form{margin:0}.hvacmp-approval-actions .button{margin:0}

/* Admin forms: consistent grid sizing and dedicated full-width action rows. */
.hvacmp-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;column-gap:16px;row-gap:16px}
.hvacmp-form-grid>*{box-sizing:border-box;min-width:0}
.hvacmp-form-grid label{min-width:0;line-height:1.45}
.hvacmp-form-grid input,.hvacmp-form-grid select,.hvacmp-form-grid textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0}
.hvacmp-form-grid .wide{grid-column:1/-1}
.hvacmp-form-actions{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:4px 0 0;padding-top:4px}
.hvacmp-form-actions .hvacmp-form-message{margin:0;min-width:0;overflow-wrap:anywhere}
@media(max-width:1000px){.hvacmp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:782px){.hvacmp-form-grid{grid-template-columns:minmax(0,1fr);gap:14px}.hvacmp-form-grid .wide,.hvacmp-form-actions{grid-column:1}.hvacmp-form-actions{align-items:stretch;flex-direction:column}.hvacmp-form-actions .button{width:100%;white-space:normal}}

.hvacmp-create-details{margin-top:12px}.hvacmp-create-details>summary{display:inline-flex;align-items:center;cursor:pointer;list-style:none}.hvacmp-create-details>summary::-webkit-details-marker{display:none}.hvacmp-create-details[open]>summary{margin-bottom:16px}.hvacmp-portal-credentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border:1px solid var(--hvac-border,#d8dee8);border-radius:10px}.hvacmp-portal-credentials>strong,.hvacmp-portal-credentials>small{grid-column:1/-1}.hvacmp-portal-credentials label{display:flex;flex-direction:column;gap:5px}.hvacmp-portal-credentials label:first-of-type{flex-direction:row;align-items:center}@media(max-width:700px){.hvacmp-portal-credentials{grid-template-columns:1fr}}

/* Appointment calendar */
.hvacmp-calendar{margin-top:18px}.hvacmp-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.hvacmp-calendar-heading{display:flex;align-items:center;gap:12px}.hvacmp-calendar-heading h2{margin:0}.hvacmp-calendar-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.hvacmp-calendar-controls select{min-height:34px;max-width:190px}.hvacmp-calendar-range{margin:18px 0 12px;font-size:16px;font-weight:750;color:var(--hvac-ink,#17334b)}.hvacmp-calendar-grid{min-height:220px}.hvacmp-calendar-grid.is-week{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:8px;overflow-x:auto;padding-bottom:8px}.hvacmp-calendar-grid.is-day{display:grid;grid-template-columns:minmax(240px,1fr)}.hvacmp-cal-day{min-width:0;min-height:170px;padding:9px;border:1px solid var(--hvac-border,#dce3eb);border-radius:9px;background:var(--hvac-surface,#fff);transition:background .15s,border-color .15s}.hvacmp-cal-day.is-drop-target{border:2px dashed #1685a0;background:#eaf8fb}.hvacmp-cal-day.is-outside{opacity:.55}.hvacmp-cal-day-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:2px 3px 9px;border-bottom:1px solid var(--hvac-border,#e2e8ef);margin-bottom:8px}.hvacmp-cal-day-head strong{font-size:18px}.hvacmp-cal-day-head span{font-size:11px;color:var(--hvac-muted,#647789)}.hvacmp-cal-event{display:flex;width:100%;flex-direction:column;gap:3px;margin:6px 0;padding:8px 9px;border:0;border-left:4px solid #2984a0;border-radius:6px;background:#eaf4f8;color:#17334b;text-align:left;cursor:pointer;overflow-wrap:anywhere}.hvacmp-cal-event strong{font-size:11px;line-height:1.4}.hvacmp-cal-event span,.hvacmp-cal-event small{font-size:10px;line-height:1.4}.hvacmp-cal-event.status-completed,.hvacmp-cal-event.status-checked_closed{border-left-color:#26865c;background:#e9f6ee}.hvacmp-cal-event.status-cancelled{border-left-color:#89939c;background:#f0f2f4;opacity:.7}.hvacmp-cal-event.status-in_progress{border-left-color:#bd8120;background:#fff5df}.hvacmp-cal-event.is-dragging{opacity:.35}.hvacmp-cal-add-day{display:block;width:100%;padding:6px;border:1px dashed var(--hvac-border,#cbd6e1);border-radius:5px;background:transparent;color:var(--hvac-muted,#647789);font-size:10px;cursor:pointer}.hvacmp-calendar-grid.is-month .hvacmp-cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:5px}.hvacmp-cal-weekdays span{text-align:center;font-size:11px;font-weight:750;color:var(--hvac-muted,#647789)}.hvacmp-cal-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.hvacmp-calendar-grid.is-month .hvacmp-cal-day{min-height:125px;padding:5px}.hvacmp-calendar-grid.is-month .hvacmp-cal-day-head{padding-bottom:4px}.hvacmp-calendar-grid.is-month .hvacmp-cal-day-head span{display:none}.hvacmp-calendar-grid.is-month .hvacmp-cal-event{padding:4px;margin:3px 0}.hvacmp-calendar-grid.is-month .hvacmp-cal-event span,.hvacmp-calendar-grid.is-month .hvacmp-cal-event small{display:none}.hvacmp-calendar-grid.is-month .hvacmp-cal-event strong{font-size:9px}.hvacmp-calendar-grid.is-month .hvacmp-cal-add-day{font-size:9px;padding:3px}.hvacmp-calendar-help{margin:12px 0 0;color:var(--hvac-muted,#647789);font-size:11px;line-height:1.6}.hvacmp-calendar-editor{margin-top:12px;padding:14px}.hvacmp-calendar-editor>summary{display:inline-flex;cursor:pointer;list-style:none}.hvacmp-calendar-editor>summary::-webkit-details-marker{display:none}.hvacmp-calendar-editor[open]>summary{margin-bottom:12px}.hvacmp-calendar-editor form{margin-top:10px}.hvacmp-calendar-editor .hvacmp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hvacmp-calendar-editor label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px;font-weight:650}.hvacmp-calendar-editor input,.hvacmp-calendar-editor select,.hvacmp-calendar-editor textarea{box-sizing:border-box;width:100%;min-width:0}.hvacmp-calendar-editor .wide,.hvacmp-calendar-editor .hvacmp-form-actions{grid-column:1/-1}.hvacmp-calendar-editor .hvacmp-form-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.hvacmp-calendar-editor .hvacmp-form-message{font-size:12px}@media(max-width:782px){.hvacmp-calendar-toolbar{align-items:flex-start;flex-direction:column}.hvacmp-calendar-controls{width:100%}.hvacmp-calendar-controls button{flex:1}.hvacmp-calendar-controls select{flex:1;max-width:none}.hvacmp-calendar-grid.is-week{grid-template-columns:repeat(7,minmax(220px,1fr))}.hvacmp-cal-month-grid{gap:2px}.hvacmp-calendar-grid.is-month .hvacmp-cal-day{min-height:90px;padding:3px}.hvacmp-calendar-editor .hvacmp-form-grid{grid-template-columns:1fr}.hvacmp-calendar-editor .wide,.hvacmp-calendar-editor .hvacmp-form-actions{grid-column:1}}

/* Customer hub: shared by the company portal and WordPress management screen. */
.hvacmp-customer-hub{padding:18px 20px}.hvacmp-customer-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:18px}.hvacmp-customer-picker-wrap{min-width:0}.hvacmp-customer-picker-wrap h2{margin:4px 0 10px}.hvacmp-customer-picker-wrap .hvacmp-select-wide{display:block;max-width:680px;margin:0}.hvacmp-customer-picker-wrap select{min-height:46px;font-size:15px}.hvacmp-customer-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.hvacmp-customer-toolbar-actions .button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.hvacmp-customer-hub #hvacmp-customer-profile{margin-top:18px}.hvacmp-customer-hub-panel[hidden]{display:none!important}.hvacmp-customer-hub-panel{scroll-margin-top:20px}.hvacmp-customer-hub-panel .hvacmp-panel-head{align-items:center;gap:12px}.hvacmp-customer-hub-panel .hvacmp-panel-head .button{flex:0 0 auto}
@media(max-width:760px){.hvacmp-customer-hub{padding:14px}.hvacmp-customer-toolbar{grid-template-columns:minmax(0,1fr);gap:12px}.hvacmp-customer-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.hvacmp-customer-toolbar-actions .button{width:100%;white-space:normal;text-align:center;padding:9px 10px}.hvacmp-customer-hub-panel .hvacmp-panel-head{align-items:flex-start;flex-direction:column}}
@media(max-width:420px){.hvacmp-customer-toolbar-actions{grid-template-columns:minmax(0,1fr)}}

/* Typography system — native system fonts for crisp, predictable ERP/CRM rendering. */

.hvacmp-shell,.hvacmp-shell *,
.hvacmp-frontend-app,.hvacmp-frontend-app *,
.hvacmp-portal,.hvacmp-portal *,
.hvacmp-entry,.hvacmp-entry *,
body.hvacmp-portal-document{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important}
.hvacmp-shell,.hvacmp-frontend-app,.hvacmp-portal{font-size:14px;line-height:1.55}
.hvacmp-shell input,.hvacmp-shell select,.hvacmp-shell textarea,.hvacmp-frontend-app input,.hvacmp-frontend-app select,.hvacmp-frontend-app textarea,.hvacmp-portal input,.hvacmp-portal select,.hvacmp-portal textarea{font:inherit}


/* Beta.27: readable ERP typography and persistent WordPress navigation. */
body[class*="hvac"] #wpcontent,
body[class*="hvac"] #wpbody-content,
body[class*="hvac"] .hvacmp-shell,
body[class*="hvac"] .hvacmp-shell * {
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}
body[class*="hvac"] .hvacmp-shell { font-size:14px; line-height:1.55; }
body[class*="hvac"] .hvacmp-shell p,
body[class*="hvac"] .hvacmp-shell label,
body[class*="hvac"] .hvacmp-shell input,
body[class*="hvac"] .hvacmp-shell select,
body[class*="hvac"] .hvacmp-shell textarea,
body[class*="hvac"] .hvacmp-shell .hvacmp-table td { font-size:13px; line-height:1.55; }
body[class*="hvac"] .hvacmp-shell .hvacmp-muted,
body[class*="hvac"] .hvacmp-shell small { font-size:12px; line-height:1.5; }
body[class*="hvac"] .hvacmp-shell .hvacmp-kicker,
body[class*="hvac"] .hvacmp-shell .hvacmp-version,
body[class*="hvac"] .hvacmp-shell .hvacmp-pill { font-size:11px; letter-spacing:.6px; }
body[class*="hvac"] .hvacmp-shell .hvacmp-table th { font-size:11px; letter-spacing:.35px; }
body[class*="hvac"] #adminmenuback,
body[class*="hvac"] #adminmenuwrap {
  position:fixed;
  top:32px;
  bottom:0;
  height:auto;
}
body[class*="hvac"] #adminmenuback { z-index:150; }
body[class*="hvac"] #adminmenuwrap { z-index:160; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; }
body[class*="hvac"] #adminmenuwrap #adminmenu { padding-bottom:28px; }
@media screen and (max-width:782px) {
  body[class*="hvac"] .hvacmp-shell { margin:12px 10px 28px 0; }
  body[class*="hvac"] .hvacmp-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body[class*="hvac"] .hvacmp-stat, body[class*="hvac"] .hvacmp-panel { min-width:0; padding:14px; }
  body[class*="hvac"] .hvacmp-columns { grid-template-columns:minmax(0,1fr); }
  body[class*="hvac"] .hvacmp-top { align-items:flex-start; gap:10px; flex-wrap:wrap; }
  body[class*="hvac"] .hvacmp-top h1 { font-size:25px; line-height:1.2; letter-spacing:-.4px; }
}
@media screen and (max-width:480px) {
  body[class*="hvac"] .hvacmp-grid { grid-template-columns:minmax(0,1fr); }
  body[class*="hvac"] .hvacmp-shell { margin-right:8px; }
  body[class*="hvac"] .hvacmp-hero { padding:18px; }
  body[class*="hvac"] .hvacmp-stat strong { font-size:28px; }
}


/* Beta.27: reliable persistent desktop navigation and right-hand mobile drawer. */
body[class*="hvac"] #adminmenuback,
body[class*="hvac"] #adminmenuwrap {
  position: fixed !important;
  top: 32px !important;
  bottom: 0 !important;
  height: auto !important;
}
body[class*="hvac"] #adminmenuback { z-index: 150 !important; }
body[class*="hvac"] #adminmenuwrap {
  z-index: 160 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
body[class*="hvac"] #adminmenu { padding-bottom: 32px; }
@media screen and (max-width: 782px) {
  body[class*="hvac"] #adminmenuback,
  body[class*="hvac"] #adminmenuwrap {
    top: 46px !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: min( min(82vw, 300px), calc(100vw - 52px) ) !important;
    height: auto !important;
    position: fixed !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translateX(105%);
    transition: transform .22s ease;
    box-shadow: -12px 0 28px rgba(10, 25, 40, .20);
    will-change: transform;
  }
  body[class*="hvac"] #adminmenuback { z-index: 100000 !important; }
  body[class*="hvac"] #adminmenuwrap { z-index: 100001 !important; }
  body[class*="hvac"].wp-responsive-open #adminmenuback,
  body[class*="hvac"].wp-responsive-open #adminmenuwrap {
    transform: translateX(0);
  }
  body[class*="hvac"] #wpadminbar #wp-admin-bar-menu-toggle {
    position: absolute !important;
    right: 8px !important;
    left: auto !important;
    float: none !important;
  }
  body[class*="hvac"] #wpadminbar #wp-admin-bar-menu-toggle > .ab-item {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  body[class*="hvac"] #wpcontent { margin-left: 0 !important; }
  body[class*="hvac"] .hvacmp-shell { margin: 12px 10px 28px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body[class*="hvac"] #adminmenuwrap,
  body[class*="hvac"] #adminmenuback { transition: none !important; }
}


/* Beta.28: viewport-pinned navigation on desktop and a persistent mobile menu control. */
body.wp-admin[class*="hvac"] #adminmenuback,
body.wp-admin[class*="hvac"] #adminmenuwrap {
  position: fixed !important;
  top: 32px !important;
  bottom: 0 !important;
  height: calc(100dvh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
}
body.wp-admin[class*="hvac"] #adminmenuback { z-index: 1000 !important; }
body.wp-admin[class*="hvac"] #adminmenuwrap {
  z-index: 1001 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
body.wp-admin[class*="hvac"] #adminmenu { max-height: none !important; padding-bottom: 40px !important; }
@media screen and (max-width: 782px) {
  body.wp-admin[class*="hvac"] #wpadminbar #wp-admin-bar-menu-toggle {
    position: fixed !important;
    top: 0 !important;
    right: 8px !important;
    left: auto !important;
    z-index: 100010 !important;
    float: none !important;
  }
  body.wp-admin[class*="hvac"] #adminmenuback,
  body.wp-admin[class*="hvac"] #adminmenuwrap {
    position: fixed !important;
    top: 46px !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    height: calc(100dvh - 46px) !important;
    max-height: calc(100dvh - 46px) !important;
    width: min(82vw, 300px) !important;
    transform: translate3d(105%, 0, 0);
    transition: transform .22s ease;
  }
  body.wp-admin[class*="hvac"] #adminmenuback { z-index: 100000 !important; }
  body.wp-admin[class*="hvac"] #adminmenuwrap { z-index: 100001 !important; }
  body.wp-admin[class*="hvac"].wp-responsive-open #adminmenuback,
  body.wp-admin[class*="hvac"].wp-responsive-open #adminmenuwrap {
    transform: translate3d(0, 0, 0);
  }
}
/* SaaS plan editor */
.hvacmp-feature-toggle{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #dce3eb;border-radius:8px;background:#fff;font-weight:500}.hvacmp-feature-toggle input{margin:0}.hvacmp-panel h3{margin:22px 0 10px;padding-bottom:8px;border-bottom:1px solid #e5eaf0}.hvacmp-panel .hvacmp-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

.hvacmp-export-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}.hvacmp-export-toolbar .hvacmp-muted{font-size:12px;color:#64748b}
@media print{.hvacmp-export-toolbar{display:none!important}}

/* Beta.35: WordPress navigation becomes a drawer in landscape phones too. */
@media screen and (max-height:600px) and (orientation:landscape) {
 body.wp-admin[class*="hvac"] #wpadminbar #wp-admin-bar-menu-toggle{position:fixed!important;top:0!important;right:8px!important;left:auto!important;z-index:100010!important}
 body.wp-admin[class*="hvac"] #adminmenuback,body.wp-admin[class*="hvac"] #adminmenuwrap{position:fixed!important;top:32px!important;right:0!important;left:auto!important;bottom:0!important;height:calc(100dvh - 32px)!important;max-height:calc(100dvh - 32px)!important;width:min(78vw,280px)!important;transform:translate3d(105%,0,0);transition:transform .22s ease}
 body.wp-admin[class*="hvac"] #adminmenuback{z-index:100000!important}
 body.wp-admin[class*="hvac"] #adminmenuwrap{z-index:100001!important;overflow-x:hidden!important;overflow-y:auto!important}
 body.wp-admin[class*="hvac"].wp-responsive-open #adminmenuback,body.wp-admin[class*="hvac"].wp-responsive-open #adminmenuwrap{transform:translate3d(0,0,0)}
 body.wp-admin[class*="hvac"] #wpcontent{margin-left:0!important}
}

.hvacmp-contractor-fields{padding:16px;border:1px solid #d8e2eb;border-radius:12px;background:#f7fafc;margin:8px 0}.hvacmp-contractor-fields>strong{display:block;margin-bottom:12px;color:#173b5d}.hvacmp-contractor-fields[hidden]{display:none!important}.hvacmp-contractor-fields small{display:block;margin-top:10px;color:#586b7d}
.hvacmp-branding-editor{padding:18px;border:1px solid #dce7ee;border-radius:10px;background:#f8fbfd;margin:8px 0 18px}.hvacmp-branding-editor h3{margin:0 0 12px;color:#183b53}.hvacmp-branding-editor .hvacmp-logo-preview{display:flex;align-items:center;min-height:72px;margin:8px 0 12px;padding:10px;background:#fff;border:1px dashed #cbd9e2;border-radius:8px}.hvacmp-branding-editor .description{margin:10px 0 0;color:#718494;font-size:12px}
/* Branded document template designer */
.hvacmp-document-builder{margin-top:18px}.hvacmp-document-builder .hvacmp-panel-head p{margin:5px 0 0;color:#718196;font-size:12px}.hvacmp-template-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px;background:#f7fafc;border:1px solid #e2e9ef;border-radius:9px}.hvacmp-template-toolbar label,.hvacmp-template-form>label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;color:#43566b}.hvacmp-template-toolbar select{min-width:260px;min-height:38px}.hvacmp-template-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(320px,1fr);gap:18px;align-items:start}.hvacmp-template-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hvacmp-template-form input:not([type=checkbox]):not([type=color]),.hvacmp-template-form select,.hvacmp-template-form textarea{box-sizing:border-box;width:100%;max-width:none;min-height:38px;border:1px solid #d5dfe8;border-radius:7px;padding:8px;background:#fff}.hvacmp-template-form input[type=color]{width:100%;height:38px;border:1px solid #d5dfe8;border-radius:7px;background:#fff}.hvacmp-template-form .wide{grid-column:1/-1}.hvacmp-template-form fieldset{border:1px solid #dce5ed;border-radius:8px;padding:12px}.hvacmp-template-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hvacmp-template-sections label,.hvacmp-template-check{display:flex!important;flex-direction:row!important;align-items:center;gap:7px;font-weight:500!important}.hvacmp-template-form .hvacmp-form-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hvacmp-template-form .hvacmp-form-message{font-size:12px;color:#28704f}.hvacmp-template-preview-wrap{min-width:0;padding:12px;background:#eef2f5;border:1px solid #dce4ea;border-radius:9px;overflow:auto}.hvacmp-template-preview-label{text-align:center;font-size:11px;font-weight:750;color:#687b8c;margin-bottom:10px}.hvacmp-document-page{box-sizing:border-box;width:100%;max-width:440px;min-height:560px;margin:0 auto;padding:24px;background:#fff;box-shadow:0 2px 12px #1b30481c;color:#172b43;font:9px Arial,sans-serif}.hvacmp-document-page.is-landscape{max-width:100%;min-height:390px}.hvacmp-document-page header{display:flex;align-items:center;gap:10px;border-bottom:3px solid var(--doc-accent);padding-bottom:10px}.hvacmp-document-page header img{max-width:75px;max-height:42px;object-fit:contain}.hvacmp-document-page header div{flex:1;min-width:0}.hvacmp-document-page header strong{font-size:12px}.hvacmp-document-page header small{display:block;margin-top:4px;color:#647789;overflow-wrap:anywhere}.hvacmp-document-page header>b{color:var(--doc-accent);font-size:10px}.hvacmp-document-page h1{font-size:17px;margin:18px 0 4px}.hvacmp-document-page .doc-subtitle{color:#718196;margin:0 0 14px}.hvacmp-document-page section{margin:14px 0;break-inside:avoid}.hvacmp-document-page section h3{font-size:10px;color:var(--doc-accent);border-bottom:1px solid #dce4ea;padding-bottom:5px}.hvacmp-document-page p{line-height:1.5}.hvacmp-document-page table{width:100%;border-collapse:collapse;font-size:8px}.hvacmp-document-page th,.hvacmp-document-page td{padding:5px;border:1px solid #dce4ea;text-align:left}.hvacmp-document-page .totals{width:60%;margin-left:auto}.hvacmp-document-page .totals td:last-child,.hvacmp-document-page .totals th:last-child{text-align:right}.hvacmp-document-page .sample-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hvacmp-document-page .sample-sign{display:flex;justify-content:space-between;margin-top:22px}.hvacmp-document-page footer{margin-top:20px;padding-top:8px;border-top:1px solid #dce4ea;color:#647789;font-size:7px;line-height:1.5;white-space:pre-wrap}@media(max-width:900px){.hvacmp-template-layout{grid-template-columns:1fr}.hvacmp-template-preview{max-width:100%}}@media(max-width:600px){.hvacmp-template-form{grid-template-columns:1fr}.hvacmp-template-form .wide{grid-column:1}.hvacmp-template-toolbar{align-items:stretch;flex-direction:column}.hvacmp-template-toolbar select{min-width:0;width:100%}.hvacmp-template-toolbar button{width:100%}.hvacmp-template-sections{grid-template-columns:1fr}}

/* Beta.41: compact document designer controls and richer tenant-owned layouts. */
.hvacmp-template-content-settings{border:1px solid #dce5ed;border-radius:9px;padding:0;background:#fff;min-width:0}
.hvacmp-template-content-settings>summary{display:flex;align-items:center;gap:10px;justify-content:space-between;cursor:pointer;list-style:none;padding:12px 14px;font-weight:700;color:#20384e}
.hvacmp-template-content-settings>summary::-webkit-details-marker{display:none}
.hvacmp-template-content-settings>summary:after{content:'＋';font-size:17px;color:#176b83}
.hvacmp-template-content-settings[open]>summary:after{content:'−'}
.hvacmp-template-content-settings>summary span{font-size:11px;font-weight:400;color:#718196;text-align:right}
.hvacmp-template-content-settings>fieldset,.hvacmp-template-content-settings>.hvacmp-template-design-grid{margin:0 12px 12px;padding:12px;border:0;border-top:1px solid #edf1f4}
.hvacmp-template-content-settings>label{display:block;margin:0 12px 12px}
.hvacmp-template-content-settings textarea{min-height:76px;resize:vertical}
.hvacmp-template-design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hvacmp-document-page.doc-font-compact{font-size:8px}.hvacmp-document-page.doc-font-normal{font-size:9px}.hvacmp-document-page.doc-font-large{font-size:11px}
.hvacmp-document-page.doc-density-compact section{margin:7px 0}.hvacmp-document-page.doc-density-comfortable section{margin:12px 0}.hvacmp-document-page.doc-density-spacious section{margin:19px 0}
.hvacmp-document-page.doc-header-centered header{justify-content:center;text-align:center;flex-wrap:wrap}.hvacmp-document-page.doc-header-centered header div{flex:0 1 100%}.hvacmp-document-page.doc-header-centered header img{margin:auto}.hvacmp-document-page.doc-header-minimal header{border-bottom:1px solid var(--doc-accent);padding-bottom:5px}
.hvacmp-document-page.doc-heading-filled section h3{background:color-mix(in srgb,var(--doc-accent) 10%,white);padding:6px 8px;border:0;border-left:3px solid var(--doc-accent)}.hvacmp-document-page.doc-heading-minimal section h3{border:0;padding-bottom:2px}
.hvacmp-document-page.doc-margin-narrow{padding:14px}.hvacmp-document-page.doc-margin-wide{padding:34px}
.hvacmp-document-page:not(.doc-show-section-titles) section h3{display:none}
.hvacmp-document-page .doc-custom-text p{white-space:pre-wrap}
@media(max-width:600px){.hvacmp-template-design-grid{grid-template-columns:1fr}.hvacmp-template-content-settings>summary{align-items:flex-start;flex-direction:column}.hvacmp-template-content-settings>summary span{text-align:left}}

/* Company document designer: reusable custom content blocks and section ordering. */
.hvacmp-custom-block-editor{border:1px solid #d9e2e9;border-radius:8px;padding:12px;margin:10px 0;background:#fbfcfd}.hvacmp-custom-block-head,.hvacmp-section-order-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.hvacmp-custom-block-head{margin-bottom:10px}.hvacmp-custom-block-editor label{display:block;margin:8px 0}.hvacmp-custom-block-editor input,.hvacmp-custom-block-editor select,.hvacmp-custom-block-editor textarea{width:100%;max-width:100%;margin-top:4px}.hvacmp-section-order{margin-top:12px;padding:12px;border:1px solid #d9e2e9;border-radius:8px}.hvacmp-section-order-row{padding:6px 0;border-bottom:1px solid #edf1f4}.hvacmp-section-order-row span{flex:1}.doc-writing-line{height:24px;border-bottom:1px solid #9aa9b5;margin:3px 0}.doc-writing-block{break-inside:avoid}

/* beta.44: compact section selector and commercial line-item controls */
.hvacmp-document-builder .hvacmp-template-content-settings>summary{padding:11px 14px;font-size:13px;line-height:1.35}
.hvacmp-document-builder .hvacmp-template-content-settings>summary span{display:block;margin-top:3px;font-size:11px;font-weight:400;color:#64748b}
.hvacmp-document-builder .hvacmp-sections-fieldset{margin:12px 0;padding:0;border:0}
.hvacmp-document-builder .hvacmp-template-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hvacmp-document-builder .hvacmp-section-choice{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 10px;border:1px solid #dce4ea;border-radius:8px;background:#fff;font-size:12px;font-weight:500}
.hvacmp-document-builder .hvacmp-section-choice input{margin:0;flex:0 0 auto}
.hvacmp-document-builder .hvacmp-section-choice span{line-height:1.3}
.hvacmp-document-builder .hvacmp-pricing-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:12px}
.hvacmp-document-builder .hvacmp-pricing-lines{min-width:0}
.hvacmp-document-builder .hvacmp-pricing-lines-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.hvacmp-document-builder .hvacmp-pricing-line{display:grid;grid-template-columns:minmax(150px,2fr) minmax(75px,.7fr) minmax(75px,.7fr) minmax(100px,1fr) minmax(90px,.9fr) 24px;gap:7px;align-items:center;margin:7px 0}
.hvacmp-document-builder .hvacmp-pricing-line input{width:100%;min-width:0}
.hvacmp-document-builder .hvacmp-pricing-line strong{font-size:12px;text-align:right;white-space:nowrap}
.hvacmp-document-builder .hvacmp-pricing-settings .description{margin:0;color:#64748b}
@media(max-width:900px){.hvacmp-document-builder .hvacmp-template-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.hvacmp-document-builder .hvacmp-pricing-line{grid-template-columns:minmax(0,1fr) minmax(70px,.45fr) minmax(75px,.55fr);padding:9px;border:1px solid #e2e8f0;border-radius:8px}.hvacmp-document-builder .hvacmp-pricing-line [data-price-description]{grid-column:1/-1}.hvacmp-document-builder .hvacmp-pricing-line strong{grid-column:1/3;text-align:left}}
@media(max-width:560px){.hvacmp-document-builder .hvacmp-template-sections,.hvacmp-document-builder .hvacmp-pricing-settings{grid-template-columns:1fr}.hvacmp-document-builder .hvacmp-section-choice{min-height:38px}}
/* Commercial quotation workspace */
.hvacmp-quote-workspace{margin-top:22px}.hvacmp-quote-toolbar,.hvacmp-quote-lines-head{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 0}.hvacmp-quote-toolbar label{min-width:min(100%,360px);flex:1}.hvacmp-quote-lines-head h3{margin:0}.hvacmp-quote-lines{display:grid;gap:9px;margin:12px 0 20px}.hvacmp-quote-line{display:grid;grid-template-columns:minmax(220px,2.5fr) minmax(90px,.7fr) minmax(90px,.7fr) minmax(130px,1fr) minmax(100px,.8fr) 38px;gap:9px;align-items:end;padding:12px;border:1px solid var(--hvacmp-border,#dce4ea);border-radius:10px;background:var(--hvacmp-surface,#fff)}.hvacmp-quote-line label{display:grid;gap:5px;font-size:12px;color:var(--hvacmp-muted,#657789)}.hvacmp-quote-line input{width:100%;min-width:0}.hvacmp-quote-line strong{padding:10px 0;text-align:right;white-space:nowrap}.hvacmp-quote-commercial-fields{margin-top:18px}.hvacmp-quote-totals{max-width:470px;margin:18px 0 18px auto;padding:14px;border:1px solid var(--hvacmp-border,#dce4ea);border-radius:10px;background:var(--hvacmp-surface,#fff)}.hvacmp-quote-totals>div{display:flex;justify-content:space-between;gap:16px;padding:6px 0}.hvacmp-quote-totals .q-grand-total{margin-top:8px;padding-top:12px;border-top:2px solid var(--hvacmp-accent,#176b83);font-size:17px}.hvacmp-quote-list{margin-top:22px}.hvacmp-quote-list h3{margin-bottom:10px}@media(max-width:900px){.hvacmp-quote-line{grid-template-columns:repeat(2,minmax(0,1fr))}.hvacmp-quote-line .q-desc{grid-column:1/-1}.hvacmp-quote-line strong{text-align:left}.hvacmp-quote-line button{justify-self:end}}@media(max-width:520px){.hvacmp-quote-line{grid-template-columns:1fr 1fr}.hvacmp-quote-line label:first-child{grid-column:1/-1}.hvacmp-quote-line label:nth-child(4){grid-column:1/-1}}

.hvacmp-member-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin-top:10px}.hvacmp-member-permission-grid label{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #dbe5ec;border-radius:8px;background:#f8fbfc;font-size:12px}.hvacmp-member-permission-grid.compact{min-width:230px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.hvacmp-member-permission-grid.compact label{padding:5px 7px;font-size:11px}.hvacmp-member-permissions{padding:12px;border:1px solid #dce6ed;border-radius:10px;background:#fbfdfe}.hvacmp-inline-permission input{margin:0}@media(max-width:760px){.hvacmp-member-permission-grid.compact{min-width:190px;grid-template-columns:1fr}}
