
/* ==========================================================
   CasaPratique V28.8 — FIELD CWV ZERO SHIFT
   Targets Cloudflare field outliers:
   #main > section.ct-app and html > body > div
   ========================================================== */
:root{
  --cp-header-h-desktop:72px;
  --cp-header-h-mobile:62px;
}

/* Header/footer are now present in initial HTML.
   Keep their exact first-paint geometry deterministic. */
[data-site-header],
.cp-static-header-v288{
  display:block;
  min-height:var(--cp-header-h-desktop)!important;
}
.site-header.v24x-header,
.site-header.v24x-header .header-inner{
  min-height:var(--cp-header-h-desktop)!important;
}
.cp-static-header-v288 .brand-v24 img{
  width:100%;
  height:auto;
  aspect-ratio:620/319;
}
[data-site-footer],
.cp-static-footer-v288{
  display:block;
  min-height:220px;
}
.cp-bottom-nav-static-v288{
  contain:layout paint;
}

/* CasaTech field CLS hardening */
.ct-app{
  contain:layout paint;
  overflow:clip;
}
.ct-picker{
  align-items:stretch;
}
.ct-card{
  min-height:132px;
  contain:layout paint;
}
.ct-card .icon{
  width:44px!important;
  height:44px!important;
  min-width:44px;
  min-height:44px;
  contain:strict;
}
.ct-card .icon iconify-icon{
  display:block;
  width:24px;
  height:24px;
}
.ct-card h2{
  min-height:1.35em;
}
.ct-card p{
  min-height:2.9em;
}
.ct-workspace{
  min-height:430px;
  contain:layout paint;
}
.ct-panel.active{
  min-height:428px;
}
.ct-result{
  contain:layout paint;
}

/* Result/share UI is inserted after results; reserve its control geometry
   and never alter the layout above the result. */
.cp-result-share-inline-wrap-v283{
  min-height:42px;
}

/* Avoid width geometry jumps when overlays open. */
html{scrollbar-gutter:stable}

@media(max-width:930px){
  [data-site-header],
  .cp-static-header-v288{
    min-height:var(--cp-header-h-desktop)!important;
  }
}
@media(max-width:760px){
  [data-site-header],
  .cp-static-header-v288,
  .site-header.v24x-header,
  .site-header.v24x-header .header-inner{
    min-height:var(--cp-header-h-mobile)!important;
  }
}
@media(max-width:620px){
  .ct-card{
    min-height:92px;
  }
  .ct-card .icon{
    width:38px!important;
    height:38px!important;
    min-width:38px;
    min-height:38px;
  }
  .ct-card .icon iconify-icon{
    width:21px;
    height:21px;
  }
  .ct-card h2{min-height:1.35em}
  .ct-card p{min-height:0}
  .ct-workspace{min-height:500px}
  .ct-panel.active{min-height:498px}
}
