/* Soweto buyer view only. Account forms and the shared site header/footer keep
   their existing presentation. */
.single-iz_market:has(.iz-market--night) main.iz-article {
  margin-block: 0 !important;
  padding-block: 0;
  background: #10132e;
  color: #edf2ff;
}
.single-iz_market:has(.iz-market--night) .iz-article .iz-article-shell {
  width: 100%;
  max-width: none;
  margin-inline: auto;
  padding: 0;
  background: transparent;
}
.single-iz_market:has(.iz-market--night) .iz-article-body,
.single-iz_market:has(.iz-market--night) .iz-article-body > .wp-block-post-content {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  background: transparent;
}
.iz-market.iz-market--night {
  --iz-market-ink: #edf2ff;
  --iz-market-muted: #aab7d1;
  --iz-market-border: #35415f;
  --iz-night-accent: #e57b25;
  --iz-night-text: #edf2ff;
  --iz-night-muted: #aab7d1;
  width: 100%;
  min-width: 0;
  margin: 0 auto;
  color: var(--iz-night-text);
  color-scheme: dark;
  font-size: 16px;
  line-height: 1.55;
}
.iz-market--night *,
.iz-market--night *::before,
.iz-market--night *::after { box-sizing: border-box; }
.iz-market--night [hidden] { display: none !important; }
.iz-market.iz-market--night a {
  color: #ffad64 !important;
  text-decoration-color: #ffad645c;
  text-underline-offset: 4px;
}
.iz-market.iz-market--night a:hover { text-decoration-color: currentColor; }
.iz-market--night :focus-visible {
  outline: 2px solid #ffad64;
  outline-offset: 4px;
}

