/* InspectionPress v222 — site-wide PAYG readability and navigation contract.
   Source of truth for the PUBLIC, AUTHENTICATED, and SUPPORT headers.
   Do not change admin or native form-writer layouts. */
:root { --ip222-nav-text: 17px; --ip222-menu-text: 17px; --ip222-body-text: 17px; --ip222-caption-text: 15px; }
/* Across all PAYG surfaces, readable content without smashing larger titles. */
body.ps-body, body.ip193 { font-size:var(--ip222-body-text); }
body.ps-body main, body.ip193 .ip193-main, body.ip193 .ip193-sidebar,
body main.frame { font-size:var(--ip222-body-text); }
body.ps-body main p, body.ps-body main li, body.ip193 .ip193-main p,
body.ip193 .ip193-main li, body main.frame p, body main.frame li {
  line-height:1.65;
}
body main.frame input:not([type=checkbox]):not([type=radio]),
body main.frame select, body main.frame textarea,
body.ip193 .ip193-main input:not([type=checkbox]):not([type=radio]),
body.ip193 .ip193-main select, body.ip193 .ip193-main textarea {
  font-size:16px; line-height:1.5;
}
body main.frame .small, body.ps-body main small, body.ip193 main small {
  font-size:var(--ip222-caption-text);
}
/* Unified menu type across the three distinct page shells. */
body.ps-body #ps-header #ps-primary-nav > a,
body.ps-body #ps-header #ps-primary-nav > details > summary,
body.ps-body #ps-header .ps-menu-toggle,
body.ps-body #ps-header .ps105-account-items :is(a,button),
body.ps-body #ps-header .ip195-support-list :is(a,button),
header.ip42-header .ip42-nav > a,
header.ip42-header .ip42-nav > details > summary,
header.ip42-header .ip42-menu-items :is(a,button),
header.ip42-header .ip195-support-list :is(a,button),
header.ip42-header .ip85-mobile-toggle,
header.ip42-header .ip85-mobile-menu :is(a,button,summary),
body.ip193 header.ip193-top .ip193-toplinks > a,
body.ip193 header.ip193-top .ip193-toplinks > details > summary,
body.ip193 header.ip193-top .ip195-support-list :is(a,button),
body.ip193 header.ip193-top .ip194-header-tools button {
  font-size:var(--ip222-nav-text)!important;
  line-height:1.35!important;
  letter-spacing:normal;
}
body.ps-body #ps-header #ps-primary-nav > a,
body.ps-body #ps-header #ps-primary-nav > details > summary,
body.ip193 header.ip193-top .ip193-toplinks > a,
header.ip42-header .ip42-nav > a,
header.ip42-header .ip42-nav > details > summary {
  min-height:44px;
  gap:8px;
  white-space:nowrap;
  align-items:center;
}
body.ps-body #ps-header .ip195-support-list :is(a,button),
header.ip42-header .ip195-support-list :is(a,button),
body.ip193 header.ip193-top .ip195-support-list :is(a,button) { min-height:46px; }
body.ps-body #ps-header #ps-primary-nav i,
header.ip42-header .ip42-nav i,
body.ip193 header.ip193-top .ip193-toplinks i { font-size:1em; }
/* Public desktop header: stay on one row; menu swaps to a true drawer before wrapping. */
@media(min-width:1200px) {
 body.ps-body #ps-header .ps-toprow { display:flex!important; flex-wrap:nowrap!important; align-items:center!important; gap:16px!important; }
 body.ps-body #ps-header .ps-brand { min-width:0; flex:0 1 275px; }
 body.ps-body #ps-header .ps-nav { display:flex!important; flex:1 1 auto; flex-wrap:nowrap!important; justify-content:flex-end; align-items:center!important; gap:clamp(10px,1.1vw,18px)!important; min-width:0; margin-left:auto; }
 body.ps-body #ps-header .ps-nav > a { flex:0 0 auto; }
 body.ps-body #ps-header .ps-menu-toggle { display:none!important; }
 body.ps-body #ps-header .ps-theme-toggle { flex:0 0 44px; width:44px; height:44px; margin:0!important; }
}
/* Guest actions: one two-part control on all page types; equal-height, clear hierarchy. */
.ip222-guest-actions { display:inline-flex; align-items:stretch; flex:0 0 auto; white-space:nowrap; vertical-align:middle; }
.ip222-guest-actions > a {
 display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:8px!important;
 min-height:46px!important; padding:10px 15px!important; margin:0!important;
 text-decoration:none!important; font-size:var(--ip222-nav-text)!important;
 font-weight:750!important; line-height:1.3!important; border-radius:0!important;
 transition:filter .12s ease, box-shadow .12s ease;
}
.ip222-guest-actions > a:focus-visible { outline:3px solid #0c6fd7; outline-offset:2px; position:relative; z-index:1; }
.ip222-guest-actions > a:hover { filter:brightness(.94); }
.ip222-guest-actions > .ip222-guest-create,
body.ps-body #ps-header .ip222-guest-create,
header.ip42-header .ip222-guest-create,
body.ip193 header.ip193-top .ip222-guest-create {
 color:#fff!important; background:#146fe0!important; border:1px solid #146fe0!important;
}
.ip222-guest-actions > .ip222-guest-login,
body.ps-body #ps-header .ip222-guest-login,
header.ip42-header .ip222-guest-login,
body.ip193 header.ip193-top .ip222-guest-login {
 color:#fff!important; background:#168457!important; border:1px solid #168457!important;
}
.ip222-guest-actions > a i { color:inherit!important; font-size:1em!important; }
/* Auth header: same 17px menu as public pages; preserve identity and sticky tabs. */
header.ip42-header .head { gap:clamp(12px,1.9vw,24px); }
header.ip42-header .ip42-nav { gap:clamp(11px,1.3vw,19px); }
header.ip42-header .ip42-nav > a,
header.ip42-header .ip42-nav > details > summary { font-weight:700; }
body.ip99-property-view .ip159-section-links :is(a,button),
body.ip99-property-view .ip149-property-nav :is(a,button),
body.ip99-property-view .ip200-property-tabs :is(a,button) {
 font-size:16px!important; line-height:1.35!important;
}
body main.frame :is(th,td) { font-size:16px; line-height:1.5; }
body main.frame .panel :is(label,legend) { font-size:16px; }
/* Support docs: same nav scale, without expanding the title or breaking sidebar. */
body.ip193 .ip193-toplinks { gap:clamp(12px,1.4vw,20px); align-items:center; }
body.ip193 .ip193-toplinks > a, body.ip193 .ip193-toplinks > details > summary { white-space:nowrap; }
body.ip193 .ip193-sidebar :is(a,button) { font-size:16px; line-height:1.5; }
body.ip193 .ip193-main :is(button:not(.ip193-icon-btn),a.ip193-button) { font-size:16px; }
/* Prefer a compact public mobile header over squashing links or shrinking their text. */
@media(max-width:1199px) {
 body.ps-body #ps-header .ps-toprow {
   display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
   align-items:center!important; gap:0 12px!important; flex-wrap:initial!important;
   padding:12px clamp(14px,3vw,25px)!important; min-height:74px!important; height:auto!important;
 }
 body.ps-body #ps-header .ps-brand { grid-column:1!important; grid-row:1!important; display:flex!important; align-items:center!important; min-width:0!important; max-width:100%!important; margin:0!important; }
 body.ps-body #ps-header .ps-menu-toggle { grid-column:2!important;grid-row:1!important;display:inline-flex!important; position:static!important; float:none!important;justify-self:end!important;align-self:center!important;margin:0!important; min-height:46px!important; }
 body.ps-body #ps-header #ps-primary-nav {grid-column:1 / -1!important;grid-row:2!important;min-width:0!important;margin:0!important;}
 body.ps-body #ps-header #ps-primary-nav:not(.ps-nav-open) {display:none!important;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;padding:14px 0 6px!important;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open > a,body.ps-body #ps-header #ps-primary-nav.ps-nav-open > details {width:100%!important;max-width:100%!important;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open > a {justify-content:flex-start;padding:10px 12px!important;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open .ip222-guest-actions {width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;white-space:normal;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open .ip222-guest-actions>a {font-size:16px!important;padding-inline:8px!important;min-width:0;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open .ps-theme-toggle {align-self:flex-start;margin:4px 0 0!important;}
 body.ps-body #ps-header #ps-primary-nav.ps-nav-open .ip195-support-list {position:static!important;box-shadow:none!important;max-width:100%!important;}
}
@media(max-width:850px) {
 header.ip42-header .ip85-mobile-menu a,header.ip42-header .ip85-mobile-menu button,header.ip42-header .ip85-mobile-menu summary {font-size:17px!important;min-height:45px;}
 header.ip42-header .ip85-mobile-menu {padding-bottom:calc(12px + env(safe-area-inset-bottom));}
 .ip145-auth-guest-nav.ip145-open .ip222-guest-actions { display:grid;grid-template-columns:1fr 1fr;width:100%;white-space:normal;}
 .ip145-auth-guest-nav.ip145-open .ip222-guest-actions > a {font-size:16px!important; min-width:0; padding:12px 8px!important;}
}
@media(max-width:500px){:root{--ip222-nav-text:16px;--ip222-body-text:16px;--ip222-caption-text:14px}}
@media(prefers-reduced-motion:reduce){.ip222-guest-actions > a {transition:none}}
