/* Property360 Public Listing Theme Bridge — 344
   Full theme-family fidelity for public listing details.
   Agency/domain agnostic: colors come from ThemeService, visual language from family.
*/

html[data-p360-public-listing-theme="1"]{
  --p360-ll-primary:var(--p360-public-theme-primary,#0090E3);
  --p360-ll-primary-deep:var(--p360-public-theme-primary-deep,#0C3F82);
  --p360-ll-accent:var(--p360-public-theme-accent,#0090E3);
  --p360-ll-page:#f5f8fc;
  --p360-ll-surface:#fff;
  --p360-ll-surface-soft:#f8fafc;
  --p360-ll-ink:#10233e;
  --p360-ll-sub:#62758a;
  --p360-ll-line:#e2e8f0;
  --p360-ll-radius:22px;
  --p360-ll-heading-font:inherit;
  --p360-ll-body-font:inherit;
}

body.p360-public-listing-themed{
  background:var(--p360-ll-page)!important;
}

html[data-p360-public-listing-theme="1"] .p360-ll-wrap{
  --p360-blue:var(--p360-ll-accent)!important;
  --p360-ink:var(--p360-ll-ink)!important;
  --p360-sub:var(--p360-ll-sub)!important;
  --p360-line:var(--p360-ll-line)!important;
  font-family:var(--p360-ll-body-font);
}

html[data-p360-public-listing-theme="1"] .p360-ll-card{
  background:var(--p360-ll-surface);
  border-color:var(--p360-ll-line);
  border-radius:var(--p360-ll-radius);
}

html[data-p360-public-listing-theme="1"] .p360-ll-card h1{
  font-family:var(--p360-ll-heading-font);
  color:var(--p360-ll-ink);
}

html[data-p360-public-listing-theme="1"] .p360-ll-price,
html[data-p360-public-listing-theme="1"] .p360-ll-badge a,
html[data-p360-public-listing-theme="1"] .p360-ll-pills svg{
  color:var(--p360-ll-accent)!important;
}

html[data-p360-public-listing-theme="1"] .p360-ll-tag{
  background:color-mix(in srgb,var(--p360-ll-primary) 9%,#fff);
  color:var(--p360-ll-primary-deep);
  border:1px solid color-mix(in srgb,var(--p360-ll-primary) 18%,transparent);
}

html[data-p360-public-listing-theme="1"] .p360-ll-idrow,
html[data-p360-public-listing-theme="1"] .p360-ll-spec,
html[data-p360-public-listing-theme="1"] .p360-ll-agent,
html[data-p360-public-listing-theme="1"] .p360-ll-agency-badge,
html[data-p360-public-listing-theme="1"] .p360-ll-maps,
html[data-p360-public-listing-theme="1"] .p360-ll-favorite,
html[data-p360-public-listing-theme="1"] .p360-ll-share,
html[data-p360-public-listing-theme="1"] .p360-ll-agent-actions a{
  background:var(--p360-ll-surface-soft);
  border-color:var(--p360-ll-line);
}

html[data-p360-public-listing-theme="1"] .p360-ll-spec-icon{
  background:color-mix(in srgb,var(--p360-ll-accent) 10%,#fff);
  color:var(--p360-ll-accent);
}

html[data-p360-public-listing-theme="1"] .p360-ll-backref{
  background:color-mix(in srgb,var(--p360-ll-primary) 7%,#fff);
  border-color:color-mix(in srgb,var(--p360-ll-primary) 18%,#fff);
  color:var(--p360-ll-primary-deep);
}

html[data-p360-public-listing-theme="1"] .p360-ll-agent .p360-ll-avatar{
  background:linear-gradient(135deg,var(--p360-ll-primary),var(--p360-ll-primary-deep));
}

html[data-p360-public-listing-theme="1"] .p360-ll-inquiry input:focus,
html[data-p360-public-listing-theme="1"] .p360-ll-inquiry textarea:focus{
  border-color:var(--p360-ll-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--p360-ll-accent) 12%,transparent);
}

html[data-p360-public-listing-theme="1"] .p360-ll-inquiry button{
  background:linear-gradient(135deg,var(--p360-ll-primary),var(--p360-ll-primary-deep));
}

html[data-p360-public-listing-theme="1"] .p360-xp{
  --xp-brand:var(--p360-ll-accent)!important;
  --xp-brand-deep:var(--p360-ll-primary-deep)!important;
  border-color:color-mix(in srgb,var(--p360-ll-primary) 22%,#dbe6f0)!important;
}

/* CORPORATE / EDITORIAL CLASSIC
   Match the actual agency homepage visual language:
   warm cream canvas, ivory surfaces, editorial serif headings, restrained gold. */
html[data-p360-website-theme-family*="classic"]{
  --p360-ll-page:#f7f3ed;
  --p360-ll-surface:#fffaf3;
  --p360-ll-surface-soft:#fbf7f0;
  --p360-ll-ink:#211d19;
  --p360-ll-sub:#756b61;
  --p360-ll-line:#e3d9cb;
  --p360-ll-radius:18px;
  --p360-ll-heading-font:Georgia,"Times New Roman",serif;
}

html[data-p360-website-theme-family*="classic"] body,
html[data-p360-website-theme-family*="classic"] body.p360-public-listing-themed{
  background:#f7f3ed!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-wrap{
  max-width:1120px;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-card,
html[data-p360-website-theme-family*="classic"] .p360-xp{
  background:#fffaf3!important;
  border-color:#ded2c2!important;
  box-shadow:0 12px 30px rgba(67,52,36,.05)!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-card h1{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:500!important;
  font-size:29px!important;
  letter-spacing:-.018em!important;
  line-height:1.13!important;
  color:#211d19!important;
}

html[data-p360-website-theme-family*="classic"] .p360-xp__title{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:22px!important;
  font-weight:500!important;
  letter-spacing:-.015em!important;
  color:#211d19!important;
}

html[data-p360-website-theme-family*="classic"] .p360-xp__kicker{
  color:var(--p360-ll-accent)!important;
  letter-spacing:.08em!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-price{
  color:var(--p360-ll-accent)!important;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:600!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-tag{
  background:#211d19!important;
  color:#fff!important;
  border-color:#211d19!important;
  font-weight:700!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-idrow,
html[data-p360-website-theme-family*="classic"] .p360-ll-spec,
html[data-p360-website-theme-family*="classic"] .p360-ll-agent,
html[data-p360-website-theme-family*="classic"] .p360-ll-agency-badge,
html[data-p360-website-theme-family*="classic"] .p360-ll-maps,
html[data-p360-website-theme-family*="classic"] .p360-ll-favorite,
html[data-p360-website-theme-family*="classic"] .p360-ll-share,
html[data-p360-website-theme-family*="classic"] .p360-ll-agent-actions a{
  background:#fbf7f0!important;
  border-color:#e6dccf!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-spec-icon{
  background:#f7eddd!important;
  color:var(--p360-ll-accent)!important;
  border-radius:999px!important;
}

html[data-p360-website-theme-family*="classic"] .p360-ll-backref{
  background:#f5efe6!important;
  border-color:#e4d6c5!important;
  color:#40362d!important;
}

html[data-p360-website-theme-family*="classic"] .p360-xp__tab{
  background:#fbf7f0!important;
  border-color:#dfd4c7!important;
  color:#62564b!important;
}
html[data-p360-website-theme-family*="classic"] .p360-xp__tab.is-active{
  background:var(--p360-ll-accent)!important;
  border-color:var(--p360-ll-accent)!important;
  color:#fff!important;
}

html[data-p360-website-theme-family*="classic"] .p360-xp__thumb{
  background:#eee5d8;
}
html[data-p360-website-theme-family*="classic"] .p360-xp__thumb.is-active{
  border-color:var(--p360-ll-accent)!important;
}

/* Preserve dark immersive media stage; only surrounding chrome changes. */
html[data-p360-website-theme-family*="classic"] .p360-xp__stage{
  background:#171b20;
}

/* Modern */
html[data-p360-website-theme-family*="modern"]{
  --p360-ll-page:#f4f7fa;
  --p360-ll-surface:#fff;
  --p360-ll-surface-soft:#f7f9fb;
  --p360-ll-radius:20px;
}

/* Minimal */
html[data-p360-website-theme-family*="minimal"]{
  --p360-ll-page:#fff;
  --p360-ll-surface:#fff;
  --p360-ll-surface-soft:#fafafa;
  --p360-ll-line:#ececec;
  --p360-ll-radius:14px;
}
html[data-p360-website-theme-family*="minimal"] .p360-ll-card{box-shadow:none}

@media(max-width:640px){
  html[data-p360-public-listing-theme="1"] .p360-ll-wrap{
    padding-left:14px;
    padding-right:14px;
  }
  html[data-p360-public-listing-theme="1"] .p360-ll-card{
    padding:20px;
  }
  html[data-p360-website-theme-family*="classic"] .p360-ll-card h1{
    font-size:25px!important;
  }
  html[data-p360-website-theme-family*="classic"] .p360-xp__title{
    font-size:20px!important;
  }
}
