.participant-summary { overflow-wrap: anywhere; }
.participant-summary h1 { font-size: 1.5rem; font-weight: 600; }
.participant-summary h2 { font-size: 1.125rem; font-weight: 600; margin-bottom: 1rem; }
.participant-summary-notice { background: #fff7ed; border-radius: 1rem; padding: 1rem; margin: 1rem 0; }
.participant-summary-totals { display: grid; gap: 1rem; margin: 1.5rem 0 1rem; }
.participant-summary-totals > div, .participant-summary-transfers { background: white; border-radius: 1rem; padding: 1.25rem; }
.participant-summary-totals dt { color: #64748b; font-size: .875rem; }
.participant-summary-totals dd { font-size: 1.5rem; font-weight: 600; margin-top: .5rem; }
.participant-summary-transfers { margin-top: 1.5rem; }
.participant-summary-transfer { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .75rem 0; }
.participant-summary-transfer > div { min-width: 0; }
.participant-summary-transfer > span { flex-shrink: 0; font-weight: 600; }
@media (min-width: 640px) { .participant-summary-totals { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.participant-edit-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 1rem; padding: .75rem 1rem; background: var(--blue-600); color: white; border-radius: .75rem; font-weight: 600; }
.participant-expenses-total { border-top: 1px solid #e2e8f0; }
.participant-expense-option { position: relative; overflow-wrap: anywhere; }
.participant-expense-option > div { padding-left: 3.25rem; }
.participant-expense-checkbox { position: absolute; top: 1rem; left: 1rem; width: 1.25rem; height: 1.25rem; accent-color: var(--blue-600); }
.participant-expense-checkbox:focus-visible + div { outline: 2px solid var(--blue-600); outline-offset: 2px; }
