h1 {
  margin: 0;
  font-size: 20px;
}

p.lead {
  margin: 4px 0 0;
  color: var(--muted);
}

textarea {
  width: 100%;
  min-height: 220px;
  border: 1px solid #e6e9ef;
  border-radius: 8px;
  padding: 12px;
  font-size: 12px;
  resize: vertical;
}

.row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 10px;
}

button {
  background: var(--accent);
  border: 0;
  color: white;
  padding: 8px 12px;
  border-radius: 8px;
  cursor: pointer;
}

button.ghost {
  background: transparent;
  color: var(--accent);
  border: 1px solid var(--accent);
}

.stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 12px
}

.stat {
  background: #fff;
  padding: 10px;
  border-radius: 8px;
  min-width: 130px;
  flex: 1;
  border: 1px solid #eef2f7
}

.stat b {
  display: block;
  font-size: 20px
}

.actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px
}

/* Chart container small tweak */
.chart-wrap {
  margin-top: 16px;
  background: #fff;
  border-radius: 8px;
  padding: 10px;
  border: 1px solid #eef2f7;
}

canvas {
  width: 100% !important;
  max-height: 300px;
}

/* Responsive */
@media (max-width:640px) {
  h1 {
    font-size: 18px
  }

  .stat {
    min-width: 120px
  }
}

/* Accessibility focus */
button:focus,
textarea:focus {
  outline: 3px solid rgba(11, 116, 255, 0.12);
  outline-offset: 2px
}
