.stanovanja-abc-app{
  --abc-accent:#b58a45;
  --abc-green:#4f9d69;
  --abc-gold:#c79a3b;
  --abc-red:#c85b5b;
  font:inherit;
  color:inherit;
}

.stanovanja-abc-building-tabs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:0 0 18px;
}

.stanovanja-abc-building{
  display:flex;
  align-items:center;
  justify-content:center;
  appearance:none;
  border:1px solid #000;
  border-radius:0;
  background:#fff;
  color:#000;
  padding:18px 20px;
  font:inherit;
  font-size:18px;
  font-weight:700;
  cursor:pointer;
  text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;
}

.stanovanja-abc-building:hover{
  border-color:#000;
  background:#fff;
  color:#000;
  transform:scale(1.015);
  box-shadow:0 6px 18px rgba(0,0,0,.10);
}

.stanovanja-abc-building.is-active,
.stanovanja-abc-building.is-active:hover{
  border-color:var(--abc-accent);
  background:var(--abc-accent);
  color:#fff;
}

.stanovanja-abc-building.is-active:hover{
  box-shadow:0 6px 18px color-mix(in srgb,var(--abc-accent) 35%,transparent);
}

.stanovanja-abc-building-count{
  margin-left:6px;
  color:inherit;
  font-size:14px;
  font-weight:400;
  opacity:.75;
}

.stanovanja-abc-floor-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-bottom:18px;
}

.stanovanja-abc-floor-tabs button,
.stanovanja-abc-floor-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  appearance:none;
  border:1px solid #000;
  border-radius:0;
  background:#000;
  color:#fff;
  padding:10px 18px;
  font:inherit;
  font-weight:600;
  cursor:pointer;
  text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease;
}

.stanovanja-abc-floor-tabs button:hover,
.stanovanja-abc-floor-tabs a:hover{
  transform:scale(1.04);
  box-shadow:0 5px 14px rgba(0,0,0,.18);
}

