/* chart-gantt-1.css — Frappe Ganttのデモ用スタイル */

.demo-container {
  display: block;
  padding: 24px;
}

.gantt-demo {
  color: #1A2332;
}

.gantt-demo__heading {
  margin: 0 0 6px;
  font-size: 18px;
}

.gantt-demo__description {
  margin: 0 0 16px;
  font-size: 14px;
  color: #5A6A7A;
}

.gantt-demo__view-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.gantt-demo__view-button,
.reset-btn {
  min-height: 40px;
  padding: 8px 16px;
  border: 1px solid #AFC1D6;
  border-radius: 6px;
  background: #FFFFFF;
  color: #24486F;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.gantt-demo__view-button:hover,
.reset-btn:hover {
  border-color: #2B7FE8;
  background: #F2F7FE;
}

.gantt-demo__view-button:focus-visible,
.reset-btn:focus-visible {
  outline: 3px solid rgba(43, 127, 232, 0.32);
  outline-offset: 2px;
}

.gantt-demo__view-button[aria-pressed="true"] {
  border-color: #1554A0;
  background: #2B7FE8;
  color: #FFFFFF;
  box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.2);
}

.gantt-demo__scroll {
  overflow-x: auto;
  padding: 12px;
  border: 1px solid #D0D7E0;
  border-radius: 8px;
  background: #FFFFFF;
}

.gantt-demo__chart {
  min-width: 720px;
  min-height: 220px;
}

.gantt-demo__loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 720px;
  min-height: 220px;
  margin: 0;
  color: #5A6A7A;
  font-size: 14px;
}

.gantt-demo__loading[hidden] {
  display: none;
}

.gantt-demo__status {
  min-height: 24px;
  margin: 14px 0 0;
  font-size: 14px;
  line-height: 1.7;
  color: #4B5F73;
}

.gantt-demo__status--notice {
  padding: 8px 12px;
  border-left: 3px solid #2B7FE8;
  border-radius: 0 4px 4px 0;
  background: #E8F1FD;
  color: #174A80;
}

.gantt-demo__status--error {
  padding: 8px 12px;
  border-left: 3px solid #C93C3C;
  border-radius: 0 4px 4px 0;
  background: #FFF1F1;
  color: #9F2424;
}

.demo-controls {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}

.gantt-demo .gantt-container {
  font-family: inherit;
}

.gantt-demo .bar-label {
  font-family: inherit;
}

.prompt-block {
  margin-top: 20px;
}

.prompt-block-label {
  margin: 0 0 8px;
  color: #2B7FE8;
  font-size: 12px;
  font-weight: 700;
}

@media (max-width: 640px) {
  .demo-container {
    padding: 16px;
  }

  .gantt-demo__scroll {
    padding: 8px;
  }

  .gantt-demo__view-button,
  .reset-btn {
    min-height: 44px;
  }
}
