/* green-route.css — 綠蔭散步
   版型沿用站上共用的 bloom-calendar.css（與 about/city-bloom/eco-benefits 一致）；
   本檔只補「路線頁專屬」的樣式：地圖、樹種標籤、賞花徽章、卡片行動按鈕。 */

[hidden] { display: none !important; }

/* ── 地圖容器（總覽＋單條迷你共用 .gr-map）───────────────── */
.gr-map {
  position: relative; height: 380px; width: 100%;
  border-radius: 10px; overflow: hidden; z-index: 0;
  border: 1px solid #dce8dc; box-shadow: 0 10px 26px rgba(27, 78, 42, 0.08);
}
.overview-legend {
  display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 12px;
  font-size: 0.85rem; color: #516154;
}
.overview-legend span { display: inline-flex; align-items: center; gap: 6px; }
.overview-legend i { width: 16px; height: 4px; border-radius: 2px; display: inline-block; }

/* ── 行政區篩選列 ──────────────────────────────────────── */
.gr-filter-bar {
  max-width: 1100px; margin: 18px auto 0; padding: 0 18px;
  display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap;
}
.gr-filter-bar label { color: #24552d; font-weight: 800; font-size: 0.92rem; }
#gr-district-filter {
  min-width: 220px; min-height: 42px; padding: 8px 12px;
  border: 1px solid #cfe4d2; border-radius: 8px; background: #fff; color: #16251a;
  font: inherit; font-weight: 700;
}
.gr-empty-state {
  margin: 14px 0 0; padding: 14px 16px; border: 1px dashed #cfe4d2; border-radius: 8px;
  background: #f6fbf5; color: #516154; font-weight: 700;
}

/* ── 單條路線迷你地圖（點卡片後展開的 band）─────────────── */
.gr-map-head {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 10px; flex-wrap: wrap; margin-bottom: 10px;
}
.gr-map-head strong { color: #1a5c2a; font-size: 1.05rem; }
.gr-map-hint { color: #8a968f; font-size: 0.82rem; }
.gr-waypoints {
  list-style: none; margin: 12px 0 0; padding: 0;
  display: flex; flex-wrap: wrap; gap: 6px 10px;
}
.gr-waypoints li {
  font-size: 0.82rem; color: #16511f;
  background: #fdf6e3; border: 1px solid #f4d98a;
  border-radius: 12px; padding: 2px 10px;
}

/* ── 卡片內容微調 ───────────────────────────────────────── */
.bloom-place strong { color: #1a5c2a; font-size: 0.92rem; font-weight: 800; }
.bloom-place span { display: block; }
/* 樹種標籤改綠（bloom-tag 預設粉色只適合賞花）*/
.gr-tag { color: #24552d; background: #f6fbf5; border: 1px solid #cfe4d2; }
/* 賞花「現在正美」徽章 */
.gr-now-badge {
  display: inline-block; align-self: flex-start; margin-bottom: 8px;
  background: #e879a7; color: #fff; border-radius: 999px;
  padding: 3px 11px; font-size: 0.78rem; font-weight: 800;
}

/* ── 卡片行動按鈕（沿用 bloom-card-actions 的 flex 排列）──── */
.bloom-card-actions button,
.bloom-card-actions a { flex: 1 1 140px; }
.gr-btn {
  min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
  padding: 10px 14px; border-radius: 8px; font-weight: 800; font-size: 0.9rem;
  text-decoration: none; cursor: pointer; border: 1px solid transparent; font-family: inherit;
}
.gr-btn--show  { color: #123018; background: #f4c86b; }
.gr-btn--show:hover { background: #eaba54; }
.gr-btn--map   { color: #24552d; background: #f6fbf5; border-color: #cfe4d2; }
.gr-btn--district { color: #24552d; background: #f6fbf5; border-color: #cfe4d2; }
.gr-btn--nav   { color: #24552d; background: #fff; border-color: #cfe4d2; }
.gr-btn--map:hover, .gr-btn--district:hover, .gr-btn--nav:hover { background: #eef7f0; }
.gr-btn--bloom { color: #a63a72; background: #fbe4f0; border-color: #f3b9d6; }
.gr-btn--bloom:hover { background: #f7d3e6; }

/* ── 樹蔭面積計算方法 ─────────────────────────────────── */
.gr-method-inner {
  max-width: 980px;
  margin: 0 auto;
}
.gr-method-card,
.gr-method-refs {
  border: 1px solid #d4e8d8;
  background: rgba(255,255,255,0.92);
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(27, 78, 42, 0.07);
}
.gr-method-card {
  padding: 20px;
}
.gr-method-card h3,
.gr-method-refs h3 {
  margin: 0 0 12px;
  color: #1a5c2a;
  font-size: 1rem;
}
.gr-method-card p,
.gr-method-refs li,
.gr-method-note {
  color: #3f5948;
  font-size: 0.9rem;
  line-height: 1.8;
}
.gr-method-card p {
  margin: 0 0 12px;
}
.gr-method-card p:last-child {
  margin-bottom: 0;
}
.gr-method-card code {
  background: #edf8ef;
  border-radius: 3px;
  padding: 1px 5px;
  font-size: 0.84rem;
}
.gr-method-formula {
  margin: 14px 0;
  padding: 10px 13px;
  border-left: 3px solid #2cb5a5;
  border-radius: 0 6px 6px 0;
  background: #f0f7f0;
  color: #173f24;
  font-family: "Courier New", monospace;
  font-size: 0.9rem;
}
.gr-cite {
  color: #13816f;
  font-size: 0.72em;
  font-weight: 800;
  margin-left: 1px;
  text-decoration: none;
  vertical-align: super;
  white-space: nowrap;
}
.gr-cite:hover {
  text-decoration: underline;
}
.gr-method-refs {
  margin-top: 16px;
  padding: 18px 20px;
}
.gr-method-refs ol {
  margin: 0;
  padding-left: 20px;
}
.gr-method-refs li {
  margin-bottom: 9px;
  scroll-margin-top: 110px;
}
.gr-method-refs li:target {
  background: #edf8ef;
  border-radius: 4px;
}
.gr-method-refs a {
  color: #13816f;
  font-weight: 800;
}
.gr-method-note {
  margin: 14px 0 0;
  padding: 11px 13px;
  border: 1px solid #ffe066;
  border-radius: 7px;
  background: #fffbe6;
  color: #735a0d;
}

@media (max-width: 640px) {
  .gr-map { height: 300px; }
  .gr-method-card,
  .gr-method-refs {
    padding: 16px;
  }
}
