#hcff-usgs-loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255,255,255,0.88);
  z-index: 999999;
  align-items: center;
  justify-content: center;
}

.hcff-usgs-loading-box {
  text-align: center;
  font-size: 18px;
  color: #005607;
  font-weight: 600;
  background: rgba(255,255,255,0.96);
  padding: 20px 28px;
  border-radius: 12px;
  box-shadow: 0 2px 14px rgba(0,0,0,0.18);
}

.hcff-usgs-spinner {
  width: 46px;
  height: 46px;
  margin: 0 auto 12px;
  border: 5px solid #d0d0d0;
  border-top: 5px solid #005607;
  border-radius: 50%;
  animation: hcff-usgs-spin 0.9s linear infinite;
}

@keyframes hcff-usgs-spin { from { transform: rotate(0deg);} to { transform: rotate(360deg);} }

.hcff-river-selector-wrap { margin: 20px 0; text-align: center; }
.hcff-river-selector-label { display:block; margin-bottom:8px; font-weight:700; font-size:18px; color:#005607; }
.hcff-river-selector { width:100%; max-width:420px; padding:10px 14px; font-size:17px; border:1px solid #bfc7bf; border-radius:8px; background:#fff; color:#333; box-sizing:border-box; }

.hcff-usgs-report-title { margin-bottom: 4px; }
.hcff-usgs-report-note { text-align:center; font-weight:bold; font-size:12px; }
.hcff-usgs-report-table, .hcff-series-table { width:100%; border-collapse: collapse; font-size:16px; }
.hcff-usgs-report-table th, .hcff-usgs-report-table td, .hcff-series-table th, .hcff-series-table td { padding:8px; border:1px solid #ccc; vertical-align: top; }
.hcff-usgs-report-table thead th, .hcff-series-table thead th { background:#ddd; }
.hcff-col-more { width:1%; }
.hcff-toggle-link { text-decoration:none; font-weight:bold; }
.hcff-station-link { text-decoration:none; font-weight:bold; color:#005607; }
.hcff-station-link:hover { color:darkblue; }
.hcff-row-latest { background:#fff4c2; }
.hcff-row-even { background:#fff; }
.hcff-row-odd { background:#f9f9f9; }
.hcff-temp-caution { color: orange; font-weight:bold; }
.hcff-temp-warning { color: red; font-weight:bold; }
.hcff-orientation-overlay {
  position: fixed;
  top:0; left:0; width:100%; height:100%;
  background: rgba(0,0,0,0.8);
  color:#fff;
  display:none;
  align-items:center;
  justify-content:center;
  text-align:center;
  z-index:9999;
  font-size:24px;
  padding:20px;
  box-sizing:border-box;
}
