/* v2 地圖模式 — optional 圖層 toolbar 樣式
 * 跟既有 v2-map-toolbar 視覺對齊但 class 完全獨立 (v2-map-overlays-*)
 * 隔離原則：刪本 file + index2.html link tag = 完整 revert
 */

.v2-map-overlays-toolbar {
  display: flex;
  gap: 4px 12px;        /* row gap 4 / col gap 12 — 三行 wrap 時行間距縮小 */
  align-items: center;
  padding: 4px 12px;
  background: #f5f0e3;
  border: 1px solid var(--c-border, #d8cdb6);
  border-top: none;     /* 跟上面 v2-map-toolbar 共用底邊 */
  border-bottom: none;  /* 跟下面 .v2-map 共用邊 */
  font-size: 13px;
  flex-wrap: wrap;
}

.v2-overlays-label {
  color: #555;
  font-weight: 600;
}

.v2-overlays-checkbox {
  cursor: pointer;
  display: inline-flex;
  gap: 3px;
  align-items: center;
}

.v2-overlays-checkbox input {
  vertical-align: middle;
  cursor: pointer;
}

.v2-overlays-checkbox.is-disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.v2-overlays-checkbox.is-disabled input {
  cursor: not-allowed;
}

.v2-overlays-note {
  color: #888;
  font-size: 11px;
}

/* ── 都更圖層 toolbar (renewal group) ───────────────────────────── */
.v2-map-renewal-toolbar {
  background: #f5f0e3;
  border: 1px solid var(--c-border, #d8cdb6);
  border-top: none;
  border-bottom: none;
  padding: 3px 12px;
  font-size: 13px;
}

.v2-renewal-header {
  display: flex;
  gap: 4px 12px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 3px;
}

.v2-renewal-all {
  cursor: pointer;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.v2-renewal-expand {
  background: none;
  border: 1px solid rgba(0,0,0,0.15);
  border-radius: 3px;
  cursor: pointer;
  padding: 1px 6px;
  font-size: 11px;
  color: #555;
  line-height: 1;
}
.v2-renewal-expand:hover { background: rgba(0,0,0,0.05); }

.v2-renewal-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 4px 12px;
  font-size: 12px;
}

.v2-renewal-sub {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 0;
  user-select: none;
}

.v2-renewal-sub input {
  cursor: pointer;
  margin: 0;
  vertical-align: middle;
}

.v2-renewal-dot {
  display: inline-block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.3);
  flex: 0 0 auto;
}

.v2-renewal-text {
  color: #444;
}

/* SVG filter colorize — server 只給 grayscale tile，前端 SVG filter 把 alpha
 * 區域 flood 成指定色。Leaflet `className` 套在 layer 容器 div 不是 tile <img>，
 * 用 descendant selector 才能抓到內部 tile。 */
.redev-color-pub_renew      img.leaflet-tile { filter: url(#redev-flt-pub_renew); }
.redev-color-self_announce  img.leaflet-tile { filter: url(#redev-flt-self_announce); }
.redev-color-self_approved  img.leaflet-tile { filter: url(#redev-flt-self_approved); }
.redev-color-planned        img.leaflet-tile { filter: url(#redev-flt-planned); }
.redev-color-115_revised    img.leaflet-tile { filter: url(#redev-flt-115_revised); }
.redev-color-chloride       img.leaflet-tile { filter: url(#redev-flt-chloride); }
.redev-color-63y_building   img.leaflet-tile { filter: url(#redev-flt-63y_building); }
.redev-color-urgent         img.leaflet-tile { filter: url(#redev-flt-urgent); }
.redev-color-pub_business   img.leaflet-tile { filter: url(#redev-flt-pub_business); }
.redev-color-invalid        img.leaflet-tile { filter: url(#redev-flt-invalid); }
.redev-color-ntpc_ama       img.leaflet-tile { filter: url(#redev-flt-ntpc_ama); }
.redev-color-ntpc_easy      img.leaflet-tile { filter: url(#redev-flt-ntpc_easy); }
.redev-color-ntpc_danger    img.leaflet-tile { filter: url(#redev-flt-ntpc_danger); }
.redev-color-ntpc_amdm      img.leaflet-tile { filter: url(#redev-flt-ntpc_amdm); }
.redev-color-ntpc_rzoning   img.leaflet-tile { filter: url(#redev-flt-ntpc_rzoning); }
