/* Hand-written utility and state classes (replacing data-dependent inline styles).
   Triple-class selectors keep the precedence inline styles used to have over
   ordinary single-class rules. Loaded after extracted.css. */
.u-danger.u-danger.u-danger { color: #c0392b; }
.u-primary.u-primary.u-primary { color: var(--rs-color-primary); }
.u-muted.u-muted.u-muted { color: var(--rs-color-muted); }
.u-credit.u-credit.u-credit { color: #1a6db8; }
.u-inherit.u-inherit.u-inherit { color: inherit; }
.u-bold.u-bold.u-bold { font-weight: 700; }
.u-semibold.u-semibold.u-semibold { font-weight: 600; }
.u-right.u-right.u-right { text-align: right; }
.u-hidden.u-hidden.u-hidden { display: none; }
.mb-1.mb-1.mb-1 { margin-bottom: 1rem; }
.row-dirty.row-dirty.row-dirty { background: #fdf2f2; }
.row-out-of-service.row-out-of-service.row-out-of-service { background: #f4f6f8; }
.stat-1-4.stat-1-4.stat-1-4 { font-size: 1.4rem; font-weight: 700; }
.stat-1-6.stat-1-6.stat-1-6 { font-size: 1.6rem; font-weight: 700; }
.stat-1-2.stat-1-2.stat-1-2 { font-size: 1.2rem; font-weight: 700; }
.stat-1-75.stat-1-75.stat-1-75 { margin: 0.35rem 0 0; font-size: 1.75rem; font-weight: 700; }
.stat-1-25.stat-1-25.stat-1-25 { margin: 0.35rem 0 0; font-size: 1.25rem; font-weight: 700; }
.stat-block.stat-block.stat-block { display: block; font-size: 1.25rem; }
.cell-pad.cell-pad.cell-pad { padding: 0.35rem 0.5rem; }
.cell-total.cell-total.cell-total { text-align: right; font-weight: 700; }
.cell-total-pad.cell-total-pad.cell-total-pad { padding: 0.35rem 0.5rem; text-align: right; font-weight: 700; }
.resort-list.resort-list.resort-list { list-style: none; padding: 0 0 0 1.5rem; margin: 0; }
.status-badge.status-badge.status-badge { padding: 0.1rem 0.45rem; border-radius: 4px; font-size: 0.78rem; font-weight: 600; }
.badge-paid.badge-paid.badge-paid { background: #e7f6ec; color: #1a6d2c; }
.badge-sent.badge-sent.badge-sent { background: var(--rs-color-primary-soft); color: var(--rs-color-primary); }
.badge-partial.badge-partial.badge-partial { background: #fdf1e0; color: #b3690a; }
.badge-overdue.badge-overdue.badge-overdue { background: #fdf2f2; color: #c0392b; }
.badge-neutral.badge-neutral.badge-neutral { background: var(--rs-color-surface-2); color: var(--rs-color-muted); }
.support-message-spaced.support-message-spaced.support-message-spaced { margin-bottom: 0.75rem; }
.support-message-internal.support-message-internal.support-message-internal { border-left: 3px solid #d97706; background: #fffbeb; }
.support-message-public.support-message-public.support-message-public { border-left: 3px solid #e0e0e0; }
.email-preview .ql-align-center.ql-align-center.ql-align-center { text-align: center; }
.email-preview .ql-align-right.ql-align-right.ql-align-right { text-align: right; }
.email-preview .ql-align-justify.ql-align-justify.ql-align-justify { text-align: justify; }
.email-preview .ql-size-small.ql-size-small.ql-size-small { font-size: 0.75em; }
