:root{
  --bg:#ffffff;
  --surface:#ffffff;
  --surface-2:#f6f7f9;
  --surface-3:#eff0f3;
  --line:#e4e6ea;
  --line-strong:#cdd0d6;
  --text:#111318;
  --text-soft:#6b7280;
  --text-xsoft:#9ca3af;
  --deep:#1d2535;
  --deep-2:#374151;
  --accent:#e67e22;
  --accent-soft:#fff5eb;
  --accent-hover:#d4711d;
  --danger:#dc2626;
  --danger-soft:#fef2f2;
  --success:#16a34a;
  --success-soft:#f0fdf4;
  --shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
  --shadow:0 4px 12px rgba(0,0,0,.08);
  --shadow-lg:0 8px 24px rgba(0,0,0,.10);
  --radius-xl:16px;
  --radius-lg:12px;
  --radius-md:8px;
  --radius-sm:6px;
  --radius-xs:4px;
  --gutter:clamp(16px,4vw,40px);
  --shell:min(1280px,100%);
}

/* 清新綠主題（保留備用） */
:root[data-theme="green"]{
  --accent:#16a34a;
  --accent-soft:#f0fdf4;
  --accent-hover:#15803d;
}

/* Leaflet attribution — 縮小不突兀，hover 才完整顯示 */
.leaflet-control-attribution {
  font-size: 0.6rem !important;
  opacity: 0.35 !important;
  transition: opacity 0.2s;
  background: rgba(255,255,255,0.65) !important;
  padding: 1px 5px !important;
  border-radius: 3px 0 0 0 !important;
}
.leaflet-control-attribution:hover {
  opacity: 0.85 !important;
}
