
.backend-page[data-v-23611692] {
  min-height: 100%;
}
.page-header[data-v-23611692] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  gap: 12px;
}
.page-title[data-v-23611692] {
  font-size: 22px;
  font-weight: 600;
  margin: 0;
  white-space: nowrap;
}
.filter-bar[data-v-23611692] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.filter-date[data-v-23611692] {
  padding: 6px 10px;
  border: 1px solid var(--backend-border, #efe7dd);
  border-radius: 8px;
}
.filter-date-sep[data-v-23611692] {
  margin: 0 4px;
  color: #666;
}
.k-button[data-v-23611692] {
  padding: 6px 14px;
  border: 1px solid var(--backend-border, #efe7dd);
  background: #fff;
  border-radius: 8px;
  cursor: pointer;
}
.k-button[data-v-23611692]:hover:not(:disabled) {
  background: #faf6f1;
}
.k-button.k-primary[data-v-23611692] {
  background: var(--backend-primary, #E96D00);
  color: #fff;
  border-color: var(--backend-primary, #E96D00);
}
.k-button.k-primary[data-v-23611692]:hover {
  background: var(--backend-primary-hover, #d66100);
  border-color: var(--backend-primary-hover, #d66100);
}

/* 圖表卡片版型 */
.chart-row[data-v-23611692] {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}
.chart-row-full > .chart-card[data-v-23611692] {
  flex: 1;
}
.chart-row-split > .chart-card[data-v-23611692] {
  flex: 1;
  min-width: 0;
}
.chart-card[data-v-23611692] {
  background: #fff;
  border-radius: var(--backend-card-radius, 14px);
  padding: 16px;
  box-shadow: var(--backend-card-shadow, 0 3px 12px rgba(196,120,50,0.07));
}
.chart-title[data-v-23611692] {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 12px;
  color: #555;
}

/* chart.js maintainAspectRatio: false 時靠父容器決定大小 */
.chart-canvas[data-v-23611692] {
  height: 300px;
  position: relative;
}
/* 橫條 Top 15 需要更高的容器避免 label 擠（15 條 + 標籤垂直方向占空間） */
.chart-canvas.tall[data-v-23611692] {
  height: 460px;
}

/* 無資料時的 placeholder，高度與 .chart-canvas 對齊避免版面跳動 */
.chart-empty[data-v-23611692] {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: #999;
  font-size: 14px;
}

/* 窄螢幕：filter-bar 與圖表並排都改成換行/堆疊 */
@media (max-width: 768px) {
.page-header[data-v-23611692],
  .filter-bar[data-v-23611692] {
    flex-wrap: wrap;
}
.chart-row-split[data-v-23611692] {
    flex-direction: column;
}
}

