@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

:root{
  --dhb-green:#0f7a4f;
  --dhb-green-dark:#064e3b;
  --dhb-green-soft:#ecfdf5;
  --dhb-text:#111827;
  --dhb-muted:#6b7280;
  --dhb-border:#e5e7eb;
  --dhb-bg:#f7f8f6;
  --dhb-card:#ffffff;
  --dhb-zalo:#0068ff;
  --dhb-amber:#b45309;
  --dhb-shadow:0 18px 44px rgba(15,23,42,.08);
  --dhb-shadow-soft:0 8px 24px rgba(15,23,42,.055);
}

.dhb-board,
.dhb-single-listing,
.dhb-contact-box,
.dhb-floating-contact{
  font-family:Roboto,Arial,sans-serif;
  color:var(--dhb-text);
  box-sizing:border-box;
}
.dhb-board *,
.dhb-single-listing *,
.dhb-contact-box *,
.dhb-floating-contact *{box-sizing:border-box}

body.dhb-has-board-page .entry-title,
body.dhb-has-board-page .page-title{display:none!important}
body.dhb-has-board-page .inside-article{padding-top:6px!important}
body.dhb-has-board-page .entry-content{margin-top:0!important}
body.dhb-has-board-page .site-main{margin-top:0!important}
body.dhb-public-layout #right-sidebar,
body.dhb-public-layout #left-sidebar,
body.dhb-public-layout .widget-area{display:none!important}
body.dhb-public-layout .site-header{
  border-bottom:1px solid #f0f2f1;
  box-shadow:none!important;
}
body.dhb-public-layout .main-navigation .current-menu-item>a,
body.dhb-public-layout .main-navigation .current_page_item>a{
  color:var(--dhb-green)!important;
  font-weight:500;
}

/* Board shell */
.dhb-board{
  width:min(1180px,calc(100vw - 32px));
  max-width:1180px;
  margin:18px auto 44px;
  padding:0;
  background:transparent;
}
.dhb-board-modern a{text-decoration:none}

/* Hero */
.dhb-board-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(270px,340px);
  gap:22px;
  align-items:center;
  overflow:hidden;
  border:1px solid rgba(229,231,235,.9);
  border-radius:24px;
  padding:30px 32px;
  background:
    radial-gradient(circle at top left,rgba(15,122,79,.12),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f4faf7 100%);
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-board-hero:after{
  content:"";
  position:absolute;
  right:-85px;
  top:-110px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(15,122,79,.08);
  pointer-events:none;
}
.dhb-board-hero-main{position:relative;z-index:1}
.dhb-eyebrow{
  display:inline-flex;
  align-items:center;
  margin:0 0 10px;
  padding:6px 10px;
  border-radius:999px;
  background:#ffffff;
  color:var(--dhb-green-dark);
  font-size:13px;
  font-weight:700;
  border:1px solid rgba(15,122,79,.12);
}
.dhb-board-hero h2{
  margin:0 0 8px!important;
  color:#0b3326;
  font-size:clamp(30px,3vw,42px);
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:700;
}
.dhb-board-hero p{
  max-width:660px;
  margin:0;
  color:#64748b;
  font-size:16px;
  line-height:1.55;
}
.dhb-quick-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.dhb-quick-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:8px 12px;
  border:1px solid #dbe7e1;
  border-radius:999px;
  background:#fff;
  color:var(--dhb-green-dark)!important;
  font-size:13px;
  line-height:1;
  font-weight:500;
  white-space:nowrap;
  transition:.16s ease;
}
.dhb-quick-chip:hover,
.dhb-quick-chip.is-active{
  background:var(--dhb-green);
  border-color:var(--dhb-green);
  color:#fff!important;
  transform:translateY(-1px);
}
.dhb-board-contact-card{
  position:relative;
  z-index:1;
  align-self:center;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(229,231,235,.95);
  border-radius:20px;
  padding:17px;
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-contact-mini-label{
  margin-bottom:6px;
  color:#6b7280;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.dhb-contact-mini-name{
  color:var(--dhb-green-dark);
  font-size:17px;
  line-height:1.35;
  font-weight:700;
}
.dhb-contact-mini-phone{
  display:inline-flex;
  margin:8px 0 12px;
  color:var(--dhb-green)!important;
  font-size:18px;
  font-weight:700;
}
.dhb-contact-mini-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Filter */
.dhb-filter-toggle{
  display:none;
  width:100%;
  margin:14px 0 12px;
  border:1px solid var(--dhb-border);
  border-radius:999px;
  padding:13px 18px;
  background:#fff;
  color:#0b3326;
  font-weight:700;
  box-shadow:0 7px 18px rgba(15,23,42,.045);
}
.dhb-filter-form{
  position:sticky;
  top:0;
  z-index:20;
  display:block;
  margin:14px 0 14px;
  padding:14px;
  border:1px solid var(--dhb-border);
  border-radius:20px;
  background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(10px);
  box-shadow:var(--dhb-shadow-soft);
}
body.admin-bar .dhb-filter-form{top:32px}
.dhb-filter-main,
.dhb-filter-extra{
  display:grid;
  gap:12px;
}
.dhb-filter-main{grid-template-columns:repeat(4,minmax(0,1fr));}
.dhb-filter-extra{grid-template-columns:2fr 1fr 1fr 2fr;margin-top:10px;}
.dhb-filter-form label{margin:0}
.dhb-filter-form label span{
  display:block;
  margin:0 0 6px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
}
.dhb-filter-form select,
.dhb-filter-form input{
  width:100%;
  min-height:44px;
  border:1px solid #dce3e8;
  border-radius:13px;
  padding:9px 13px;
  background:#fff;
  color:#111827;
  font-family:Roboto,Arial,sans-serif;
  font-size:15px;
  outline:none;
  transition:border-color .18s,box-shadow .18s;
}
.dhb-filter-form select:focus,
.dhb-filter-form input:focus{
  border-color:rgba(15,122,79,.55);
  box-shadow:0 0 0 4px rgba(15,122,79,.10);
}
.dhb-filter-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  align-items:end;
}

