/* Condos in 3D -- samtastic-core 1.21.353. Builds on hdb-3d / guide-3d / blog-3d / bto-3d / map-3d CSS. */
.cd3d .h3d__hero .b3d-crumbs { text-align: center; }
.cd3d-search { display: flex; gap: 8px; max-width: 620px; margin: 18px auto 6px; padding: 6px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); }
.cd3d-search input { flex: 1 1 auto; min-width: 0; border: 0; background: transparent; padding: 10px 14px; color: #fff; font: 500 15px/1.2 Inter, sans-serif; outline: none; }
.cd3d-search input::placeholder { color: rgba(255,255,255,.6); }
.cd3d-search button { flex: 0 0 auto; border: 0; border-radius: 999px; padding: 10px 18px; background: var(--h3d-sun, #ffd166); color: #0b1220; font: 800 14px/1 Inter, sans-serif; cursor: pointer; }
.cd3d-pill--fh { background: #ffe7a3; color: #5a3d00; }
.cd3d-pill--lh { background: #cfe5f4; color: #0b3a5c; }
.cd3d .g3d-bars li span small { display: block; font: 500 10.5px/1.2 Inter, sans-serif; color: var(--h3d-muted); }
.cd3d-up { color: #116b34; }
.cd3d-down { color: #a1201a; }
.cd3d-spark { display: block; width: 100%; height: 64px; margin: 4px 0 2px; }
.cd3d-dt tr[data-action], .cd3d-cmp th .b3d-link { cursor: pointer; }
.cd3d-dt th small { display: block; font-weight: 500; color: var(--h3d-muted); font-size: 10.5px; }
.cd3d-cmp th a { color: var(--h3d-ink) !important; text-decoration: none; font-weight: 800; }
.cd3d-cmp th .b3d-link { margin-left: 4px; font-size: 14px; }
.cd3d-controls { grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr)); margin-bottom: 8px; }
.m3d-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0; }
.m3d-loading { display: flex; align-items: center; gap: 8px; margin: 10px 0; font: 600 13px/1.35 Inter, sans-serif; color: var(--h3d-muted); }
.m3d-loading span { width: 14px; height: 14px; border-radius: 50%; border: 2px solid #cbd5e1; border-top-color: var(--h3d-accent); animation: cd3dspin .8s linear infinite; flex: 0 0 auto; }
@keyframes cd3dspin { to { transform: rotate(360deg); } }
.m3d-tl-ends { display: flex; justify-content: space-between; font: 600 10.5px/1 Inter, sans-serif; color: var(--h3d-muted); }
.m3d-h3 { margin: 28px 0 10px; font: 800 19px/1.25 "Plus Jakarta Sans", sans-serif; color: var(--h3d-ink); }

/* The A–Z list */
.cd3d-dlist { margin: 8px 0; padding: 0 14px; border-radius: 14px; background: #fff; border: 1px solid var(--h3d-line, #e2e8f0); }
.cd3d-dlist summary { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; padding: 12px 0; cursor: pointer; font: 500 13px/1.3 Inter, sans-serif; color: var(--h3d-muted); }
.cd3d-dlist summary b { font: 800 15px/1.3 "Plus Jakarta Sans", sans-serif; color: var(--h3d-ink); }
.cd3d-names { list-style: none; margin: 0 0 12px; padding: 0; columns: 3; column-gap: 24px; }
.cd3d-names li { break-inside: avoid; padding: 4px 0; font: 500 13px/1.35 Inter, sans-serif; display: flex; justify-content: space-between; gap: 8px; }
.cd3d-names a { color: var(--h3d-ink); text-decoration: none; }
.cd3d-names a:hover { color: var(--h3d-accent); text-decoration: underline; }
.cd3d-names small { color: var(--h3d-muted); white-space: nowrap; font-size: 11.5px; }
.cd3d-tool .condo-directory__title, .cd3d-tool h1 { font-size: 22px; }

@media (max-width: 900px) {
	.cd3d-search { margin-inline: 0; }
	.cd3d-controls { grid-template-columns: 1fr 1fr; }
	.cd3d-names { columns: 1; }
}