.iz-market--night .iz-market__hero {
  overflow: visible;
  margin: 0 0 25px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.iz-market.iz-market--night .iz-market__hero h1,
.iz-market.iz-market--night .iz-market__hero h2 {
  margin: 0 0 9px !important;
  color: #f5f7ff !important;
  font-size: clamp(30px, 3.2vw, 44px);
  font-weight: 620;
  line-height: 1.12;
  letter-spacing: -.045em;
}
.iz-market.iz-market--night .iz-market__hero p { margin: 0; }
.iz-market.iz-market--night .iz-market__hero .iz-market__eyebrow {
  margin: 0 0 9px;
  color: #a6b8d0;
  font-size: 12px;
  font-weight: 550;
  letter-spacing: .035em;
  text-transform: none;
}
.iz-market--night .iz-market__intro {
  color: #aab8d2;
  font-size: 15px;
  font-weight: 420;
  line-height: 1.55;
}
.iz-market--night .iz-market__meta {
  gap: 14px 30px;
  margin-top: 20px;
  padding-top: 17px;
  border-color: #b3c5e521;
}
.iz-market--night .iz-market__meta:empty { display: none; }
.iz-market--night .iz-market__meta dt { color: #c1cee4; font-size: 12px; }
.iz-market--night .iz-market__meta dd { color: #aab8d2; font-size: 13px; }

.iz-market--night .iz-market__filters {
  width: min(100%, 740px);
  gap: 0;
  margin: 0 0 9px;
}
.iz-market--night .iz-market__filters label {
  gap: 8px;
  color: #d7e2f5;
  font-size: 12px;
  font-weight: 550;
}
.iz-market--night .iz-market__filters input,
.iz-market--night .iz-market__filters select {
  min-width: 0;
  min-height: 52px;
  padding: 13px 16px;
  border: 1px solid #485575;
  border-radius: 13px;
  background-color: #1b2342;
  color: #f2f5ff;
  font-size: 16px;
  font-weight: 430;
  line-height: 1.4;
  box-shadow: 0 6px 20px #050b201a;
}
.iz-market--night .iz-market__filters input[type=search] {
  padding-left: 46px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 22 22' fill='none'%3E%3Ccircle cx='9.5' cy='9.5' r='6.5' stroke='%23a4b8cf' stroke-width='1.6'/%3E%3Cpath d='m14.5 14.5 4.5 4.5' stroke='%23a4b8cf' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-position: 16px 50%;
  background-repeat: no-repeat;
  background-size: 19px;
}
.iz-market--night .iz-market__filters input::placeholder { color: #a9b6ce; opacity: 1; }
.iz-market--night .iz-market__filters input:focus,
.iz-market--night .iz-market__filters select:focus {
  border-color: #ffad64;
  outline: 0;
  box-shadow: 0 0 0 3px #e57b2524;
}
.iz-market--night [data-market-filters] { margin: 5px 0 0; }
.iz-market--night [data-market-filters] > summary {
  min-height: 44px;
  padding: 10px 1px;
  color: #a9bcd7;
  font-size: 12px;
  font-weight: 500;
}
.iz-market--night [data-market-filters] > label { margin: 3px 0 12px; }
.iz-market--night .iz-market__toolbar {
  min-height: 44px;
  gap: 14px;
  margin: 0 0 20px;
}
.iz-market--night .iz-market__toolbar p {
  margin: 0;
  color: #9daecb;
  font-size: 12px;
  line-height: 1.5;
}
.iz-market--night button {
  min-height: 44px;
  border: 1px solid #e57b25;
  border-radius: 10px;
  background: #e57b25;
  color: #17132c;
  font-size: 13px;
  font-weight: 650;
}
.iz-market--night button:hover { border-color: #ffad64; background: #ffad64; }
.iz-market--night button:disabled { opacity: .42; }
.iz-market--night [data-market-refresh] {
  min-height: 44px;
  padding: 10px 15px;
  border-color: #45516f;
  background: #1b2340;
  color: #cad7ed;
  font-size: 12px;
  font-weight: 550;
}
.iz-market--night [data-market-refresh]:hover { border-color: #718a9c; background: #26344b; }
.iz-market--night.is-stale [data-market-status] { color: #efc18d; }

.iz-market--night .iz-market__explorer {
  grid-template-columns: minmax(0, 1fr) 305px;
  align-items: start;
  gap: 24px;
}
.iz-market--night .iz-market__map-panel {
  top: 18px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #3b4768;
  border-radius: 22px;
  background: #151638;
  box-shadow: 0 15px 45px #050a2038;
}
.iz-market--night .iz-market__map-tabs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  padding: 11px 13px;
  border-bottom: 1px solid #4b567744;
  background: #191f3c;
}
.iz-market--night [data-market-view] {
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: #adbed8;
  font-size: 12px;
  font-weight: 550;
  line-height: 1.3;
}
.iz-market--night [data-market-view]:hover { background: #2a3651; color: #e3f4f9; }
.iz-market--night [data-market-view][aria-selected=true] {
  border-color: #e57b2570;
  background: #3a2d3f;
  color: #ffc28c;
}
.iz-market--night [data-market-layout-panel],
.iz-market--night [data-market-locations-panel] { min-width: 0; margin: 0; padding: 0; }
.iz-market--night .iz-market__diagram-heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px 15px;
  margin: 0;
  padding: 17px 18px 8px;
}
.iz-market.iz-market--night .iz-market__diagram-heading h3 {
  margin: 0;
  color: #ffc28c;
  font-size: 12px;
  font-weight: 550;
  line-height: 1.45;
  letter-spacing: .015em;
}
.iz-market--night .iz-market__diagram-heading p {
  margin: 0;
  color: #9eacc7;
  font-size: 12px;
  line-height: 1.5;
}
.iz-market--night [data-market-diagram] {
  position: relative;
  isolation: isolate;
  min-width: 0;
  min-height: 390px;
  overflow: hidden;
  background: #151638;
}
.iz-market--night [data-market-diagram] > svg {
  display: block;
  width: 100%;
  max-width: 100%;
  height: clamp(420px, 64vh, 680px);
  margin: 0;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}
.iz-market--night [data-market-diagram] svg text {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;
  font-weight: 500;
  letter-spacing: .2px;
}
.iz-market--night [data-market-diagram].is-zoomed > svg { touch-action: none; cursor: grab; }
.iz-market--night [data-market-diagram].is-dragging > svg { cursor: grabbing; }
.iz-market--night .iz-market__diagram-tools {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 3;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px;
  max-width: calc(100% - 28px);
  padding: 4px;
  border: 1px solid #485976;
  border-radius: 11px;
  background: #192341f5;
  box-shadow: 0 4px 17px #050b2440;
  backdrop-filter: blur(10px);
}
.iz-market--night .iz-market__diagram-tools button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 8px 12px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #d8e8f7;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
}
.iz-market--night .iz-market__diagram-tools button:hover { background: #344762; color: #fff3e8; }
.iz-market--night [data-market-diagram-status],
.iz-market--night .iz-market__diagram-status {
  position: relative;
  z-index: 2;
  margin: 0;
  padding: 13px 17px;
  color: #b6c7de;
  font-size: 12px;
  line-height: 1.6;
}
.iz-market--night [data-market-diagram-status]:empty,
.iz-market--night .iz-market__diagram-status:empty { display: none; }
.iz-market--night .iz-market__diagram-legend { display:flex; flex-wrap:wrap; gap:10px 18px; padding:11px 17px 0; color:#b9c4dc; font-size:12px; }
.iz-market--night .iz-market__diagram-legend>span { display:inline-flex; align-items:center; gap:6px; }
.iz-market--night .iz-market__diagram-legend i { display:block; width:16px; height:3px; border-radius:2px; background:#e57b25; }
.iz-market--night .iz-market__diagram-legend .iz-market__sample--frontages { background:#b4a8e2; }
.iz-market--night .iz-market__diagram-legend .iz-market__sample--roofs { width:11px; height:9px; border:1px solid #7185a1; background:#435775; }

.iz-market--night .iz-market__results { min-width: 0; }
.iz-market.iz-market--night .iz-market__results > h3 {
  margin: 0 0 9px;
  color: #e3ebfd;
  font-size: 17px;
  font-weight: 550;
  line-height: 1.35;
  letter-spacing: -.025em;
}
.iz-market--night .iz-market__count { margin: 0 0 14px; color: #9eb0cd; font-size: 12px; }
.iz-market--night [data-market-list] { min-width: 0; gap: 12px; }
.iz-market--night .iz-market-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid #3a4768;
  border-radius: 17px;
  background: linear-gradient(145deg, #202846, #1a213d);
  box-shadow: 0 8px 25px #030a1b14;
  transition: border-color .2s, box-shadow .2s;
}
.iz-market--night .iz-market-card.is-selected {
  border-color: #ffad64;
  box-shadow: 0 0 0 1px #e57b2533, 0 0 28px #e57b2518;
}
.iz-market.iz-market--night .iz-market-card h3,
.iz-market.iz-market--night .iz-market-card h4 { margin: 0 0 7px; color: #f1f5ff; font-size: 17px; line-height: 1.35; }
.iz-market.iz-market--night .iz-market-card .iz-market-card__heading a,
.iz-market.iz-market--night .iz-market-card h4 > a { color: #f1f5ff !important; text-decoration: none; }
.iz-market--night .iz-market-card p { margin: 5px 0; color: #b1bfd7; font-size: 12px; line-height: 1.65; }
.iz-market--night .iz-market-card .iz-market-card__categories,
.iz-market--night .iz-market-card .iz-market-card__pin-status { color: #9caecb; font-size: 12px; }
.iz-market--night .iz-market-card .iz-market-card__zone { color: #ffad64; font-size: 12px; }
.iz-market--night .iz-market-card__actions { gap: 4px 14px; margin-top: 13px; }
.iz-market--night .iz-market-card__actions button {
  min-height: 44px;
  padding: 10px 13px;
  border-color: #e57b25;
  background: #e57b25;
  color: #17132c;
  font-size: 12px;
}
.iz-market--night .iz-market-card__actions button[aria-pressed=true] { border-color: #ffad64; background: #ffad64; color: #17132c; }
.iz-market--night .iz-market-card__actions > a { min-height: 44px; font-size: 12px; }
.iz-market.iz-market--night .iz-market-card__actions .iz-market-card__directions { color: #b4c4dc !important; font-size: 12px; }
.iz-market--night .iz-market-card .iz-market-card__words { flex-basis: 100%; min-height: 44px; font-size: 12px; }
.iz-market--night .iz-market__empty,
.iz-market--night [data-market-list] > p:only-child {
  min-width: 0;
  margin: 0;
  padding: 23px 20px;
  border: 1px solid #3b4765;
  border-radius: 17px;
  background: linear-gradient(145deg, #1d2644, #181f3b);
  color: #b4c4df;
  font-size: 13px;
  line-height: 1.75;
}
.iz-market--night .iz-market__map-note,
.iz-market--night .iz-market__map-state {
  margin: 0;
  padding: 12px 16px;
  border: 0;
  border-top: 1px solid #4858783b;
  background: #19213c;
  color: #aabbd4;
  font-size: 12px;
  line-height: 1.6;
}
.iz-market--night [data-market-pagination] { gap: 6px; }
.iz-market.iz-market--night [data-market-pagination] a { border-color: #415173; background: #1e2947; text-decoration: none; }

/* The geographic view keeps its map data and attribution readable. */
.iz-market--night [data-market-map] { height: clamp(360px, 54vh, 610px); max-height: none; background: #18223d; }
.iz-market--night .leaflet-control-zoom { overflow: hidden; border-color: #455775 !important; border-radius: 10px; }
.iz-market--night .leaflet-control-zoom a {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  border-color: #41516c;
  background: #202c48;
  color: #ecf5ff !important;
  font-size: 22px;
  font-weight: 500;
  line-height: 44px;
  text-decoration: none;
}
.iz-market--night .leaflet-control-zoom a:hover { background: #324760; }
.iz-market--night .leaflet-control-attribution { background: #142039ed !important; color: #d0dbeb; }
.iz-market.iz-market--night .leaflet-control-attribution a { color: #ffad64 !important; }
.iz-market--night .leaflet-popup-content-wrapper,
.iz-market--night .leaflet-popup-tip { background: #202c49; color: #e7efff; }
.iz-market--night .leaflet-popup-content-wrapper { border: 1px solid #53698a; border-radius: 14px; }
.iz-market--night .leaflet-popup-content { margin: 17px 18px; }
.iz-market--night .leaflet-popup-content p { color: #bacbe2; }
.iz-market--night .leaflet-container a.leaflet-popup-close-button { min-width: 32px; min-height: 32px; color: #d9e9f9 !important; }
.iz-market--night .iz-market-zone-label { border-color: #916447; background: #322b3ded; color: #ffd0a7; }
.iz-market--night .iz-market-pin::before { position: absolute; inset: -5px -7px -1px; content: ""; }
.iz-market--night .iz-market-pin > span { border-color: #fff1e6; background: #e57b25; box-shadow: 0 2px 9px #0c243369; }
.iz-market--night .iz-market-pin > span::after { background: #17132c; }
.iz-market--night .iz-market-pin.is-selected > span {
  border-color: #fff2e8;
  background: #ffad64;
  box-shadow: 0 0 0 5px #ffad6434, 0 0 23px #ffad6463;
  animation: iz-night-selected-pin 2.8s ease-in-out infinite;
}
.iz-market--night .iz-market-pin.is-selected > span::after { background: #17132c; }
@keyframes iz-night-selected-pin {
  0%, 100% { box-shadow: 0 0 0 4px #ffad642b, 0 0 18px #ffad645c; }
  50% { box-shadow: 0 0 0 7px #ffad6414, 0 0 29px #ffad647d; }
}

.iz-market--night .iz-market__about {
  max-width: none;
  margin: 22px 0 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #b3c5e521;
  color: #acbdd7;
  font-size: 13px;
}
.iz-market--night .iz-market__about > summary { min-height: 44px; padding: 13px 1px; color: #c1d4e7; font-size: 12px; cursor: pointer; }
.iz-market--night .iz-market__about p { margin: 8px 0 15px; color: #acbdd7; font-size: 13px; }
.iz-market--night .iz-market__cta {
  gap: 14px;
  margin-top: 22px;
  padding: 20px 0 0;
  border: 0;
  border-top: 1px solid #b3c5e521;
  border-radius: 0;
  background: transparent;
}
.iz-market.iz-market--night .iz-market__cta > a:first-child {
  min-height: 46px;
  padding: 12px 17px;
  border: 1px solid #e57b25;
  border-radius: 11px;
  background: #e57b25;
  color: #17132c !important;
  font-size: 12px;
  font-weight: 650;
  text-decoration: none;
}
.iz-market.iz-market--night .iz-market__cta > a:last-child {
  min-height: 44px;
  padding: 11px 1px;
  border: 0;
  background: transparent;
  color: #b6c6de !important;
  font-size: 12px;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: #b6c6de66;
}

@media (max-width: 1100px) {
  .single-iz_market:has(.iz-market--night) .iz-article .iz-article-shell { padding-inline: 24px; }
  .iz-market--night .iz-market__explorer { grid-template-columns: minmax(0, 1fr) 270px; gap: 18px; }
  .iz-market--night .iz-market__diagram-heading { display: block; }
  .iz-market--night .iz-market__diagram-heading p { margin-top: 5px; }
}
@media (max-width: 850px) {
  .iz-market--night .iz-market__explorer { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .iz-market--night .iz-market__map-panel { position: static; }
  .iz-market--night [data-market-diagram] > svg { height: clamp(380px, 57vh, 560px); }
  .iz-market--night .iz-market__results > h3 { margin-bottom: 8px; }
  .iz-market--night [data-market-list] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .iz-market--night .iz-market__empty,
  .iz-market--night [data-market-list] > p:only-child { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .single-iz_market:has(.iz-market--night) .iz-article .iz-article-shell { padding: 25px 15px 32px; }
  .iz-market.iz-market--night { width: 100%; }
  .iz-market--night .iz-market__hero { margin-bottom: 22px; }
  .iz-market.iz-market--night .iz-market__hero h1,
  .iz-market.iz-market--night .iz-market__hero h2 { font-size: 32px; }
  .iz-market--night .iz-market__intro { font-size: 14px; }
  .iz-market--night .iz-market__filters { width: 100%; margin-bottom: 8px; }
  .iz-market--night .iz-market__filters label { font-size: 12px; }
  .iz-market--night .iz-market__filters input,
  .iz-market--night .iz-market__filters select { min-height: 52px; font-size: 16px; }
  .iz-market--night .iz-market__toolbar { gap: 9px; margin-bottom: 16px; }
  .iz-market--night .iz-market__toolbar p { font-size: 12px; }
  .iz-market--night [data-market-refresh] { padding-inline: 13px; }
  .iz-market--night .iz-market__map-panel { border-radius: 18px; }
  .iz-market--night .iz-market__map-tabs { gap: 4px; padding: 9px; }
  .iz-market--night [data-market-view] { flex: 1 1 auto; padding: 10px 12px; font-size: 12px; }
  .iz-market--night .iz-market__diagram-heading { padding: 14px 14px 4px; }
  .iz-market--night .iz-market__diagram-heading h3 { font-size: 12px; }
  .iz-market--night .iz-market__diagram-heading p { margin-top: 4px; font-size: 12px; }
  .iz-market--night [data-market-diagram] { min-height: 320px; }
  .iz-market--night [data-market-diagram] > svg { height: clamp(320px, 53vh, 430px); }
  .iz-market--night .iz-market__diagram-tools { right: 10px; bottom: 10px; max-width: calc(100% - 20px); padding: 3px; }
  .iz-market--night .iz-market__diagram-tools button { min-width: 44px; min-height: 44px; padding: 8px 10px; font-size: 12px; }
  .iz-market--night [data-market-diagram-status],
  .iz-market--night .iz-market__diagram-status { padding: 10px 14px; font-size: 12px; }
  .iz-market--night [data-market-map] { height: 320px; max-height: none; }
  .iz-market--night [data-market-list] { grid-template-columns: 1fr; }
  .iz-market--night .iz-market-card { padding: 18px; }
  .iz-market--night .iz-market__empty,
  .iz-market--night [data-market-list] > p:only-child { padding: 20px 18px; }
  .iz-market--night .iz-market__cta { align-items: flex-start; gap: 8px; }
}
/* The map is the canvas. Floating UI occupies only the area it needs so the
   rest of the market remains available to pointer, touch and keyboard users. */
.iz-market--night [data-market-stage] {
  --iz-market-stage-gutter: 28px;
  --iz-market-search-top: 126px;
  --iz-market-results-top: 224px;
  position: relative;
  isolation: isolate;
  width: 100%;
  height: clamp(600px, calc(100svh - var(--iz-market-header-height, 80px)), 900px);
  min-height: 600px;
  margin: 0;
  overflow: hidden;
  border-bottom: 1px solid #3d45675c;
  background: #151638;
}
.iz-market--night [data-market-stage]::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, #10132ef5 0, #10132edb 115px, #10132e72 210px, #10132e00 340px), linear-gradient(90deg, #10132e55, transparent 65%);
  content: "";
  pointer-events: none;
}
.iz-market--night [data-market-stage] > .iz-market__hero {
  position: absolute;
  z-index: 4;
  top: 25px;
  left: var(--iz-market-stage-gutter);
  width: min(520px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  margin: 0;
  padding: 0;
  background: none;
  pointer-events: none;
}
.iz-market.iz-market--night [data-market-stage] .iz-market__hero h1,
.iz-market.iz-market--night [data-market-stage] .iz-market__hero h2 {
  margin: 0 0 5px !important;
  font-size: clamp(26px, 2.4vw, 34px);
  font-weight: 620;
  line-height: 1.12;
  letter-spacing: -.04em;
}
.iz-market.iz-market--night [data-market-stage] .iz-market__eyebrow { margin-bottom: 5px; color: #b9b8d8; }
.iz-market--night [data-market-stage] .iz-market__intro { color: #bdc8dd; font-size: 13px; line-height: 1.5; }
.iz-market--night [data-market-stage] .iz-market__meta { display: none; }
.iz-market--night [data-market-stage] > .iz-market__filters {
  position: absolute;
  z-index: 7;
  top: var(--iz-market-search-top);
  left: var(--iz-market-stage-gutter);
  display: block;
  width: min(520px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  margin: 0;
  padding: 11px 16px 9px;
  border: 1px solid #6f7b9b8c;
  border-radius: 17px;
  background: #171d39f5;
  box-shadow: 0 12px 42px #050a293d;
  backdrop-filter: blur(18px);
}
.iz-market--night [data-market-stage] > .iz-market__filters:focus-within { border-color: #ffad64; box-shadow: 0 0 0 3px #e57b2524, 0 12px 42px #050a293d; }
.iz-market--night [data-market-stage] .iz-market__filters > label { display: grid; gap: 1px; color: #c9d0e7; font-size: 12px; font-weight: 550; }
.iz-market--night [data-market-stage] .iz-market__filters input[type=search] {
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 8px 0 8px 29px;
  border: 0;
  border-radius: 0;
  outline: 0;
  background-color: transparent;
  background-position: 0 50%;
  color: #f5f4ff;
  font-size: 16px;
  line-height: 1.4;
  box-shadow: none;
}
.iz-market--night [data-market-stage] .iz-market__filters input[type=search]::placeholder { color: #b0bbd2; }
.iz-market--night [data-market-pin-status] { margin: 5px 0 0; color: #b9c5da; font-size: 12px; line-height: 1.4; }
.iz-market--night.has-market-pin-notice [data-market-stage] { --iz-market-results-top: 270px; }
.iz-market--night [data-market-stage] [data-market-filters] { display: none; }
.iz-market--night [data-market-stage] > .iz-market__toolbar {
  position: absolute;
  z-index: 4;
  bottom: 22px;
  left: 50%;
  width: fit-content;
  max-width: min(390px, calc(100% - 620px));
  min-height: 44px;
  margin: 0;
  padding: 0 0 0 13px;
  border: 1px solid #5b68806b;
  border-radius: 12px;
  background: #171d39ed;
  box-shadow: 0 4px 17px #050b2440;
  transform: translateX(-50%);
  backdrop-filter: blur(14px);
}
.iz-market--night [data-market-stage] .iz-market__toolbar p { color: #b8c5dc; font-size: 12px; line-height: 1.4; }
.iz-market--night .iz-market__toolbar:has([data-market-status]:empty) { display: none; }
.iz-market--night [data-market-stage] [data-market-refresh] { min-height: 44px; padding: 10px 12px; border-color: transparent; border-radius: 10px; background: transparent; }
.iz-market--night [data-market-stage] > .iz-market__explorer {
  position: absolute;
  z-index: auto;
  inset: 0;
  display: block;
  width: 100%;
  margin: 0;
  pointer-events: none;
}
.iz-market--night [data-market-stage] .iz-market__map-panel {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #151638;
  box-shadow: none;
  pointer-events: auto;
}
.iz-market--night [data-market-stage] [data-market-layout-panel],
.iz-market--night [data-market-stage] [data-market-locations-panel],
.iz-market--night [data-market-stage] [data-market-diagram],
.iz-market--night [data-market-stage] [data-market-map] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  margin: 0;
}
.iz-market--night [data-market-stage] [data-market-diagram] > svg { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; }
.iz-market--night [data-market-stage] .iz-market__map-tabs {
  position: absolute;
  z-index: 5;
  bottom: 22px;
  left: var(--iz-market-stage-gutter);
  gap: 2px;
  width: fit-content;
  max-width: calc(100% - 2 * var(--iz-market-stage-gutter));
  padding: 4px;
  border: 1px solid #5b68808c;
  border-radius: 13px;
  background: #171d39f2;
  box-shadow: 0 4px 17px #050b2440;
  backdrop-filter: blur(14px);
}
.iz-market--night [data-market-stage] [data-market-view] { min-height: 44px; padding: 9px 12px; font-size: 12px; }
.iz-market--night [data-market-stage] .iz-market__diagram-tools { right: var(--iz-market-stage-gutter); bottom: 22px; gap: 1px; border-color: #5b68808c; border-radius: 13px; background: #171d39f2; }
.iz-market--night [data-market-stage] .iz-market__diagram-tools button { min-width: 44px; min-height: 44px; padding: 8px 11px; font-size: 14px; }
.iz-market--night [data-market-stage] [data-market-diagram-status] {
  position: absolute;
  top: calc(var(--iz-market-results-top) + 12px);
  left: var(--iz-market-stage-gutter);
  max-width: min(440px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  padding: 14px 16px;
  border: 1px solid #626f8a80;
  border-radius: 13px;
  background: #171d39f5;
  color: #d4dded;
}
.iz-market--night [data-market-stage] .iz-market__diagram-heading,
.iz-market--night [data-market-stage] .iz-market__diagram-legend,
.iz-market--night [data-market-stage] .iz-market__diagram-status,
.iz-market--night [data-market-stage] .iz-market__map-note { display: none; }
.iz-market--night [data-market-stage] .iz-market__map-state { position: absolute; z-index: 3; top: calc(var(--iz-market-results-top) + 12px); left: var(--iz-market-stage-gutter); width: min(420px, calc(100% - 2 * var(--iz-market-stage-gutter))); border: 1px solid #626f8a80; border-radius: 13px; background: #171d39f5; font-size: 12px; }
.iz-market--night [data-market-stage] .iz-market__results {
  position: absolute;
  z-index: 7;
  top: var(--iz-market-results-top);
  left: var(--iz-market-stage-gutter);
  display: none;
  width: min(520px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  max-height: min(370px, calc(100% - var(--iz-market-results-top) - 105px));
  margin: 0;
  padding: 8px;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #68759080;
  border-radius: 17px;
  background: #171d39fa;
  box-shadow: 0 18px 50px #03071d5c;
  scrollbar-color: #657292 transparent;
  pointer-events: auto;
}
.iz-market--night.has-market-query:not(.has-market-selection) [data-market-stage] .iz-market__results,
.iz-market--night [data-market-stage].has-market-query:not(.has-market-selection) .iz-market__results { display: block; }
.iz-market--night.has-market-selection [data-market-stage] .iz-market__results,
.iz-market--night [data-market-stage].has-market-selection .iz-market__results { display: none; }
.iz-market.iz-market--night [data-market-stage] .iz-market__results > h3 { margin: 6px 8px 10px; color: #c5cce5; font-size: 13px; letter-spacing: 0; }
.iz-market--night [data-market-stage] .iz-market__count { margin: 4px 8px 9px; font-size: 12px; }
.iz-market--night [data-market-stage] [data-market-list] { display: grid; grid-template-columns: minmax(0, 1fr); gap: 5px; }
.iz-market--night [data-market-stage] .iz-market-card { padding: 13px 14px; border: 1px solid transparent; border-radius: 11px; background: #202744; box-shadow: none; }
.iz-market--night [data-market-stage] .iz-market-card:hover { border-color: #877caa80; background: #272d4d; }
.iz-market.iz-market--night [data-market-stage] .iz-market-card h4 { margin-bottom: 4px; font-size: 16px; }
.iz-market--night [data-market-stage] .iz-market-card p { margin: 3px 0; font-size: 12px; }
.iz-market--night [data-market-stage] .iz-market-card__actions { gap: 4px 13px; margin-top: 8px; }
.iz-market--immersive .iz-market__results .iz-market-card__actions { display: flex; flex-wrap: nowrap; gap: 10px; min-width: 0; }
.iz-market--immersive .iz-market__results .iz-market-card__actions button { flex: 0 0 auto; min-height: 44px; padding-inline: 11px; white-space: nowrap; }
.iz-market--immersive .iz-market__results .iz-market-card__actions > a { flex: 0 0 auto; min-height: 44px; white-space: nowrap; }
.iz-market--night [data-market-stage] .iz-market__empty,
.iz-market--night [data-market-stage] [data-market-list] > p:only-child { padding: 16px 14px; border: 0; border-radius: 11px; background: #202744; font-size: 13px; }
.iz-market--night [data-market-selection] {
  position: absolute;
  z-index: 8;
  bottom: 22px;
  left: var(--iz-market-stage-gutter);
  width: min(360px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  max-height: min(390px, 50%);
  margin: 0;
  padding: 10px;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #68758d80;
  border-radius: 15px;
  background: linear-gradient(145deg, #222744fa, #181e3cf7);
  box-shadow: 0 12px 50px #040a265c, 0 0 35px #e57b2512;
  backdrop-filter: blur(18px);
}
.iz-market.iz-market--night [data-market-selection-name] { margin: 0 0 8px; padding: 0; color: #f5f4ff; font-size: 15px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.iz-market--night [data-market-selection] p { margin: 7px 0; color: #c3cce1; font-size: 13px; line-height: 1.55; }
.iz-market--night .iz-market__directions-actions { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; }
.iz-market--night .iz-market__directions-actions button { flex: 1 1 0; min-width: 0; min-height: 44px; padding: 10px 12px; font-size: 13px; line-height: 1.3; }
.iz-market--night .iz-market__directions-actions button:last-child { border-color: #68758d; background: #262e4a; color: #d8dff1; }
.iz-market--night .iz-market__directions-actions button:last-child:hover { border-color: #ac9cd4; background: #343855; }
.iz-market--night [data-market-directions-status]:empty { display: none; }
.iz-market--night .iz-market__entrances { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 12px 0 4px; }
.iz-market--night .iz-market__entrances button { min-width: 0; min-height: 44px; padding: 10px 12px; border-color: #827295; background: #302b48; color: #eee5ff; font-size: 13px; font-weight: 550; line-height: 1.4; text-align: left; }
.iz-market--night .iz-market__entrances button:hover { border-color: #ffad64; background: #453248; }
.iz-market--night .iz-market__entrances button[aria-pressed=true] { border-color: #ffad64; background: #e57b25; color: #17132c; }
.iz-market--night.is-choosing-entrance [data-market-selection] { max-height: min(460px, calc(100% - 230px)); }
.iz-market--night.is-choosing-entrance .iz-market__directions-actions { display: none; }
.iz-market--night .iz-market__walking-external { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; }
.iz-market--night .iz-market-walking-route { stroke: #e57b25; stroke-dasharray: 13 11; filter: none; animation: iz-market-walking-flow 1.8s linear infinite; }
@keyframes iz-market-walking-flow { from { stroke-dashoffset: 48; } to { stroke-dashoffset: 0; } }
.iz-market--night.has-market-selection [data-market-stage] .iz-market__map-tabs,
.iz-market--night [data-market-stage].has-market-selection .iz-market__map-tabs,
.iz-market--night.has-market-selection [data-market-stage] > .iz-market__toolbar,
.iz-market--night [data-market-stage].has-market-selection > .iz-market__toolbar { display: none; }
.iz-market--night [data-market-stage] .leaflet-top { top: auto; bottom: 22px; }
.iz-market--night [data-market-stage] .leaflet-left { left: auto; right: var(--iz-market-stage-gutter); }
.iz-market--night [data-market-stage] .leaflet-control-zoom { margin: 0; }
.iz-market--night [data-market-stage] .leaflet-control-attribution { max-width: 100%; font-size: 12px; }
.iz-market--night .iz-market__layout-details,
.iz-market--night .iz-market__about,
.iz-market--night .iz-market__cta { width: min(100% - 56px, 1384px); margin-inline: auto; }
.iz-market--night .iz-market__layout-details { margin-block: 0; border-bottom: 1px solid #69749033; color: #b7c3dc; font-size: 13px; }
.iz-market--night .iz-market__layout-details > summary { min-height: 52px; padding: 15px 0; color: #c8c3df; font-size: 13px; cursor: pointer; }
.iz-market--night .iz-market__layout-details .iz-market__diagram-heading { padding: 4px 0 12px; }
.iz-market--night .iz-market__layout-details .iz-market__diagram-legend { padding: 0 0 12px; font-size: 12px; }
.iz-market--night .iz-market__layout-details .iz-market__diagram-status { padding: 0 0 15px; }
.iz-market--night .iz-market__cta { margin-bottom: 28px; }
@media (max-width: 1100px) {
  .single-iz_market:has(.iz-market--night) .iz-article .iz-article-shell { padding: 0; }
  .iz-market--night [data-market-stage] > .iz-market__toolbar { left: auto; right: 28px; bottom: 88px; max-width: 220px; transform: none; }
}
@media (max-width: 600px) {
  .single-iz_market:has(.iz-market--night) .iz-article .iz-article-shell { padding: 0; }
  .iz-market--night [data-market-stage] { --iz-market-stage-gutter: 16px; --iz-market-search-top: 113px; --iz-market-results-top: 205px; height: max(640px, calc(100svh - var(--iz-market-header-height, 72px))); min-height: 640px; }
  .iz-market--night [data-market-stage] > .iz-market__hero { top: 20px; }
  .iz-market.iz-market--night [data-market-stage] .iz-market__hero h1,
  .iz-market.iz-market--night [data-market-stage] .iz-market__hero h2 { font-size: 27px; }
  .iz-market--night [data-market-stage] > .iz-market__filters { padding: 9px 13px 7px; border-radius: 15px; }
  .iz-market--night [data-market-stage] .iz-market__filters input[type=search] { font-size: 16px; }
  .iz-market--night.has-market-pin-notice [data-market-stage] { --iz-market-results-top: 260px; }
  .iz-market--night [data-market-stage] .iz-market__results { max-height: min(330px, calc(100% - 300px)); }
  .iz-market--night [data-market-stage] .iz-market__map-tabs { bottom: 80px; padding: 3px; }
  .iz-market--night [data-market-stage] [data-market-view] { flex: initial; padding: 9px 12px; font-size: 12px; }
  .iz-market--night [data-market-stage] .iz-market__diagram-tools { right: 16px; bottom: 20px; padding: 3px; }
  .iz-market--night [data-market-stage] > .iz-market__toolbar { right: auto; bottom: 20px; left: 16px; max-width: calc(100% - 190px); padding: 0; }
  .iz-market--night [data-market-stage] .iz-market__toolbar p { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .iz-market--night [data-market-selection] { bottom: 16px; max-height: 43%; padding: 10px; border-radius: 15px; }
  .iz-market--night.has-market-selection [data-market-stage] .iz-market__diagram-tools,
  .iz-market--night [data-market-stage].has-market-selection .iz-market__diagram-tools { top: 217px; bottom: auto; }
  .iz-market--night.has-market-selection [data-market-stage] .leaflet-top,
  .iz-market--night [data-market-stage].has-market-selection .leaflet-top { top: 217px; bottom: auto; }
  .iz-market--night .iz-market__layout-details,
  .iz-market--night .iz-market__about,
  .iz-market--night .iz-market__cta { width: calc(100% - 32px); }
  .iz-market--night .iz-market__cta { gap: 9px; padding-top: 17px; }
}
/* Aligned views share a single Leaflet surface. The separate diagram host is
   metadata and a loading/error announcement, never an input-blocking canvas. */
.iz-market.iz-market--night[data-market-aligned="1"] [data-market-shared-panel] { position: absolute; inset: 0; width: 100%; height: 100%; }
.iz-market.iz-market--night[data-market-aligned="1"] [data-market-diagram] {
  position: absolute;
  z-index: 450;
  inset: auto;
  top: calc(var(--iz-market-results-top) + 12px);
  left: var(--iz-market-stage-gutter);
  width: min(440px, calc(100% - 2 * var(--iz-market-stage-gutter)));
  height: auto;
  min-height: 0;
  margin: 0;
  overflow: visible;
  background: transparent;
  pointer-events: none;
}
.iz-market.iz-market--night[data-market-aligned="1"] [data-market-diagram-status] { position: static; max-width: none; margin: 0; font-size: 12px; }
.iz-market.iz-market--night[data-market-aligned="1"] .iz-market-geographic-diagram { max-width: none !important; max-height: none !important; pointer-events: none !important; }
.iz-market.iz-market--night[data-market-aligned="1"] .iz-market-geographic-diagram text { font-family: Inter, ui-sans-serif, system-ui, sans-serif; stroke: none; paint-order: normal; text-shadow: none; filter: none; }
.iz-market.iz-market--night[data-market-aligned="1"].is-market-layout-view [data-market-map] { background: #151638; }
.iz-market.iz-market--night[data-market-aligned="1"].is-market-layout-view .iz-market__map-state { display: none; }
.iz-market.iz-market--night[data-market-aligned="1"] .iz-market__map-tabs { display: flex; }
.iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .iz-market__map-tabs { top: 24px; right: var(--iz-market-stage-gutter); bottom: auto; left: auto; }
.iz-market.iz-market--night[data-market-aligned="1"] .leaflet-bottom.leaflet-left { right: auto; bottom: 84px; left: var(--iz-market-stage-gutter); }
.iz-market.iz-market--night[data-market-aligned="1"] .leaflet-control-scale { margin: 0; }
.iz-market.iz-market--night[data-market-aligned="1"] .leaflet-control-scale-line { padding: 3px 6px; border-color: #d7c4ec; background: #171d39eb; color: #eee6ff; font-size: 12px; line-height: 1.35; text-shadow: none; }
.iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .leaflet-bottom.leaflet-left { right: calc(var(--iz-market-stage-gutter) + 62px); bottom: 22px; left: auto; }
@media (max-width: 600px) {
  .iz-market.iz-market--night[data-market-aligned="1"] .leaflet-bottom.leaflet-left { bottom: 25px; left: 120px; }
  .iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .iz-market__map-tabs { top: 217px; right: auto; bottom: auto; left: var(--iz-market-stage-gutter); }
  .iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .leaflet-bottom.leaflet-left { top: 278px; right: auto; bottom: auto; left: var(--iz-market-stage-gutter); }
}
/* Once a business is chosen, the map keeps the space previously used by the
   search and introduction. Search again restores the same input and results. */
.iz-market--night.has-market-selection [data-market-stage] > .iz-market__hero,
.iz-market--night.has-market-selection [data-market-stage] > .iz-market__filters { display: none; }
.iz-market--night.has-market-selection [data-market-stage]::after { background: none; }
.iz-market--night [data-market-search-again] {
  position: absolute;
  z-index: 9;
  top: 16px;
  left: var(--iz-market-stage-gutter);
  min-height: 44px;
  margin: 0;
  padding: 10px 13px;
  border: 1px solid #6f7b9b8c;
  border-radius: 12px;
  background: #171d39f5;
  color: #eee5ff;
  font-size: 13px;
  line-height: 1.4;
  box-shadow: 0 4px 17px #050b2440;
}
.iz-market--night [data-market-search-again]:hover { border-color: #ffad64; background: #302b48; }
.iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .iz-market__map-tabs { top: 16px; right: var(--iz-market-stage-gutter); bottom: auto; left: auto; }
.iz-market--night.has-market-selection [data-market-stage] .iz-market__diagram-tools,
.iz-market--night.has-market-selection [data-market-stage] .leaflet-top { top: 84px; bottom: auto; }
.iz-market.iz-market--night[data-market-aligned="1"].has-market-selection .leaflet-bottom.leaflet-left { top: 84px; right: auto; bottom: auto; left: var(--iz-market-stage-gutter); }
.iz-market--night.is-directions-requested [data-market-selection] { width: min(390px, calc(100% - 2 * var(--iz-market-stage-gutter))); max-height: min(220px, 35%); padding: 12px 14px; border-radius: 16px; }
.iz-market--night.is-directions-requested [data-market-directions-status] { margin: 4px 0; font-size: 12px; line-height: 1.4; }
@media (max-width: 600px) {
  .iz-market--night.has-market-selection [data-market-selection] { padding: 10px; }
  .iz-market--night.is-choosing-entrance [data-market-selection] { max-height: min(400px, calc(100% - 140px)); }
  .iz-market--night.is-directions-requested [data-market-selection] { right: var(--iz-market-stage-gutter); bottom: 16px; width: auto; max-height: min(210px, 33%); padding: 11px 14px; }
  .iz-market--night.has-market-selection [data-market-stage] [data-market-view] { padding-inline: 10px; }
}
@media (max-width: 380px) {
  .iz-market--night [data-market-search-again] { padding-inline: 10px; font-size: 12px; }
  .iz-market--night.has-market-selection [data-market-stage] [data-market-view] { padding-inline: 7px; }
}
@media (prefers-reduced-motion: reduce) {
  .iz-market--night .iz-market-walking-route { stroke-dasharray: none; }
  .iz-market--night *,
  .iz-market--night *::before,
  .iz-market--night *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