.stanovanja-abc-app .stanovanja-abc-floor-tabs button.is-active,
.stanovanja-abc-app .stanovanja-abc-floor-tabs button.is-active:hover,
.stanovanja-abc-app .stanovanja-abc-floor-tabs button.is-active:focus,
.stanovanja-abc-app .stanovanja-abc-floor-tabs button.is-active:active,
.stanovanja-abc-app .stanovanja-abc-floor-tabs a.is-active,
.stanovanja-abc-app .stanovanja-abc-floor-tabs a.is-active:hover,
.stanovanja-abc-app .stanovanja-abc-floor-tabs a.is-active:focus,
.stanovanja-abc-app .stanovanja-abc-floor-tabs a.is-active:active{
  border-color:var(--abc-accent, #b58a45)!important;
  background-color:var(--abc-accent, #b58a45)!important;
  color:#fff!important;
  font-weight:700;
}

.stanovanja-abc-map-stage{position:relative;margin-bottom:18px}
.stanovanja-abc-map-panel{
  position:absolute;
  top:0;
  left:-100000px;
  width:100%;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}
.stanovanja-abc-map-panel.is-active{
  position:relative;
  top:auto;
  left:auto;
  visibility:visible;
  opacity:1;
  pointer-events:auto;
}

.stanovanja-abc-map-empty{
  padding:50px 20px;
  border:1px dashed #ccc;
  background:#fafafa;
  color:#777;
  text-align:center;
}

.stanovanja-abc-map-error{
  padding:16px;
  border:1px solid #c85b5b;
  background:#fde7e7;
  color:#7d2929;
}

.stanovanja-abc-statusbar{
  display:flex;
  flex-wrap:wrap;
  gap:24px;
  margin:0 0 14px;
  padding:13px 16px;
  border:1px solid #ececec;
  background:#fff;
}

.stanovanja-abc-statusbar>div{display:flex;align-items:center;gap:8px}
.stanovanja-abc-statusbar strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:25px;
  height:25px;
  border-radius:50%;
  background:#f3f3f3;
}

.abc-dot{display:inline-block;width:9px;height:9px;border-radius:50%}
.abc-dot-prosto{background:var(--abc-green)}
.abc-dot-rezervirano{background:var(--abc-gold)}
.abc-dot-prodano{background:var(--abc-red)}

.stanovanja-abc-table-wrap{
  overflow-x:auto;
  border:1px solid #ececec;
  background:#fff;
}

.stanovanja-abc-table{
  width:100%;
  min-width:0;
  table-layout:fixed;
  border-collapse:collapse;
}

.stanovanja-abc-table th{
  padding:11px 8px;
  background:#f2f0fe;
  font-size:12px;
  font-weight:700;
  line-height:1.25;
  text-align:left;
  vertical-align:bottom;
  overflow-wrap:anywhere;
}

.stanovanja-abc-table td{
  padding:11px 8px;
  border-top:1px solid #eee;
  font-size:13px;
  line-height:1.3;
  vertical-align:middle;
  overflow-wrap:anywhere;
}

.stanovanja-abc-table th:nth-child(1){width:7%}
.stanovanja-abc-table th:nth-child(2){width:12%}
.stanovanja-abc-table th:nth-child(3){width:10%}
.stanovanja-abc-table th:nth-child(4){width:15%}
.stanovanja-abc-table th:nth-child(5),
.stanovanja-abc-table th:nth-child(6){width:15%}
.stanovanja-abc-table th:nth-child(7){width:13%}
.stanovanja-abc-table th:nth-child(8){width:13%}

.stanovanja-abc-table tbody tr{transition:background-color .16s ease}
.stanovanja-abc-table tbody tr:nth-child(even){background:#fbfbf8}
.stanovanja-abc-table tbody tr:hover{background:#f6efe3}
.stanovanja-abc-table tbody tr[hidden]{display:none!important}
.stanovanja-abc-unit-code{font-weight:700}

.stanovanja-abc-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}

.status-prosto{background:#e8f4ec;color:#2e7447}
.status-rezervirano{background:#fff4d9;color:#8a6618}
.status-prodano{background:#fde7e7;color:#963e3e}

.stanovanja-abc-floorplan-btn{
  display:inline-flex;
  border:1px solid #000;
  border-radius:0;
  background:#fff;
  color:#000!important;
  padding:7px 10px;
  font-weight:700;
  text-decoration:none!important;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease;
}

.stanovanja-abc-floorplan-btn:hover{
  border-color:#000;
  background:#000;
  color:#fff!important;
  transform:scale(1.02);
  box-shadow:0 5px 14px rgba(0,0,0,.16);
}

.stanovanja-abc-floor-select-wrap{display:none;position:relative;margin:0 0 18px}
.stanovanja-abc-floor-select{
  width:100%;
  appearance:none;
  border:1px solid #000;
  border-radius:0;
  background-color:#fff;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:16px 16px;
  color:#000;
  padding:12px 44px 12px 14px;
  font:inherit;
  font-size:16px;
  font-weight:600;
  line-height:1.25;
}

.stanovanja-abc-imp-tooltip{min-width:330px;font-family:inherit;color:#111}
.stanovanja-abc-imp-tooltip__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.stanovanja-abc-imp-tooltip__code{font-size:18px;line-height:1.2}
.stanovanja-abc-imp-tooltip__status{display:inline-flex;padding:5px 8px;font-size:11px;font-weight:700}
.stanovanja-abc-imp-tooltip__grid{display:grid;grid-template-columns:minmax(145px,1fr) auto;gap:7px 18px;font-size:13px}
.stanovanja-abc-imp-tooltip__grid span{opacity:.70}
.stanovanja-abc-imp-tooltip__grid strong{text-align:right;font-weight:700}

.stanovanja-abc-floating-tooltip{
  position:fixed;
  z-index:999999;
  display:none;
  width:max-content;
  max-width:min(430px,calc(100vw - 20px));
  border-radius:0;
  background:#111;
  color:#fff;
  padding:14px 16px;
  box-shadow:0 8px 26px rgba(0,0,0,.24);
  pointer-events:none;
}

.stanovanja-abc-floating-tooltip.is-visible{display:block}
.stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip{color:#fff}
.stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip__code{color:#fff}
.stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip__grid span{color:#d6d6d6;opacity:1}
.stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip__grid strong{color:#fff}
.stanovanja-abc-tooltip-close{display:none}

.stanovanja-abc-map-panel .imp-tooltip{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

@media(max-width:767px){
  .stanovanja-abc-building-tabs{grid-template-columns:repeat(3,1fr);gap:8px}
  .stanovanja-abc-building{padding:13px 7px;font-size:15px}
  .stanovanja-abc-building-count{display:none}
  .stanovanja-abc-floor-tabs{display:none!important}
  .stanovanja-abc-floor-select-wrap{display:block}
  .stanovanja-abc-floor-select{font-size:15px}
  .stanovanja-abc-statusbar{display:grid;grid-template-columns:1fr;gap:10px;font-size:12px}
  .stanovanja-abc-statusbar>div{justify-content:space-between}
  .stanovanja-abc-table{min-width:900px;table-layout:auto}

  .stanovanja-abc-floating-tooltip{
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:12px!important;
    width:auto;
    max-width:none;
    padding:16px 16px 18px;
    pointer-events:auto;
    box-shadow:0 10px 30px rgba(0,0,0,.28);
  }
  .stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip{min-width:0}
  .stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip__top{padding-right:26px}
  .stanovanja-abc-floating-tooltip .stanovanja-abc-imp-tooltip__grid{grid-template-columns:minmax(135px,1fr) auto;gap:9px 12px}
  .stanovanja-abc-tooltip-close{
    position:absolute;
    top:8px;
    right:10px;
    display:block;
    border:0;
    background:transparent;
    color:#fff;
    padding:0;
    font-size:26px;
    line-height:1;
    cursor:pointer;
  }
}
