
.ifp-wa-shop-planner{
  --ifp-wa-sp-navy:#0b2948;
  --ifp-wa-sp-blue:#1769d2;
  --ifp-wa-sp-blue-dark:#0f58ad;
  --ifp-wa-sp-text:#263b4d;
  --ifp-wa-sp-muted:#4f6477;
  --ifp-wa-sp-border:#dce5ee;
  --ifp-wa-sp-soft:#f6f9fc;
  --ifp-wa-sp-green:#2c6b45;
  --ifp-wa-sp-shadow:0 14px 38px rgba(11,41,72,.08);
  margin:0 0 22px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:18px;
  background:#fff;
  color:var(--ifp-wa-sp-text);
  box-shadow:var(--ifp-wa-sp-shadow);
  overflow:hidden;
}
.ifp-wa-shop-planner *,
.ifp-wa-shop-planner *::before,
.ifp-wa-shop-planner *::after{box-sizing:border-box}
.ifp-wa-shop-planner [hidden]{display:none!important}

/* Optional compact entry point. */
.ifp-wa-shop-planner__launcher{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:20px 22px;
  background:
    radial-gradient(circle at 95% 0%,rgba(23,105,210,.09),transparent 38%),
    linear-gradient(135deg,#fff 0%,#f8fbff 100%);
}
.ifp-wa-shop-planner__launcher-copy{min-width:0;max-width:760px}
.ifp-wa-shop-planner__eyebrow{
  display:block;
  margin:0 0 5px;
  color:var(--ifp-wa-sp-blue);
  font-size:10px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner__launcher h3,
.ifp-wa-shop-planner__intro h3{
  margin:0;
  color:var(--ifp-wa-sp-navy);
  font-size:clamp(1.05rem,1.8vw,1.28rem);
  line-height:1.2;
}
.ifp-wa-shop-planner__launcher p,
.ifp-wa-shop-planner__intro p{
  margin:7px 0 0;
  color:var(--ifp-wa-sp-muted);
  font-size:12px;
  line-height:1.5;
}
.ifp-wa-shop-planner__launcher-points{
  display:flex;
  flex-wrap:wrap;
  gap:7px 14px;
  margin-top:11px;
  color:#466078;
  font-size:10px;
  font-weight:700;
}
.ifp-wa-shop-planner__launch-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex:0 0 auto;
  min-height:44px;
  padding:10px 16px;
  border:0;
  border-radius:11px;
  background:var(--ifp-wa-sp-navy);
  color:#fff;
  box-shadow:0 8px 18px rgba(11,41,72,.16);
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.ifp-wa-shop-planner__launch-button:hover{
  background:#123b62;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(11,41,72,.2);
}

/* Open planner shell. */
.ifp-wa-shop-planner__experience{background:#fff}
.ifp-wa-shop-planner__intro{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  padding:18px 20px;
  border-bottom:1px solid var(--ifp-wa-sp-border);
  background:linear-gradient(135deg,#fff 0%,#f8fbff 100%);
}
.ifp-wa-shop-planner__intro>div:first-child{max-width:780px}
.ifp-wa-shop-planner__intro-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  justify-content:flex-end;
}
.ifp-wa-shop-planner__intro-actions button{
  min-height:35px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:9px;
  background:#fff;
  color:var(--ifp-wa-sp-navy);
  padding:7px 10px;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__intro-actions button:hover{
  border-color:#aac0d3;
  background:#f8fbfe;
}

.ifp-wa-shop-planner__stepbar{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  padding:0 20px;
  border-bottom:1px solid var(--ifp-wa-sp-border);
  background:#fbfcfe;
}
.ifp-wa-shop-planner__sitebrand{
  display:none;
  align-items:center;
  justify-content:flex-start;
  align-self:stretch;
  min-width:0;
  padding:7px 16px 7px 0;
  margin-right:6px;
  border-right:1px solid var(--ifp-wa-sp-border);
  color:var(--ifp-wa-sp-navy);
  text-decoration:none;
}
.ifp-wa-shop-planner__sitebrand img{
  display:block;
  width:auto;
  max-width:145px;
  height:auto;
  max-height:34px;
  object-fit:contain;
}
.ifp-wa-shop-planner__sitebrand strong{
  display:block;
  max-width:145px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--ifp-wa-sp-navy);
  font-size:11px;
  font-weight:800;
}
.ifp-wa-shop-planner__sitebrand:hover,
.ifp-wa-shop-planner__sitebrand:focus-visible{opacity:.82}
.ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__stepbar{
  grid-template-columns:minmax(110px,auto) repeat(3,minmax(0,1fr));
  min-height:58px;
  padding:0 18px;
  background:rgba(255,255,255,.98);
  box-shadow:0 8px 24px rgba(11,41,72,.06);
}
.ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__sitebrand{display:flex}
.ifp-wa-shop-planner__stepbar button{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:48px;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:#6b7d8e;
  font-size:10px;
  cursor:pointer;
}
.ifp-wa-shop-planner__stepbar button span{
  display:grid;
  width:23px;
  height:23px;
  place-items:center;
  border:1px solid #cfd9e3;
  border-radius:50%;
  background:#fff;
  color:#617386;
  font-size:10px;
  font-weight:800;
}
.ifp-wa-shop-planner__stepbar button b{font-weight:750}
.ifp-wa-shop-planner__stepbar button[aria-current="step"]{
  border-bottom-color:var(--ifp-wa-sp-blue);
  color:var(--ifp-wa-sp-blue-dark);
}
.ifp-wa-shop-planner__stepbar button[aria-current="step"] span{
  border-color:var(--ifp-wa-sp-blue);
  background:var(--ifp-wa-sp-blue);
  color:#fff;
}

.ifp-wa-shop-planner__workspace{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(245px,300px);
  gap:18px;
  align-items:start;
  padding:18px;
}
.ifp-wa-shop-planner__main{min-width:0}
.ifp-wa-shop-planner__wizard-step{min-width:0}
.ifp-wa-shop-planner__step-heading{margin:0 0 15px}
.ifp-wa-shop-planner__step-heading>span{
  display:block;
  color:var(--ifp-wa-sp-blue);
  font-size:9px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner__step-heading h4{
  margin:3px 0 0;
  color:var(--ifp-wa-sp-navy);
  font-size:1.12rem;
}
.ifp-wa-shop-planner__step-heading p{
  margin:5px 0 0;
  color:var(--ifp-wa-sp-muted);
  font-size:11px;
  line-height:1.5;
}

/* Existing-site discovery is deliberately collapsed. */
.ifp-wa-shop-planner__existing-site{
  margin:0 0 14px;
  border:1px solid rgba(23,105,210,.16);
  border-radius:13px;
  background:#f9fbfe;
  overflow:hidden;
}
.ifp-wa-shop-planner__existing-site>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 13px;
  list-style:none;
  cursor:pointer;
}
.ifp-wa-shop-planner__existing-site>summary::-webkit-details-marker{display:none}
.ifp-wa-shop-planner__existing-site>summary small{
  display:block;
  color:var(--ifp-wa-sp-blue);
  font-size:8px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner__existing-site>summary strong{
  display:block;
  margin-top:2px;
  color:var(--ifp-wa-sp-navy);
  font-size:11px;
}
.ifp-wa-shop-planner__existing-site>summary>span:last-child{
  display:grid;
  flex:0 0 24px;
  width:24px;
  height:24px;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:var(--ifp-wa-sp-blue);
  font-size:16px;
  transition:transform .15s ease;
}
.ifp-wa-shop-planner__existing-site[open]>summary>span:last-child{transform:rotate(45deg)}
.ifp-wa-shop-planner__existing-site-body{
  padding:0 13px 13px;
  border-top:1px solid rgba(23,105,210,.08);
}
.ifp-wa-shop-planner__existing-site-body>p{
  margin:10px 0;
  color:#607487;
  font-size:10px;
  line-height:1.45;
}
.ifp-wa-shop-planner__site-scan{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
}
.ifp-wa-shop-planner__site-scan input{
  min-width:0;
  min-height:38px;
  border:1px solid #cbd8e5;
  border-radius:9px;
  padding:7px 10px;
  background:#fff;
}
.ifp-wa-shop-planner__site-scan button{
  min-height:38px;
  border:0;
  border-radius:9px;
  padding:7px 11px;
  background:var(--ifp-wa-sp-navy);
  color:#fff;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__site-result{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(11,41,72,.08);
  font-size:10px;
}
.ifp-wa-shop-planner__site-modules{display:grid;gap:6px;margin:8px 0}
.ifp-wa-shop-planner__site-module{
  display:flex;
  gap:8px;
  align-items:flex-start;
  padding:7px 8px;
  border:1px solid rgba(11,41,72,.09);
  border-radius:8px;
  background:#fff;
}
.ifp-wa-shop-planner__site-module span,
.ifp-wa-shop-planner__site-module b,
.ifp-wa-shop-planner__site-module small{display:block}
.ifp-wa-shop-planner__site-module small{margin-top:2px;color:#6a7d8f;font-size:9px}
.ifp-wa-shop-planner__site-actions{margin-top:8px}
.ifp-wa-shop-planner__site-disclaimer{display:block;margin-top:8px;color:#7a8996;line-height:1.4}
.ifp-wa-shop-planner__site-adopted{color:#1d6b3c!important;font-weight:700}

/* Step 1: topic cards. */
.ifp-wa-shop-planner__topics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.ifp-wa-shop-planner__topic{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  min-width:0;
  min-height:70px;
  padding:11px 12px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:12px;
  background:#fff;
  color:var(--ifp-wa-sp-text);
  text-align:left;
  cursor:pointer;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease;
}
.ifp-wa-shop-planner__topic:hover{
  border-color:#b6c9d9;
  box-shadow:0 8px 18px rgba(11,41,72,.06);
  transform:translateY(-1px);
}
.ifp-wa-shop-planner__topic.is-configured{border-color:#bcd3ea;background:#fbfdff}
.ifp-wa-shop-planner__topic.is-selected{border-color:rgba(23,105,210,.42)}
.ifp-wa-shop-planner__topic-icon{
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:10px;
  background:#eef5ff;
  color:var(--ifp-wa-sp-blue);
  font-size:17px;
  font-weight:800;
}
.ifp-wa-shop-planner__topic-copy{min-width:0}
.ifp-wa-shop-planner__topic-copy strong{
  display:block;
  overflow:hidden;
  color:var(--ifp-wa-sp-navy);
  font-size:12px;
  line-height:1.25;
  text-overflow:ellipsis;
}
.ifp-wa-shop-planner__topic-copy small{
  display:block;
  margin-top:3px;
  color:var(--ifp-wa-sp-muted);
  font-size:9px;
}
.ifp-wa-shop-planner__topic-state{
  color:#738698;
  font-size:8px;
  font-weight:750;
  white-space:nowrap;
}
.ifp-wa-shop-planner__topic.is-configured .ifp-wa-shop-planner__topic-state{color:var(--ifp-wa-sp-blue-dark)}

/* Step 2: one function at a time. */
.ifp-wa-shop-planner__function-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  padding-bottom:10px;
  border-bottom:1px solid #e7edf2;
}
.ifp-wa-shop-planner__back-link{
  border:0;
  background:transparent;
  color:var(--ifp-wa-sp-blue-dark);
  padding:0;
  font-size:10px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__function-toolbar>div{text-align:right}
.ifp-wa-shop-planner__function-toolbar small{
  display:block;
  color:var(--ifp-wa-sp-muted);
  font-size:8px;
}
.ifp-wa-shop-planner__function-toolbar strong{
  display:block;
  margin-top:2px;
  color:var(--ifp-wa-sp-navy);
  font-size:10px;
}
.ifp-wa-shop-planner__panel-head{margin:0 0 10px}
.ifp-wa-shop-planner__panel-head h4{margin:0;color:var(--ifp-wa-sp-navy);font-size:.98rem}
.ifp-wa-shop-planner__panel-head p{margin:4px 0 0;color:var(--ifp-wa-sp-muted);font-size:10px;line-height:1.4}

.ifp-wa-shop-feature{
  padding:15px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(11,41,72,.04);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.ifp-wa-shop-feature[data-choice="yes"]{
  border-color:var(--ifp-wa-sp-blue);
  box-shadow:0 0 0 1px rgba(23,105,210,.08),0 8px 22px rgba(11,41,72,.05);
  background:#fbfdff;
}
.ifp-wa-shop-feature.is-included{background:#f7fbf8;border-color:#cfe4d5}
.ifp-wa-shop-feature__head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.ifp-wa-shop-feature__category{
  display:block;
  margin-bottom:2px;
  color:var(--ifp-wa-sp-muted);
  font-size:8px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.ifp-wa-shop-feature h5{margin:0;color:var(--ifp-wa-sp-navy);font-size:15px}
.ifp-wa-shop-feature>p{margin:7px 0 11px;color:var(--ifp-wa-sp-muted);font-size:11px;line-height:1.5}
.ifp-wa-shop-feature__work,
.ifp-wa-shop-feature__included,
.ifp-wa-shop-feature__required{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  background:#f1f5f9;
  color:#40566a;
  font-size:10px;
  font-weight:800;
  line-height:1.25;
  white-space:normal;
  text-align:center;
}
.ifp-wa-shop-feature__included{background:#e8f5ec;color:#27633b}
.ifp-wa-shop-feature__required{background:#eef6ff;color:#173f68}
.ifp-wa-shop-feature__required[hidden]{display:none!important}
.ifp-wa-shop-feature.is-workflow-required{border-color:#b9d5ef}
.ifp-wa-shop-feature__plugins{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:8px 0 11px;
}
.ifp-wa-shop-feature__plugins>span{
  display:flex;
  flex-direction:column;
  max-width:100%;
  padding:6px 8px;
  border:1px solid #e4eaf0;
  border-radius:8px;
  background:#f9fbfd;
}
.ifp-wa-shop-feature__plugins b{font-size:9px;color:#23415c}
.ifp-wa-shop-feature__plugins small{font-size:8px;color:#748696;line-height:1.3}
.ifp-wa-shop-feature__question>strong{
  display:block;
  margin:0 0 8px;
  color:#30475a;
  font-size:10px;
}
.ifp-wa-shop-feature__choices{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
.ifp-wa-shop-feature__choices button{
  min-height:37px;
  border:1px solid #d4dee7;
  border-radius:9px;
  background:#fff;
  color:#334b5e;
  padding:6px 7px;
  font-size:9px;
  font-weight:750;
  line-height:1.25;
  cursor:pointer;
}
.ifp-wa-shop-feature__choices button:hover{border-color:#9eb7cc}
.ifp-wa-shop-feature__choices button.is-active{
  border-color:var(--ifp-wa-sp-blue);
  background:#eef5ff;
  color:var(--ifp-wa-sp-blue-dark);
}
.ifp-wa-shop-feature__details{
  margin-top:11px;
  border-top:1px dashed #dce5ee;
  padding-top:9px;
}
.ifp-wa-shop-feature__details summary{
  cursor:pointer;
  color:#31506a;
  font-size:10px;
  font-weight:750;
}
.ifp-wa-shop-feature__details>div{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  margin-top:8px;
}
.ifp-wa-shop-feature__detail-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:8px;
  min-width:0;
  padding:8px;
  border:1px solid #edf1f4;
  border-radius:9px;
  background:#fff;
  cursor:pointer;
}
.ifp-wa-shop-feature__detail-row>input[type="checkbox"]{
  margin:.12rem 0 0;
  width:17px;
  height:17px;
}
.ifp-wa-shop-feature__detail-row span{min-width:0}
.ifp-wa-shop-feature__detail-row b{display:block;color:#2e4558;font-size:10px}
.ifp-wa-shop-feature__detail-row small{display:block;margin-top:2px;color:#738494;font-size:8px;line-height:1.35}
.ifp-wa-shop-feature__detail-row em{
  grid-column:2;
  display:block;
  margin-top:2px;
  color:#335b79;
  font-size:8px;
  font-style:normal;
  font-weight:750;
}
.ifp-wa-shop-feature__detail-row.is-selected{
  border-color:rgba(23,105,210,.34);
  background:#f4f9ff;
}
.ifp-wa-shop-feature__detail-row.is-disabled{
  cursor:not-allowed;
  opacity:.5;
}
.ifp-wa-shop-planner__function-nav{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:8px;
  align-items:center;
  margin-top:11px;
}
.ifp-wa-shop-planner__function-nav button{
  min-height:36px;
  border:1px solid #d8e2eb;
  border-radius:9px;
  background:#fff;
  color:#39536a;
  padding:7px 11px;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__function-nav .is-summary{justify-self:center;border-color:transparent;color:var(--ifp-wa-sp-blue-dark);background:transparent}
.ifp-wa-shop-planner__function-nav .is-primary{border-color:var(--ifp-wa-sp-navy);background:var(--ifp-wa-sp-navy);color:#fff}

/* Step 3 result. */
.ifp-wa-shop-planner__result-card{
  display:grid;
  grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr);
  gap:12px;
}
.ifp-wa-shop-planner__result-price,
.ifp-wa-shop-planner__result-selection{
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:13px;
  background:#f9fbfd;
  padding:13px;
}
.ifp-wa-shop-planner__result-price small,
.ifp-wa-shop-planner__result-price span{display:block;color:var(--ifp-wa-sp-muted);font-size:9px}
.ifp-wa-shop-planner__result-price strong{
  display:block;
  margin:5px 0;
  color:var(--ifp-wa-sp-navy);
  font-size:1.45rem;
  line-height:1.15;
}
.ifp-wa-shop-planner__result-empty{margin:0;color:var(--ifp-wa-sp-muted);font-size:10px}
.ifp-wa-shop-planner__result-group+ .ifp-wa-shop-planner__result-group{margin-top:11px;padding-top:11px;border-top:1px solid #e7edf2}
.ifp-wa-shop-planner__result-group-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:5px;
}
.ifp-wa-shop-planner__result-group-head strong{color:var(--ifp-wa-sp-navy);font-size:10px}
.ifp-wa-shop-planner__result-group-head button{
  border:0;
  background:transparent;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:8px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__result-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
  padding:4px 0;
  color:#4c6275;
  font-size:9px;
}
.ifp-wa-shop-planner__result-row b{
  flex:0 0 auto;
  color:#315a80;
  font-size:8px;
}
.ifp-wa-shop-planner__result-row.is-detail{padding-left:7px;color:#65798a}
.ifp-wa-shop-planner__result-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:11px;
}
.ifp-wa-shop-planner__result-actions button{
  min-height:37px;
  border:1px solid #d6e0e8;
  border-radius:9px;
  background:#fff;
  color:#345168;
  padding:7px 11px;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}
.ifp-wa-shop-planner__result-actions .ifp-wa-shop-planner__purchase-continue[data-state="ready"]{
  border-color:var(--ifp-wa-sp-blue);
  background:var(--ifp-wa-sp-blue);
  color:#fff;
}
.ifp-wa-shop-planner__result-actions .ifp-wa-shop-planner__purchase-continue[data-state="missing"],
.ifp-wa-shop-planner__result-actions .ifp-wa-shop-planner__purchase-continue[data-state="retry"]{
  border-color:#b7c9d9;
  background:#f7fafc;
  color:var(--ifp-wa-sp-navy);
}
.ifp-wa-shop-planner__purchase-status{
  margin:7px 0 0;
  color:var(--ifp-wa-sp-muted);
  font-size:9px;
  line-height:1.45;
}
.ifp-wa-shop-planner__purchase-status[data-state="ready"]{color:var(--ifp-wa-sp-green)}
.ifp-wa-shop-planner__purchase-status[data-state="missing"],
.ifp-wa-shop-planner__purchase-status[data-state="retry"]{color:#7a4c17}

/* Persistent compact evaluation. */
.ifp-wa-shop-planner__summary{
  position:sticky;
  top:132px;
  min-width:0;
}
.admin-bar .ifp-wa-shop-planner__summary{top:164px}
.ifp-wa-shop-planner__summary-card{
  margin-bottom:9px;
  padding:13px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:12px;
  background:#f9fbfd;
}
.ifp-wa-shop-planner__summary-card h4{
  margin:0 0 6px;
  color:var(--ifp-wa-sp-navy);
  font-size:10px;
}
.ifp-wa-shop-planner__summary-label{
  display:block;
  margin-bottom:5px;
  color:var(--ifp-wa-sp-muted);
  font-size:8px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner__summary-card>strong{
  display:block;
  color:var(--ifp-wa-sp-navy);
  font-size:1.35rem;
  line-height:1.15;
}
.ifp-wa-shop-planner__summary-card>small{
  display:block;
  margin-top:5px;
  color:var(--ifp-wa-sp-muted);
  font-size:8px;
  line-height:1.35;
}
.ifp-wa-shop-planner__license-row{
  display:flex;
  justify-content:space-between;
  gap:8px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid #e4eaf0;
  font-size:9px;
}
.ifp-wa-shop-planner__selection-row,
.ifp-wa-shop-planner__price-line{
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding:5px 0;
  border-bottom:1px solid #edf1f4;
  font-size:9px;
}
.ifp-wa-shop-planner__selection-row:last-child,
.ifp-wa-shop-planner__price-line:last-child{border-bottom:0}
.ifp-wa-shop-planner__selection-row b{
  display:inline-flex;
  align-items:center;
  padding:2px 5px;
  border-radius:999px;
  background:#eef2f6;
  font-size:8px;
  white-space:nowrap;
}
.ifp-wa-shop-planner__selection-row b.is-yes{background:#eaf5ee;color:#24613a}
.ifp-wa-shop-planner__selection-row b.is-delegate{background:#eef5ff;color:#0f58ad}
.ifp-wa-shop-planner__selection-row.is-detail{padding-left:7px;color:#5b6f82}
.ifp-wa-shop-planner__price-line span{min-width:0;color:#496176;line-height:1.35}
.ifp-wa-shop-planner__price-line strong{white-space:nowrap;color:var(--ifp-wa-sp-navy);font-size:9px}
.ifp-wa-shop-planner__summary-actions{display:grid;gap:5px}
.ifp-wa-shop-planner__summary-actions .button{
  width:100%;
  min-height:38px;
  display:inline-grid;
  place-items:center;
  border-radius:9px;
  font-size:9px;
  font-weight:750;
}
.ifp-wa-shop-planner__summary-actions .ifp-wa-shop-planner__purchase-continue{
  border:1px solid #c9d6e2;
  background:#fff;
  color:var(--ifp-wa-sp-navy);
}
.ifp-wa-shop-planner__summary-actions .ifp-wa-shop-planner__purchase-continue[data-state="ready"]{
  border-color:var(--ifp-wa-sp-blue);
  background:var(--ifp-wa-sp-blue);
  color:#fff;
}
.ifp-wa-shop-planner__summary-actions small{color:var(--ifp-wa-sp-muted);font-size:8px;line-height:1.35}
.ifp-wa-shop-planner__summary-actions small[data-state="ready"]{color:var(--ifp-wa-sp-green)}
.ifp-wa-shop-planner__summary-actions small[data-state="missing"],
.ifp-wa-shop-planner__summary-actions small[data-state="retry"]{color:#7a4c17}

/* Busy/fullscreen. */
.ifp-wa-shop-planner.is-loading{cursor:progress}
.ifp-wa-shop-planner.is-loading::after{
  content:"Preis wird aktualisiert …";
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:99999;
  padding:7px 10px;
  border-radius:999px;
  background:var(--ifp-wa-sp-navy);
  color:#fff;
  box-shadow:0 8px 20px rgba(11,41,72,.2);
  font-size:9px;
}
html.ifp-wa-shop-planner-fullscreen{overflow:hidden}
.ifp-wa-shop-planner:fullscreen,
.ifp-wa-shop-planner.is-fullscreen-fallback{
  width:100vw;
  height:100vh;
  margin:0;
  border-radius:0;
  overflow:auto;
  background:#f5f8fb;
  padding:18px;
}
.ifp-wa-shop-planner.is-fullscreen-fallback{
  position:fixed;
  inset:0;
  z-index:100000;
}
.ifp-wa-shop-planner:fullscreen .ifp-wa-shop-planner__experience,
.ifp-wa-shop-planner.is-fullscreen-fallback .ifp-wa-shop-planner__experience{
  max-width:1440px;
  margin:0 auto;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 18px 50px rgba(11,41,72,.1);
}
.ifp-wa-shop-planner:fullscreen .ifp-wa-shop-planner__summary,
.ifp-wa-shop-planner.is-fullscreen-fallback .ifp-wa-shop-planner__summary{top:18px}

@media(max-width:1180px){
  .ifp-wa-shop-planner__workspace{grid-template-columns:1fr}
  .ifp-wa-shop-planner__summary{
    position:static;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .ifp-wa-shop-planner__summary-card{margin:0}
  .ifp-wa-shop-planner__summary-actions{grid-column:1/-1}
}
@media(max-width:760px){
  .ifp-wa-shop-planner__launcher,
  .ifp-wa-shop-planner__intro{flex-direction:column}
  .ifp-wa-shop-planner__launcher{align-items:stretch}
  .ifp-wa-shop-planner__launch-button{width:100%}
  .ifp-wa-shop-planner__intro-actions{justify-content:flex-start}
  .ifp-wa-shop-planner__stepbar{padding:0 10px}
  .ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__stepbar{
    grid-template-columns:minmax(64px,82px) repeat(3,minmax(0,1fr));
    padding:0 8px;
  }
  .ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__sitebrand{
    padding-right:8px;
    margin-right:2px;
  }
  .ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__sitebrand img{max-width:68px;max-height:28px}
  .ifp-wa-shop-planner.is-fullscreen-effective .ifp-wa-shop-planner__sitebrand strong{max-width:68px;font-size:9px}
  .ifp-wa-shop-planner__stepbar button b{display:none}
  .ifp-wa-shop-planner__workspace{padding:12px}
  .ifp-wa-shop-planner__topics{grid-template-columns:1fr}
  .ifp-wa-shop-feature__choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ifp-wa-shop-feature__details>div{grid-template-columns:1fr}
  .ifp-wa-shop-planner__result-card{grid-template-columns:1fr}
  .ifp-wa-shop-planner__summary{grid-template-columns:1fr}
  .ifp-wa-shop-planner__site-scan{grid-template-columns:1fr}
}
@media(max-width:480px){
  .ifp-wa-shop-planner__launcher,
  .ifp-wa-shop-planner__intro{padding:15px}
  .ifp-wa-shop-planner__topic{
    grid-template-columns:34px minmax(0,1fr);
  }
  .ifp-wa-shop-planner__topic-icon{width:34px;height:34px}
  .ifp-wa-shop-planner__topic-state{grid-column:2}
  .ifp-wa-shop-feature__head{flex-direction:column}
  .ifp-wa-shop-planner__function-nav{
    grid-template-columns:1fr 1fr;
  }
  .ifp-wa-shop-planner__function-nav .is-summary{
    grid-column:1/-1;
    grid-row:2;
  }
}


/* ==========================================================================
   0.4.03 – Theme-Kompatibilität / sichtbare Funktionskarten
   Einige Themes stylen alle <button>-Elemente der WooCommerce-Produktseite
   nachträglich dunkel. Die Shop-Planner-Themenkarten besitzen eigene helle
   Card-Semantik; diese Regeln kapseln nur den Planner und verhindern
   Dark-on-Dark-Konflikte ohne globale Theme-Buttons zu verändern.
   ========================================================================== */
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-planner__topic,
.ifp-wa-shop-planner button.ifp-wa-shop-planner__topic{
  -webkit-appearance:none !important;
  appearance:none !important;
  background:#fff !important;
  background-image:none !important;
  color:var(--ifp-wa-sp-text) !important;
  border:1px solid var(--ifp-wa-sp-border) !important;
  box-shadow:0 4px 14px rgba(11,41,72,.035) !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
  font-family:inherit !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-planner__topic:hover,
.ifp-wa-shop-planner button.ifp-wa-shop-planner__topic:hover{
  background:#f8fbff !important;
  border-color:#9fbad1 !important;
  box-shadow:0 8px 20px rgba(11,41,72,.075) !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-planner__topic.is-configured,
.ifp-wa-shop-planner button.ifp-wa-shop-planner__topic.is-configured{
  background:#f7fbff !important;
  border-color:#a9c7e2 !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-planner__topic.is-selected,
.ifp-wa-shop-planner button.ifp-wa-shop-planner__topic.is-selected{
  background:#f3f8ff !important;
  border-color:var(--ifp-wa-sp-blue) !important;
  box-shadow:0 0 0 2px rgba(23,105,210,.08) !important;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-icon,
.ifp-wa-shop-planner .ifp-wa-shop-planner__topic-icon{
  background:#eef5ff !important;
  color:var(--ifp-wa-sp-blue) !important;
  border:1px solid rgba(23,105,210,.08);
  text-shadow:none !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-copy strong,
.ifp-wa-shop-planner .ifp-wa-shop-planner__topic-copy strong{
  color:var(--ifp-wa-sp-navy) !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1.28 !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-copy small,
.ifp-wa-shop-planner .ifp-wa-shop-planner__topic-copy small{
  color:#607487 !important;
  font-size:10px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-state,
.ifp-wa-shop-planner .ifp-wa-shop-planner__topic-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  background:#f0f4f8 !important;
  color:#536f86 !important;
  font-size:9px !important;
  font-weight:750 !important;
  line-height:1 !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__topic.is-configured .ifp-wa-shop-planner__topic-state,
.ifp-wa-shop-planner .ifp-wa-shop-planner__topic.is-configured .ifp-wa-shop-planner__topic-state{
  background:#e8f2ff !important;
  color:#0f58ad !important;
}

/* The same theme collision can affect the actual yes/no function buttons.
   Keep all four decisions readable while preserving their current semantics. */
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button{
  -webkit-appearance:none !important;
  appearance:none !important;
  background:#fff !important;
  background-image:none !important;
  color:#334b5e !important;
  border:1px solid #d4dee7 !important;
  box-shadow:none !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
  font-family:inherit !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button:hover,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button:hover{
  background:#f8fbfe !important;
  border-color:#9eb7cc !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.is-active,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.is-active{
  background:#eef5ff !important;
  border-color:var(--ifp-wa-sp-blue) !important;
  color:#0f58ad !important;
}

/* Navigation buttons retain their intentional hierarchy even when a theme
   declares generic WooCommerce button colors with higher specificity. */
.ifp-wa-shop-planner .ifp-wa-shop-planner__function-nav button{
  background:#fff !important;
  color:var(--ifp-wa-sp-navy) !important;
  border:1px solid var(--ifp-wa-sp-border) !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-planner__function-nav button.is-primary{
  background:var(--ifp-wa-sp-navy) !important;
  color:#fff !important;
  border-color:var(--ifp-wa-sp-navy) !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-planner__function-nav button.is-summary{
  background:#f2f6fa !important;
  color:#31506a !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-planner__stepbar button{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  text-shadow:none !important;
}

@media(max-width:480px){
  .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-copy strong{
    font-size:12.5px !important;
  }
  .ifp-wa-shop-planner .ifp-wa-shop-planner__topic-state{
    justify-self:start;
  }
}


/* ==========================================================================
   0.4.04 – Guided decision flow
   One clear question at a time, contextual explanation, answer-gated
   navigation and explicit "unsure" help. Scoped to the Shop Planner only.
   ========================================================================== */
.ifp-wa-shop-planner__panel-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:end;
  margin:0 0 14px;
  padding:14px 15px;
  border:1px solid rgba(23,105,210,.12);
  border-radius:14px;
  background:linear-gradient(135deg,#f8fbff 0%,#fff 100%);
}
.ifp-wa-shop-planner__panel-head>div{min-width:0}
.ifp-wa-shop-planner__panel-kicker{
  display:block;
  margin-bottom:4px;
  color:var(--ifp-wa-sp-blue);
  font-size:8px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner__panel-head h4{
  margin:0;
  color:var(--ifp-wa-sp-navy);
  font-size:1.08rem;
  line-height:1.25;
}
.ifp-wa-shop-planner__panel-head p{
  max-width:800px;
  margin:6px 0 0;
  color:#566d80;
  font-size:11px;
  line-height:1.55;
}
.ifp-wa-shop-planner__panel-head>small{
  max-width:220px;
  padding:8px 10px;
  border-radius:10px;
  background:#eef5ff;
  color:#315a80;
  font-size:9px;
  line-height:1.4;
}

.ifp-wa-shop-feature__guidance{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:9px;
  align-items:start;
  margin:0 0 12px;
  padding:10px 11px;
  border:1px solid #e0e9f2;
  border-radius:11px;
  background:#f8fbfe;
}
.ifp-wa-shop-feature__guidance>span{
  display:grid;
  width:24px;
  height:24px;
  place-items:center;
  border-radius:999px;
  background:#e8f2ff;
  color:#0f58ad;
  font-size:11px;
  font-weight:800;
  font-style:normal;
}
.ifp-wa-shop-feature__guidance p{
  margin:1px 0 0;
  color:#50687d;
  font-size:10px;
  line-height:1.5;
}

.ifp-wa-shop-feature__choice-help{
  margin-top:12px;
  padding:12px 13px;
  border:1px solid #cfe0f0;
  border-radius:12px;
  background:#f5f9ff;
  color:#3e5870;
}
.ifp-wa-shop-feature__choice-help strong{
  display:block;
  margin:0 0 5px;
  color:var(--ifp-wa-sp-navy);
  font-size:11px;
}
.ifp-wa-shop-feature__choice-help p{
  margin:0;
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-feature__choice-help ul{
  margin:8px 0 0 17px;
  padding:0;
  color:#50687d;
  font-size:9.5px;
  line-height:1.45;
}
.ifp-wa-shop-feature__choice-help li+li{margin-top:3px}
.ifp-wa-shop-feature__choice-help.is-neutral{
  border-color:#e0e4e8;
  background:#f7f8fa;
}

.ifp-wa-shop-planner__function-nav{
  grid-template-columns:auto minmax(0,1fr) auto auto;
}
.ifp-wa-shop-planner__function-nav .is-secondary{
  background:#f6f8fa!important;
  color:#38536a!important;
  border-color:#d7e0e8!important;
}
.ifp-wa-shop-planner__function-nav button[hidden]{
  display:none!important;
}

.ifp-wa-shop-feature[data-ifp-wa-shop-flow-role="gate"]{
  border-width:1.5px;
}
.ifp-wa-shop-feature[data-ifp-wa-shop-flow-role="gate"] .ifp-wa-shop-feature__category::after{
  content:" · Grundentscheidung";
  color:var(--ifp-wa-sp-blue);
}

@media(max-width:760px){
  .ifp-wa-shop-planner__panel-head{
    grid-template-columns:1fr;
    gap:9px;
  }
  .ifp-wa-shop-planner__panel-head>small{
    max-width:none;
  }
  .ifp-wa-shop-planner__function-nav{
    grid-template-columns:1fr 1fr;
  }
  .ifp-wa-shop-planner__function-nav .is-summary,
  .ifp-wa-shop-planner__function-nav .is-secondary{
    grid-column:1/-1;
  }
}


/* 0.4.05 – technical implementation details are progressive disclosure.
 * A selected/included function may reveal its plugin; unselected questions do
 * not expose irrelevant technical clutter. */
.ifp-wa-shop-planner [data-ifp-wa-shop-implementation][hidden]{
  display:none !important;
}


/* 0.4.06 – echte Stop-/Gate-Fragen sind binäre Kundenentscheidungen.
 * "Unsicher?" ist nur ein separater Hilfe-Trigger und niemals ein dritter
 * Preis-/Flow-State. Alles bleibt lokal im Shop-Planner gekapselt. */
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices.is-binary{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:520px;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices.is-binary button{
  min-height:42px;
  font-size:12px;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__decision-help-toggle{
  margin-top:9px !important;
  padding:0 !important;
  min-height:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#1769d2 !important;
  font:inherit !important;
  font-size:11px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
  cursor:pointer !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__decision-help-toggle:hover,
.ifp-wa-shop-planner .ifp-wa-shop-feature__decision-help-toggle:focus-visible{
  color:#0b4f9c !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__choice-help.is-gate-help{
  border-color:#cbddeb;
  background:#f7fbff;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__decision-note{
  margin-top:8px !important;
  padding-top:8px;
  border-top:1px solid rgba(23,105,210,.14);
  color:#40566a !important;
  font-size:10px !important;
  font-weight:700;
}


/* ==========================================================================
 * 0.4.18 – Shop/Large-Planner parity layer for Team + Forms
 * The existing Shop shell/layout stays authoritative; only the structured
 * editor content below is new and fully scoped to the Shop Planner.
 * ========================================================================== */
.ifp-wa-shop-shared-flow{
  margin:14px 0 0;
  color:var(--ifp-wa-sp-text);
}
.ifp-wa-shop-shared-flow__legacy{display:none!important}
.ifp-wa-shop-shared-flow__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
  padding:13px 14px;
  border:1px solid #d9e6f3;
  border-radius:13px;
  background:linear-gradient(135deg,#f7fbff 0%,#fff 100%);
}
.ifp-wa-shop-shared-flow__head>div>span,
.ifp-wa-shop-shared-kicker{
  display:block;
  margin-bottom:4px;
  color:var(--ifp-wa-sp-blue);
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ifp-wa-shop-shared-flow__head strong{
  display:block;
  color:var(--ifp-wa-sp-navy);
  font-size:14px;
  line-height:1.3;
}
.ifp-wa-shop-shared-flow__head>b{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:#edf6ff;
  color:#245c8f;
  font-size:9px;
  line-height:1.25;
}
.ifp-wa-shop-shared-flow__intro{
  margin:0 0 14px;
  color:var(--ifp-wa-sp-muted);
  font-size:11px;
  line-height:1.55;
}
.ifp-wa-shop-shared-notice{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #dbe7f1;
  border-radius:11px;
  background:#f8fbfe;
  color:#4b657b;
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-shared-footnote{
  display:block;
  margin-top:9px;
  color:#718294;
  font-size:9px;
  line-height:1.45;
}
.ifp-wa-shop-shared-price{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  padding:4px 7px;
  border-radius:999px;
  background:#f0f5fa;
  color:#3c5971;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}
.ifp-wa-shop-shared-add{
  min-height:36px;
  padding:8px 11px;
  border:1px dashed #a9bfd4;
  border-radius:9px;
  background:#fff;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-shared-add:hover{background:#f7fbff}
.ifp-wa-shop-shared-flow__nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--ifp-wa-sp-border);
}
.ifp-wa-shop-shared-flow__nav>span{
  color:var(--ifp-wa-sp-muted);
  font-size:9px;
}
.ifp-wa-shop-shared-flow__nav button{
  min-height:36px;
  padding:8px 12px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:9px;
  background:#fff;
  color:var(--ifp-wa-sp-navy);
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-shared-flow__nav button.is-primary{
  border-color:var(--ifp-wa-sp-blue);
  background:var(--ifp-wa-sp-blue);
  color:#fff;
}
.ifp-wa-shop-shared-flow__nav button:disabled{opacity:.45;cursor:not-allowed}

/* Team */
.ifp-wa-shop-team-question,
.ifp-wa-shop-team-members{
  padding:15px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:14px;
  background:#fff;
}
.ifp-wa-shop-team-question h5,
.ifp-wa-shop-team-members h5{
  margin:0;
  color:var(--ifp-wa-sp-navy);
  font-size:15px;
  line-height:1.35;
}
.ifp-wa-shop-team-question>p,
.ifp-wa-shop-team-members>p{
  margin:6px 0 0;
  color:var(--ifp-wa-sp-muted);
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-team-question__choices{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:13px;
}
.ifp-wa-shop-team-question__choices button{
  min-height:43px;
  border:1px solid #cfdae5;
  border-radius:10px;
  background:#fff;
  color:var(--ifp-wa-sp-navy);
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-team-question__choices button.is-selected{
  border-color:var(--ifp-wa-sp-blue);
  background:#edf5ff;
  color:var(--ifp-wa-sp-blue-dark);
  box-shadow:0 0 0 1px rgba(23,105,210,.08);
}
.ifp-wa-shop-shared-textarea{
  display:block;
  margin-top:13px;
}
.ifp-wa-shop-shared-textarea>span,
.ifp-wa-shop-team-member label>span{
  display:block;
  margin-bottom:5px;
  color:#36536c;
  font-size:10px;
  font-weight:800;
}
.ifp-wa-shop-shared-textarea>small{
  display:block;
  margin:-1px 0 6px;
  color:var(--ifp-wa-sp-muted);
  font-size:9px;
}
.ifp-wa-shop-shared-textarea textarea,
.ifp-wa-shop-team-member input,
.ifp-wa-shop-team-member textarea,
.ifp-wa-shop-form-custom-row input,
.ifp-wa-shop-form-notes textarea{
  width:100%;
  border:1px solid #cedae5;
  border-radius:9px;
  background:#fff;
  color:var(--ifp-wa-sp-text);
  padding:9px 10px;
  font:inherit;
  font-size:11px;
}
.ifp-wa-shop-shared-textarea textarea,
.ifp-wa-shop-team-member textarea,
.ifp-wa-shop-form-notes textarea{min-height:92px;resize:vertical}
.ifp-wa-shop-team-member{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
  padding:12px;
  border:1px solid #e0e8ef;
  border-radius:11px;
  background:#fafcfe;
}
.ifp-wa-shop-team-member__head{
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
}
.ifp-wa-shop-team-member__head strong{
  color:var(--ifp-wa-sp-navy);
  font-size:11px;
}
.ifp-wa-shop-team-member__head button{
  border:0;
  background:transparent;
  color:#7b4c4c;
  font-size:9px;
  font-weight:700;
  cursor:pointer;
}
.ifp-wa-shop-team-member label:last-child{grid-column:1/-1}
.ifp-wa-shop-team-members>.ifp-wa-shop-shared-add{margin-top:12px}

/* Forms */
.ifp-wa-shop-form-fullscreen-offer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 13px;
  padding:11px 12px;
  border:1px solid #cfe0f0;
  border-radius:12px;
  background:#f5f9ff;
}
.ifp-wa-shop-form-fullscreen-offer strong,
.ifp-wa-shop-form-fullscreen-offer small{display:block}
.ifp-wa-shop-form-fullscreen-offer strong{color:var(--ifp-wa-sp-navy);font-size:11px}
.ifp-wa-shop-form-fullscreen-offer small{margin-top:2px;color:#60788d;font-size:9px}
.ifp-wa-shop-form-fullscreen-offer button{
  flex:0 0 auto;
  min-height:34px;
  border:1px solid var(--ifp-wa-sp-blue);
  border-radius:9px;
  background:#fff;
  color:var(--ifp-wa-sp-blue-dark);
  padding:7px 10px;
  font-size:9px;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-form-standard{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  margin-bottom:14px;
  padding:14px;
  border:1px solid #cfe4d8;
  border-radius:14px;
  background:#f8fcfa;
}
.ifp-wa-shop-form-standard h5{margin:0;color:var(--ifp-wa-sp-navy);font-size:15px}
.ifp-wa-shop-form-standard p{margin:5px 0 0;color:#60778a;font-size:10px;line-height:1.5}
.ifp-wa-shop-form-standard__included{
  align-self:start;
  padding:5px 8px;
  border-radius:999px;
  background:#e8f5ed;
  color:var(--ifp-wa-sp-green);
  font-size:9px;
  font-weight:800;
}
.ifp-wa-shop-form-standard__fields{grid-column:1/-1}
.ifp-wa-shop-form-standard__fields>strong{display:block;margin-bottom:7px;color:#35546d;font-size:10px}
.ifp-wa-shop-form-standard__fields>div{display:flex;flex-wrap:wrap;gap:6px}
.ifp-wa-shop-form-standard__fields span{
  padding:5px 7px;
  border-radius:8px;
  background:#fff;
  color:#416079;
  font-size:9px;
}
.ifp-wa-shop-form-standard>small{grid-column:1/-1;color:#62798b;font-size:9px;line-height:1.45}
.ifp-wa-shop-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);
  gap:14px;
  align-items:start;
}
.ifp-wa-shop-form-builder{min-width:0}
.ifp-wa-shop-form-section{
  margin-bottom:12px;
  padding:13px;
  border:1px solid var(--ifp-wa-sp-border);
  border-radius:13px;
  background:#fff;
}
.ifp-wa-shop-form-section__head{
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  gap:9px;
  margin-bottom:10px;
}
.ifp-wa-shop-form-section__head>span{
  display:grid;
  width:26px;
  height:26px;
  place-items:center;
  border-radius:50%;
  background:#eaf3ff;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:10px;
  font-weight:900;
}
.ifp-wa-shop-form-section__head h5{margin:0;color:var(--ifp-wa-sp-navy);font-size:13px}
.ifp-wa-shop-form-section__head p{margin:3px 0 0;color:var(--ifp-wa-sp-muted);font-size:9px;line-height:1.45}
.ifp-wa-shop-form-presets{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.ifp-wa-shop-form-preset{
  position:relative;
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:5px 8px;
  text-align:left;
  min-height:78px;
  padding:10px;
  border:1px solid #d6e0e9;
  border-radius:11px;
  background:#fff;
  color:var(--ifp-wa-sp-text);
  cursor:pointer;
}
.ifp-wa-shop-form-preset>span{grid-row:1/3;font-size:17px}
.ifp-wa-shop-form-preset>strong{color:var(--ifp-wa-sp-navy);font-size:10px}
.ifp-wa-shop-form-preset>small{color:var(--ifp-wa-sp-muted);font-size:8.5px;line-height:1.4}
.ifp-wa-shop-form-preset>b{
  grid-column:1/-1;
  justify-self:start;
  padding:3px 6px;
  border-radius:999px;
  background:#e8f2ff;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:8px;
}
.ifp-wa-shop-form-preset.is-selected{border-color:var(--ifp-wa-sp-blue);background:#f6faff}
.ifp-wa-shop-form-accordion{
  margin-top:8px;
  border:1px solid #dde6ee;
  border-radius:10px;
  background:#fbfcfe;
  overflow:hidden;
}
.ifp-wa-shop-form-accordion>summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:10px 11px;
  cursor:pointer;
  list-style:none;
}
.ifp-wa-shop-form-accordion>summary::-webkit-details-marker{display:none}
.ifp-wa-shop-form-accordion>summary strong{display:block;color:#314e67;font-size:10px}
.ifp-wa-shop-form-accordion>summary small{display:block;margin-top:2px;color:#718496;font-size:8.5px}
.ifp-wa-shop-form-accordion[open]>summary{border-bottom:1px solid #e1e9f0;background:#f6f9fc}
.ifp-wa-shop-form-option-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:10px;
}
.ifp-wa-shop-form-option{
  position:relative;
  display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;
  gap:7px;
  align-items:start;
  min-height:66px;
  padding:9px;
  border:1px solid #dae3eb;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
}
.ifp-wa-shop-form-option>input{position:absolute;opacity:0;pointer-events:none}
.ifp-wa-shop-form-option.is-selected{border-color:var(--ifp-wa-sp-blue);background:#f6faff}
.ifp-wa-shop-form-option__icon{font-size:15px;text-align:center}
.ifp-wa-shop-form-option__copy strong{display:block;color:#304d66;font-size:9.5px;line-height:1.35}
.ifp-wa-shop-form-option__copy small{display:block;margin-top:3px;color:#738596;font-size:8px;line-height:1.35}
.ifp-wa-shop-form-option__selected{
  grid-column:2/-1;
  justify-self:start;
  padding:3px 5px;
  border-radius:999px;
  background:#e8f2ff;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:7.5px;
}
.ifp-wa-shop-form-custom{padding:10px}
.ifp-wa-shop-form-custom>p{margin:0 0 8px;color:var(--ifp-wa-sp-muted);font-size:9px;line-height:1.45}
.ifp-wa-shop-form-custom-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
  margin-bottom:7px;
}
.ifp-wa-shop-form-custom-row button{
  border:1px solid #d9e1e8;
  border-radius:8px;
  background:#fff;
  color:#725050;
  padding:6px 8px;
  font-size:8.5px;
  cursor:pointer;
}
.ifp-wa-shop-form-notes{margin-bottom:12px}
.ifp-wa-shop-form-notes label{display:block;padding:10px}
.ifp-wa-shop-form-notes label>span{display:block;margin-bottom:7px;color:#60778b;font-size:9px;line-height:1.45}
.ifp-wa-shop-form-preview{
  position:sticky;
  top:18px;
  padding:13px;
  border:1px solid #cfdae5;
  border-radius:13px;
  background:#f8fbfe;
}
.ifp-wa-shop-form-preview h5{margin:0;color:var(--ifp-wa-sp-navy);font-size:13px}
.ifp-wa-shop-form-preview>p{margin:4px 0;color:var(--ifp-wa-sp-muted);font-size:9px;line-height:1.45}
.ifp-wa-shop-form-preview>small{display:block;color:#718496;font-size:8px;line-height:1.4}
.ifp-wa-shop-form-preview__canvas{
  margin-top:9px;
  padding:10px;
  border:1px solid #dce5ed;
  border-radius:10px;
  background:#fff;
}
.ifp-wa-shop-form-preview__field{
  display:grid;
  grid-template-columns:16px minmax(0,1fr) auto;
  gap:7px;
  align-items:center;
  margin-bottom:7px;
  padding:8px;
  border:1px solid #e0e7ee;
  border-radius:8px;
  background:#fff;
}
.ifp-wa-shop-form-preview__field.is-dragging{opacity:.5}
.ifp-wa-shop-form-preview__drag{color:#8898a7;cursor:grab;font-size:12px}
.ifp-wa-shop-form-preview__field strong{display:block;color:#39566f;font-size:9px}
.ifp-wa-shop-form-preview__field small{display:block;margin-top:1px;color:#8493a0;font-size:7.5px}
.ifp-wa-shop-form-preview__moves{display:flex;gap:3px}
.ifp-wa-shop-form-preview__moves button{
  width:25px;
  height:25px;
  border:1px solid #d6e0e8;
  border-radius:6px;
  background:#fff;
  color:#456178;
  cursor:pointer;
}
.ifp-wa-shop-form-preview__moves button:disabled{opacity:.35;cursor:not-allowed}
.ifp-wa-shop-form-preview__submit{
  width:100%;
  min-height:35px;
  border:0;
  border-radius:8px;
  background:var(--ifp-wa-sp-navy);
  color:#fff;
  font-size:9px;
  font-weight:800;
  opacity:.85;
}
.ifp-wa-shop-planner:fullscreen .ifp-wa-shop-form-layout,
.ifp-wa-shop-planner.is-fullscreen-fallback .ifp-wa-shop-form-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);
}
.ifp-wa-shop-planner:fullscreen .ifp-wa-shop-planner__workspace,
.ifp-wa-shop-planner.is-fullscreen-fallback .ifp-wa-shop-planner__workspace{
  max-width:1600px;
  margin:0 auto;
}

@media(max-width:980px){
  .ifp-wa-shop-form-layout{grid-template-columns:1fr}
  .ifp-wa-shop-form-preview{position:static}
}
@media(max-width:640px){
  .ifp-wa-shop-shared-flow__head,
  .ifp-wa-shop-form-fullscreen-offer{flex-direction:column;align-items:stretch}
  .ifp-wa-shop-form-standard{grid-template-columns:1fr}
  .ifp-wa-shop-form-standard__included{justify-self:start}
  .ifp-wa-shop-form-presets,
  .ifp-wa-shop-form-option-grid{grid-template-columns:1fr}
  .ifp-wa-shop-team-member{grid-template-columns:1fr}
  .ifp-wa-shop-team-member__head,
  .ifp-wa-shop-team-member label:last-child{grid-column:auto}
}


/* 0.4.18: Shop → Formular source navigation mirrors the large Planner's edit jump. */
.ifp-wa-shop-planner__price-line-actions{
  display:flex;
  flex:0 0 auto;
  align-items:flex-end;
  gap:4px;
  flex-direction:column;
}
.ifp-wa-shop-planner__price-edit{
  padding:0;
  border:0;
  background:transparent;
  color:var(--ifp-wa-sp-blue-dark);
  font:inherit;
  font-size:8px;
  font-weight:750;
  line-height:1.2;
  text-decoration:underline;
  text-underline-offset:2px;
  cursor:pointer;
}
.ifp-wa-shop-source-notice{
  display:flex;
  align-items:flex-start;
  gap:7px;
  margin:9px 0 11px;
  padding:8px 10px;
  border:1px solid #b9d5f1;
  border-radius:10px;
  background:#f3f8ff;
  color:#36536d;
  font-size:9px;
  line-height:1.4;
}
.ifp-wa-shop-source-notice strong{
  flex:0 0 auto;
  color:var(--ifp-wa-sp-blue-dark);
}
.ifp-wa-shop-source-target{
  outline:2px solid rgba(28,112,194,.28);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(28,112,194,.08);
}


/* ==========================================================================
   0.4.23 – Shop Planner readability + narrow product-column hardening
   Woo/themes frequently style every <button>. Form cards therefore explicitly
   own their background/text/wrapping while keeping the existing Shop layout.
   ========================================================================== */
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:100%;
  min-width:0;
  background:#fff!important;
  background-image:none!important;
  color:var(--ifp-wa-sp-text)!important;
  border:1px solid #d6e0e9!important;
  box-shadow:none!important;
  text-align:left!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:normal;
  text-transform:none!important;
  letter-spacing:normal!important;
  text-shadow:none!important;
  font-family:inherit!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset:hover,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset:hover{
  background:#f8fbfe!important;
  border-color:#9ebbd5!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset.is-selected,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset.is-selected{
  background:#f6faff!important;
  border-color:var(--ifp-wa-sp-blue)!important;
  color:var(--ifp-wa-sp-text)!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset>strong,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset>strong{
  color:var(--ifp-wa-sp-navy)!important;
  font-size:11px!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset>small,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset>small{
  color:#4f6477!important;
  font-size:10px!important;
  line-height:1.45!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner button.ifp-wa-shop-form-preset>b,
.ifp-wa-shop-planner button.ifp-wa-shop-form-preset>b{
  color:var(--ifp-wa-sp-blue-dark)!important;
  font-size:9px!important;
  line-height:1.25!important;
  white-space:normal!important;
}
.ifp-wa-shop-form-section__head p{
  color:#4f6477;
  font-size:10.5px;
  line-height:1.5;
}
.ifp-wa-shop-form-standard>small{
  color:#4f6477;
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-form-accordion>summary strong{
  color:#314e67;
  font-size:10.5px;
  line-height:1.35;
}
.ifp-wa-shop-form-accordion>summary small{
  color:#4f6477;
  font-size:9.75px;
  line-height:1.4;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-form-option,
.ifp-wa-shop-form-option__copy{
  min-width:0;
}
.ifp-wa-shop-form-option__copy strong{
  color:#304d66;
  font-size:10.5px;
  line-height:1.4;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-form-option__copy small{
  color:#4f6477;
  font-size:9.75px;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-form-option__selected{
  font-size:8.5px;
}
.ifp-wa-shop-form-custom>p,
.ifp-wa-shop-form-notes label>span{
  color:#4f6477;
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-form-preview>p{
  color:#4f6477;
  font-size:10.25px;
  line-height:1.5;
}
.ifp-wa-shop-form-preview>small{
  color:#52677a;
  font-size:9.5px;
  line-height:1.45;
}
.ifp-wa-shop-form-preview__drag{
  color:#5a6d7f;
}
.ifp-wa-shop-form-preview__field strong{
  color:#304d66;
  font-size:10px;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-form-preview__field small{
  color:#52677a;
  font-size:9px;
  line-height:1.35;
}
.ifp-wa-shop-form-preview__submit{
  font-size:10px;
}
@media(max-width:760px){
  .ifp-wa-shop-form-layout{grid-template-columns:1fr}
  .ifp-wa-shop-form-preview{position:static}
}

/* 0.4.23 mobile floor */
@media(max-width:640px){
  .ifp-wa-shop-form-presets,
  .ifp-wa-shop-form-option-grid{
    grid-template-columns:1fr;
  }
}

/* 0.4.23 descriptive-text floor across the Shop Planner. */
.ifp-wa-shop-planner__existing-site>summary small,
.ifp-wa-shop-planner__site-module small,
.ifp-wa-shop-planner__topic-copy small,
.ifp-wa-shop-planner__function-toolbar small,
.ifp-wa-shop-feature__plugins small,
.ifp-wa-shop-feature__detail-row small,
.ifp-wa-shop-planner__result-price span,
.ifp-wa-shop-planner__summary-card>small,
.ifp-wa-shop-planner__summary-actions small,
.ifp-wa-shop-planner__panel-head>small,
.ifp-wa-shop-shared-footnote,
.ifp-wa-shop-shared-textarea>small,
.ifp-wa-shop-form-fullscreen-offer small,
.ifp-wa-shop-source-notice{
  color:#4f6477;
  font-size:10px;
  line-height:1.45;
}
.ifp-wa-shop-planner__topic-copy small,
.ifp-wa-shop-feature__plugins small,
.ifp-wa-shop-feature__detail-row small,
.ifp-wa-shop-planner__summary-card>small{
  overflow-wrap:anywhere;
  white-space:normal;
}


/* 0.4.30 · Shared simple-shop product setup */
.ifp-wa-shop-commerce-flow{
  display:grid;
  gap:16px;
  margin:14px 0 18px;
  padding:16px;
  border:1px solid #cbd9e6;
  border-radius:16px;
  background:#f7fbff;
}
.ifp-wa-shop-commerce-flow[hidden]{display:none!important}
.ifp-wa-shop-commerce-flow__included{
  display:grid;
  gap:7px;
  padding:13px 14px;
  border:1px solid #b9d5ee;
  border-radius:13px;
  background:#fff;
}
.ifp-wa-shop-commerce-flow__included strong,
.ifp-wa-shop-commerce-flow__section h5{
  color:#183248;
  line-height:1.4;
}
.ifp-wa-shop-commerce-flow__included small,
.ifp-wa-shop-commerce-flow__section>p,
.ifp-wa-shop-commerce-flow__custom small,
.ifp-wa-shop-commerce-flow__upload-note p,
.ifp-wa-shop-commerce-flow__later p,
.ifp-wa-shop-commerce-flow__notice{
  color:#465e72;
  font-size:11.5px;
  line-height:1.5;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-commerce-flow__section{
  display:grid;
  gap:9px;
}
.ifp-wa-shop-commerce-flow__section h5,
.ifp-wa-shop-commerce-flow__section>p{margin:0}
.ifp-wa-shop-commerce-flow__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.ifp-wa-shop-commerce-option{
  min-width:0;
  border:1px solid #cad8e5;
  border-radius:13px;
  background:#fff;
  overflow:hidden;
}
.ifp-wa-shop-commerce-option>button,
.ifp-wa-shop-commerce-tier,
.ifp-wa-shop-commerce-delivery,
.ifp-wa-shop-commerce-flow__upload-note>button{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  padding:11px 12px;
  border:0!important;
  border-radius:11px;
  background:#fff!important;
  color:#183248!important;
  text-align:left!important;
  text-transform:none!important;
  text-shadow:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
  box-shadow:none;
}
.ifp-wa-shop-commerce-option>button:hover,
.ifp-wa-shop-commerce-tier:hover,
.ifp-wa-shop-commerce-delivery:hover,
.ifp-wa-shop-commerce-option.is-selected>button,
.ifp-wa-shop-commerce-tier.is-selected,
.ifp-wa-shop-commerce-delivery.is-selected{
  background:#eef7ff!important;
  outline:2px solid #4a89bc;
  outline-offset:-2px;
}
.ifp-wa-shop-commerce-option button span{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.ifp-wa-shop-commerce-option button em{
  padding:2px 6px;
  border-radius:999px;
  background:#e7f1fa;
  color:#2d536f;
  font-size:9.5px;
  font-style:normal;
  font-weight:700;
}
.ifp-wa-shop-commerce-option button small,
.ifp-wa-shop-commerce-tier small,
.ifp-wa-shop-commerce-delivery small{
  color:#4a6073!important;
  font-size:10.5px;
  line-height:1.45;
  white-space:normal!important;
}
.ifp-wa-shop-commerce-option details{
  padding:0 12px 11px;
  color:#40586d;
  font-size:10.5px;
  line-height:1.5;
}
.ifp-wa-shop-commerce-option summary{
  cursor:pointer;
  color:#245a84;
  font-weight:700;
}
.ifp-wa-shop-commerce-option details p{margin:6px 0 0}
.ifp-wa-shop-commerce-flow__custom{
  display:grid;
  gap:5px;
  max-width:300px;
}
.ifp-wa-shop-commerce-flow__custom input{
  box-sizing:border-box;
  width:100%;
}
.ifp-wa-shop-commerce-flow__upload-note,
.ifp-wa-shop-commerce-flow__later,
.ifp-wa-shop-commerce-flow__notice{
  padding:11px 12px;
  border:1px solid #d4e0ea;
  border-radius:12px;
  background:#fff;
}
.ifp-wa-shop-commerce-flow__upload-note p,
.ifp-wa-shop-commerce-flow__later p{margin:5px 0 9px}
.ifp-wa-shop-commerce-flow__upload-note>button{
  width:auto;
  border:1px solid #9ebbd2!important;
  background:#eef7ff!important;
  font-weight:700;
}
@media(max-width:760px){
  .ifp-wa-shop-commerce-flow__grid{grid-template-columns:1fr}
}


.ifp-wa-shop-commerce-flow__head h4{margin:0;color:#183248;font-size:16px;line-height:1.35}
.ifp-wa-shop-commerce-flow__head p{margin:5px 0 0;color:#465e72;font-size:11.5px;line-height:1.5}


/* 0.4.31 · Per-product type pricing and mixed assortment distribution */
.ifp-wa-shop-commerce-option__price{
  display:block;
  margin-top:7px;
  color:#173f63;
  font-size:11.5px;
  font-weight:700;
  line-height:1.4;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-commerce-flow__mix-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.ifp-wa-shop-commerce-flow__mix-grid>label,
.ifp-wa-shop-commerce-flow__mix-simple{
  display:grid;
  align-content:start;
  gap:7px;
  min-width:0;
  padding:11px 12px;
  border:1px solid #cbd9e6;
  border-radius:12px;
  background:#fff;
}
.ifp-wa-shop-commerce-flow__mix-grid span{
  color:#183248;
  font-size:12px;
  font-weight:700;
}
.ifp-wa-shop-commerce-flow__mix-grid input{
  width:100%;
  min-width:0;
}
.ifp-wa-shop-commerce-flow__mix-grid small,
.ifp-wa-shop-commerce-flow__mix-note{
  color:#465e72;
  font-size:11.5px;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-commerce-flow__mix-simple strong{
  color:#173f63;
  font-size:18px;
  line-height:1.2;
}
@media(max-width:760px){
  .ifp-wa-shop-commerce-flow__mix-grid{
    grid-template-columns:1fr;
  }
}


/* 0.4.33 · Simple-Shop quantity price visibility + compact mixed-product switch */
.ifp-wa-shop-commerce-tier__price{
  display:block;
  margin-top:6px;
  color:#173f63;
  font-size:11px;
  font-weight:800;
  line-height:1.35;
  white-space:normal;
}
.ifp-wa-shop-commerce-flow__custom-price{
  color:#173f63!important;
  font-weight:800;
}
details.ifp-wa-shop-commerce-flow__mix{
  display:block;
  padding:0;
  overflow:hidden;
}
.ifp-wa-shop-commerce-flow__mix-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px;
  cursor:pointer;
  list-style:none;
  background:#f7fbfe;
  color:#183248;
}
.ifp-wa-shop-commerce-flow__mix-summary::-webkit-details-marker{display:none}
.ifp-wa-shop-commerce-flow__mix-summary>span{
  display:grid;
  gap:3px;
  min-width:0;
}
.ifp-wa-shop-commerce-flow__mix-summary strong{
  font-size:12px;
  line-height:1.35;
}
.ifp-wa-shop-commerce-flow__mix-summary small{
  color:#465e72;
  font-size:10.5px;
  line-height:1.4;
  white-space:normal;
}
.ifp-wa-shop-commerce-flow__mix-summary em{
  flex:0 0 auto;
  max-width:42%;
  padding:5px 8px;
  border-radius:999px;
  background:#e8f2fa;
  color:#2d536f;
  font-size:10px;
  font-style:normal;
  font-weight:800;
  line-height:1.3;
  text-align:center;
  white-space:normal;
}
.ifp-wa-shop-commerce-flow__mix-body{
  padding:12px;
  border-top:1px solid #d6e1ea;
}
.ifp-wa-shop-commerce-flow__mix-body h5{margin-top:0}
@media(max-width:760px){
  .ifp-wa-shop-commerce-flow__mix-summary{
    align-items:flex-start;
    flex-direction:column;
  }
  .ifp-wa-shop-commerce-flow__mix-summary em{max-width:100%}
}

/* 0.4.34 · Separate product setup from optional WooTools expansion */
.ifp-wa-shop-commerce-flow__next,
.ifp-wa-shop-commerce-flow__product-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px;
  border:1px solid #b9d5ee;
  border-radius:14px;
  background:#fff;
}
.ifp-wa-shop-commerce-flow__next>div,
.ifp-wa-shop-commerce-flow__product-summary>div{
  min-width:0;
  display:grid;
  gap:5px;
}
.ifp-wa-shop-commerce-flow__next strong,
.ifp-wa-shop-commerce-flow__product-summary strong{
  color:#183248;
  font-size:14px;
  line-height:1.4;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-commerce-flow__next p,
.ifp-wa-shop-commerce-flow__product-summary small{
  margin:0;
  color:#465e72;
  font-size:11.5px;
  line-height:1.5;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-commerce-flow__next>button,
.ifp-wa-shop-commerce-flow__product-summary>button{
  flex:0 0 auto;
  max-width:320px;
  box-sizing:border-box;
  padding:10px 13px!important;
  border:1px solid #8fb9dc!important;
  border-radius:11px!important;
  background:#eaf5ff!important;
  color:#173f63!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.35!important;
  text-align:center!important;
  text-transform:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  box-shadow:none!important;
}
.ifp-wa-shop-commerce-flow__next>button:hover,
.ifp-wa-shop-commerce-flow__next>button:focus-visible,
.ifp-wa-shop-commerce-flow__product-summary>button:hover,
.ifp-wa-shop-commerce-flow__product-summary>button:focus-visible{
  border-color:#5f97c4!important;
  background:#dcefff!important;
}
@media(max-width:760px){
  .ifp-wa-shop-commerce-flow__next,
  .ifp-wa-shop-commerce-flow__product-summary{
    align-items:stretch;
    flex-direction:column;
  }
  .ifp-wa-shop-commerce-flow__next>button,
  .ifp-wa-shop-commerce-flow__product-summary>button{
    width:100%;
    max-width:none;
  }
}



.ifp-wa-shop-feature__followup {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(11, 41, 72, 0.14);
  border-radius: 12px;
  background: rgba(23, 105, 210, 0.04);
}
.ifp-wa-shop-feature__followup label {
  display: grid;
  gap: 8px;
}
.ifp-wa-shop-feature__followup input,
.ifp-wa-shop-feature__followup textarea {
  width: 100%;
  box-sizing: border-box;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid rgba(11, 41, 72, 0.24);
  border-radius: 8px;
  background: #fff;
  font: inherit;
}
.ifp-wa-shop-feature__followup small {
  display: block;
  margin-top: 7px;
  line-height: 1.45;
}

.ifp-wa-shop-feature__followup-required {
  display: block;
  font-weight: 700;
}

.ifp-wa-shop-feature__followup.is-required-missing input,
.ifp-wa-shop-feature__followup.is-required-missing textarea {
  outline: 1px solid currentColor;
  outline-offset: 1px;
}


/* 0.4.41 – staged Logo & Design decision inside the WooCommerce planner. */
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow{
  display:grid;
  gap:12px;
}
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options{
  margin-top:9px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options button{
  display:flex;
  min-height:86px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:4px;
  padding:10px 11px;
  text-align:left;
}
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options button b{
  font-size:11px;
  line-height:1.3;
}
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options button span{
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
.ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options button small{
  margin-top:auto;
  font-size:9px;
  font-weight:800;
}
@media (max-width:640px){
  .ifp-wa-shop-planner .ifp-wa-shop-logo-flow__options{
    grid-template-columns:1fr;
  }
}


/* 0.4.43 – shared Logo & Design inspiration flow (colors + references). */
.ifp-wa-shop-planner .ifp-wa-shop-design-brief{
  display:grid;
  gap:14px;
  margin-top:2px;
  padding-top:4px;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-brief[hidden],
.ifp-wa-shop-planner .ifp-wa-shop-design-brief__section[hidden]{
  display:none!important;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-brief__section{
  padding:13px;
  border:1px solid rgba(11,41,72,.12);
  border-radius:12px;
  background:#fbfdff;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-brief__section>strong{
  display:block;
  margin:3px 0 9px;
  color:#30475a;
  font-size:10px;
  line-height:1.45;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-brief__step{
  display:block;
  color:#667d90;
  font-size:8px;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palettes{
  margin-top:13px;
  padding-top:12px;
  border-top:1px dashed #dce5ee;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palettes>strong{
  display:block;
  color:#30475a;
  font-size:10px;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palettes>p{
  margin:4px 0 9px;
  color:#667d90;
  font-size:8px;
  line-height:1.45;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette{
  display:flex;
  min-width:0;
  min-height:118px;
  flex-direction:column;
  align-items:stretch;
  gap:5px;
  padding:8px;
  border:1px solid #dbe5ed;
  border-radius:10px;
  background:#fff;
  color:#30475a;
  text-align:left;
  cursor:pointer;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette:hover{
  border-color:#9eb7cc;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette.is-active{
  border-color:var(--ifp-wa-sp-blue);
  box-shadow:0 0 0 1px rgba(23,105,210,.12);
  background:#f6faff;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette b{
  font-size:9px;
  line-height:1.3;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette small{
  color:#6e8090;
  font-size:7.5px;
  line-height:1.4;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-auto{
  display:grid;
  min-height:54px;
  place-items:center;
  border-radius:8px;
  background:linear-gradient(135deg,#f4f8fc,#eef4ff);
  color:var(--ifp-wa-sp-blue-dark);
  font-size:22px;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-custom{
  display:grid;
  min-height:54px;
  place-items:center;
  border:1px dashed #9eb7cc;
  border-radius:8px;
  background:#fbfdff;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:22px;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-explanation{
  margin-top:9px;
  border:1px solid #dbe5ed;
  border-radius:9px;
  background:#fff;
  overflow:hidden;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-explanation>summary{
  padding:8px 10px;
  cursor:pointer;
  color:var(--ifp-wa-sp-blue-dark);
  font-size:8.5px;
  font-weight:850;
  background:#f7fafc;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-explanation>div{padding:9px 10px}
.ifp-wa-shop-planner .ifp-wa-shop-palette-explanation strong{display:block;margin-bottom:4px;color:#30475a;font-size:9px}
.ifp-wa-shop-planner .ifp-wa-shop-palette-explanation p{margin:0;color:#667d90;font-size:8px;line-height:1.5}
.ifp-wa-shop-planner .ifp-wa-shop-color-scheme-custom{margin-top:9px}
.ifp-wa-shop-planner .ifp-wa-shop-mini-site{
  display:grid;
  grid-template-columns:1.45fr .8fr;
  grid-template-rows:15px 38px;
  gap:4px;
  min-height:54px;
  padding:5px;
  border:1px solid rgba(11,41,72,.10);
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}
.ifp-wa-shop-planner .ifp-wa-shop-mini-site i{
  display:block;
  border-radius:4px;
}
.ifp-wa-shop-planner .ifp-wa-shop-mini-site i:first-child{
  grid-column:1 / -1;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="trust_blue"] .ifp-wa-shop-mini-site i:nth-child(1){background:#123b67}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="trust_blue"] .ifp-wa-shop-mini-site i:nth-child(2){background:#e8f2ff}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="trust_blue"] .ifp-wa-shop-mini-site i:nth-child(3){background:#3b82d0}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="natural_green"] .ifp-wa-shop-mini-site i:nth-child(1){background:#285b45}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="natural_green"] .ifp-wa-shop-mini-site i:nth-child(2){background:#f5f0e5}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="natural_green"] .ifp-wa-shop-mini-site i:nth-child(3){background:#82a86e}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="warm_human"] .ifp-wa-shop-mini-site i:nth-child(1){background:#74483f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="warm_human"] .ifp-wa-shop-mini-site i:nth-child(2){background:#fff2e8}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="warm_human"] .ifp-wa-shop-mini-site i:nth-child(3){background:#d58c72}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="premium_dark"] .ifp-wa-shop-mini-site i:nth-child(1){background:#17191f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="premium_dark"] .ifp-wa-shop-mini-site i:nth-child(2){background:#e9e1cd}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="premium_dark"] .ifp-wa-shop-mini-site i:nth-child(3){background:#746244}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="clean_technical"] .ifp-wa-shop-mini-site i:nth-child(1){background:#26333f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="clean_technical"] .ifp-wa-shop-mini-site i:nth-child(2){background:#edf1f4}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="clean_technical"] .ifp-wa-shop-mini-site i:nth-child(3){background:#23a6a6}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="energetic"] .ifp-wa-shop-mini-site i:nth-child(1){background:#5e2a86}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="energetic"] .ifp-wa-shop-mini-site i:nth-child(2){background:#fff0d9}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="energetic"] .ifp-wa-shop-mini-site i:nth-child(3){background:#ef6c3e}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="soft_pastel"] .ifp-wa-shop-mini-site i:nth-child(1){background:#76829e}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="soft_pastel"] .ifp-wa-shop-mini-site i:nth-child(2){background:#f4ecf6}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="soft_pastel"] .ifp-wa-shop-mini-site i:nth-child(3){background:#c9b7d8}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="ocean_teal"] .ifp-wa-shop-mini-site i:nth-child(1){background:#0b3c5d}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="ocean_teal"] .ifp-wa-shop-mini-site i:nth-child(2){background:#e8fbfa}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="ocean_teal"] .ifp-wa-shop-mini-site i:nth-child(3){background:#19a7a0}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="terracotta_sage"] .ifp-wa-shop-mini-site i:nth-child(1){background:#8b4a3c}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="terracotta_sage"] .ifp-wa-shop-mini-site i:nth-child(2){background:#f6efe4}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="terracotta_sage"] .ifp-wa-shop-mini-site i:nth-child(3){background:#8fa382}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="burgundy_gold"] .ifp-wa-shop-mini-site i:nth-child(1){background:#5f1f2f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="burgundy_gold"] .ifp-wa-shop-mini-site i:nth-child(2){background:#f7f0df}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="burgundy_gold"] .ifp-wa-shop-mini-site i:nth-child(3){background:#b8944f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="sunny_navy"] .ifp-wa-shop-mini-site i:nth-child(1){background:#152f4f}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="sunny_navy"] .ifp-wa-shop-mini-site i:nth-child(2){background:#fff8df}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="sunny_navy"] .ifp-wa-shop-mini-site i:nth-child(3){background:#f2c94c}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="monochrome"] .ifp-wa-shop-mini-site i:nth-child(1){background:#161616}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="monochrome"] .ifp-wa-shop-mini-site i:nth-child(2){background:#f7f7f7}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette[data-palette="monochrome"] .ifp-wa-shop-mini-site i:nth-child(3){background:#8a8a8a}

.ifp-wa-shop-planner .ifp-wa-shop-reference-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:7px;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-head span{
  color:#667d90;
  font-size:8px;
  font-weight:800;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-list{
  display:grid;
  gap:8px;
  margin:9px 0;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-row{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:7px;
  align-items:end;
  padding:9px;
  border:1px solid #e2e9ef;
  border-radius:9px;
  background:#fff;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-row label{
  display:grid;
  gap:4px;
  min-width:0;
  color:#526a7d;
  font-size:8px;
  font-weight:750;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-row input,
.ifp-wa-shop-planner .ifp-wa-shop-reference-row textarea{
  width:100%;
  box-sizing:border-box;
  min-height:38px;
  padding:8px 9px;
  border:1px solid #d7e1e9;
  border-radius:7px;
  background:#fff;
  color:#263d50;
  font:inherit;
  font-size:9px;
}
.ifp-wa-shop-planner .ifp-wa-shop-reference-remove{
  padding:7px 4px;
  color:#8a3c3c;
  font-size:8px;
  white-space:nowrap;
}
@media (max-width:760px){
  .ifp-wa-shop-planner .ifp-wa-shop-design-palette-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ifp-wa-shop-planner .ifp-wa-shop-reference-row{
    grid-template-columns:1fr;
  }
}
@media (max-width:460px){
  .ifp-wa-shop-planner .ifp-wa-shop-design-palette-grid{
    grid-template-columns:1fr;
  }
}


/* 0.4.46 – shared booking scenario intake after the existing booking gate. */
.ifp-wa-shop-booking-scenarios{
  margin:16px 0 4px;
  padding:16px;
  border:1px solid rgba(23,105,210,.18);
  border-radius:16px;
  background:#fbfdff;
}
.ifp-wa-shop-booking-scenarios__head strong{
  display:block;
  margin-bottom:6px;
  color:#0b2948;
  font-size:1.02rem;
}
.ifp-wa-shop-booking-scenarios__head p{
  margin:0 0 5px;
}
.ifp-wa-shop-booking-scenarios__head small{
  color:#617183;
}
.ifp-wa-shop-booking-scenarios__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.ifp-wa-shop-booking-scenarios__grid button{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 10px;
  align-items:start;
  min-height:92px;
  padding:13px;
  border:1px solid rgba(11,41,72,.14);
  border-radius:13px;
  background:#fff;
  color:#0b2948;
  text-align:left;
  cursor:pointer;
}
.ifp-wa-shop-booking-scenarios__grid button:hover,
.ifp-wa-shop-booking-scenarios__grid button:focus-visible{
  border-color:rgba(23,105,210,.55);
}
.ifp-wa-shop-booking-scenarios__grid button.is-active{
  border-color:#1769d2;
  box-shadow:0 0 0 2px rgba(23,105,210,.10);
  background:#f3f8ff;
}
.ifp-wa-shop-booking-scenarios__icon{
  grid-row:1 / span 2;
  font-size:24px;
  line-height:1.1;
}
.ifp-wa-shop-booking-scenarios__grid b{
  display:block;
}
.ifp-wa-shop-booking-scenarios__grid small{
  display:block;
  color:#617183;
  line-height:1.35;
}
.ifp-wa-shop-booking-scenarios__required{
  margin:12px 0 0;
  color:#8d2323;
  font-weight:700;
}
@media (max-width:720px){
  .ifp-wa-shop-booking-scenarios__grid{
    grid-template-columns:1fr;
  }
}



/* 0.4.48 – Booking-Szenariokarten: robuster Textumbruch gegen Theme-/Woo-Buttonstyles. */
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid,
.ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid{
  grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button,
.ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button{
  box-sizing:border-box;
  width:100%;
  min-width:0!important;
  max-width:100%;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button b,
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button small,
.ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button b,
.ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__grid button small{
  min-width:0;
  max-width:100%;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__icon,
.ifp-wa-shop-planner .ifp-wa-shop-booking-scenarios__icon{
  min-width:0;
}

/* 0.4.47 · planning-help handoff */
.ifp-wa-shop-help-dialog{
  width:min(720px,calc(100vw - 32px));
  max-height:min(88vh,820px);
  border:0;
  border-radius:18px;
  padding:0;
  box-shadow:0 24px 80px rgba(15,23,42,.24);
}
.ifp-wa-shop-help-dialog::backdrop{background:rgba(15,23,42,.55);}
.ifp-wa-shop-help-dialog__head,
.ifp-wa-shop-help-dialog__actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:18px 20px;
}
.ifp-wa-shop-help-dialog__head{border-bottom:1px solid rgba(15,23,42,.1);}
.ifp-wa-shop-help-dialog__head h4{margin:2px 0 0;}
.ifp-wa-shop-help-dialog__head>button{
  border:0;
  background:transparent;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.ifp-wa-shop-help-dialog__body{
  display:grid;
  gap:14px;
  padding:20px;
  overflow:auto;
}
.ifp-wa-shop-help-dialog__body label{display:grid;gap:6px;font-weight:600;}
.ifp-wa-shop-help-dialog__body input,
.ifp-wa-shop-help-dialog__body textarea{
  width:100%;
  box-sizing:border-box;
}
.ifp-wa-shop-help-dialog__body textarea{min-height:150px;resize:vertical;}
.ifp-wa-shop-help-dialog__status{
  padding:12px 14px;
  border-radius:10px;
  background:#fff4f2;
  border:1px solid #fecdca;
}
.ifp-wa-shop-help-dialog__actions{border-top:1px solid rgba(15,23,42,.1);}


/* v0.4.50 – erklärende Farbwelt-Infos im vorhandenen Shop-Modal-Muster. */
.ifp-wa-shop-planner .ifp-wa-shop-design-palette-option{
  position:relative;
  min-width:0;
}
.ifp-wa-shop-planner .ifp-wa-shop-design-palette-option>.ifp-wa-shop-design-palette{
  width:100%;
  height:100%;
  padding-bottom:39px;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-info{
  position:absolute;
  left:8px;
  bottom:8px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 7px;
  border:1px solid #dbe5ed;
  border-radius:999px;
  background:#fff;
  color:var(--ifp-wa-sp-blue-dark);
  font:inherit;
  font-size:8px;
  font-weight:850;
  line-height:1.2;
  cursor:pointer;
}
.ifp-wa-shop-planner .ifp-wa-shop-palette-info:hover,
.ifp-wa-shop-planner .ifp-wa-shop-palette-info:focus-visible{
  border-color:var(--ifp-wa-sp-blue);
  outline:2px solid rgba(23,105,210,.12);
  outline-offset:1px;
}
.ifp-wa-shop-palette-info-dialog__body section{
  padding:14px;
  border:1px solid rgba(15,23,42,.1);
  border-radius:12px;
  background:#f8fafc;
}
.ifp-wa-shop-palette-info-dialog__body section h5{
  margin:0 0 7px;
  color:#30475a;
  font-size:14px;
}
.ifp-wa-shop-palette-info-dialog__body section p{
  margin:0;
  color:#667d90;
  line-height:1.55;
}
.ifp-wa-shop-palette-info-dialog__body .ifp-wa-shop-palette-info-note{
  margin-bottom:10px;
  font-size:12px;
}
.ifp-wa-shop-palette-use-cases{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.ifp-wa-shop-palette-use-cases span{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:4px 8px;
  border:1px solid #dbe5ed;
  border-radius:999px;
  background:#fff;
  color:#30475a;
  font-size:11px;
  font-weight:750;
}


/* 0.4.52 – geführter Formular-Builder + echte Vorschau im Modal. */
.ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:14px 0;
  padding:14px 16px;
  border:1px solid rgba(23,105,210,.18);
  border-radius:14px;
  background:#f7fbff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch>div{
  display:grid;
  gap:3px;
  min-width:0;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch strong{
  color:#0b2948;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch small{
  color:#617183;
  line-height:1.4;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch>button{
  flex:0 0 auto;
  min-height:40px;
  padding:8px 12px;
  border:1px solid #1769d2;
  border-radius:10px;
  background:#1769d2;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  white-space:normal!important;
}

.ifp-wa-shop-planner .ifp-wa-shop-form-guided{
  display:grid;
  gap:14px;
  margin-top:14px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-guided__intro{
  display:grid;
  gap:4px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-guided__intro>strong{
  color:#0b2948;
  font-size:1rem;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-guided__intro>p{
  margin:0;
  color:#617183;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:"num title" "num meta";
  gap:1px 7px;
  align-items:center;
  min-width:0!important;
  width:100%;
  min-height:56px;
  padding:8px;
  border:1px solid #dce6ee;
  border-radius:11px;
  background:#fff;
  color:#30475a;
  text-align:left;
  font:inherit;
  cursor:pointer;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button>span{
  grid-area:num;
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:999px;
  background:#edf3f8;
  color:#526a7d;
  font-weight:850;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button>b{
  grid-area:title;
  min-width:0;
  font-size:10px;
  line-height:1.25;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button>small{
  grid-area:meta;
  min-width:0;
  color:#718394;
  font-size:8px;
  line-height:1.2;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button.is-active{
  border-color:#1769d2;
  background:#f4f8ff;
  box-shadow:0 0 0 2px rgba(23,105,210,.08);
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav>button.is-active>span{
  background:#1769d2;
  color:#fff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-panel{
  display:grid;
  gap:12px;
  min-width:0;
  padding:14px;
  border:1px solid #e0e8ef;
  border-radius:14px;
  background:#fff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-body{
  min-width:0;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-actions{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-actions>button{
  min-height:39px;
  padding:8px 13px;
  border:1px solid #cbd8e3;
  border-radius:10px;
  background:#fff;
  color:#30475a;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-actions>button.is-primary{
  margin-left:auto;
  border-color:#1769d2;
  background:#1769d2;
  color:#fff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-stage-actions>button:disabled{
  opacity:.42;
  cursor:not-allowed;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-notes-field textarea{
  width:100%;
  min-height:130px;
  box-sizing:border-box;
}

.ifp-wa-shop-form-preview-dialog{
  width:min(940px,calc(100vw - 32px));
  max-width:940px;
  max-height:min(92vh,940px);
  padding:0;
  border:0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 28px 90px rgba(15,23,42,.28);
}
.ifp-wa-shop-form-preview-dialog::backdrop{
  background:rgba(15,23,42,.58);
}
.ifp-wa-shop-form-preview-dialog__head,
.ifp-wa-shop-form-preview-dialog__actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:17px 20px;
}
.ifp-wa-shop-form-preview-dialog__head{
  border-bottom:1px solid #e6edf2;
}
.ifp-wa-shop-form-preview-dialog__head h4{
  margin:2px 0 4px;
  color:#0b2948;
}
.ifp-wa-shop-form-preview-dialog__head p{
  margin:0;
  color:#617183;
  line-height:1.45;
}
.ifp-wa-shop-form-preview-dialog__head>button{
  align-self:flex-start;
  border:0;
  background:transparent;
  color:#30475a;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.ifp-wa-shop-form-preview-dialog__body{
  max-height:calc(92vh - 150px);
  padding:20px;
  overflow:auto;
  background:#f6f8fb;
}
.ifp-wa-shop-form-preview-dialog__actions{
  justify-content:flex-end;
  border-top:1px solid #e6edf2;
}
.ifp-wa-shop-form-preview-dialog__actions>button{
  min-height:40px;
  padding:8px 14px;
  border:1px solid #1769d2;
  border-radius:10px;
  background:#1769d2;
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview{
  display:grid;
  gap:13px;
  margin-bottom:16px;
  padding:18px;
  border:1px solid #dce5ec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__head{
  display:flex;
  gap:11px;
  align-items:flex-start;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__head>span{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:36px;
  height:36px;
  border-radius:10px;
  background:#eef5ff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__head>div{
  display:grid;
  gap:3px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__head small{
  color:#6a7b8c;
  line-height:1.4;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__field{
  display:grid;
  gap:6px;
  min-width:0;
  color:#30475a;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__field>strong{
  font-size:11px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field{
  padding:10px;
  border:1px solid #e0e7ed;
  border-radius:10px;
  background:#fff;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  margin-bottom:7px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-head>span:nth-child(2){
  display:grid;
  min-width:0;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-head small{
  color:#788999;
  font-size:8px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control{
  box-sizing:border-box;
  width:100%;
  min-height:38px;
  border:1px solid #d9e1e8;
  border-radius:8px;
  background:#fbfcfd;
  color:#81909d;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-input,
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-file{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:8px 10px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-textarea{
  display:grid;
  align-content:center;
  gap:5px;
  min-height:74px;
  padding:10px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-textarea>span{
  height:5px;
  border-radius:5px;
  background:#e5ebf0;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-textarea>span.is-short{
  width:62%;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-privacy,
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__control.is-choices{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  padding:8px 10px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__canvas{
  display:grid;
  gap:9px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__submit{
  justify-self:start;
  min-height:38px;
  padding:8px 15px;
  border:0;
  border-radius:9px;
  background:#1769d2;
  color:#fff;
  font:inherit;
  font-weight:800;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__additional>h5{
  margin:6px 0 12px;
  color:#0b2948;
}

@media (max-width:860px){
  .ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ifp-wa-shop-planner .ifp-wa-shop-form-real-preview__fields{
    grid-template-columns:1fr;
  }
}
@media (max-width:560px){
  .ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch{
    align-items:stretch;
    flex-direction:column;
  }
  .ifp-wa-shop-planner .ifp-wa-shop-form-preview-launch>button{
    width:100%;
  }
  .ifp-wa-shop-planner .ifp-wa-shop-form-stage-nav{
    grid-template-columns:1fr;
  }
  .ifp-wa-shop-form-preview-dialog{
    width:calc(100vw - 18px);
    border-radius:13px;
  }
  .ifp-wa-shop-form-preview-dialog__body{
    padding:12px;
  }
}


/* ==========================================================================
   0.4.53 – Formular-Modal zeigt Feldumfang statt vermeintlichem Webdesign
   Die Vorschau im WooCommerce-Produktplaner ist bewusst eine Feldliste.
   ========================================================================== */
.ifp-wa-shop-planner .ifp-wa-shop-form-preview--fields-only{
  display:grid;
  gap:14px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__scope{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border:1px solid #bfd8f2;
  border-radius:12px;
  background:#f3f8ff;
  color:#36536d;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__scope strong{
  color:#0b2948;
  font-size:12px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__scope p{
  margin:0;
  font-size:10px;
  line-height:1.5;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-real-preview--fields-only{
  gap:12px;
  box-shadow:none;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field--fields-only{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:10px 12px!important;
  box-sizing:border-box;
  cursor:grab;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field--fields-only .ifp-wa-shop-form-preview__field-head{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) auto auto!important;
  gap:9px!important;
  align-items:center!important;
  width:100%;
  min-width:0;
  margin:0!important;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-copy{
  display:grid!important;
  gap:2px;
  min-width:0;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-copy strong{
  color:#0b2948!important;
  font-size:11px!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-copy small{
  margin:0!important;
  color:#6f8090!important;
  font-size:9px!important;
  line-height:1.35!important;
  white-space:normal!important;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview__field-badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 7px;
  border-radius:999px;
  background:#eef5fc;
  color:#315b82;
  font-size:8.5px;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-preview--fields-only .ifp-wa-shop-form-preview__canvas{
  display:grid;
  gap:7px;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-field-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-field-list li{
  display:grid;
  gap:2px;
  min-width:0;
  padding:9px 10px;
  border:1px solid #e1e8ee;
  border-radius:9px;
  background:#f9fbfd;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-field-list strong{
  color:#0b2948;
  font-size:10px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.ifp-wa-shop-planner .ifp-wa-shop-form-field-list small{
  color:#738494;
  font-size:8.5px;
}
@media (max-width:680px){
  .ifp-wa-shop-planner .ifp-wa-shop-form-preview__field--fields-only .ifp-wa-shop-form-preview__field-head{
    grid-template-columns:18px minmax(0,1fr) auto!important;
  }
  .ifp-wa-shop-planner .ifp-wa-shop-form-preview__field--fields-only .ifp-wa-shop-form-preview__moves{
    grid-column:2 / -1;
    justify-self:start;
  }
  .ifp-wa-shop-planner .ifp-wa-shop-form-field-list{
    grid-template-columns:1fr;
  }
}


/* ==========================================================================
   0.4.54 – Compact actions in the right Shop-Planner summary
   WooCommerce/themes may turn nested buttons into large full-width blocks.
   The summary/sidebar intentionally uses the same compact action language as
   the other planner controls. This is presentation-only.
   ========================================================================== */
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary button,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary button{
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:28px!important;
  height:auto!important;
  margin:0!important;
  padding:5px 9px!important;
  border-radius:8px!important;
  font-family:inherit!important;
  font-size:9px!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-align:center!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  text-shadow:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  box-shadow:none!important;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:flex-end;
  border:1px solid #d4e0ea!important;
  background:#fff!important;
  color:var(--ifp-wa-sp-blue-dark)!important;
  text-decoration:none!important;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit:hover,
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit:focus-visible,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit:hover,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__price-edit:focus-visible{
  border-color:#9ebbd5!important;
  background:#f4f8fc!important;
  color:var(--ifp-wa-sp-blue-dark)!important;
  outline:none!important;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-planner__summary-actions,
.ifp-wa-shop-planner .ifp-wa-shop-planner__summary-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border:1px solid #cbd8e3!important;
  background:#eef3f8!important;
  color:var(--ifp-wa-sp-navy)!important;
}

.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button:hover,
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button:focus-visible,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button:hover,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__summary-actions .button:focus-visible{
  border-color:#9ebbd5!important;
  background:#e4edf5!important;
  outline:none!important;
}

/* ==========================================================================
   0.4.56 – Conversion-safe purchase continuation
   The new continuation action remains compact in the sticky sidebar, but gets
   a clear ready state. It never triggers WooCommerce add-to-cart itself.
   ========================================================================== */
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"],
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"]{
  border-color:var(--ifp-wa-sp-blue)!important;
  background:var(--ifp-wa-sp-blue)!important;
  color:#fff!important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"]:hover,
.ifp-wa-product-configurator .ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"]:focus-visible,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"]:hover,
.ifp-wa-shop-planner aside.ifp-wa-shop-planner__summary .ifp-wa-shop-planner__purchase-continue[data-state="ready"]:focus-visible{
  border-color:var(--ifp-wa-sp-blue-dark)!important;
  background:var(--ifp-wa-sp-blue-dark)!important;
  color:#fff!important;
}

.ifp-wa-shop-cart-readiness{
  margin:8px 0 0;
  padding:8px 10px;
  border:1px solid #d8e3ec;
  border-radius:9px;
  background:#f8fbfd;
  color:#4f6477;
  font-size:9px;
  line-height:1.45;
}
.ifp-wa-shop-cart-readiness[data-state="ready"]{
  border-color:#c8e0d2;
  background:#f4faf6;
  color:var(--ifp-wa-sp-green,#2c6b45);
}
.ifp-wa-shop-cart-readiness[data-state="missing"],
.ifp-wa-shop-cart-readiness[data-state="retry"]{
  border-color:#ead8bd;
  background:#fffaf2;
  color:#7a4c17;
}



/* ==========================================================================
   0.4.91 – „Weiß ich nicht“ ist eine kontextbezogene Hilfe, keine Auswahl.
   Die grüne Hilfeaktion bleibt bewusst von Ja/Nein/Delegate-Entscheidungen
   getrennt; das Modal ändert weder State noch Preis.
   ========================================================================== */
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help{
  display:grid !important;
  grid-template-columns:28px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  column-gap:8px !important;
  row-gap:1px !important;
  align-items:center !important;
  justify-items:start !important;
  min-height:48px !important;
  padding:7px 10px !important;
  border:1px solid #8fd0a9 !important;
  border-radius:11px !important;
  background:#eaf8ef !important;
  color:#174f31 !important;
  box-shadow:0 1px 0 rgba(23,79,49,.04) !important;
  text-align:left !important;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices.is-binary button.ifp-wa-shop-feature__clarity-help{
  grid-column:1/-1 !important;
}

.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help>span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  background:#ccefd9;
  color:#12653a;
  font-size:15px;
  font-weight:900;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help>b{
  color:#174f31;
  font-size:10px;
  line-height:1.2;
}
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help>small{
  color:#397255;
  font-size:8.5px;
  font-weight:650;
  line-height:1.25;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help:hover,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help:hover{
  background:#dff4e7 !important;
  border-color:#62ba84 !important;
  color:#103e27 !important;
  box-shadow:0 5px 16px rgba(18,101,58,.10) !important;
}
.ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help:focus-visible,
.ifp-wa-shop-planner .ifp-wa-shop-feature__choices button.ifp-wa-shop-feature__clarity-help:focus-visible{
  outline:3px solid rgba(39,157,87,.22) !important;
  outline-offset:2px !important;
}

.ifp-wa-shop-decision-help-dialog{
  width:min(840px,calc(100vw - 28px));
  max-height:min(90vh,900px);
}
.ifp-wa-shop-decision-help-dialog__body{
  gap:16px;
  color:#324b5e;
}
.ifp-wa-shop-decision-help-dialog__lead{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:14px 15px;
  border:1px solid #b9e2c9;
  border-radius:14px;
  background:linear-gradient(135deg,#f0fbf4 0%,#fbfffc 100%);
}
.ifp-wa-shop-decision-help-dialog__lead>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#d7f2e1;
  color:#14693b;
  font-size:20px;
  font-weight:900;
}
.ifp-wa-shop-decision-help-dialog__lead strong{
  display:block;
  color:#173b50;
  font-size:16px;
  line-height:1.35;
}
.ifp-wa-shop-decision-help-dialog__lead p{
  margin:6px 0 0;
  color:#557083;
  font-size:11px;
  line-height:1.55;
}
.ifp-wa-shop-decision-help-dialog__context,
.ifp-wa-shop-decision-help-dialog__next{
  padding:15px 16px;
  border:1px solid #dce6ee;
  border-radius:13px;
  background:#f9fbfd;
}
.ifp-wa-shop-decision-help-dialog h5{
  margin:0 0 7px;
  color:#173b50;
  font-size:13px;
}
.ifp-wa-shop-decision-help-dialog__context p,
.ifp-wa-shop-decision-help-dialog__next p{
  margin:0;
  color:#435e72;
  font-size:11.5px;
  line-height:1.65;
}
.ifp-wa-shop-decision-help-dialog__context p+p{
  margin-top:9px;
  padding-top:9px;
  border-top:1px dashed #d7e2ea;
}
.ifp-wa-shop-decision-help-dialog__choices{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.ifp-wa-shop-decision-help-dialog__choices>section{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:9px;
  align-items:start;
  min-width:0;
  padding:13px;
  border:1px solid #dce5ec;
  border-radius:13px;
  background:#fff;
}
.ifp-wa-shop-decision-help-dialog__choices>section[hidden]{display:none !important;}
.ifp-wa-shop-decision-help-dialog__choices>section>span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  font-weight:900;
}
.ifp-wa-shop-decision-help-dialog__choices>section.is-yes>span{
  background:#e4f6eb;
  color:#197247;
}
.ifp-wa-shop-decision-help-dialog__choices>section.is-no>span{
  background:#f1f3f5;
  color:#4a6072;
}
.ifp-wa-shop-decision-help-dialog__choices>section.is-delegate>span{
  background:#eaf2ff;
  color:#1769d2;
}
.ifp-wa-shop-decision-help-dialog__choices h5{
  margin:1px 0 5px;
  font-size:11.5px;
}
.ifp-wa-shop-decision-help-dialog__choices p{
  margin:0;
  color:#526b7d;
  font-size:10.5px;
  line-height:1.55;
}
.ifp-wa-shop-decision-help-dialog__next{
  border-color:#cbdff2;
  background:#f4f9ff;
}
.ifp-wa-shop-decision-help-dialog__next small{
  display:block;
  margin-top:8px;
  color:#60788a;
  font-size:10px;
  line-height:1.45;
}
.ifp-wa-shop-decision-help-dialog .ifp-wa-shop-help-dialog__actions{
  justify-content:flex-end;
}
.ifp-wa-shop-decision-help-dialog .ifp-wa-shop-help-dialog__actions .button-primary{
  min-height:40px;
  padding:8px 16px;
}

@media(max-width:760px){
  .ifp-wa-shop-decision-help-dialog__choices{
    grid-template-columns:1fr;
  }
}
@media(max-width:520px){
  .ifp-wa-product-configurator .ifp-wa-shop-planner .ifp-wa-shop-feature__choices,
  .ifp-wa-shop-planner .ifp-wa-shop-feature__choices{
    grid-template-columns:1fr !important;
  }
  .ifp-wa-shop-decision-help-dialog__lead{
    grid-template-columns:34px minmax(0,1fr);
    padding:12px;
  }
  .ifp-wa-shop-decision-help-dialog__lead>span{
    width:34px;
    height:34px;
    font-size:17px;
  }
}


/* 0.5.6 — shared project material flow for own texts/documents. */
.ifp-wa-shop-text-material{
  margin:18px 0 22px;
  padding:18px;
  border:1px solid rgba(18,72,119,.18);
  border-radius:16px;
  background:#f8fbff;
}
.ifp-wa-shop-text-material__head h5{margin:4px 0 6px;font-size:18px}
.ifp-wa-shop-text-material__head p{margin:0;color:#50657a}
.ifp-wa-shop-text-material__head span{
  display:inline-block;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ifp-wa-shop-text-material__choices{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.ifp-wa-shop-text-material__choices button{
  min-width:0;
  padding:13px;
  border:1px solid rgba(18,72,119,.2);
  border-radius:12px;
  background:#fff;
  text-align:left;
  cursor:pointer;
}
.ifp-wa-shop-text-material__choices button strong,
.ifp-wa-shop-text-material__choices button small{display:block}
.ifp-wa-shop-text-material__choices button small{margin-top:4px;color:#5b6d7f}
.ifp-wa-shop-text-material__choices button.is-selected,
.ifp-wa-shop-text-material__choices button[aria-pressed="true"]{
  border-color:#1f6ed4;
  box-shadow:0 0 0 2px rgba(31,110,212,.12);
}
.ifp-wa-shop-text-material__upload{
  margin-top:14px;
  padding:14px;
  border-radius:12px;
  background:#fff;
}
.ifp-wa-shop-text-material__upload[hidden]{display:none!important}
.ifp-wa-shop-text-material__upload label{display:block;margin-bottom:12px}
.ifp-wa-shop-text-material__upload label>strong{display:block;margin-bottom:6px}
.ifp-wa-shop-text-material__upload textarea,
.ifp-wa-shop-text-material__upload input[type="file"]{width:100%;box-sizing:border-box}
.ifp-wa-shop-text-material__actions{margin:12px 0}
.ifp-wa-shop-text-material__status{
  margin:10px 0;
  padding:9px 11px;
  border-radius:8px;
  background:#edf7ef;
}
.ifp-wa-shop-text-material__status.is-error{background:#fff0f0}
.ifp-wa-shop-text-material__files{display:grid;gap:8px;margin-top:12px}
.ifp-wa-shop-text-material__file{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid rgba(18,72,119,.14);
  border-radius:10px;
}
.ifp-wa-shop-text-material__file strong,
.ifp-wa-shop-text-material__file small{display:block;overflow-wrap:anywhere}
.ifp-wa-shop-text-material__file small{margin-top:2px;color:#647688}
.ifp-wa-shop-text-material__project-note{margin:12px 0 0;color:#5b6d7f;font-size:13px}
@media (max-width:820px){
  .ifp-wa-shop-text-material__choices{grid-template-columns:1fr}
  .ifp-wa-shop-text-material__file{align-items:flex-start;flex-direction:column}
}


/* v0.5.11 – card text wrap/readability fix */
.ifp-wa-feature-card,
.ifp-wa-option-card,
.ifp-wa-module-card,
.ifp-wa-rec-card,
.ifp-sp-card,
.ifp-sp-option-card,
.ifp-sp-module-card{
  min-width:0;
}

.ifp-wa-feature-card *,
.ifp-wa-option-card *,
.ifp-wa-module-card *,
.ifp-wa-rec-card *,
.ifp-sp-card *,
.ifp-sp-option-card *,
.ifp-sp-module-card *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

.ifp-wa-feature-card b,
.ifp-wa-feature-card strong,
.ifp-wa-feature-card h3,
.ifp-wa-feature-card h4,
.ifp-wa-feature-card [class*="title"],
.ifp-wa-option-card b,
.ifp-wa-option-card strong,
.ifp-wa-option-card h3,
.ifp-wa-option-card h4,
.ifp-wa-option-card [class*="title"],
.ifp-wa-module-card b,
.ifp-wa-module-card strong,
.ifp-wa-module-card h3,
.ifp-wa-module-card h4,
.ifp-wa-module-card [class*="title"],
.ifp-wa-rec-card b,
.ifp-wa-rec-card strong,
.ifp-wa-rec-card h3,
.ifp-wa-rec-card h4,
.ifp-wa-rec-card [class*="title"],
.ifp-sp-card b,
.ifp-sp-card strong,
.ifp-sp-card h3,
.ifp-sp-card h4,
.ifp-sp-card [class*="title"],
.ifp-sp-option-card b,
.ifp-sp-option-card strong,
.ifp-sp-option-card h3,
.ifp-sp-option-card h4,
.ifp-sp-option-card [class*="title"],
.ifp-sp-module-card b,
.ifp-sp-module-card strong,
.ifp-sp-module-card h3,
.ifp-sp-module-card h4,
.ifp-sp-module-card [class*="title"]{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;
  line-height:1.28;
}

.ifp-wa-feature-card p,
.ifp-wa-feature-card small,
.ifp-wa-feature-card span,
.ifp-wa-option-card p,
.ifp-wa-option-card small,
.ifp-wa-option-card span,
.ifp-wa-module-card p,
.ifp-wa-module-card small,
.ifp-wa-module-card span,
.ifp-wa-rec-card p,
.ifp-wa-rec-card small,
.ifp-wa-rec-card span,
.ifp-sp-card p,
.ifp-sp-card small,
.ifp-sp-card span,
.ifp-sp-option-card p,
.ifp-sp-option-card small,
.ifp-sp-option-card span,
.ifp-sp-module-card p,
.ifp-sp-module-card small,
.ifp-sp-module-card span{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;
  line-height:1.45;
}

.ifp-wa-feature-card .ifp-wa-badge,
.ifp-wa-feature-card .ifp-wa-chip,
.ifp-wa-option-card .ifp-wa-badge,
.ifp-wa-option-card .ifp-wa-chip,
.ifp-wa-module-card .ifp-wa-badge,
.ifp-wa-module-card .ifp-wa-chip,
.ifp-wa-rec-card .ifp-wa-badge,
.ifp-wa-rec-card .ifp-wa-chip,
.ifp-sp-card .ifp-wa-badge,
.ifp-sp-card .ifp-wa-chip,
.ifp-sp-option-card .ifp-wa-badge,
.ifp-sp-option-card .ifp-wa-chip,
.ifp-sp-module-card .ifp-wa-badge,
.ifp-sp-module-card .ifp-wa-chip{
  white-space:normal;
  text-wrap:balance;
  line-height:1.25;
}

.ifp-wa-feature-card,
.ifp-wa-option-card,
.ifp-wa-module-card,
.ifp-wa-rec-card,
.ifp-sp-card,
.ifp-sp-option-card,
.ifp-sp-module-card{
  height:auto;
}

.ifp-wa-feature-card [class*="content"],
.ifp-wa-feature-card [class*="body"],
.ifp-wa-option-card [class*="content"],
.ifp-wa-option-card [class*="body"],
.ifp-wa-module-card [class*="content"],
.ifp-wa-module-card [class*="body"],
.ifp-wa-rec-card [class*="content"],
.ifp-wa-rec-card [class*="body"],
.ifp-sp-card [class*="content"],
.ifp-sp-card [class*="body"],
.ifp-sp-option-card [class*="content"],
.ifp-sp-option-card [class*="body"],
.ifp-sp-module-card [class*="content"],
.ifp-sp-module-card [class*="body"]{
  min-width:0;
}

@media (max-width: 1280px){
  .ifp-wa-feature-card,
  .ifp-wa-option-card,
  .ifp-wa-module-card,
  .ifp-wa-rec-card,
  .ifp-sp-card,
  .ifp-sp-option-card,
  .ifp-sp-module-card{
    align-content:start;
  }
}
