/* Indoor Plant Finder v1.6.0 — critical gates + confidence + expandable comparison + starter image support */
.ipf-finder{
  --ipf-forest:#173c2b;
  --ipf-forest-2:#24523a;
  --ipf-ink:#202722;
  --ipf-muted:#687169;
  --ipf-faint:#90958f;
  --ipf-paper:#fffefa;
  --ipf-wash:#f6f5ef;
  --ipf-line:#d9dcd5;
  --ipf-line-dark:#c8cdc5;
  --ipf-select:#eef4ef;
  --ipf-danger:#9b4039;
  --ipf-warning:#82651f;
  --ipf-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
  width:100%!important;
  max-width:1080px!important;
  min-width:0!important;
  margin:28px auto!important;
  padding:0!important;
  color:var(--ipf-ink)!important;
  font-family:var(--ipf-font)!important;
  font-size:15px!important;
  line-height:1.5!important;
  text-align:left!important;
  letter-spacing:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  isolation:isolate!important;
  container-type:inline-size!important;
}
.ipf-finder,.ipf-finder *,.ipf-finder *::before,.ipf-finder *::after{box-sizing:border-box!important;}
.ipf-finder :where(h1,h2,h3,h4,h5,p,ol,ul,dl,dt,dd,figure){margin:0!important;padding:0!important;}
.ipf-finder :where(button,input,label,select,textarea){font:inherit!important;letter-spacing:normal!important;text-transform:none!important;word-break:normal!important;overflow-wrap:normal!important;writing-mode:horizontal-tb!important;}
.ipf-finder img{display:block!important;max-width:100%!important;height:auto!important;}
.ipf-finder svg{display:block!important;width:100%!important;height:100%!important;fill:none!important;stroke:currentColor!important;stroke-width:1.55!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.ipf-finder button:focus-visible,.ipf-finder [tabindex]:focus-visible{outline:2px solid #6f927d!important;outline-offset:3px!important;}

.ipf-shell{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:590px!important;
  border:1px solid var(--ipf-line-dark)!important;
  background:var(--ipf-paper)!important;
  overflow:hidden!important;
}
.ipf-rail{display:flex!important;flex-direction:column!important;min-width:0!important;padding:27px 23px 22px!important;background:var(--ipf-forest)!important;color:#edf1ec!important;}
.ipf-brand{display:flex!important;align-items:center!important;gap:9px!important;color:#f4f6f2!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;}
.ipf-brandmark{width:23px!important;height:23px!important;color:#c6d4ca!important;flex:0 0 23px!important;}
.ipf-rail-copy{margin-top:58px!important;}
.ipf-rail-copy>span,.ipf-rail-result>span,.ipf-rail-progress>span{display:block!important;margin-bottom:8px!important;color:#a9bbb0!important;font-size:9px!important;font-weight:750!important;letter-spacing:.14em!important;text-transform:uppercase!important;}
.ipf-rail-copy h2{color:#fff!important;font-size:26px!important;line-height:1.1!important;font-weight:580!important;letter-spacing:-.035em!important;}
.ipf-rail-copy p,.ipf-rail-result p{margin-top:13px!important;color:#bdc9c1!important;font-size:11px!important;line-height:1.62!important;}
.ipf-rail-progress{margin-top:44px!important;padding-top:18px!important;border-top:1px solid rgba(255,255,255,.12)!important;}
.ipf-rail-progress strong{display:block!important;color:#fff!important;font-size:17px!important;font-weight:620!important;}
.ipf-progress-track{position:relative!important;height:3px!important;margin-top:13px!important;background:rgba(255,255,255,.14)!important;overflow:hidden!important;}
.ipf-progress-track span{display:block!important;height:100%!important;background:#d8e3db!important;transition:width .28s ease!important;}
.ipf-rail-progress small{display:block!important;margin-top:8px!important;color:#9fb0a6!important;font-size:9px!important;font-weight:650!important;}
.ipf-rail-result{margin-top:44px!important;padding-top:18px!important;border-top:1px solid rgba(255,255,255,.12)!important;}
.ipf-rail-result strong{display:block!important;color:#fff!important;font-size:18px!important;font-weight:620!important;}
.ipf-rail-foot{display:flex!important;flex-direction:column!important;gap:4px!important;margin-top:auto!important;padding-top:24px!important;color:#90a197!important;font-size:9px!important;}

.ipf-main{min-width:0!important;padding:38px 42px 32px!important;background:var(--ipf-paper)!important;overflow:hidden!important;}
.ipf-mobile-top,.ipf-mobile-brand{display:none!important;}
.ipf-overline{display:block!important;margin-bottom:9px!important;color:#5b7063!important;font-size:9px!important;line-height:1.2!important;font-weight:760!important;letter-spacing:.14em!important;text-transform:uppercase!important;}

.ipf-question-screen{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;min-height:500px!important;max-width:760px!important;margin:0 auto!important;outline:0!important;}
.ipf-question-intro{max-width:660px!important;margin-bottom:24px!important;}
.ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3{color:var(--ipf-ink)!important;font-size:31px!important;line-height:1.1!important;font-weight:610!important;letter-spacing:-.035em!important;}
.ipf-question-intro p,.ipf-results-head p{max-width:630px!important;margin-top:10px!important;color:var(--ipf-muted)!important;font-size:13px!important;line-height:1.62!important;}
.ipf-question-meta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:11px!important;padding-top:17px!important;border-top:1px solid #e2e4de!important;color:var(--ipf-faint)!important;font-size:8.5px!important;font-weight:740!important;letter-spacing:.06em!important;text-transform:uppercase!important;}

.ipf-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;min-width:0!important;}
.ipf-finder button.ipf-choice{
  all:unset!important;
  box-sizing:border-box!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 20px!important;
  gap:11px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:76px!important;
  padding:13px 14px!important;
  border:1px solid var(--ipf-line)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:var(--ipf-ink)!important;
  cursor:pointer!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;
  line-height:1.35!important;
  transition:border-color .16s ease,background .16s ease,transform .16s ease!important;
}
.ipf-finder button.ipf-choice:hover{border-color:#aab4ab!important;background:#fdfefa!important;}
.ipf-finder button.ipf-choice:active{transform:translateY(1px)!important;}
.ipf-finder button.ipf-choice.is-selected{border-color:#75917f!important;background:var(--ipf-select)!important;box-shadow:inset 3px 0 0 var(--ipf-forest)!important;}
.ipf-choice-icon{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;padding:8px!important;border:1px solid #e0e3dc!important;border-radius:4px!important;background:#f8f8f4!important;color:#56665b!important;}
.ipf-choice.is-selected .ipf-choice-icon{border-color:#c7d5cb!important;color:var(--ipf-forest)!important;}
.ipf-choice-copy{display:block!important;min-width:0!important;max-width:100%!important;}
.ipf-choice-copy strong{display:block!important;color:var(--ipf-ink)!important;font-size:13px!important;line-height:1.28!important;font-weight:690!important;white-space:normal!important;word-break:normal!important;}
.ipf-choice-copy small{display:block!important;margin-top:4px!important;color:var(--ipf-muted)!important;font-size:10.5px!important;line-height:1.4!important;white-space:normal!important;word-break:normal!important;}
.ipf-choice-check{display:none!important;width:18px!important;height:18px!important;padding:3px!important;color:var(--ipf-forest)!important;}
.ipf-choice.is-selected .ipf-choice-check{display:block!important;}
.ipf-question-screen.is-answering .ipf-choice:not(.is-selected){opacity:.58!important;}

.ipf-question-footer{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:10px!important;margin-top:22px!important;padding-top:16px!important;border-top:1px solid #e0e3dd!important;}
.ipf-auto-note{grid-column:2!important;color:var(--ipf-faint)!important;font-size:9px!important;line-height:1.35!important;text-align:center!important;}
.ipf-finder button.ipf-back,.ipf-finder button.ipf-restart,.ipf-finder button.ipf-adjust,.ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 14px!important;
  border:1px solid var(--ipf-line-dark)!important;
  border-radius:4px!important;
  background:#fff!important;
  color:var(--ipf-forest)!important;
  cursor:pointer!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.ipf-finder button.ipf-back{justify-self:start!important;}
.ipf-finder button.ipf-back:hover,.ipf-finder button.ipf-restart:hover,.ipf-finder button.ipf-adjust:hover,.ipf-finder button.ipf-result-prev:hover:not(:disabled){background:#f4f6f1!important;}

.ipf-enter-forward{animation:ipf-question-forward .24s ease both!important;}
.ipf-enter-back{animation:ipf-question-back .24s ease both!important;}
@keyframes ipf-question-forward{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
@keyframes ipf-question-back{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}

.ipf-loading,.ipf-result-message{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-height:500px!important;max-width:620px!important;margin:0 auto!important;}
.ipf-loading-mark,.ipf-message-icon{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;margin-bottom:22px!important;padding:13px!important;border:1px solid #cfdbd2!important;border-radius:50%!important;background:#f2f6f1!important;color:var(--ipf-forest)!important;}
.ipf-loading p,.ipf-result-message p{margin-top:11px!important;color:var(--ipf-muted)!important;font-size:13px!important;line-height:1.6!important;}
.ipf-loading-line{width:100%!important;height:3px!important;margin-top:24px!important;background:#e4e7e1!important;overflow:hidden!important;}
.ipf-loading-line span{display:block!important;width:35%!important;height:100%!important;background:var(--ipf-forest)!important;animation:ipf-load 1.1s ease-in-out infinite alternate!important;}
@keyframes ipf-load{from{transform:translateX(-20%)}to{transform:translateX(200%)}}
.ipf-result-message .ipf-adjust,.ipf-result-message .ipf-restart{margin-top:22px!important;}

.ipf-results-screen{width:100%!important;min-width:0!important;max-width:780px!important;margin:0 auto!important;}
.ipf-results-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important;}
.ipf-results-head>div{min-width:0!important;}
.ipf-results-head h3{font-size:27px!important;}
.ipf-results-head p{font-size:12px!important;}
.ipf-result-position{display:flex!important;align-items:baseline!important;gap:4px!important;flex:0 0 auto!important;margin-top:2px!important;color:#858d87!important;font-size:10px!important;font-weight:650!important;white-space:nowrap!important;}
.ipf-result-position strong{color:var(--ipf-forest)!important;font-size:17px!important;font-weight:760!important;}
.ipf-result-viewer{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;outline:0!important;touch-action:pan-y!important;}
.ipf-result-enter-forward{animation:ipf-result-forward .22s ease both!important;}
.ipf-result-enter-back{animation:ipf-result-back .22s ease both!important;}
@keyframes ipf-result-forward{from{opacity:.25;transform:translateX(18px)}to{opacity:1;transform:none}}
@keyframes ipf-result-back{from{opacity:.25;transform:translateX(-18px)}to{opacity:1;transform:none}}

.ipf-result-card{
  display:grid!important;
  grid-template-columns:minmax(220px,40%) minmax(0,1fr)!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  border:1px solid #d8ddd7!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.ipf-result-card.is-best{border-color:#8fa697!important;box-shadow:inset 0 3px 0 var(--ipf-forest)!important;}
.ipf-result-image{position:relative!important;min-width:0!important;min-height:350px!important;background:#eef2ec!important;overflow:hidden!important;}
.ipf-result-image img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;margin:0!important;border:0!important;}
.ipf-best-badge{position:absolute!important;top:12px!important;left:12px!important;z-index:2!important;padding:6px 8px!important;border-radius:3px!important;background:rgba(23,60,43,.94)!important;color:#fff!important;font-size:8px!important;line-height:1!important;font-weight:760!important;letter-spacing:.07em!important;text-transform:uppercase!important;}
.ipf-result-body{display:flex!important;flex-direction:column!important;min-width:0!important;padding:22px 22px 20px!important;}
.ipf-result-score{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:8px!important;}
.ipf-result-score>span{color:#627469!important;font-size:8.5px!important;font-weight:760!important;letter-spacing:.07em!important;text-transform:uppercase!important;}
.ipf-result-score strong{color:var(--ipf-forest)!important;font-size:23px!important;line-height:1!important;font-weight:760!important;}
.ipf-result-score small{font-size:11px!important;font-weight:700!important;}
.ipf-result-card h4{color:var(--ipf-ink)!important;font-size:25px!important;line-height:1.08!important;font-weight:650!important;letter-spacing:-.03em!important;word-break:normal!important;}
.ipf-result-card em{display:block!important;margin-top:4px!important;color:#818983!important;font-size:11px!important;line-height:1.35!important;font-style:italic!important;}
.ipf-match-summary{margin-top:13px!important;color:#536058!important;font-size:12.5px!important;line-height:1.55!important;}
.ipf-card-facts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:16px!important;border-top:1px solid #e3e6e0!important;border-bottom:1px solid #e3e6e0!important;}
.ipf-card-facts>span{min-width:0!important;padding:10px 8px!important;border-right:1px solid #e3e6e0!important;}
.ipf-card-facts>span:last-child{border-right:0!important;}
.ipf-card-facts small{display:block!important;color:#929791!important;font-size:7.5px!important;font-weight:760!important;letter-spacing:.06em!important;text-transform:uppercase!important;}
.ipf-card-facts b{display:block!important;margin-top:3px!important;color:#455149!important;font-size:9.5px!important;line-height:1.3!important;font-weight:680!important;word-break:normal!important;}
.ipf-card-reasons{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:13px!important;}
.ipf-card-reasons span{display:flex!important;align-items:flex-start!important;gap:6px!important;color:#335a43!important;font-size:10px!important;line-height:1.4!important;font-weight:650!important;}
.ipf-card-reasons svg{width:12px!important;height:12px!important;flex:0 0 12px!important;margin-top:1px!important;}
.ipf-dos-donts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:14px!important;}
.ipf-do-line{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:7px!important;align-items:start!important;min-width:0!important;padding:8px 9px!important;border-left:2px solid #aab7ad!important;background:#f7f7f3!important;}
.ipf-do-line.is-do{border-left-color:#71947d!important;}
.ipf-do-line.is-dont{border-left-color:#b28b72!important;background:#faf7f3!important;}
.ipf-do-line b{font-size:7.5px!important;line-height:1.4!important;text-transform:uppercase!important;letter-spacing:.055em!important;color:#4f5d54!important;}
.ipf-do-line span{min-width:0!important;color:#5f6862!important;font-size:9px!important;line-height:1.4!important;word-break:normal!important;}
.ipf-card-caution{display:flex!important;align-items:flex-start!important;gap:6px!important;margin-top:11px!important;color:#7a6440!important;font-size:9px!important;line-height:1.4!important;}
.ipf-card-caution svg{width:13px!important;height:13px!important;flex:0 0 13px!important;margin-top:1px!important;}

.ipf-result-nav{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:10px!important;margin-top:12px!important;padding-top:12px!important;border-top:1px solid #e0e3dd!important;}
.ipf-finder button.ipf-result-prev{justify-self:start!important;}
.ipf-finder button.ipf-result-next{justify-self:end!important;border-color:var(--ipf-forest)!important;background:var(--ipf-forest)!important;color:#fff!important;}
.ipf-finder button.ipf-result-next:hover:not(:disabled){background:#102e21!important;}
.ipf-finder button.ipf-result-prev:disabled,.ipf-finder button.ipf-result-next:disabled{opacity:.34!important;cursor:not-allowed!important;}
.ipf-result-dots{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-width:56px!important;}
.ipf-result-dots i{display:block!important;width:5px!important;height:5px!important;border-radius:50%!important;background:#ced4cf!important;}
.ipf-result-dots i.is-active{width:15px!important;border-radius:8px!important;background:var(--ipf-forest)!important;}
.ipf-result-footer{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:14px!important;padding-top:13px!important;border-top:1px solid #e7e8e3!important;}

@container (max-width:820px){
  .ipf-shell{display:block!important;min-height:0!important;}
  .ipf-rail{display:none!important;}
  .ipf-main{padding:27px 24px 28px!important;}
  .ipf-mobile-top{display:block!important;margin-bottom:24px!important;}
  .ipf-mobile-brand{display:flex!important;align-items:center!important;gap:8px!important;color:var(--ipf-forest)!important;font-size:10px!important;}
  .ipf-mobile-brand>span{width:22px!important;height:22px!important;}
  .ipf-mobile-brand--solo{display:flex!important;margin-bottom:24px!important;padding-bottom:12px!important;border-bottom:1px solid #dedfd9!important;}
  .ipf-mobile-progress{display:flex!important;align-items:center!important;gap:9px!important;margin-top:12px!important;}
  .ipf-mobile-progress>span{flex:0 0 auto!important;color:#718077!important;font-size:9px!important;font-weight:730!important;}
  .ipf-mobile-progress>div{height:3px!important;flex:1!important;background:#e3e7e1!important;overflow:hidden!important;}
  .ipf-mobile-progress i{display:block!important;height:100%!important;background:var(--ipf-forest)!important;transition:width .25s ease!important;}
  .ipf-question-screen{min-height:0!important;justify-content:flex-start!important;}
  .ipf-result-card{grid-template-columns:minmax(190px,36%) minmax(0,1fr)!important;}
  .ipf-result-image{min-height:330px!important;}
}

@container (max-width:620px){
  .ipf-main{padding:21px 16px 24px!important;}
  .ipf-mobile-top{margin-bottom:20px!important;}
  .ipf-question-intro{margin-bottom:20px!important;}
  .ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3{font-size:25px!important;line-height:1.12!important;}
  .ipf-question-intro p,.ipf-results-head p{font-size:12px!important;line-height:1.55!important;}
  .ipf-question-meta{margin-bottom:10px!important;padding-top:14px!important;}
  .ipf-choice-grid{grid-template-columns:1fr!important;gap:8px!important;}
  .ipf-finder button.ipf-choice{min-height:66px!important;grid-template-columns:34px minmax(0,1fr) 18px!important;gap:10px!important;padding:10px 11px!important;}
  .ipf-choice-icon{width:32px!important;height:32px!important;padding:7px!important;}
  .ipf-choice-copy strong{font-size:12.5px!important;}
  .ipf-choice-copy small{font-size:10px!important;}
  .ipf-question-footer{grid-template-columns:auto 1fr!important;margin-top:16px!important;padding-top:13px!important;}
  .ipf-auto-note{grid-column:2!important;text-align:right!important;font-size:8.5px!important;}

  .ipf-results-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;margin-bottom:14px!important;}
  .ipf-results-head p{grid-column:1 / -1!important;}
  .ipf-result-position{margin-top:1px!important;}
  .ipf-result-card,.ipf-result-card.is-best{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;}
  .ipf-result-image{width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:4/3!important;max-height:290px!important;}
  .ipf-result-body{width:100%!important;min-width:0!important;padding:17px 15px 16px!important;}
  .ipf-result-card h4{font-size:22px!important;}
  .ipf-match-summary{font-size:11.5px!important;line-height:1.5!important;}
  .ipf-card-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:13px!important;}
  .ipf-card-facts>span{padding:8px 5px!important;}
  .ipf-card-facts b{font-size:8.5px!important;overflow-wrap:anywhere!important;}
  .ipf-card-reasons span{font-size:9.5px!important;}
  .ipf-dos-donts{grid-template-columns:1fr!important;margin-top:12px!important;}
  .ipf-do-line{padding:8px!important;}
  .ipf-do-line span{font-size:9px!important;}
  .ipf-result-nav{grid-template-columns:1fr auto 1fr!important;gap:6px!important;}
  .ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next{min-height:44px!important;padding:0 11px!important;font-size:10px!important;}
  .ipf-result-footer{justify-content:stretch!important;}
  .ipf-result-footer button{flex:1!important;}
  .ipf-loading,.ipf-result-message{min-height:380px!important;}
}

@container (max-width:390px){
  .ipf-main{padding:18px 12px 20px!important;}
  .ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3{font-size:23px!important;}
  .ipf-question-meta{display:block!important;}
  .ipf-question-meta span:last-child{display:none!important;}
  .ipf-auto-note{display:none!important;}
  .ipf-question-footer{grid-template-columns:1fr!important;}
  .ipf-finder button.ipf-back{min-height:40px!important;padding:0 12px!important;}
  .ipf-results-head{grid-template-columns:minmax(0,1fr) auto!important;}
  .ipf-results-head p{display:none!important;}
  .ipf-result-image{aspect-ratio:1/1!important;max-height:250px!important;}
  .ipf-result-body{padding:15px 12px 14px!important;}
  .ipf-result-score strong{font-size:21px!important;}
  .ipf-result-card h4{font-size:21px!important;}
  .ipf-card-facts b{font-size:8px!important;}
  .ipf-finder button.ipf-result-prev span,.ipf-finder button.ipf-result-next span{display:none!important;}
  .ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next{width:44px!important;min-width:44px!important;padding:0!important;}
  .ipf-result-footer{display:grid!important;grid-template-columns:1fr 1fr!important;}
}

/* Viewport fallbacks for browsers/themes where container queries are unavailable or shortcode width tracks the viewport. */
@media (max-width:760px){
  .ipf-shell{display:block!important;min-height:0!important;}
  .ipf-rail{display:none!important;}
  .ipf-main{padding:21px 16px 24px!important;}
  .ipf-mobile-top{display:block!important;margin-bottom:20px!important;}
  .ipf-mobile-brand{display:flex!important;align-items:center!important;gap:8px!important;color:var(--ipf-forest)!important;font-size:10px!important;}
  .ipf-mobile-brand>span{width:22px!important;height:22px!important;}
  .ipf-mobile-brand--solo{display:flex!important;margin-bottom:22px!important;padding-bottom:12px!important;border-bottom:1px solid #dedfd9!important;}
  .ipf-mobile-progress{display:flex!important;align-items:center!important;gap:9px!important;margin-top:12px!important;}
  .ipf-mobile-progress>span{color:#718077!important;font-size:9px!important;font-weight:730!important;}
  .ipf-mobile-progress>div{height:3px!important;flex:1!important;background:#e3e7e1!important;overflow:hidden!important;}
  .ipf-mobile-progress i{display:block!important;height:100%!important;background:var(--ipf-forest)!important;}
  .ipf-question-screen{min-height:0!important;}
  .ipf-choice-grid{grid-template-columns:1fr!important;}
  .ipf-result-card,.ipf-result-card.is-best{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;}
  .ipf-result-image{width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:4/3!important;max-height:290px!important;}
  .ipf-result-body{width:100%!important;min-width:0!important;padding:17px 15px 16px!important;}
  .ipf-dos-donts{grid-template-columns:1fr!important;}
}

@media (prefers-reduced-motion:reduce){
  .ipf-finder *{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}

/* v1.4.3 — expressive consultation UI + final shortlist overview */
.ipf-finder{
  --ipf-display:Georgia,"Times New Roman",Times,serif;
  --ipf-label:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  --ipf-forest:#153b2a;
  --ipf-emerald:#2b7a55;
  --ipf-ink:#17211b;
  --ipf-muted:#657168;
  --ipf-paper:#fffdf8;
  --ipf-wash:#f7f3ea;
  --ipf-line:#e5e0d5;
  --ipf-accent:#2f7b54;
  --ipf-accent-soft:#eef8f1;
  --ipf-accent-ink:#245c40;
  margin:32px auto!important;
}
.ipf-theme-light{--ipf-accent:#d89a2b;--ipf-accent-soft:#fff5d8;--ipf-accent-ink:#7b5411;}
.ipf-theme-window_distance,.ipf-theme-direct_sun{--ipf-accent:#cf8e28;--ipf-accent-soft:#fff3d3;--ipf-accent-ink:#77500d;}
.ipf-theme-placement{--ipf-accent:#cf7355;--ipf-accent-soft:#fff0e9;--ipf-accent-ink:#82412f;}
.ipf-theme-water_style{--ipf-accent:#558eae;--ipf-accent-soft:#eaf5fb;--ipf-accent-ink:#2e617e;}
.ipf-theme-care{--ipf-accent:#8371a7;--ipf-accent-soft:#f2eef9;--ipf-accent-ink:#574675;}
.ipf-theme-pet_safe{--ipf-accent:#c46884;--ipf-accent-soft:#fceef3;--ipf-accent-ink:#7d3d52;}
.ipf-theme-appearance{--ipf-accent:#4d8b5e;--ipf-accent-soft:#edf7ef;--ipf-accent-ink:#2d603b;}
.ipf-theme-results{--ipf-accent:#2f7b54;--ipf-accent-soft:#edf7f1;--ipf-accent-ink:#245f42;}
.ipf-theme-overview{--ipf-accent:#6f5b88;--ipf-accent-soft:#f4eff9;--ipf-accent-ink:#4e3d64;}

.ipf-shell{
  position:relative!important;
  min-height:610px!important;
  border:1px solid #ded8cc!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 22px 70px rgba(41,49,43,.12)!important;
  overflow:hidden!important;
}
.ipf-shell::before{content:""!important;position:absolute!important;z-index:4!important;top:0!important;left:0!important;right:0!important;height:5px!important;background:var(--ipf-accent)!important;}
.ipf-rail{position:relative!important;padding:32px 25px 25px!important;background:linear-gradient(160deg,#113324 0%,#183f2e 62%,#234c38 100%)!important;}
.ipf-rail::after{content:""!important;position:absolute!important;right:-55px!important;bottom:56px!important;width:170px!important;height:170px!important;border-radius:50%!important;background:var(--ipf-accent)!important;opacity:.13!important;filter:blur(2px)!important;pointer-events:none!important;}
.ipf-brand{position:relative!important;z-index:1!important;font-family:var(--ipf-label)!important;font-size:10px!important;letter-spacing:.025em!important;text-transform:uppercase!important;}
.ipf-brandmark{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;padding:6px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:10px!important;background:rgba(255,255,255,.08)!important;color:#ecf5ef!important;}
.ipf-rail-copy{position:relative!important;z-index:1!important;margin-top:62px!important;}
.ipf-rail-copy>span,.ipf-rail-result>span,.ipf-rail-progress>span{font-family:var(--ipf-label)!important;color:#b8c9be!important;letter-spacing:.11em!important;}
.ipf-rail-copy h2{font-family:var(--ipf-display)!important;font-size:31px!important;line-height:1.02!important;font-weight:600!important;letter-spacing:-.035em!important;}
.ipf-rail-copy p,.ipf-rail-result p{font-size:11.5px!important;color:#c4d0c8!important;}
.ipf-rail-progress,.ipf-rail-result{position:relative!important;z-index:1!important;border-top-color:rgba(255,255,255,.15)!important;}
.ipf-progress-track{height:5px!important;border-radius:99px!important;background:rgba(255,255,255,.12)!important;}
.ipf-progress-track span{border-radius:99px!important;background:linear-gradient(90deg,#fff,var(--ipf-accent-soft))!important;}
.ipf-rail-foot{position:relative!important;z-index:1!important;font-family:var(--ipf-label)!important;letter-spacing:.02em!important;}

.ipf-main{padding:42px 46px 36px!important;background:linear-gradient(180deg,#fffdf8 0%,#fff 46%,#fdfcf8 100%)!important;}
.ipf-overline{display:inline-flex!important;align-items:center!important;width:auto!important;margin-bottom:12px!important;padding:6px 9px!important;border:1px solid color-mix(in srgb,var(--ipf-accent) 22%,transparent)!important;border-radius:999px!important;background:var(--ipf-accent-soft)!important;color:var(--ipf-accent-ink)!important;font-family:var(--ipf-label)!important;font-size:8.5px!important;letter-spacing:.09em!important;}
.ipf-question-screen{min-height:510px!important;max-width:790px!important;}
.ipf-question-intro{max-width:690px!important;margin-bottom:27px!important;}
.ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3,.ipf-overview-head h3{font-family:var(--ipf-display)!important;color:#152019!important;font-size:39px!important;line-height:1.03!important;font-weight:600!important;letter-spacing:-.04em!important;}
.ipf-question-intro p,.ipf-results-head p,.ipf-overview-head p{margin-top:12px!important;color:#647068!important;font-size:13.5px!important;line-height:1.65!important;}
.ipf-question-meta{margin-bottom:13px!important;padding-top:18px!important;border-top:1px solid #ebe5da!important;color:#8a8f88!important;font-family:var(--ipf-label)!important;font-size:8px!important;letter-spacing:.065em!important;}

.ipf-choice-grid{gap:12px!important;}
.ipf-finder button.ipf-choice{
  --ipf-option-accent:var(--ipf-accent);
  --ipf-option-soft:var(--ipf-accent-soft);
  min-height:88px!important;
  grid-template-columns:48px minmax(0,1fr) 26px!important;
  gap:13px!important;
  padding:15px 16px!important;
  border:1px solid #e3ddd2!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 56%,var(--ipf-option-soft) 140%)!important;
  box-shadow:0 5px 16px rgba(45,52,47,.045)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}
.ipf-finder button.ipf-choice::before{content:""!important;position:absolute!important;left:0!important;top:14px!important;bottom:14px!important;width:3px!important;border-radius:0 5px 5px 0!important;background:var(--ipf-option-accent)!important;opacity:.22!important;transition:opacity .18s ease,height .18s ease!important;}
.ipf-finder button.ipf-choice:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--ipf-option-accent) 42%,#d9d4ca)!important;background:linear-gradient(135deg,#fff 0%,var(--ipf-option-soft) 170%)!important;box-shadow:0 11px 25px rgba(43,54,47,.09)!important;}
.ipf-finder button.ipf-choice:active{transform:translateY(0)!important;}
.ipf-finder button.ipf-choice.is-selected{border-color:var(--ipf-option-accent)!important;background:linear-gradient(135deg,#fff 0%,var(--ipf-option-soft) 90%)!important;box-shadow:0 10px 25px color-mix(in srgb,var(--ipf-option-accent) 15%,transparent)!important;}
.ipf-finder button.ipf-choice.is-selected::before{opacity:1!important;}
.ipf-choice-icon{width:46px!important;height:46px!important;padding:10px!important;border:0!important;border-radius:13px!important;background:var(--ipf-option-soft)!important;color:var(--ipf-option-accent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ipf-option-accent) 16%,transparent)!important;}
.ipf-choice.is-selected .ipf-choice-icon{background:var(--ipf-option-accent)!important;color:#fff!important;box-shadow:none!important;}
.ipf-choice-copy strong{font-size:14.5px!important;line-height:1.2!important;font-weight:760!important;color:#202821!important;letter-spacing:-.01em!important;}
.ipf-choice-copy small{margin-top:5px!important;color:#707970!important;font-size:11px!important;line-height:1.4!important;}
.ipf-choice-check{display:grid!important;place-items:center!important;width:23px!important;height:23px!important;padding:5px!important;border:1px solid #dedbd3!important;border-radius:50%!important;background:#fff!important;color:#a7aaa5!important;}
.ipf-choice.is-selected .ipf-choice-check{display:grid!important;border-color:var(--ipf-option-accent)!important;background:var(--ipf-option-accent)!important;color:#fff!important;}

/* Make style choices individually expressive without turning the interface into a rainbow. */
.ipf-theme-appearance .ipf-choice:nth-child(2){--ipf-option-accent:#6f8052;--ipf-option-soft:#f2f6e8;}
.ipf-theme-appearance .ipf-choice:nth-child(3){--ipf-option-accent:#39795d;--ipf-option-soft:#eaf6ef;}
.ipf-theme-appearance .ipf-choice:nth-child(4){--ipf-option-accent:#4b84a1;--ipf-option-soft:#eaf4f9;}
.ipf-theme-appearance .ipf-choice:nth-child(5){--ipf-option-accent:#a2764f;--ipf-option-soft:#f8f0e8;}
.ipf-theme-appearance .ipf-choice:nth-child(6){--ipf-option-accent:#bd6c83;--ipf-option-soft:#fbeef2;}
.ipf-theme-appearance .ipf-choice:nth-child(7){--ipf-option-accent:#7e70a3;--ipf-option-soft:#f1eef8;}
.ipf-theme-light .ipf-choice:nth-child(1){--ipf-option-accent:#78867a;--ipf-option-soft:#f0f3ef;}
.ipf-theme-light .ipf-choice:nth-child(2){--ipf-option-accent:#bea13d;--ipf-option-soft:#fff8df;}
.ipf-theme-light .ipf-choice:nth-child(3){--ipf-option-accent:#d99c2d;--ipf-option-soft:#fff3cf;}
.ipf-theme-light .ipf-choice:nth-child(4){--ipf-option-accent:#dd8441;--ipf-option-soft:#fff0df;}
.ipf-theme-light .ipf-choice:nth-child(5){--ipf-option-accent:#c8663f;--ipf-option-soft:#ffede6;}
.ipf-theme-light .ipf-choice:nth-child(6){--ipf-option-accent:#6f7990;--ipf-option-soft:#f1f1f7;}

.ipf-question-footer{margin-top:24px!important;padding-top:17px!important;border-top-color:#ebe6dc!important;}
.ipf-auto-note{font-family:var(--ipf-label)!important;color:#929690!important;}
.ipf-finder button.ipf-back,.ipf-finder button.ipf-restart,.ipf-finder button.ipf-adjust,.ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next,.ipf-finder button.ipf-overview-back{
  border-radius:999px!important;
  min-height:44px!important;
  padding:0 17px!important;
  border:1px solid #ddd8ce!important;
  background:#fff!important;
  color:#294333!important;
  font-size:10.5px!important;
  box-shadow:0 3px 9px rgba(39,50,42,.04)!important;
}
.ipf-finder button.ipf-result-next{border-color:var(--ipf-forest)!important;background:linear-gradient(135deg,#173f2d,#2f7755)!important;color:#fff!important;box-shadow:0 7px 18px rgba(28,82,57,.19)!important;}
.ipf-finder button.ipf-result-next:hover{transform:translateY(-1px)!important;background:linear-gradient(135deg,#102f21,#276c4b)!important;}

/* Result viewer: colorful editorial card, still compact. */
.ipf-results-screen{max-width:820px!important;}
.ipf-results-head{margin-bottom:20px!important;}
.ipf-results-head h3{font-size:34px!important;}
.ipf-result-position{padding:7px 10px!important;border:1px solid #e2ddd3!important;border-radius:999px!important;background:#fff!important;font-family:var(--ipf-label)!important;color:#7a827c!important;box-shadow:0 4px 12px rgba(46,55,49,.045)!important;}
.ipf-result-position strong{font-size:18px!important;color:#245f42!important;}
.ipf-result-card{--ipf-card-accent:#2f7b54;--ipf-card-soft:#edf7f1;position:relative!important;grid-template-columns:minmax(235px,42%) minmax(0,1fr)!important;border:1px solid #ded9cf!important;border-radius:22px!important;background:#fff!important;box-shadow:0 18px 48px rgba(41,52,45,.11)!important;}
.ipf-result-card::before{content:""!important;position:absolute!important;z-index:3!important;top:0!important;left:0!important;right:0!important;height:5px!important;background:var(--ipf-card-accent)!important;}
.ipf-result-card.is-best{border-color:color-mix(in srgb,var(--ipf-card-accent) 42%,#ded9cf)!important;box-shadow:0 20px 55px rgba(38,83,59,.14)!important;}
.ipf-result-palette-0{--ipf-card-accent:#2f7b54;--ipf-card-soft:#eaf6ef;}
.ipf-result-palette-1{--ipf-card-accent:#4f86a7;--ipf-card-soft:#eaf4f9;}
.ipf-result-palette-2{--ipf-card-accent:#c87555;--ipf-card-soft:#fff0e9;}
.ipf-result-palette-3{--ipf-card-accent:#7b6aa2;--ipf-card-soft:#f1eef8;}
.ipf-result-palette-4{--ipf-card-accent:#b48a31;--ipf-card-soft:#fff6da;}
.ipf-result-image{min-height:390px!important;background:linear-gradient(145deg,var(--ipf-card-soft),#f7f4eb)!important;}
.ipf-result-image::after{content:""!important;position:absolute!important;right:-45px!important;bottom:-45px!important;width:150px!important;height:150px!important;border-radius:50%!important;background:var(--ipf-card-accent)!important;opacity:.08!important;pointer-events:none!important;}
.ipf-best-badge{top:16px!important;left:16px!important;padding:7px 10px!important;border:0!important;border-radius:999px!important;background:var(--ipf-card-accent)!important;font-family:var(--ipf-label)!important;font-size:7.5px!important;box-shadow:0 7px 18px rgba(23,50,36,.18)!important;}
.ipf-result-body{padding:26px 26px 23px!important;background:linear-gradient(145deg,#fff 0%,#fff 63%,var(--ipf-card-soft) 145%)!important;}
.ipf-result-score{margin-bottom:10px!important;}
.ipf-result-score>span{display:inline-flex!important;padding:6px 9px!important;border-radius:999px!important;background:var(--ipf-card-soft)!important;color:var(--ipf-card-accent)!important;font-family:var(--ipf-label)!important;font-size:7.5px!important;}
.ipf-result-score strong{display:flex!important;align-items:baseline!important;gap:1px!important;color:var(--ipf-card-accent)!important;font-size:31px!important;font-weight:820!important;letter-spacing:-.045em!important;}
.ipf-result-card h4{font-family:var(--ipf-display)!important;font-size:33px!important;line-height:1!important;font-weight:600!important;color:#172019!important;letter-spacing:-.045em!important;}
.ipf-result-card em{margin-top:6px!important;color:#7c827d!important;font-family:var(--ipf-display)!important;font-size:12px!important;}
.ipf-match-summary{margin-top:15px!important;color:#556259!important;font-size:12.5px!important;line-height:1.6!important;}
.ipf-card-facts{gap:7px!important;margin-top:18px!important;border:0!important;}
.ipf-card-facts>span{padding:10px 9px!important;border:0!important;border-radius:10px!important;background:#f6f3eb!important;}
.ipf-card-facts>span:nth-child(1){background:#fff5d9!important;}
.ipf-card-facts>span:nth-child(2){background:#eaf5fb!important;}
.ipf-card-facts>span:nth-child(3){background:#f1eef8!important;}
.ipf-card-facts small{font-family:var(--ipf-label)!important;color:#7a7d78!important;font-size:7px!important;}
.ipf-card-facts b{margin-top:4px!important;color:#343e37!important;font-size:9.5px!important;}
.ipf-card-reasons{gap:7px!important;margin-top:15px!important;}
.ipf-card-reasons span{gap:8px!important;color:#2d6848!important;font-size:10.5px!important;font-weight:700!important;}
.ipf-card-reasons svg{display:grid!important;width:16px!important;height:16px!important;flex-basis:16px!important;padding:3px!important;border-radius:50%!important;background:#e8f4ed!important;color:#2f7b54!important;}
.ipf-dos-donts{gap:8px!important;margin-top:16px!important;}
.ipf-do-line{grid-template-columns:35px minmax(0,1fr)!important;padding:10px 11px!important;border:0!important;border-radius:11px!important;background:#edf8f1!important;}
.ipf-do-line.is-do{border:1px solid #d5eadc!important;background:#edf8f1!important;}
.ipf-do-line.is-dont{border:1px solid #f0ddd4!important;background:#fff2ed!important;}
.ipf-do-line b{font-family:var(--ipf-label)!important;color:#34704e!important;}
.ipf-do-line.is-dont b{color:#9a513b!important;}
.ipf-do-line span{font-size:9.5px!important;color:#59655d!important;}
.ipf-card-caution{padding:9px 10px!important;border-radius:10px!important;background:#fff7df!important;color:#765a18!important;}
.ipf-result-nav{margin-top:16px!important;padding-top:16px!important;border-top-color:#e9e3d8!important;}
.ipf-result-dots i{width:6px!important;height:6px!important;background:#d8d3ca!important;}
.ipf-result-dots i.is-active{width:20px!important;background:var(--ipf-accent)!important;}
.ipf-result-footer{border-top-color:#eee8dd!important;}

/* Final zoomed-out shortlist */
.ipf-overview-screen{width:100%!important;max-width:850px!important;margin:0 auto!important;outline:0!important;animation:ipf-overview-zoom .32s cubic-bezier(.2,.75,.2,1) both!important;}
@keyframes ipf-overview-zoom{from{opacity:.15;transform:scale(1.055)}to{opacity:1;transform:scale(1)}}
.ipf-overview-head{max-width:720px!important;margin-bottom:21px!important;}
.ipf-overview-head h3{font-size:36px!important;}
.ipf-overview-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
.ipf-finder button.ipf-overview-item{
  all:unset!important;
  box-sizing:border-box!important;
  --ipf-card-accent:#2f7b54;
  --ipf-card-soft:#edf7f1;
  position:relative!important;
  display:grid!important;
  grid-template-columns:78px minmax(0,1fr) 34px!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:116px!important;
  padding:10px!important;
  border:1px solid #e2ddd3!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 68%,var(--ipf-card-soft) 150%)!important;
  color:#1f2922!important;
  cursor:pointer!important;
  text-align:left!important;
  box-shadow:0 6px 18px rgba(45,53,47,.055)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.ipf-finder button.ipf-overview-item:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--ipf-card-accent) 42%,#ddd8cf)!important;box-shadow:0 12px 25px rgba(42,54,46,.095)!important;}
.ipf-overview-thumb{position:relative!important;display:block!important;width:78px!important;height:94px!important;border-radius:12px!important;background:var(--ipf-card-soft)!important;overflow:hidden!important;}
.ipf-overview-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;}
.ipf-overview-thumb>b{position:absolute!important;top:6px!important;left:6px!important;padding:4px 6px!important;border-radius:999px!important;background:var(--ipf-card-accent)!important;color:#fff!important;font-family:var(--ipf-label)!important;font-size:7px!important;line-height:1!important;}
.ipf-overview-copy{display:block!important;min-width:0!important;}
.ipf-overview-title-row{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8px!important;min-width:0!important;}
.ipf-overview-title-row>span{min-width:0!important;}
.ipf-overview-title-row strong{display:block!important;color:#172019!important;font-family:var(--ipf-display)!important;font-size:18px!important;line-height:1.05!important;font-weight:600!important;letter-spacing:-.025em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.ipf-overview-title-row em{display:block!important;margin-top:3px!important;color:#898d88!important;font-family:var(--ipf-display)!important;font-size:9px!important;font-style:italic!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.ipf-overview-score{flex:0 0 auto!important;padding:5px 7px!important;border-radius:999px!important;background:var(--ipf-card-soft)!important;color:var(--ipf-card-accent)!important;font-size:11px!important;line-height:1!important;font-weight:820!important;}
.ipf-overview-facts{display:flex!important;gap:5px!important;margin-top:9px!important;min-width:0!important;}
.ipf-overview-facts>span{min-width:0!important;padding:5px 6px!important;border-radius:7px!important;background:#f7f5ef!important;}
.ipf-overview-facts small{display:block!important;color:#92958f!important;font-family:var(--ipf-label)!important;font-size:5.5px!important;line-height:1!important;text-transform:uppercase!important;}
.ipf-overview-facts b{display:block!important;max-width:86px!important;margin-top:3px!important;color:#4b554e!important;font-size:7.5px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.ipf-overview-reason{display:flex!important;align-items:flex-start!important;gap:5px!important;margin-top:8px!important;color:#4c5f52!important;font-size:8.5px!important;line-height:1.35!important;}
.ipf-overview-reason svg{width:11px!important;height:11px!important;flex:0 0 11px!important;margin-top:1px!important;color:var(--ipf-card-accent)!important;}
.ipf-overview-reason>span{display:-webkit-box!important;overflow:hidden!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;}
.ipf-overview-open{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:50%!important;background:var(--ipf-card-soft)!important;color:var(--ipf-card-accent)!important;font-size:0!important;}
.ipf-overview-open svg{width:14px!important;height:14px!important;}
.ipf-overview-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;margin-top:18px!important;padding-top:16px!important;border-top:1px solid #eae4da!important;}
.ipf-finder button.ipf-overview-back{margin-right:auto!important;}

/* Mobile: keep personality, remove density. */
@container (max-width:820px){
  .ipf-shell{border-radius:18px!important;}
  .ipf-main{padding:30px 25px 30px!important;}
  .ipf-mobile-brand{font-family:var(--ipf-label)!important;letter-spacing:.02em!important;}
  .ipf-mobile-brand>span{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;padding:5px!important;border-radius:9px!important;background:var(--ipf-accent-soft)!important;color:var(--ipf-accent)!important;}
  .ipf-mobile-progress>div{height:5px!important;border-radius:999px!important;background:#ece7de!important;}
  .ipf-mobile-progress i{border-radius:999px!important;background:var(--ipf-accent)!important;}
  .ipf-result-image{min-height:340px!important;}
}
@container (max-width:620px){
  .ipf-main{padding:23px 16px 25px!important;}
  .ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3,.ipf-overview-head h3{font-size:31px!important;line-height:1.04!important;}
  .ipf-question-intro p,.ipf-results-head p,.ipf-overview-head p{font-size:12.5px!important;line-height:1.58!important;}
  .ipf-question-meta{font-size:7.5px!important;}
  .ipf-choice-grid{gap:9px!important;}
  .ipf-finder button.ipf-choice{min-height:76px!important;grid-template-columns:42px minmax(0,1fr) 24px!important;gap:11px!important;padding:12px!important;border-radius:14px!important;}
  .ipf-choice-icon{width:40px!important;height:40px!important;padding:9px!important;border-radius:11px!important;}
  .ipf-choice-copy strong{font-size:13.5px!important;}
  .ipf-choice-copy small{font-size:10px!important;}
  .ipf-result-card,.ipf-result-card.is-best{border-radius:18px!important;}
  .ipf-result-image{aspect-ratio:5/4!important;max-height:300px!important;}
  .ipf-result-body{padding:19px 16px 17px!important;}
  .ipf-result-card h4{font-size:29px!important;}
  .ipf-result-score strong{font-size:27px!important;}
  .ipf-match-summary{font-size:11.5px!important;}
  .ipf-card-facts{gap:5px!important;}
  .ipf-card-facts>span{padding:8px 6px!important;border-radius:8px!important;}
  .ipf-card-facts b{font-size:8.5px!important;}
  .ipf-dos-donts{gap:7px!important;}
  .ipf-result-nav{gap:7px!important;}
  .ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next{min-height:46px!important;border-radius:999px!important;}
  .ipf-overview-grid{grid-template-columns:1fr!important;gap:8px!important;}
  .ipf-finder button.ipf-overview-item{grid-template-columns:72px minmax(0,1fr) 30px!important;min-height:108px!important;padding:9px!important;border-radius:14px!important;}
  .ipf-overview-thumb{width:72px!important;height:88px!important;border-radius:10px!important;}
  .ipf-overview-title-row strong{font-size:17px!important;}
  .ipf-overview-reason{font-size:8px!important;}
  .ipf-overview-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;}
  .ipf-finder button.ipf-overview-back{grid-column:1 / -1!important;margin-right:0!important;width:100%!important;}
  .ipf-overview-actions .ipf-adjust,.ipf-overview-actions .ipf-restart{width:100%!important;}
}
@container (max-width:390px){
  .ipf-main{padding:19px 12px 22px!important;}
  .ipf-question-intro h3,.ipf-results-head h3,.ipf-loading h3,.ipf-result-message h3,.ipf-overview-head h3{font-size:28px!important;}
  .ipf-overline{padding:5px 8px!important;font-size:7.5px!important;}
  .ipf-finder button.ipf-choice{min-height:72px!important;grid-template-columns:38px minmax(0,1fr) 22px!important;padding:10px 10px!important;}
  .ipf-choice-icon{width:37px!important;height:37px!important;padding:8px!important;}
  .ipf-result-image{aspect-ratio:1.12/1!important;max-height:260px!important;}
  .ipf-result-card h4{font-size:27px!important;}
  .ipf-result-nav{grid-template-columns:46px 1fr 46px!important;}
  .ipf-finder button.ipf-result-prev,.ipf-finder button.ipf-result-next{width:46px!important;min-width:46px!important;padding:0!important;}
  .ipf-finder button.ipf-result-next span,.ipf-finder button.ipf-result-prev span{display:none!important;}
  .ipf-result-dots{min-width:0!important;}
  .ipf-finder button.ipf-overview-item{grid-template-columns:64px minmax(0,1fr) 28px!important;gap:9px!important;min-height:98px!important;}
  .ipf-overview-thumb{width:64px!important;height:80px!important;}
  .ipf-overview-title-row strong{font-size:16px!important;}
  .ipf-overview-facts>span{padding:4px 5px!important;}
  .ipf-overview-facts b{max-width:70px!important;font-size:7px!important;}
  .ipf-overview-reason{display:none!important;}
}

@media (max-width:760px){
  .ipf-shell{border-radius:18px!important;}
  .ipf-main{background:linear-gradient(180deg,#fffdf8,#fff)!important;}
  .ipf-overview-grid{grid-template-columns:1fr!important;}
}
@container (max-width:390px){
  .ipf-result-nav.is-last{grid-template-columns:46px 1fr auto!important;}
  .ipf-result-nav.is-last .ipf-result-next{width:auto!important;min-width:112px!important;padding:0 12px!important;}
  .ipf-result-nav.is-last .ipf-result-next span{display:inline!important;}
}

/* v1.4.4 — final comparison as an in-place accordion, never a link back to the slider */
.ipf-overview-grid{align-items:start!important;}
.ipf-overview-item{
  --ipf-card-accent:#2f7b54;
  --ipf-card-soft:#edf7f1;
  position:relative!important;
  min-width:0!important;
  overflow:hidden!important;
  border:1px solid #e2ddd3!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 70%,var(--ipf-card-soft) 155%)!important;
  box-shadow:0 6px 18px rgba(45,53,47,.055)!important;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
.ipf-overview-item.is-expanded{
  border-color:color-mix(in srgb,var(--ipf-card-accent) 46%,#ddd8cf)!important;
  box-shadow:0 14px 32px rgba(42,54,46,.11)!important;
}
.ipf-overview-item::before{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  top:0!important;
  bottom:0!important;
  left:0!important;
  width:3px!important;
  background:var(--ipf-card-accent)!important;
  opacity:.72!important;
}
.ipf-finder button.ipf-overview-toggle{
  all:unset!important;
  box-sizing:border-box!important;
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:78px minmax(0,1fr) 38px!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:116px!important;
  padding:10px 11px 10px 12px!important;
  color:#1f2922!important;
  cursor:pointer!important;
  text-align:left!important;
  font:inherit!important;
  -webkit-tap-highlight-color:transparent!important;
}
.ipf-finder button.ipf-overview-toggle:hover{background:color-mix(in srgb,var(--ipf-card-soft) 42%,transparent)!important;}
.ipf-finder button.ipf-overview-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--ipf-card-accent) 24%,transparent)!important;outline-offset:-3px!important;}
.ipf-overview-open{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  border-radius:50%!important;
  background:var(--ipf-card-soft)!important;
  color:var(--ipf-card-accent)!important;
  font-size:0!important;
  transition:transform .2s ease,background .2s ease!important;
}
.ipf-overview-open>span{display:none!important;}
.ipf-overview-open svg{width:14px!important;height:14px!important;transition:transform .22s ease!important;}
.ipf-overview-item.is-expanded .ipf-overview-open{background:var(--ipf-card-accent)!important;color:#fff!important;}
.ipf-overview-item.is-expanded .ipf-overview-open svg{transform:rotate(90deg)!important;}
.ipf-overview-details[hidden]{display:none!important;}
.ipf-overview-item.is-expanded .ipf-overview-details{
  display:block!important;
  padding:14px 14px 15px 102px!important;
  border-top:1px solid color-mix(in srgb,var(--ipf-card-accent) 15%,#e8e3d9)!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--ipf-card-soft) 35%,#fff),#fff)!important;
  animation:ipf-overview-expand .22s ease both!important;
}
@keyframes ipf-overview-expand{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.ipf-overview-summary{
  margin:0!important;
  color:#445049!important;
  font-family:var(--ipf-sans)!important;
  font-size:10.5px!important;
  line-height:1.55!important;
}
.ipf-overview-expanded-reasons{display:grid!important;gap:6px!important;margin-top:11px!important;}
.ipf-overview-expanded-reasons>span{display:flex!important;align-items:flex-start!important;gap:6px!important;color:#315840!important;font-size:9px!important;line-height:1.4!important;}
.ipf-overview-expanded-reasons svg{flex:0 0 12px!important;width:12px!important;height:12px!important;margin-top:1px!important;color:var(--ipf-card-accent)!important;}
.ipf-overview-guidance-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:12px!important;}
.ipf-overview-guidance{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:7px!important;align-items:start!important;padding:8px 9px!important;border-radius:9px!important;font-size:8.5px!important;line-height:1.4!important;}
.ipf-overview-guidance>b{font-family:var(--ipf-label)!important;font-size:6.5px!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
.ipf-overview-guidance.is-do{background:#edf8f0!important;color:#355c42!important;}
.ipf-overview-guidance.is-do>b{color:#2f7b54!important;}
.ipf-overview-guidance.is-dont{background:#fff1ec!important;color:#725044!important;}
.ipf-overview-guidance.is-dont>b{color:#b55c42!important;}
.ipf-overview-caution{display:flex!important;align-items:flex-start!important;gap:7px!important;margin-top:9px!important;padding:8px 9px!important;border-radius:9px!important;background:#fff8e8!important;color:#745f2f!important;font-size:8.5px!important;line-height:1.4!important;}
.ipf-overview-caution svg{flex:0 0 12px!important;width:12px!important;height:12px!important;margin-top:1px!important;color:#b48a31!important;}

@container (max-width:620px){
  .ipf-overview-item{border-radius:15px!important;}
  .ipf-finder button.ipf-overview-toggle{grid-template-columns:72px minmax(0,1fr) 34px!important;gap:10px!important;min-height:108px!important;padding:9px 10px 9px 11px!important;}
  .ipf-overview-item.is-expanded .ipf-overview-details{padding:13px 12px 13px!important;}
  .ipf-overview-summary{font-size:11px!important;line-height:1.55!important;}
  .ipf-overview-expanded-reasons>span{font-size:9.5px!important;}
  .ipf-overview-guidance{font-size:9px!important;padding:9px!important;}
  .ipf-overview-caution{font-size:9px!important;padding:9px!important;}
}
@container (max-width:390px){
  .ipf-finder button.ipf-overview-toggle{grid-template-columns:64px minmax(0,1fr) 30px!important;gap:9px!important;min-height:98px!important;padding:8px 8px 8px 10px!important;}
  .ipf-overview-open{width:29px!important;height:29px!important;}
  .ipf-overview-guidance-grid{grid-template-columns:1fr!important;gap:6px!important;}
  .ipf-overview-expanded-reasons{gap:5px!important;}
  .ipf-overview-summary{font-size:10.5px!important;}
}

/* v1.4.5 — critical-gate confidence system */
.ipf-confidence-meter{
  --ipf-confidence:#c99a2e;
  --ipf-confidence-soft:#fff5d7;
  display:grid!important;
  gap:6px!important;
  margin:0 0 14px!important;
  padding:9px 10px!important;
  border:1px solid color-mix(in srgb,var(--ipf-confidence) 24%,#e8e3d9)!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#fff,var(--ipf-confidence-soft))!important;
}
.ipf-confidence-meter.is-high{--ipf-confidence:#2f8a58;--ipf-confidence-soft:#eaf7ef;}
.ipf-confidence-meter.is-medium{--ipf-confidence:#c69524;--ipf-confidence-soft:#fff6d9;}
.ipf-confidence-meter>div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-width:0!important;}
.ipf-confidence-meter>div span{color:#737b75!important;font-family:var(--ipf-label)!important;font-size:7px!important;line-height:1.1!important;letter-spacing:.07em!important;text-transform:uppercase!important;}
.ipf-confidence-meter>div b{color:var(--ipf-confidence)!important;font-size:9px!important;line-height:1.2!important;font-weight:800!important;white-space:nowrap!important;}
.ipf-confidence-track{display:block!important;width:100%!important;height:4px!important;border-radius:999px!important;background:rgba(65,72,67,.09)!important;overflow:hidden!important;}
.ipf-confidence-track i{display:block!important;height:100%!important;border-radius:inherit!important;background:var(--ipf-confidence)!important;}
.ipf-overview-confidence{display:flex!important;align-items:center!important;gap:5px!important;width:max-content!important;max-width:100%!important;margin-top:6px!important;color:#9a7420!important;font-family:var(--ipf-label)!important;font-size:6.5px!important;line-height:1!important;letter-spacing:.045em!important;text-transform:uppercase!important;}
.ipf-overview-confidence i{display:block!important;width:6px!important;height:6px!important;border-radius:50%!important;background:#c69524!important;box-shadow:0 0 0 3px #fff3cd!important;}
.ipf-overview-confidence.is-high{color:#2c744d!important;}
.ipf-overview-confidence.is-high i{background:#2f8a58!important;box-shadow:0 0 0 3px #e8f5ed!important;}
@container (max-width:620px){
  .ipf-confidence-meter{margin-bottom:13px!important;padding:8px 9px!important;}
  .ipf-confidence-meter>div{align-items:flex-start!important;}
  .ipf-confidence-meter>div b{font-size:8px!important;}
  .ipf-overview-confidence{font-size:6px!important;}
}
