.arw { display: grid; gap: 1rem; }
.arw-head, .arw-actions, .arw-form-row { display: flex; align-items: end; justify-content: space-between; gap: .75rem; flex-wrap: wrap; }
.arw-head h1, .arw-pad h2 { margin: 0; }
.arw-metrics, .arw-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: .75rem; }
.arw-metric, .arw-pad { padding: 1rem; }
.arw-metric { display: grid; gap: .25rem; }
.arw-metric strong, .arw-hero { font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.arw-metric small { color: var(--wa-color-text-quiet); }
.arw-tabs { display: flex; gap: .4rem; flex-wrap: wrap; }
.arw-table { overflow: auto; }
.arw-table table { width: 100%; border-collapse: collapse; }
.arw-table th, .arw-table td { padding: .7rem; border-bottom: 1px solid var(--wa-color-surface-border); text-align: left; white-space: nowrap; }
.arw-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.arw-empty { padding: 2rem; text-align: center; color: var(--wa-color-text-quiet); }
.arw-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.arw-error { color: var(--wa-color-danger-60); grid-column: 1 / -1; }
.arw-spaced { margin-top: 1rem; }
#arw-print-frame { width: 100%; min-height: 65vh; border: 0; }
@media (max-width: 700px) { .arw-form { grid-template-columns: 1fr; } }
@media print { .app-sidebar, .app-header, .arw-head, .arw-tabs, .arw-actions { display: none !important; } .arw-table { overflow: visible; } }

/* Customer payment setup shares the receivables workspace stylesheet. */
.ars-card { padding: var(--wa-space-l); }
.ars-card-spaced { margin-top: var(--wa-space-l); }