/* Buttons */
.dhb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  border:1px solid transparent;
  border-radius:999px;
  padding:10px 16px;
  font-size:14px;
  line-height:1.1;
  font-weight:700;
  text-align:center;
  text-decoration:none!important;
  cursor:pointer;
  font-family:Roboto,Arial,sans-serif;
  transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;
}
.dhb-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(15,23,42,.10)}
.dhb-btn-primary,
.dhb-btn-call{background:var(--dhb-green);color:#fff!important}
.dhb-btn-primary:hover,
.dhb-btn-call:hover{background:var(--dhb-green-dark)}
.dhb-btn-zalo{background:var(--dhb-zalo);color:#fff!important}
.dhb-btn-ghost{background:#fff;color:#111827!important;border-color:#dfe4ea}
.dhb-btn-ghost:hover{border-color:#bfc9d3;background:#f8fafc}

/* Result bar */
.dhb-board-resultbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:12px 2px 16px;
  color:#667085;
  font-size:14px;
}
.dhb-result-count{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#eef8f3;
  color:#0f6846;
  font-weight:700;
  font-size:13px;
}
.dhb-result-right a{
  color:#0f6846!important;
  font-weight:500;
}

/* Cards */
.dhb-listing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.dhb-board-cols-1 .dhb-listing-grid{grid-template-columns:1fr}
.dhb-board-cols-2 .dhb-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.dhb-board-cols-4 .dhb-listing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.dhb-listing-card{
  overflow:hidden;
  border:1px solid var(--dhb-border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.07);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.dhb-listing-card:hover{
  transform:translateY(-3px);
  border-color:rgba(15,122,79,.25);
  box-shadow:0 22px 48px rgba(15,23,42,.10);
}
.dhb-card-image{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:16/10;
  background:#edf2f0;
}
.dhb-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.dhb-listing-card:hover .dhb-card-image img{transform:scale(1.035)}
.dhb-image-placeholder{
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#0f6846;
  font-weight:700;
  background:linear-gradient(135deg,#eef8f3,#fff);
}
.dhb-card-badges{
  position:absolute;
  top:12px;
  left:12px;
  right:12px;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  z-index:2;
}
.dhb-card-badges span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(6,78,59,.92);
  color:#fff;
  font-size:12px;
  font-weight:500;
  line-height:1;
  box-shadow:0 6px 14px rgba(0,0,0,.12);
}
.dhb-card-body{padding:15px 16px 16px}
.dhb-card-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
  color:#64748b;
  font-size:12px;
  font-weight:500;
}
.dhb-card-topline span:first-child{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:#ecfdf5;
  color:#0f6846;
  font-weight:700;
}
.dhb-card-topline span:last-child{
  text-align:right;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dhb-card-body h3{
  margin:0 0 8px!important;
  font-family:Roboto,Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1.32!important;
  letter-spacing:-.01em;
  font-weight:700!important;
}
.dhb-card-body h3 a{color:#101828!important}
.dhb-card-body h3 a:hover{color:var(--dhb-green)!important}
.dhb-card-price{
  margin:0;
  color:var(--dhb-amber);
  font-size:22px;
  font-weight:700;
  line-height:1.2;
}
.dhb-card-price-extra{
  margin-top:3px;
  color:#64748b;
  font-size:13px;
  font-weight:500;
}
.dhb-card-icon-meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px 9px;
  margin:12px 0 10px;
}
.dhb-card-icon-meta span{
  display:flex;
  min-width:0;
  align-items:center;
  gap:6px;
  color:#334155;
  font-size:13px;
  line-height:1.35;
}
.dhb-card-icon-meta svg{
  flex:0 0 16px;
  width:16px;
  height:16px;
  fill:#0f7a4f;
  opacity:.86;
}
.dhb-card-icon-meta em{
  font-style:normal;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dhb-card-body p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:42px;
  margin:0 0 14px!important;
  color:#667085;
  font-size:14px;
  line-height:1.55;
}
.dhb-card-detail{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:42px;
  border:1px solid #dfe4ea;
  border-radius:999px;
  background:#fff;
  color:#111827!important;
  font-size:14px;
  font-weight:700;
  text-align:center;
  transition:.16s ease;
}
.dhb-card-detail:hover{
  background:var(--dhb-green);
  border-color:var(--dhb-green);
  color:#fff!important;
}
.dhb-card-actions{display:none!important}

/* Pagination / empty */
.dhb-pagination{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:24px;
}
.dhb-pagination a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid var(--dhb-border);
  border-radius:999px;
  color:#111827!important;
  font-weight:700;
}
.dhb-pagination a.is-active,
.dhb-pagination a:hover{background:var(--dhb-green);color:#fff!important;border-color:var(--dhb-green)}
.dhb-empty-state{
  border:1px solid var(--dhb-border);
  border-radius:20px;
  padding:28px;
  background:#fff;
  text-align:center;
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-empty-state h3{margin:0 0 8px!important;font-size:24px!important;font-weight:700!important}
.dhb-empty-state p{margin:0 auto 18px!important;max-width:520px;color:#667085}
.dhb-empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}

/* Floating contact */
.dhb-floating-contact{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9999;
  display:flex;
  align-items:center;
  gap:10px;
  pointer-events:none;
}
.dhb-floating-contact a{pointer-events:auto;text-decoration:none!important;font-family:Roboto,Arial,sans-serif}
.dhb-floating-call{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:52px;
  padding:10px 18px;
  border-radius:999px;
  background:var(--dhb-green);
  color:#fff!important;
  box-shadow:0 14px 28px rgba(15,122,79,.25);
}
.dhb-floating-call span{font-size:12px;line-height:1;font-weight:500;opacity:.95}
.dhb-floating-call strong{font-size:16px;line-height:1.15;font-weight:700;color:#fff!important}
.dhb-floating-zalo{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:62px;
  min-height:52px;
  padding:10px 18px;
  border-radius:999px;
  background:var(--dhb-zalo);
  color:#fff!important;
  font-weight:700;
  box-shadow:0 14px 28px rgba(0,104,255,.23);
}

/* Contact box */
.dhb-contact-box{
  display:flex;
  gap:14px;
  align-items:center;
  border:1px solid var(--dhb-border);
  border-radius:20px;
  padding:18px;
  background:#fff;
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-contact-avatar{width:70px;height:70px;object-fit:cover;border-radius:999px;border:1px solid #e5e7eb}
.dhb-contact-title{color:#667085;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.dhb-contact-name{margin-top:3px;color:#064e3b;font-size:18px;font-weight:700}
.dhb-contact-phone{margin-top:4px;color:#0f7a4f;font-size:18px;font-weight:700}
.dhb-contact-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}

/* Single listing */
.dhb-single-listing{
  width:min(1180px,calc(100vw - 32px));
  margin:16px auto 54px;
}
.dhb-breadcrumb{
  margin:0 0 14px;
  color:#64748b;
  font-size:14px;
}
.dhb-breadcrumb a{color:#0f6846!important}
.dhb-single-hero{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
  gap:20px;
  align-items:start;
}
.dhb-single-gallery,
.dhb-single-summary,
.dhb-content-section{
  border:1px solid var(--dhb-border);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-single-gallery{overflow:hidden;padding:0}
.dhb-gallery-main img{display:block;width:100%;height:auto;max-height:580px;object-fit:cover}
.dhb-gallery-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:10px;background:#fff}
.dhb-gallery-thumbs img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
.dhb-single-placeholder{min-height:360px;display:flex;align-items:center;justify-content:center;background:#eef8f3;color:#0f6846;font-weight:700}
.dhb-single-summary{padding:20px;position:sticky;top:16px}
body.admin-bar .dhb-single-summary{top:48px}
.dhb-single-price{color:var(--dhb-amber);font-size:28px;font-weight:700;line-height:1.2;margin-bottom:14px}
.dhb-single-meta-list{display:grid;gap:10px;margin-bottom:16px}
.dhb-single-meta-list div,
.dhb-detail-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
  border-bottom:1px solid #f0f2f1;
}
.dhb-single-meta-list span,
.dhb-detail-row span{color:#64748b;font-size:14px}
.dhb-single-meta-list strong,
.dhb-detail-row strong{color:#111827;text-align:right;font-weight:700}
.dhb-single-contact-note{color:#64748b;font-size:14px;margin:8px 0 12px}
.dhb-single-contact-note strong{color:#064e3b}
.dhb-single-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dhb-content-section{margin-top:18px;padding:22px}
.dhb-content-section h2{margin:0 0 14px!important;font-size:24px!important;font-weight:700!important;color:#0b3326}
.dhb-single-content{color:#334155;line-height:1.75}
.dhb-detail-table{display:grid;gap:0}
.dhb-location-section p{color:#64748b;margin-top:0}
.dhb-inline-cta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;border:1px solid #dbe7e1;border-radius:16px;background:#f8fdfa}
.dhb-inline-cta span{margin-right:auto;color:#334155;font-weight:500}
.dhb-video-wrap iframe{width:100%;aspect-ratio:16/9;height:auto;border-radius:16px}
.dhb-internal-panel{border-color:#fbbf24;background:#fffaf0}

@media (max-width:1100px){
  .dhb-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dhb-filter-main{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dhb-filter-extra{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:860px){
  .dhb-board{width:min(100%,calc(100vw - 20px));margin-top:10px}
  .dhb-board-hero{grid-template-columns:1fr;padding:22px 18px;border-radius:20px}
  .dhb-board-hero h2{font-size:30px!important}
  .dhb-board-contact-card{padding:15px}
  .dhb-quick-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .dhb-quick-chip{flex:0 0 auto}
  .dhb-filter-toggle{display:block}
  .dhb-filter-form{
    display:none;
    position:relative;
    top:auto!important;
    margin-top:10px;
    padding:13px;
    border-radius:18px;
  }
  .dhb-filter-form.is-open{display:block}
  .dhb-filter-main,
  .dhb-filter-extra{grid-template-columns:1fr;gap:10px;margin-top:0}
  .dhb-filter-extra{margin-top:10px}
  .dhb-filter-actions{grid-template-columns:1fr 1fr}
  .dhb-board-resultbar{align-items:flex-start;flex-direction:column;margin-top:10px}
  .dhb-listing-grid{grid-template-columns:1fr;gap:14px}
  .dhb-card-image{aspect-ratio:16/10}
  .dhb-card-icon-meta{grid-template-columns:1fr}
  .dhb-floating-contact{
    left:10px;
    right:10px;
    bottom:10px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:8px;
    border:1px solid rgba(229,231,235,.9);
    border-radius:22px;
    background:rgba(255,255,255,.95);
    box-shadow:0 16px 36px rgba(15,23,42,.12);
    backdrop-filter:saturate(140%) blur(10px);
  }
  .dhb-floating-call,
  .dhb-floating-zalo{min-height:48px;border-radius:16px;box-shadow:none;text-align:center}
  body.dhb-public-layout{padding-bottom:78px}
  .dhb-single-listing{width:min(100%,calc(100vw - 20px));margin-top:10px}
  .dhb-single-hero{grid-template-columns:1fr}
  .dhb-single-summary{position:relative;top:auto!important}
  .dhb-gallery-thumbs{grid-template-columns:repeat(4,1fr)}
}

@media (max-width:520px){
  .dhb-board-hero{padding:20px 16px}
  .dhb-eyebrow{font-size:12px}
  .dhb-board-hero h2{font-size:28px!important}
  .dhb-board-hero p{font-size:15px}
  .dhb-contact-mini-actions{display:grid;grid-template-columns:1fr 1fr}
  .dhb-card-body{padding:14px}
  .dhb-card-body h3{font-size:17px!important}
  .dhb-card-price{font-size:21px}
  .dhb-filter-actions{grid-template-columns:1fr}
  .dhb-single-actions{grid-template-columns:1fr}
  .dhb-contact-box{align-items:flex-start;flex-direction:column}
}

/* Single listing 2.0.4 - code URL + cleaner customer detail page */
body.dhb-has-listing-page .entry-title,
body.dhb-has-listing-page .page-title,
body.dhb-has-listing-page .featured-image,
body.dhb-has-listing-page .post-image,
body.dhb-has-listing-page .page-header-image,
body.dhb-has-listing-page .inside-article > .wp-post-image{display:none!important}

.dhb-single-listing{width:min(1120px,calc(100vw - 32px));margin:18px auto 60px}
.dhb-breadcrumb{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:#64748b;font-size:13px;line-height:1.4;flex-wrap:wrap}
.dhb-breadcrumb a{color:#0f6846!important;font-weight:500;text-decoration:none!important}
.dhb-breadcrumb strong{color:#0b3326;font-weight:700}
.dhb-single-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,340px);
  gap:18px;
  align-items:stretch;
  margin-bottom:18px;
  padding:26px;
  border:1px solid rgba(229,231,235,.95);
  border-radius:24px;
  background:linear-gradient(135deg,#ffffff 0%,#f4fbf7 100%);
  box-shadow:var(--dhb-shadow-soft);
}
.dhb-listing-code-pill{display:inline-flex;align-items:center;width:max-content;margin-bottom:10px;padding:7px 11px;border-radius:999px;background:#ecfdf5;color:#064e3b;font-size:13px;font-weight:700;border:1px solid rgba(15,122,79,.14)}
.dhb-single-title-block h1{margin:0 0 10px!important;color:#0b3326;font-family:Roboto,Arial,sans-serif!important;font-size:clamp(28px,3vw,40px)!important;line-height:1.14!important;letter-spacing:-.03em;font-weight:700!important}
.dhb-single-title-block p{max-width:760px;margin:0;color:#64748b;font-size:16px;line-height:1.65}
.dhb-single-title-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.dhb-single-title-chips span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff;color:#0f6846;border:1px solid #dbe7e1;font-size:13px;font-weight:700}
.dhb-single-contact-compact{display:flex;flex-direction:column;justify-content:center;border:1px solid #e5e7eb;border-radius:20px;background:#fff;padding:18px;box-shadow:0 12px 28px rgba(15,23,42,.06)}
.dhb-single-contact-compact span{color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.dhb-single-contact-compact strong{margin-top:7px;color:#064e3b;font-size:19px;line-height:1.3;font-weight:700}
.dhb-single-contact-compact a{margin-top:8px;color:#0f7a4f!important;font-size:19px;font-weight:700;text-decoration:none!important}
.dhb-single-hero{grid-template-columns:minmax(0,1.5fr) minmax(300px,.72fr);gap:20px;margin-bottom:18px}
.dhb-gallery-main{background:#f2f7f4}
.dhb-gallery-main img{display:block;width:100%;height:520px;max-height:62vh;object-fit:cover}
.dhb-gallery-thumbs{grid-template-columns:repeat(6,1fr);gap:8px;padding:10px;background:#fff;border-top:1px solid #eef2f1}
.dhb-gallery-thumbs a{display:block;border-radius:12px;overflow:hidden;border:1px solid #eef2f1}
.dhb-gallery-thumbs img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:0}
.dhb-single-summary{padding:18px;border-radius:22px}
.dhb-summary-code{margin-bottom:12px;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid #e5e7eb;color:#475569;font-size:13px;line-height:1.4}
.dhb-summary-code strong{color:#064e3b;font-size:15px;letter-spacing:.03em}
.dhb-single-price{font-size:28px;font-weight:700;letter-spacing:-.02em;margin-bottom:5px;color:var(--dhb-amber)}
.dhb-single-total{margin-bottom:14px;color:#64748b;font-size:13px;font-weight:500}
.dhb-single-meta-list{gap:0;margin-bottom:14px}
.dhb-single-meta-list div{padding:11px 0;border-bottom:1px solid #f0f2f1}
.dhb-single-meta-list div:last-child{border-bottom:0}
.dhb-single-contact-note{padding-top:8px;border-top:1px solid #f0f2f1}
.dhb-single-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.dhb-single-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.dhb-fact-item{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;gap:1px 10px;padding:14px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;box-shadow:var(--dhb-shadow-soft)}
.dhb-fact-item svg{grid-row:1/3;width:30px;height:30px;padding:7px;border-radius:999px;background:#ecfdf5;fill:#0f7a4f}
.dhb-fact-item span{color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;line-height:1.2}
.dhb-fact-item strong{min-width:0;color:#111827;font-size:14px;font-weight:700;line-height:1.35;overflow:hidden;text-overflow:ellipsis}
.dhb-highlight-section{background:linear-gradient(135deg,#fff 0%,#fbfdfc 100%)}
.dhb-highlight-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dhb-highlight-grid span{display:inline-flex;padding:9px 11px;border-radius:999px;background:#ecfdf5;color:#064e3b;font-size:13px;font-weight:700;border:1px solid rgba(15,122,79,.12)}
.dhb-highlight-section p{margin:0;color:#475569;line-height:1.7}
.dhb-content-section{border-radius:22px;padding:24px;box-shadow:var(--dhb-shadow-soft)}
.dhb-content-section h2{font-family:Roboto,Arial,sans-serif!important;font-size:24px!important;letter-spacing:-.02em;color:#0b3326!important}
.dhb-detail-row{padding:12px 0}
.dhb-detail-row strong{max-width:65%;line-height:1.45}
.dhb-location-section .dhb-inline-cta{margin-top:14px}
.dhb-internal-panel{border:1px solid #f6c76a;background:#fffaf0}

@media (max-width:900px){
  .dhb-single-top{grid-template-columns:1fr;padding:20px;border-radius:20px}
  .dhb-single-contact-compact{display:none}
  .dhb-single-hero{grid-template-columns:1fr}
  .dhb-gallery-main img{height:auto;max-height:none;aspect-ratio:16/10}
  .dhb-single-summary{position:relative;top:auto!important}
  .dhb-single-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .dhb-single-listing{width:min(100%,calc(100vw - 20px));margin-top:10px}
  .dhb-single-top{padding:18px 16px}
  .dhb-single-title-block h1{font-size:28px!important}
  .dhb-single-title-block p{font-size:15px}
  .dhb-single-title-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}
  .dhb-single-title-chips span{flex:0 0 auto}
  .dhb-gallery-thumbs{grid-template-columns:repeat(4,1fr)}
  .dhb-single-facts{grid-template-columns:1fr;gap:10px}
  .dhb-single-actions{grid-template-columns:1fr}
  .dhb-content-section{padding:18px 16px;border-radius:18px}
  .dhb-detail-row{align-items:flex-start;flex-direction:column;gap:4px}
  .dhb-detail-row strong{max-width:100%;text-align:left}
}

/* 2.0.4 - private source workflow + cleaner public footer */
body.dhb-public-layout .site-footer,
body.dhb-public-layout footer.site-info,
body.dhb-public-layout .site-info,
body.dhb-public-layout .copyright-bar,
body.dhb-public-layout .footer-bar,
body.dhb-public-layout .inside-site-info{display:none!important}

.dhb-agent-panel{border-color:#dbeafe;background:linear-gradient(135deg,#fff 0%,#f8fbff 100%)}
.dhb-source-panel{border-color:#f6c76a;background:linear-gradient(135deg,#fffaf0 0%,#fff 100%)}
.dhb-private-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.dhb-private-head h2{margin:0!important}
.dhb-private-head code{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#f8fafc;color:#064e3b;border:1px solid #e5e7eb;font-weight:700;letter-spacing:.04em}
.dhb-private-kicker{display:block;margin-bottom:5px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
.dhb-copy-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.dhb-btn-copy{background:#fff;color:#064e3b!important;border-color:#dbe7e1;box-shadow:none}
.dhb-btn-copy:hover,.dhb-btn-copy.is-copied{background:#ecfdf5;border-color:#9fd8c1;transform:none}
.dhb-safe-note{margin:12px 0 0;color:#64748b;font-size:13px;line-height:1.55}
.dhb-sensitive-alert{margin:4px 0 14px;padding:12px 14px;border-radius:16px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:13px;font-weight:600;line-height:1.55}
.dhb-private-table .dhb-detail-row strong a{color:#0f7a4f!important;text-decoration:none!important}
.dhb-redbook-box{margin-top:18px;padding-top:16px;border-top:1px solid rgba(180,83,9,.16)}
.dhb-redbook-box h3{margin:0 0 12px!important;color:#0b3326;font-size:18px!important;font-family:Roboto,Arial,sans-serif!important}
.dhb-redbook-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dhb-redbook-grid a{display:block;overflow:hidden;border-radius:14px;border:1px solid #f2dfbd;background:#fff}
.dhb-redbook-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

@media (max-width:700px){
  .dhb-private-head{flex-direction:column;align-items:stretch}
  .dhb-copy-grid{display:grid;grid-template-columns:1fr;gap:8px}
  .dhb-redbook-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* 2.0.5 - detail role UI fix + related overflow guard */
.dhb-single-listing{width:min(1160px,calc(100vw - 32px));overflow:visible}
.dhb-public-detail-section .dhb-detail-table{display:none}
.dhb-detail-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dhb-detail-card{
  min-width:0;
  padding:15px 16px;
  border:1px solid #e5e7eb;
  border-radius:18px;
  background:linear-gradient(135deg,#fff 0%,#fbfdfc 100%);
}
.dhb-detail-card span{
  display:block;
  margin-bottom:7px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.dhb-detail-card strong{
  display:block;
  color:#0f172a;
  font-size:16px;
  font-weight:700;
  line-height:1.4;
  overflow-wrap:anywhere;
}
.dhb-detail-card em{
  display:block;
  margin-top:6px;
  color:#64748b;
  font-size:13px;
  font-style:normal;
  line-height:1.45;
}
.dhb-agent-panel .dhb-private-head p,
.dhb-source-panel .dhb-private-head p{
  margin:7px 0 0;
  color:#64748b;
  font-size:14px;
  line-height:1.55;
}
.dhb-role-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.dhb-role-item{
  position:relative;
  min-width:0;
  padding:15px 82px 15px 15px;
  border:1px solid #dbeafe;
  border-radius:18px;
  background:#fff;
}
.dhb-role-item span,
.dhb-source-row span{
  display:block;
  margin-bottom:6px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.dhb-role-item strong,
.dhb-source-row strong{
  display:block;
  color:#0f172a;
  font-size:15px;
  line-height:1.45;
  font-weight:700;
  overflow-wrap:anywhere;
}
.dhb-role-item strong a,
.dhb-source-row strong a{color:#0f7a4f!important;text-decoration:none!important}
.dhb-role-item em{
  display:block;
  margin-top:7px;
  color:#64748b;
  font-size:13px;
  font-style:normal;
  line-height:1.45;
}
.dhb-mini-copy{
  position:absolute;
  right:12px;
  top:13px;
  min-height:30px;
  padding:6px 10px;
  border:1px solid #dbe7e1;
  border-radius:999px;
  background:#fff;
  color:#064e3b;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.dhb-mini-copy:hover,
.dhb-mini-copy.is-copied{background:#ecfdf5;border-color:#9fd8c1}
.dhb-copy-panels{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.dhb-copy-panels-source{grid-template-columns:repeat(3,minmax(0,1fr))}
.dhb-copy-panel{
  min-width:0;
  border:1px solid #e5e7eb;
  border-radius:18px;
  background:#fff;
  overflow:hidden;
}
.dhb-copy-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  border-bottom:1px solid #eef2f1;
  background:#f8fafc;
}
.dhb-copy-panel-head h3{
  margin:0!important;
  color:#0b3326;
  font-family:Roboto,Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
}
.dhb-copy-panel pre{
  max-height:230px;
  overflow:auto;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  margin:0;
  padding:14px;
  color:#334155;
  font-family:Roboto,Arial,sans-serif;
  font-size:13px;
  line-height:1.65;
  background:#fff;
}
.dhb-source-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.dhb-source-group{
  min-width:0;
  padding:16px;
  border:1px solid #f2dfbd;
  border-radius:18px;
  background:rgba(255,255,255,.78);
}
.dhb-source-group h3{
  margin:0 0 12px!important;
  color:#0b3326;
  font-family:Roboto,Arial,sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
}
.dhb-source-row{
  position:relative;
  min-height:64px;
  padding:10px 74px 10px 0;
  border-top:1px solid rgba(229,231,235,.75);
}
.dhb-source-row:first-of-type{border-top:0}
.dhb-source-row .dhb-mini-copy{right:0;top:12px}
.dhb-redbook-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.dhb-redbook-head h3{margin:0!important}
.dhb-missing-box{
  padding:18px;
  border:1px dashed #f2c879;
  border-radius:16px;
  background:#fff;
  color:#92400e;
  font-weight:700;
}
.dhb-related-section{overflow:hidden;contain:layout paint}
.dhb-related-section .dhb-board{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.dhb-related-section .dhb-board-inner,
.dhb-related-section .dhb-listing-grid{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.dhb-related-section .dhb-listing-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.dhb-related-section .dhb-listing-card,
.dhb-related-section .dhb-card-body,
.dhb-related-section .dhb-card-icon-meta span,
.dhb-related-section .dhb-card-icon-meta em{
  min-width:0!important;
  max-width:100%!important;
}
.dhb-related-section .dhb-listing-card{box-shadow:0 12px 28px rgba(15,23,42,.06)}
.dhb-related-section .dhb-card-image{aspect-ratio:16/10}
.dhb-related-section .dhb-card-body h3{font-size:17px!important;line-height:1.32!important}
.dhb-related-section .dhb-card-price{font-size:21px}
.dhb-related-section .dhb-card-icon-meta{grid-template-columns:1fr 1fr;gap:7px}
.dhb-related-section .dhb-board-header,
.dhb-related-section .dhb-filter-toggle,
.dhb-related-section .dhb-filter-form,
.dhb-related-section .dhb-board-resultbar,
.dhb-related-section .dhb-pagination{display:none!important}

@media (max-width:980px){
  .dhb-detail-card-grid,
  .dhb-role-grid,
  .dhb-source-groups,
  .dhb-copy-panels,
  .dhb-copy-panels-source{grid-template-columns:1fr}
  .dhb-related-section .dhb-listing-grid{grid-template-columns:1fr!important}
}
@media (max-width:560px){
  .dhb-single-listing{width:min(100%,calc(100vw - 16px))}
  .dhb-detail-card{padding:13px 14px}
  .dhb-role-item{padding:14px}
  .dhb-role-item .dhb-mini-copy{position:static;margin-top:10px;width:100%}
  .dhb-source-group{padding:14px}
  .dhb-source-row{padding:10px 0}
  .dhb-source-row .dhb-mini-copy{position:static;margin-top:9px;width:100%}
  .dhb-copy-panel-head{align-items:stretch;flex-direction:column}
  .dhb-copy-panel-head .dhb-btn{width:100%}
  .dhb-redbook-head{align-items:stretch;flex-direction:column}
}


/* 2.0.6 - board footer + guaranteed contact on main board pages */
body.dhb-has-board-page .dhb-board{
  margin-bottom:32px;
  padding-bottom:118px;
}
.dhb-board-footer{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,320px);
  gap:18px;
  align-items:center;
  margin:28px 0 0;
  padding:22px;
  border:1px solid rgba(15,122,79,.14);
  border-radius:24px;
  background:
    radial-gradient(circle at top right,rgba(15,122,79,.10),transparent 32%),
    linear-gradient(135deg,#ffffff 0%,#f5fbf8 100%);
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.dhb-board-footer-main span,
.dhb-board-footer-contact small{
  display:block;
  margin:0 0 6px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.dhb-board-footer-main strong{
  display:block;
  color:#0b3326;
  font-size:22px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:-.015em;
}
.dhb-board-footer-main p{
  max-width:680px;
  margin:8px 0 0!important;
  color:#64748b;
  font-size:14px;
  line-height:1.6;
}
.dhb-board-footer-contact{
  min-width:0;
  padding:16px;
  border:1px solid rgba(229,231,235,.9);
  border-radius:20px;
  background:rgba(255,255,255,.95);
  box-shadow:0 10px 24px rgba(15,23,42,.055);
}
.dhb-board-footer-contact b{
  display:block;
  color:#064e3b;
  font-size:16px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.dhb-board-footer-phone{
  display:inline-flex;
  margin:7px 0 12px;
  color:#0f7a4f!important;
  font-size:18px;
  font-weight:700;
  text-decoration:none!important;
}
.dhb-board-footer-actions{display:flex;gap:8px;flex-wrap:wrap}
body.dhb-has-board-page .dhb-floating-contact{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
body.dhb-has-board-page .dhb-listing-grid{margin-bottom:0}
body.dhb-has-board-page .dhb-pagination{margin-bottom:0}
.dhb-related-section .dhb-board{padding-bottom:0!important}
.dhb-related-section .dhb-board-footer{display:none!important}

@media (max-width:860px){
  body.dhb-has-board-page .dhb-board{padding-bottom:92px}
  .dhb-board-footer{grid-template-columns:1fr;padding:18px;border-radius:20px}
  .dhb-board-footer-main strong{font-size:20px}
}
@media (max-width:560px){
  body.dhb-has-board-page .dhb-board{padding-bottom:104px}
  .dhb-board-footer{margin-top:20px;padding:16px;border-radius:18px}
  .dhb-board-footer-actions{display:grid;grid-template-columns:1fr 1fr}
  .dhb-board-footer-actions .dhb-btn{width:100%}
}

/* 2.1.6 detail collaboration */
.dhb-request-actions,.dhb-granted-box{margin-top:18px;border:1px solid #d7e9df;background:#f8fdfa;border-radius:18px;padding:18px}.dhb-request-actions h3,.dhb-granted-box h3{margin:0 0 8px;color:#003b2f}.dhb-request-actions p{margin:0 0 12px;color:#617084}.dhb-request-buttons{display:flex;flex-wrap:wrap;gap:10px}.dhb-request-buttons form{margin:0}.dhb-granted-box .dhb-copy-panel{margin:0}.dhb-redbook-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.dhb-note-section{border-color:#dbeafe;background:#fbfdff}.dhb-note-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.dhb-note-form textarea{width:100%;border:1px solid #d7e2de;border-radius:16px;padding:12px 14px;font-family:inherit}.dhb-note-list{display:grid;gap:10px;margin-top:14px}.dhb-note-item{border:1px solid #e5edf0;background:#fff;border-radius:14px;padding:12px 14px}.dhb-note-item strong{color:#003b2f}.dhb-note-item span{display:block;font-size:12px;color:#7b8794;margin-top:2px}.dhb-note-item p{margin:8px 0 0;white-space:normal}.dhb-role-grid-sale .dhb-role-item .dhb-mini-copy{top:14px;right:14px}.dhb-source-panel .dhb-private-kicker{letter-spacing:.08em}.site-info,.copyright-bar,.footer-bar .copyright-bar{display:none!important}.dhb-card{min-width:0}.dhb-related-section{overflow:hidden}.dhb-related-section .dhb-board-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%;overflow:hidden}.dhb-related-section .dhb-listing-card{min-width:0}.dhb-related-section .dhb-card-image img{max-width:100%}
@media(max-width:780px){.dhb-note-form{grid-template-columns:1fr}.dhb-request-buttons{display:grid}.dhb-request-buttons .dhb-btn{width:100%;justify-content:center}.dhb-redbook-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.dhb-related-section .dhb-board-grid{grid-template-columns:1fr}.dhb-granted-box{padding:14px}.dhb-request-actions{padding:14px}}

/* DHB 2.1.7 - detail workflow, avatar and internal talk polish */
.dhb-user-avatar-img{width:44px!important;height:44px!important;object-fit:cover;border-radius:999px;display:block;background:#eef6f2;border:1px solid rgba(0,85,62,.12)}
.dhb-request-actions-v217{border:1px solid rgba(0,110,82,.16);background:linear-gradient(135deg,#f6fffb,#fff);border-radius:22px;padding:22px;margin-top:22px;box-shadow:0 14px 36px rgba(0,48,35,.06)}
.dhb-request-headline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.dhb-request-person{display:flex;align-items:center;gap:12px}.dhb-request-person h3{margin:0 0 4px;font-size:22px;color:#003d2e}.dhb-request-person p{margin:0;color:#5b6a7c}.dhb-request-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dhb-request-buttons form{margin:0}.dhb-request-button{width:100%;height:100%;cursor:pointer;text-align:left;border:1px solid rgba(0,92,68,.18);background:#fff;border-radius:999px;padding:12px 16px;display:flex;flex-direction:column;gap:3px;transition:.18s ease;box-shadow:0 6px 18px rgba(0,48,35,.04)}.dhb-request-button:hover{transform:translateY(-1px);border-color:#0b8759;box-shadow:0 12px 26px rgba(0,48,35,.1)}.dhb-request-button strong{font-size:14px;color:#052e22}.dhb-request-button span{font-size:12px;line-height:1.35;color:#69788a}.dhb-request-status-box{margin-top:16px;padding:14px;border-radius:18px;background:#fff;border:1px solid rgba(32,128,96,.12)}.dhb-request-status-box h4{margin:0 0 10px;color:#003d2e;font-size:15px}.dhb-request-status-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dhb-request-status-item{border:1px solid #dce8e3;border-radius:16px;padding:10px 12px;background:#fbfefd}.dhb-request-status-item span{display:block;font-size:12px;color:#667588;margin-bottom:5px}.dhb-request-status-item strong{display:block;font-size:14px;color:#053828}.dhb-request-status-item.is-done{background:#effcf5;border-color:#bfe8d2}.dhb-request-status-item em{display:block;margin-top:6px;font-size:12px;color:#526071;font-style:normal;line-height:1.45}
.dhb-note-section-v217{border:1px solid rgba(0,104,78,.16);background:#fff;border-radius:22px;overflow:hidden}.dhb-note-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.dhb-note-head h2{margin:0 0 6px;color:#003d2e}.dhb-note-head p{margin:0;color:#5d6e80}.dhb-note-current-user{display:flex;align-items:center;gap:8px;background:#f6fbf8;border:1px solid #dbece4;border-radius:999px;padding:6px 10px;font-weight:700;color:#004d39;white-space:nowrap}.dhb-note-current-user .dhb-user-avatar-img{width:32px!important;height:32px!important}.dhb-note-composer{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:end;background:#f8fbfa;border:1px solid #dfe9e5;border-radius:18px;padding:12px}.dhb-note-composer textarea{width:100%;border:0!important;box-shadow:none!important;background:transparent;resize:vertical;min-height:72px;font-size:15px}.dhb-note-list-v217{display:flex;flex-direction:column;gap:12px;margin-top:16px}.dhb-note-item-v217{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px;border:1px solid #e2ece8;border-radius:18px;background:#fff;box-shadow:0 6px 20px rgba(0,40,28,.04)}.dhb-note-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dhb-note-meta strong{color:#042e24}.dhb-note-meta span{font-size:12px;font-weight:700;color:#007d5a;background:#e9f8f1;border-radius:999px;padding:3px 8px}.dhb-note-meta time{font-size:12px;color:#748295}.dhb-note-body p{margin:8px 0 0;color:#28394a;line-height:1.55}.dhb-note-section-v217 .dhb-missing-box{margin-top:12px;border-radius:16px;padding:14px;color:#8a4b00;background:#fffaf0;border:1px dashed #ffc267}.comments-area,.comment-respond{display:none!important}
@media(max-width:760px){.dhb-request-actions-v217{padding:16px;border-radius:18px}.dhb-request-person{align-items:flex-start}.dhb-request-buttons,.dhb-request-status-list{grid-template-columns:1fr}.dhb-request-button{border-radius:16px}.dhb-note-head{display:block}.dhb-note-current-user{margin-top:12px;width:max-content}.dhb-note-composer{grid-template-columns:auto 1fr}.dhb-note-composer button{grid-column:1/-1;width:100%}.dhb-note-item-v217{grid-template-columns:auto 1fr;padding:12px}.dhb-note-meta{display:block}.dhb-note-meta span,.dhb-note-meta time{display:inline-block;margin-top:4px}}

/* 2.1.7.1 detail contact + request polish */
.dhb-single-contact-compact-v2171{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;position:relative;min-height:150px}
.dhb-single-contact-avatar{width:58px;height:58px;border-radius:18px;object-fit:cover;box-shadow:0 12px 24px rgba(15,23,42,.12);border:1px solid rgba(20,83,45,.12);background:#fff}
.dhb-single-contact-info{display:flex;flex-direction:column;gap:6px;min-width:0}
.dhb-single-contact-info span{font-size:12px;font-weight:800;text-transform:uppercase;color:#64748b;letter-spacing:.04em}
.dhb-single-contact-info strong{font-size:18px;color:#064e3b;line-height:1.25}
.dhb-single-contact-info a{font-size:18px;font-weight:900;color:#047857;text-decoration:none}
.dhb-single-contact-actions-mini{grid-column:1 / -1;display:flex;gap:10px;margin-top:2px}
.dhb-single-contact-actions-mini a{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 20px;border-radius:999px;font-weight:900;text-decoration:none;background:#07875c;color:#fff;box-shadow:0 10px 18px rgba(7,135,92,.18)}
.dhb-single-contact-actions-mini a:last-child{background:#0068ff}
.dhb-request-inline-note{margin-top:16px;padding:16px;border:1px solid rgba(16,185,129,.18);background:#f8fffb;border-radius:20px}
.dhb-request-inline-note label{display:block;font-weight:900;color:#064e3b;margin-bottom:10px}
.dhb-request-inline-note>div{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}
.dhb-request-inline-note textarea{width:100%;min-height:74px;border-radius:16px;border:1px solid #d6e3df;padding:14px 16px;font-size:15px;resize:vertical;background:#fff}
.dhb-request-status-box{margin-top:16px;border-radius:18px;background:#fff;border:1px solid rgba(37,99,235,.16);padding:14px}
.dhb-request-status-list{display:grid;gap:10px}.dhb-request-status-item{display:grid;grid-template-columns:1fr auto;gap:8px;border-bottom:1px dashed #e2e8f0;padding:8px 0}.dhb-request-status-item:last-child{border-bottom:0}.dhb-request-status-item span{color:#475569}.dhb-request-status-item strong{color:#064e3b}.dhb-request-status-item em{grid-column:1/-1;color:#475569;font-style:normal}
@media(max-width:768px){.dhb-single-contact-compact-v2171{min-height:0;grid-template-columns:auto 1fr}.dhb-single-contact-avatar{width:52px;height:52px}.dhb-request-inline-note>div{grid-template-columns:1fr}.dhb-request-inline-note .dhb-btn{width:100%;justify-content:center}}

/* 2.1.7.2 — contact/avatar/detail polish */
.dhb-board-contact-card{
    display:flex!important;
    align-items:center!important;
    gap:16px!important;
}
.dhb-contact-mini-avatar{
    width:64px!important;
    height:64px!important;
    border-radius:999px!important;
    object-fit:cover!important;
    border:3px solid #ecfdf5!important;
    box-shadow:0 12px 24px rgba(15,23,42,.12)!important;
    flex:0 0 auto!important;
}
.dhb-contact-mini-copy{min-width:0!important;}
.dhb-contact-mini-actions .dhb-btn,
.dhb-board-footer-actions .dhb-btn,
.dhb-single-contact-actions .dhb-btn,
.dhb-single-hero-contact .dhb-btn{
    color:#fff!important;
    text-decoration:none!important;
    text-shadow:none!important;
}
.dhb-contact-mini-actions .dhb-btn:hover,
.dhb-board-footer-actions .dhb-btn:hover,
.dhb-single-contact-actions .dhb-btn:hover,
.dhb-single-hero-contact .dhb-btn:hover{
    color:#fff!important;
    filter:brightness(.97);
}
.dhb-single-hero-contact .dhb-contact-avatar,
.dhb-single-contact-card .dhb-contact-avatar{
    width:64px!important;
    height:64px!important;
    border-radius:999px!important;
    object-fit:cover!important;
    border:3px solid #ecfdf5!important;
    box-shadow:0 12px 24px rgba(15,23,42,.12)!important;
}
.dhb-board-footer-contact{
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    align-items:center!important;
    column-gap:12px!important;
}
.dhb-board-footer-avatar{
    width:48px!important;
    height:48px!important;
    border-radius:999px!important;
    object-fit:cover!important;
    border:2px solid #ecfdf5!important;
    grid-row:1 / span 4!important;
}
.dhb-board-footer-contact small,
.dhb-board-footer-contact b,
.dhb-board-footer-phone,
.dhb-board-footer-actions{grid-column:2!important;}
body.dhb-has-listing-page .comments-area,
body.dhb-has-listing-page #comments,
body.dhb-has-listing-page .comment-respond,
body.dhb-has-listing-page .entry-meta,
body.dhb-has-listing-page .cat-links,
body.dhb-has-listing-page .tags-links{
    display:none!important;
}
@media (max-width: 720px){
    .dhb-board-contact-card{align-items:flex-start!important;gap:12px!important;}
    .dhb-contact-mini-avatar{width:54px!important;height:54px!important;}
    .dhb-contact-mini-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
    .dhb-board-footer-contact{grid-template-columns:1fr!important;}
    .dhb-board-footer-avatar{grid-column:1!important;grid-row:auto!important;margin-bottom:8px!important;}
}

/* 2.1.7.3 — stronger public contact buttons and safer mobile spacing */
.dhb-single-contact-actions-mini,
.dhb-single-detail-contact .dhb-single-contact-actions-mini,
.dhb-single-hero-contact .dhb-single-contact-actions-mini{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    margin-top:18px!important;
}
.dhb-single-contact-actions-mini a,
.dhb-single-contact-actions-mini .dhb-btn,
.dhb-single-hero-contact .dhb-btn,
.dhb-single-detail-contact .dhb-btn{
    min-height:44px!important;
    min-width:82px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 18px!important;
    font-weight:900!important;
    text-decoration:none!important;
    box-shadow:0 10px 22px rgba(15,23,42,.10)!important;
    opacity:1!important;
    filter:none!important;
}
.dhb-single-contact-actions-mini .dhb-call-button,
.dhb-single-contact-actions-mini a[href^="tel"],
.dhb-single-hero-contact .dhb-call-button,
.dhb-single-detail-contact .dhb-call-button{
    background:#07824f!important;
    border-color:#07824f!important;
    color:#fff!important;
}
.dhb-single-contact-actions-mini .dhb-zalo-button,
.dhb-single-contact-actions-mini a[href*="zalo"],
.dhb-single-hero-contact .dhb-zalo-button,
.dhb-single-detail-contact .dhb-zalo-button{
    background:#006cff!important;
    border-color:#006cff!important;
    color:#fff!important;
}
.dhb-floating-contact a,
.dhb-floating-contact .dhb-btn{
    opacity:1!important;
    filter:none!important;
}
@media(max-width:640px){
    .dhb-single-contact-actions-mini a,
    .dhb-single-contact-actions-mini .dhb-btn{flex:1 1 calc(50% - 6px)!important;min-width:0!important;}
}
.dhb-single-contact-actions-mini a:first-child{background:#07824f!important;border-color:#07824f!important;color:#fff!important;}
.dhb-single-contact-actions-mini a:last-child{background:#006cff!important;border-color:#006cff!important;color:#fff!important;}

/* 2.1.7.4: giữ nút liên hệ rõ màu trên trang chi tiết, tránh theme override màu chữ/link. */
.dhb-single-contact-actions-mini a.dhb-single-call-cta,
.dhb-single-contact-actions-mini a.dhb-single-call-cta:visited,
.dhb-single-contact-actions-mini a.dhb-single-call-cta:hover,
.dhb-single-contact-actions-mini a.dhb-single-call-cta:focus{
  background:#0f8a5f !important;
  color:#fff !important;
  text-decoration:none !important;
  border-color:#0f8a5f !important;
  opacity:1 !important;
}
.dhb-single-contact-actions-mini a.dhb-single-zalo-cta,
.dhb-single-contact-actions-mini a.dhb-single-zalo-cta:visited,
.dhb-single-contact-actions-mini a.dhb-single-zalo-cta:hover,
.dhb-single-contact-actions-mini a.dhb-single-zalo-cta:focus{
  background:#006dfb !important;
  color:#fff !important;
  text-decoration:none !important;
  border-color:#006dfb !important;
  opacity:1 !important;
}
.dhb-single-contact-actions-mini a{
  min-width:72px;
  justify-content:center;
  text-align:center;
}

/* 2.1.7.5: cố định màu CTA liên hệ trên trang chi tiết */
.dhb-single-contact-actions-mini a,
.dhb-single-contact-actions-mini .dhb-single-call-cta,
.dhb-single-contact-actions-mini .dhb-single-zalo-cta,
.dhb-single-contact-card a,
.dhb-floating-contact a{
    text-decoration:none !important;
    opacity:1 !important;
    filter:none !important;
}
.dhb-single-contact-actions-mini .dhb-single-call-cta,
.dhb-single-contact-card .dhb-single-call-cta,
.dhb-floating-contact .dhb-float-call{
    color:#fff !important;
    background:#07875d !important;
    border-color:#07875d !important;
}
.dhb-single-contact-actions-mini .dhb-single-zalo-cta,
.dhb-single-contact-card .dhb-single-zalo-cta,
.dhb-floating-contact .dhb-float-zalo{
    color:#fff !important;
    background:#0068ff !important;
    border-color:#0068ff !important;
}
.dhb-single-contact-actions-mini .dhb-single-call-cta:hover,
.dhb-single-contact-card .dhb-single-call-cta:hover,
.dhb-floating-contact .dhb-float-call:hover{
    color:#fff !important;
    background:#056f4d !important;
}
.dhb-single-contact-actions-mini .dhb-single-zalo-cta:hover,
.dhb-single-contact-card .dhb-single-zalo-cta:hover,
.dhb-floating-contact .dhb-float-zalo:hover{
    color:#fff !important;
    background:#005be0 !important;
}
