/* IMMOVIA AI Makler · Premium decision card · v7.5.9 */

:root{
  --iba-ink:#17363d;
  --iba-muted:#687a7d;
  --iba-line:#dce5e3;
  --iba-soft:#f7faf9;
  --iba-gold:#b68a4a;
  --iba-green:#267b59;
  --iba-shadow:0 18px 50px rgba(17,48,55,.08);
}

.iba-listing-panel{
  width:min(1120px,calc(100% - 40px));
  margin:32px auto 38px;
  background:#fff;
  border:1px solid var(--iba-line);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--iba-shadow);
}

.iba-listing-panel::before{
  content:"";
  display:block;
  height:4px;
  background:linear-gradient(90deg,#17363d,#526e73 55%,#c5a064);
}

.iba-panel-mark{display:none}

.iba-panel-copy{
  padding:26px 28px 20px;
}

.iba-kicker{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:10px;
  color:var(--iba-gold);
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.iba-kicker::before{
  content:"✦";
  width:30px;
  height:30px;
  border-radius:10px;
  background:var(--iba-ink);
  color:#e6c27e;
  display:grid;
  place-items:center;
  font-size:13px;
}

.iba-panel-copy h2{
  margin:0 0 9px;
  color:var(--iba-ink);
  font-size:clamp(24px,2.5vw,32px);
  line-height:1.15;
}

.iba-panel-copy p{
  margin:0;
  max-width:830px;
  color:var(--iba-muted);
  font-size:14px;
  line-height:1.6;
}

.iba-existing-note{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border-radius:999px;
  background:#eef8f3;
  border:1px solid #d8ebe1;
  color:var(--iba-green);
  font-size:12px;
  font-weight:800;
}

.iba-primary-row{
  padding:0 28px 24px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.iba-btn{
  min-height:44px;
  border-radius:12px;
  padding:10px 16px;
  border:1px solid #cfdad8;
  background:#fff;
  color:var(--iba-ink)!important;
  text-decoration:none!important;
  font:inherit;
  font-size:14px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:.15s ease;
}

.iba-btn.primary{
  background:var(--iba-ink);
  border-color:var(--iba-ink);
  color:#fff!important;
  box-shadow:0 8px 20px rgba(23,54,61,.14);
}

.iba-btn.ghost{
  background:#fff;
  color:var(--iba-ink)!important;
}

.iba-btn:hover{transform:translateY(-1px)}
.iba-btn.loading{opacity:.65;cursor:wait;transform:none}

.iba-live-result{
  margin:0 28px 18px;
  padding:18px;
  background:var(--iba-soft);
  border:1px solid #e2ebe8;
  border-radius:18px;
}

.iba-live-result[hidden]{display:none!important}

.iba-live-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}

.iba-live-head strong{
  color:var(--iba-ink);
  font-size:15px;
}

.iba-live-head span{
  padding:6px 9px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dde8e4;
  color:#607477;
  font-size:11px;
  font-weight:800;
}

.iba-live-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.iba-live-item{
  min-height:66px;
  box-sizing:border-box;
  padding:11px 12px;
  border:1px solid #e2ebe8;
  border-radius:13px;
  background:#fff;
}

.iba-live-item small{
  display:block;
  margin-bottom:5px;
  color:#889597;
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.iba-live-item b{
  display:block;
  color:#29444a;
  font-size:13px;
  line-height:1.35;
}

.iba-inline-message{
  margin-top:13px;
  font-size:12px;
  font-weight:800;
  color:#617376;
}

.iba-inline-message.success{color:var(--iba-green)}
.iba-inline-message.error{color:#a53b32}

.iba-save-question{
  margin:0 28px 26px;
  padding:18px;
  border-radius:18px;
  border:1px solid #e9dfca;
  background:linear-gradient(135deg,#fffaf1 0%,#fff 70%);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:15px;
  align-items:center;
}

.iba-save-question[hidden]{display:none!important}

.iba-save-question-icon{
  width:44px;
  height:44px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:#f3e8d5;
  color:#8f6c35;
  font-size:20px;
}

.iba-save-question-copy strong{
  display:block;
  margin-bottom:4px;
  color:var(--iba-ink);
  font-size:15px;
}

.iba-save-question-copy p{
  margin:0;
  color:var(--iba-muted);
  font-size:13px;
  line-height:1.5;
}

.iba-save-question-actions{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.iba-status-row{
  padding:0 28px 26px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.iba-status-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid #dfe9e6;
  background:#f7faf9;
  color:#637578;
  font-size:11px;
  font-weight:800;
}

.iba-status-chip.saved{
  background:#eef8f3;
  border-color:#d8ebe1;
  color:var(--iba-green);
}

@media(max-width:780px){
  .iba-listing-panel{
    width:calc(100% - 28px);
    margin:22px 14px 28px;
    border-radius:18px;
  }
  .iba-panel-copy{padding:21px 19px 16px}
  .iba-primary-row,
  .iba-status-row{padding-left:19px;padding-right:19px}
  .iba-live-result{margin-left:19px;margin-right:19px}
  .iba-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .iba-save-question{
    margin-left:19px;
    margin-right:19px;
    grid-template-columns:1fr;
  }
  .iba-save-question-actions{
    justify-content:flex-start;
  }
  .iba-save-question-actions .iba-btn,
  .iba-primary-row .iba-btn{
    width:100%;
  }
}


/* Phase 1 final hidden-state correction · v7.5.11
   Important: status chips use display:inline-flex, therefore [hidden]
   must explicitly override display to prevent false "saved" states. */
.iba-status-chip[hidden],
.iba-existing-note[hidden],
.iba-current-save-status[hidden],
[data-iba-preview-chip][hidden],
[data-iba-current-save-status][hidden],
[data-iba-account-entry-status][hidden]{
  display:none!important;
}


/* Phase 2 Foundation v7.6.0 */
.iba-intelligence-foundation{
  margin-top:14px;
  padding:14px;
  border:1px solid #dfe8e6;
  border-radius:14px;
  background:#fff;
}
.iba-intelligence-foundation[hidden]{display:none!important}
.iba-intelligence-head{
  margin-bottom:10px;
  color:var(--iba-ink,#17363d);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.iba-intelligence-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.iba-intelligence-grid>div{
  padding:10px;
  border-radius:11px;
  background:#f7faf9;
}
.iba-intelligence-grid small{
  display:block;
  color:#859294;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.iba-intelligence-grid b{
  display:block;
  margin-top:4px;
  color:#29444a;
  font-size:12px;
}
.iba-rtl{
  text-align:right;
}
.iba-rtl .iba-save-question-actions,
.iba-rtl .iba-primary-row,
.iba-rtl .iba-status-row{
  direction:rtl;
}
.iba-rtl .iba-kicker{
  flex-direction:row-reverse;
  justify-content:flex-end;
}
@media(max-width:780px){
  .iba-intelligence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* Price & Market Intelligence · v7.6.1 */
.iba-price-market{
  margin-top:14px;padding:16px;border-radius:16px;
  border:1px solid #dfe8e6;background:linear-gradient(180deg,#fff 0%,#f8fbfa 100%);
}
.iba-price-market[hidden]{display:none!important}
.iba-price-market-head{
  margin-bottom:12px;color:var(--iba-ink,#17363d);
  font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;
}
.iba-price-market-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;
}
.iba-price-market-grid>div{
  min-height:68px;padding:11px 12px;border-radius:12px;
  background:#fff;border:1px solid #e5ecea;box-sizing:border-box;
}
.iba-price-market-grid small{
  display:block;color:#879496;font-size:9px;line-height:1.3;
  letter-spacing:.05em;text-transform:uppercase;font-weight:800;
}
.iba-price-market-grid b{
  display:block;margin-top:6px;color:#29444a;font-size:12px;line-height:1.35;
}
.iba-broker-explanation{
  margin-top:12px;padding:12px 13px;border-radius:12px;background:#eef5f3;
  color:#29444a;font-size:13px;line-height:1.55;font-weight:700;
}
.iba-data-caution{
  margin-top:8px;padding:10px 12px;border-radius:11px;background:#fff7e6;
  border:1px solid #ecd9aa;color:#7a5d22;font-size:11px;line-height:1.45;font-weight:700;
}
.iba-data-caution[hidden]{display:none!important}
@media(max-width:900px){.iba-price-market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.iba-price-market-grid{grid-template-columns:1fr}}


/* AI Maps / Micro-location Intelligence · v7.6.2 */
.iba-location-intelligence{
  margin-top:14px;
  padding:16px;
  border-radius:16px;
  border:1px solid #dde8e5;
  background:#fbfdfc;
}
.iba-location-intelligence[hidden]{display:none!important}
.iba-location-head{
  margin-bottom:12px;
  color:var(--iba-ink,#17363d);
  font-size:13px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.iba-location-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.iba-location-grid>div{
  min-height:66px;
  padding:11px 12px;
  border-radius:12px;
  background:#fff;
  border:1px solid #e5ecea;
  box-sizing:border-box;
}
.iba-location-grid small{
  display:block;
  color:#879496;
  font-size:9px;
  line-height:1.3;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:800;
}
.iba-location-grid b{
  display:block;
  margin-top:6px;
  color:#29444a;
  font-size:12px;
  line-height:1.35;
}
.iba-location-summary{
  margin-top:12px;
  padding:12px 13px;
  border-radius:12px;
  background:#eef5f3;
  color:#29444a;
  font-size:13px;
  line-height:1.55;
  font-weight:700;
}
@media(max-width:900px){
  .iba-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .iba-location-grid{grid-template-columns:1fr}
}


/* Canonical Location Validation · v7.6.2A-6 */
.iba-location-warning{
  margin:12px 0;
  padding:12px 13px;
  border-radius:12px;
  border:1px solid #efc9a8;
  background:#fff4ea;
  color:#7b4d22;
  font-size:12px;
  line-height:1.5;
}
.iba-location-warning[hidden]{display:none!important}
.iba-location-warning strong{
  display:block;
  margin-bottom:3px;
  font-size:12px;
}
.iba-location-warning span{display:block}


/* Extended Location & Lifestyle Intelligence · v7.6.2B */
.iba-lifestyle{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #e4ece9;
}
.iba-lifestyle[hidden]{display:none!important}
.iba-lifestyle-head{
  margin-bottom:10px;
  color:var(--iba-ink,#17363d);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.iba-lifestyle-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.iba-lifestyle-item{
  padding:11px 12px;
  border:1px solid #e5ecea;
  border-radius:12px;
  background:#fff;
}
.iba-lifestyle-item small{
  display:block;
  color:#879496;
  font-size:9px;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:800;
}
.iba-lifestyle-item b{
  display:block;
  margin-top:5px;
  color:#29444a;
  font-size:12px;
  line-height:1.35;
}
.iba-lifestyle-item span{
  display:inline-block;
  margin-top:6px;
  min-width:22px;
  padding:2px 6px;
  border-radius:999px;
  background:#eef5f3;
  color:#567076;
  font-size:9px;
  font-weight:800;
}
@media(max-width:850px){
  .iba-lifestyle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .iba-lifestyle-grid{grid-template-columns:1fr}
}


/* Object Intelligence · v7.6.3 */
.iba-object-intelligence{
  margin-top:14px;
  padding:16px;
  border-radius:16px;
  border:1px solid #dfe8e6;
  background:linear-gradient(180deg,#fff 0%,#fafcfb 100%);
}
.iba-object-intelligence[hidden]{display:none!important}
.iba-object-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.iba-object-title{
  color:var(--iba-ink,#17363d);
  font-size:13px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.iba-object-quality{
  margin-top:4px;
  color:#809093;
  font-size:10px;
  font-weight:700;
}
.iba-object-score{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:#eef5f3;
  color:#3e5f65;
  font-size:11px;
  font-weight:850;
}
.iba-object-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.iba-object-item{
  min-height:64px;
  padding:11px 12px;
  border-radius:12px;
  border:1px solid #e5ecea;
  background:#fff;
  box-sizing:border-box;
}
.iba-object-item small{
  display:block;
  color:#879496;
  font-size:9px;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:800;
}
.iba-object-item b{
  display:block;
  margin-top:6px;
  color:#29444a;
  font-size:12px;
  line-height:1.35;
}
.iba-object-signals{
  margin-top:12px;
  display:grid;
  gap:7px;
}
.iba-object-signals[hidden]{display:none!important}
.iba-object-signals>div{
  padding:10px 12px;
  border-radius:11px;
  background:#eef5f3;
  color:#29444a;
  font-size:12px;
  line-height:1.45;
  font-weight:700;
}
.iba-object-questions{
  margin-top:12px;
  padding:13px 14px;
  border-radius:12px;
  border:1px solid #ead4a2;
  background:#fff8e7;
  color:#69542a;
}
.iba-object-questions[hidden]{display:none!important}
.iba-object-questions>strong{
  display:block;
  margin-bottom:7px;
  font-size:12px;
}
.iba-object-questions ul{
  margin:0;
  padding-inline-start:20px;
}
.iba-object-questions li{
  margin:4px 0;
  font-size:11px;
  line-height:1.45;
}
.iba-object-missing-note{
  margin-top:8px;
  color:#88724a;
  font-size:10px;
  font-weight:700;
}
@media(max-width:900px){
  .iba-object-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .iba-object-grid{grid-template-columns:1fr}
}


/* Integrated Price Context · v7.6.4 */
.iba-context-price{
  margin-top:12px;
  padding:14px;
  border-radius:14px;
  border:1px solid #d7e4e1;
  background:#f7fbfa;
}
.iba-context-price[hidden]{display:none!important}
.iba-context-price-head{
  margin-bottom:10px;
  color:#29444a;
  font-size:11px;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.iba-context-price-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.iba-context-price-grid>div{
  padding:10px 11px;
  border:1px solid #e3ece9;
  border-radius:11px;
  background:#fff;
}
.iba-context-price-grid small{
  display:block;
  color:#879496;
  font-size:8px;
  line-height:1.25;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:800;
}
.iba-context-price-grid b{
  display:block;
  margin-top:5px;
  color:#29444a;
  font-size:11px;
  line-height:1.35;
}
.iba-context-price-explanation{
  margin-top:10px;
  padding:10px 11px;
  border-radius:10px;
  background:#edf5f2;
  color:#29444a;
  font-size:11px;
  line-height:1.45;
  font-weight:700;
}
.iba-context-price-note{
  margin-top:7px;
  color:#7c8d90;
  font-size:9px;
  line-height:1.4;
}
@media(max-width:900px){
  .iba-context-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .iba-context-price-grid{grid-template-columns:1fr}
}


/* Safe Self-Learning AVM host · v7.6.5.1 */
.iba-avm-integrated-host[hidden]{display:none!important}
.iba-avm-integrated{
  margin-top:14px;padding:16px;border-radius:16px;
  border:1px solid #d9e4e1;background:linear-gradient(180deg,#fbfdfc 0%,#f4f8f7 100%);
}
.iba-avm-kicker{
  margin-bottom:12px;
  color:var(--iba-ink,#17363d);
  font-size:13px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.3;
}
.iba-avm-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
}
.iba-avm-grid>div{
  min-height:66px;padding:11px 12px;border:1px solid #e4ece9;
  border-radius:12px;background:#fff;box-sizing:border-box;
}
.iba-avm-grid small{
  display:block;color:#879496;font-size:9px;line-height:1.25;
  text-transform:uppercase;letter-spacing:.05em;font-weight:800;
}
.iba-avm-grid b{
  display:block;margin-top:6px;color:#29444a;font-size:12px;line-height:1.35;
}
.iba-avm-breakdown{
  margin-top:12px;padding:12px 13px;border-radius:12px;
  border:1px solid #e0e8e6;background:#fff;
}
.iba-avm-breakdown>strong{
  display:block;margin-bottom:8px;color:#29444a;font-size:11px;
}
.iba-avm-breakdown-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;
  align-items:center;padding:8px 0;border-top:1px solid #edf1f0;
}
.iba-avm-breakdown-row span{font-size:11px;color:#405c62;font-weight:700}
.iba-avm-breakdown-row b{font-size:11px;color:#29444a}
.iba-avm-breakdown-row em{font-style:normal;font-size:10px;color:#7e8d90;font-weight:800}
.iba-avm-preserved-note{
  margin-top:10px;padding:10px 11px;border-radius:10px;background:#eef5f3;
  color:#4d676c;font-size:10px;line-height:1.45;font-weight:700;
}
@media(max-width:900px){.iba-avm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){
  .iba-avm-grid{grid-template-columns:1fr}
  .iba-avm-breakdown-row{grid-template-columns:1fr;gap:4px}
}

/* IMMOVIA AI Makler v7.7.5.1 – Buyer Decision Advice */
.iba-v775-decision-advice{margin-top:24px;padding:22px;border:1px solid rgba(12,42,48,.12);border-radius:18px;background:rgba(255,255,255,.72)}
.iba-v775-decision-advice h3{margin:4px 0 14px;font-size:20px;color:#102f35}
.iba-v775-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;color:#405c61}
.iba-v775-summary{display:flex;flex-direction:column;gap:4px;padding:14px 16px;margin-bottom:14px;border-radius:14px;background:rgba(19,71,76,.05)}
.iba-v775-summary span{font-size:13px;color:#51686c}
.iba-v775-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.iba-v775-grid>div,.iba-v775-card{border:1px solid rgba(12,42,48,.10);border-radius:14px;padding:13px;background:rgba(255,255,255,.64)}
.iba-v775-grid b,.iba-v775-grid span{display:block}.iba-v775-grid b{font-size:12px;margin-bottom:5px}.iba-v775-grid span{font-size:13px;color:#314b50}
.iba-v775-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.iba-v775-card h4{margin:0 0 8px;font-size:14px;color:#17383e}.iba-v775-card ul{margin:0;padding-left:18px}
.iba-v775-card li{margin:4px 0;font-size:13px;line-height:1.45}.iba-v775-empty{font-size:13px;color:#718286}
@media(max-width:760px){.iba-v775-decision-advice{padding:16px}.iba-v775-grid{grid-template-columns:1fr 1fr}.iba-v775-columns{grid-template-columns:1fr}}
@media(max-width:460px){.iba-v775-grid{grid-template-columns:1fr}}
[dir="rtl"] .iba-v775-card ul{padding-left:0;padding-right:18px}