/* Spacing scoped to planning's overview; other screens retain their layout. */
main > .planning-section {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
main > .planning-section > .toolbar {
  padding: 0;
  gap: 16px;
}
main > .planning-section > .toolbar h2 { margin: 0; }
main > .planning-section > .toolbar button { flex-shrink: 0; }
main > .planning-section > p { margin: 0; }
main > .planning-section > .expense-hint {
  max-width: 80ch;
  font-size: 13px;
  line-height: 1.6;
}
main > .planning-section > .transfer-grid { padding: 0; }
@media (max-width: 700px) {
  main > .planning-section { padding: 18px; }
  main > .planning-section > .toolbar { align-items: flex-start; }
}

.statement-extra { display:block; margin-top:4px; font-weight:400; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
details[open] > summary .statement-extra { white-space:normal; overflow-wrap:anywhere; }
.student-form [aria-invalid="true"] {border:2px solid #b42318;background-color:#fff5f4;}
.statement-field-error {display:block;color:#b42318;font-size:0.85rem;margin-top:4px;}
.statement-field-error[hidden] {display:none;}
