.order-payments { color: var(--vs-ink, #f5f5f5); padding: 24px 0; border-top: 1px solid var(--vs-border, #363638); font-size: 15px; }
.order-payments * { box-sizing: border-box; letter-spacing: 0; }
.order-payments header { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
.order-payments h2 { font-size: 24px; font-weight: 650; }
.order-payments h3 { font-size: 18px; font-weight: 600; }
.order-payments h4 { font-size: 16px; font-weight: 600; }
.order-payments p { margin: 10px 0; overflow-wrap: anywhere; }
.order-payments button, .order-payments .payment-actions a { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid var(--vs-border, #363638); border-radius: 6px; padding: 8px 12px; background: var(--vs-surface, #17181c); color: inherit; font-weight: 550; }
.order-payments button:disabled { opacity: .5; cursor: not-allowed; }
.order-payments :focus-visible { outline: 2px solid #60a5fa; outline-offset: 3px; }
.order-payments .payment-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.order-payments .payment-primary { background: #efb653; color: #171717; border-color: #efb653; }
.order-payments .payment-danger, .order-payments .payment-error { color: #fb7185; }
.order-payments .payment-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid var(--vs-border, #363638); margin: 18px 0; }
.order-payments .payment-summary > div { display: flex; flex-direction: column; gap: 12px; padding: 20px 12px 20px 0; }
.order-payments .payment-summary strong { font-size: 25px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.order-payments .payment-success { color: #34d399; }
.order-payments .payment-notice { color: #efb653; }
.order-payments .payment-status { display: inline-flex; width: fit-content; border-radius: 4px; padding: 4px 8px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.order-payments .payment-status.paid { background: #103f32; color: #6ee7b7; }
.order-payments .payment-status.partial { background: #172e48; color: #93c5fd; }
.order-payments .payment-status.unpaid { background: #43242d; color: #fda4af; }
.order-payments .payment-status.review { background: #40321b; color: #fcd387; }
.order-payments .payment-form { border-block: 2px solid #b88a3e; padding: 20px 0; margin-bottom: 24px; }
.order-payments .payment-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.order-payments fieldset { min-width: 0; }
.order-payments label { display: flex; flex-direction: column; gap: 8px; }
.order-payments input:not([type=checkbox]) { width: 100%; min-height: 42px; padding: 8px 10px; background: var(--vs-surface, #17181c); border: 1px solid var(--vs-border, #555); border-radius: 6px; color: inherit; font-size: 16px; }
.order-payments input[type=checkbox] { width: 18px; height: 18px; flex-shrink: 0; accent-color: #efb653; }
.order-payments .payment-choice { flex-direction: row; align-items: center; }
.order-payments .payment-file { margin: 18px 0; }
.order-payments .payment-table-scroll { overflow-x: auto; max-width: 100%; }
.order-payments table { width: 100%; border-collapse: collapse; text-align: left; }
.order-payments th, .order-payments td { padding: 12px 10px; border-bottom: 1px solid var(--vs-border, #363638); vertical-align: middle; }
.order-payments th { font-size: 13px; font-weight: 600; white-space: nowrap; }
.order-payments td:not(:first-child) { font-variant-numeric: tabular-nums; white-space: nowrap; }
.order-payments td:first-child { min-width: 190px; overflow-wrap: anywhere; }
.order-payments td input[type=number] { min-width: 115px; max-width: 170px; }
.order-payments .payment-form-footer { justify-content: flex-end; margin-top: 20px; }
.order-payments .payment-statement { margin: 24px 0 30px; }
.order-payments summary { cursor: pointer; font-weight: 600; padding: 10px 0; }
.order-payments summary svg { display: inline-block; margin-right: 8px; vertical-align: middle; }
.order-payments a { color: #75b4ff; }
.order-payments .payment-receipt { border-bottom: 1px solid var(--vs-border, #363638); padding: 20px 0; }
.order-payments .payment-receipt header strong { font-size: 23px; }
.order-payments .payment-receipt ul { max-width: 560px; margin: 16px 0; }
.order-payments .payment-receipt li { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; }
.order-payments .payment-event { border-left: 2px solid #569cdd; margin: 12px 0; padding-left: 12px; }
.order-payments .payment-event time { display: block; font-size: 13px; margin: 6px 0; }
.order-payments .payment-error svg { display: inline; margin-right: 8px; }
@media(max-width: 640px) { .order-payments .payment-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .order-payments .payment-fields { grid-template-columns: 1fr; } .order-payments .payment-summary strong { font-size: 22px; } .order-payments { padding: 20px 0; } }
@media(max-width: 480px) {
  .order-payments .payment-form thead { display: none; }
  .order-payments .payment-form tbody { display: block; }
  .order-payments .payment-form tr { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); border-bottom: 1px solid var(--vs-border); padding: 8px 0; }
  .order-payments .payment-form td { display: block; border: 0; padding: 6px 4px; }
  .order-payments .payment-form td:first-child { grid-column: 1 / -1; min-width: 0; }
  .order-payments .payment-form td[data-label]::before { content: attr(data-label); display: block; margin-bottom: 8px; font-size: 12px; }
  .order-payments .payment-form td input[type=number] { min-width: 0; max-width: none; }
}
.cp-page,.cp-dialog { --cp-text:#20242b; --cp-muted:#5d6570; --cp-border:#dce0e5; --cp-surface:#f7f8fa; --cp-bg:#fff; --cp-info:#1765ad; --cp-success:#14714d; --cp-warning:#8c580f; --cp-danger:#b72939; color:var(--cp-text); letter-spacing:0; }
.dark .cp-page,.dark .cp-dialog { --cp-text:#f5f6f8; --cp-muted:#b0b6c1; --cp-border:#30333b; --cp-surface:#191b22; --cp-bg:#111218; --cp-info:#91c8ff; --cp-success:#79d9aa; --cp-warning:#efd08b; --cp-danger:#ff9fa9; color-scheme:dark; }
.cp-page { padding:26px 32px; max-width:1800px; margin:auto; min-width:0; font-size:15px; }
.cp-page *,.cp-dialog * { box-sizing:border-box; letter-spacing:0; }
.cp-heading,.cp-heading>div,.cp-actions,.cp-toolbar,.cp-pagination,.cp-pagination>div,.cp-section>header,.cp-session>header,.cp-receipt>header,.cp-dialog>header { display:flex; align-items:center; gap:12px; }
.cp-heading,.cp-section>header,.cp-session>header,.cp-dialog>header { justify-content:space-between; }
.cp-heading { margin-bottom:20px; flex-wrap:wrap; }
.cp-heading>div { min-width:0; }
.cp-heading>div>svg { color:var(--cp-info); flex-shrink:0; }
.cp-heading h1 { font-size:24px; line-height:1.25; font-weight:650; overflow-wrap:anywhere; }
.cp-heading p,.cp-table small,.cp-receipt small,.cp-session-orders small,.cp-audit small { display:block; margin-top:5px; color:var(--cp-muted); font-size:13px; overflow-wrap:anywhere; }
.cp-button,.cp-icon { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:36px; padding:7px 11px; border:1px solid var(--cp-border); border-radius:5px; background:var(--cp-bg); color:var(--cp-text); font-size:14px; line-height:1.4; cursor:pointer; text-decoration:none; }
.cp-button svg,.cp-icon svg { flex-shrink:0; }
.cp-icon { width:36px; height:36px; padding:0; flex:0 0 36px; }
.cp-button:hover,.cp-icon:hover { border-color:var(--cp-muted); background:var(--cp-surface); }
.cp-primary { background:#246baf; color:#fff; border-color:#246baf; }
.cp-primary:hover { background:#1f5e9b; color:#fff; }
.cp-page button:disabled,.cp-dialog button:disabled { opacity:.5; cursor:not-allowed; }
.cp-page :is(button,a,input,select,summary):focus-visible,.cp-dialog :is(button,a,input,summary):focus-visible { outline:2px solid var(--cp-info); outline-offset:3px; }
.cp-balances { border-block:1px solid var(--cp-border); padding:15px 0 20px; }
.cp-scope { display:flex; flex-wrap:wrap; gap:8px 18px; color:var(--cp-muted); font-size:13px; margin-bottom:16px; }
.cp-scope span { margin-left:auto; }
.cp-balances dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.cp-balances dt { color:var(--cp-muted); font-size:13px; margin-bottom:7px; }
.cp-balances dd { font-size:22px; line-height:1.3; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.cp-balances dl>div:nth-child(2) dd { color:var(--cp-success); }
.cp-balances dl>div:nth-child(3) dd { color:var(--cp-warning); }
.cp-toolbar { padding:18px 0; flex-wrap:wrap; }
.cp-search { display:flex; flex:1 1 240px; align-items:center; gap:10px; min-width:0; min-height:38px; border:1px solid var(--cp-border); border-radius:5px; padding:0 11px; color:var(--cp-muted); background:var(--cp-bg); }
.cp-search input { width:100%; min-width:0; background:transparent; color:var(--cp-text); outline:none; padding:9px 0; font-size:15px; }
.cp-search:focus-within { outline:2px solid var(--cp-info); outline-offset:2px; }
.cp-filter { display:flex; align-items:center; gap:8px; color:var(--cp-muted); font-size:13px; }
.cp-filter select,.cp-form input:not([type=checkbox]) { color:var(--cp-text); background:var(--cp-bg); border:1px solid var(--cp-border); border-radius:5px; min-height:38px; padding:8px 10px; min-width:0; font-size:15px; }
.cp-table-wrap { position:relative; overflow:auto; max-width:100%; border-bottom:1px solid var(--cp-border); }
.cp-table { width:100%; border-collapse:collapse; text-align:left; font-size:15px; }
.cp-table th { background:var(--cp-surface); color:var(--cp-muted); font-weight:500; font-size:13px; padding:11px 12px; white-space:nowrap; }
.cp-table td { padding:13px 12px; border-top:1px solid var(--cp-border); vertical-align:middle; }
.cp-table th:first-child,.cp-table td:first-child { padding-left:10px; }
.cp-table td:first-child,.cp-orders td:nth-child(2) { min-width:190px; max-width:330px; overflow-wrap:anywhere; }
.cp-table tbody tr:hover,.cp-selected { background:var(--cp-surface); }
.cp-table .cp-numeric { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cp-name { font-weight:600; color:var(--cp-text); }
.cp-name:hover,.cp-back:hover { color:var(--cp-info); text-decoration:underline; }
.cp-status { display:inline-flex; align-items:center; padding:3px 7px; border:1px solid var(--cp-border); border-radius:4px; color:var(--cp-text); font-size:13px; font-weight:500; white-space:nowrap; }
.cp-status.cp-paid { color:var(--cp-success); }
.cp-status.cp-partial,.cp-status.cp-review { color:var(--cp-warning); }
.cp-pagination { justify-content:space-between; flex-wrap:wrap; padding-top:16px; color:var(--cp-muted); font-size:13px; }
.cp-message { min-height:200px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:16px; color:var(--cp-muted); text-align:center; overflow-wrap:anywhere; }
.cp-message h1,.cp-message h2 { font-size:17px; color:var(--cp-text); }
.cp-error { color:var(--cp-danger); padding:12px 0; }
.cp-back { display:inline-flex; align-items:center; gap:7px; color:var(--cp-muted); margin-bottom:18px; font-size:13px; }
.cp-section { padding:22px 0; border-bottom:1px solid var(--cp-border); }
.cp-section h2 { font-size:15px; font-weight:600; }
.cp-section h2>.cp-muted { margin-left:6px; font-weight:400; }
.cp-section>header { flex-wrap:wrap; margin-bottom:14px; }
.cp-section>h2 { margin-bottom:14px; }
.cp-actions { flex-wrap:wrap; }
.cp-muted,.cp-empty-line { color:var(--cp-muted); font-size:13px; }
.cp-empty-line { padding:14px 0; }
.cp-notice { color:var(--cp-warning); font-size:13px; padding-top:14px; }
.cp-table td.cp-check,.cp-table th.cp-check { min-width:40px; width:40px; max-width:40px; }
.cp-page input[type=checkbox],.cp-dialog input[type=checkbox] { width:16px; height:16px; accent-color:var(--cp-info); flex-shrink:0; cursor:pointer; }
.cp-page input[type=checkbox]:disabled { cursor:not-allowed; opacity:.45; }
.cp-session,.cp-receipt { padding:16px 0; border-top:1px solid var(--cp-border); overflow-wrap:anywhere; }
.cp-session h3,.cp-receipt h3 { display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:15px; font-weight:600; }
.cp-session-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 24px; max-width:720px; margin-top:14px; }
.cp-session-metrics dt { color:var(--cp-muted); font-size:13px; margin-bottom:4px; }
.cp-session-metrics dd { color:var(--cp-text); font-size:15px; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.cp-session-metrics>div:nth-child(2) dd { color:var(--cp-success); }
.cp-session-metrics>div:nth-child(3) dd { color:var(--cp-warning); }
.cp-session>header>div,.cp-receipt>header>div { min-width:0; }
.cp-receipt>header { flex-wrap:wrap; }
.cp-receipt>header>strong { margin-left:auto; font-variant-numeric:tabular-nums; }
.cp-receipt>p { font-size:13px; margin:10px 0; white-space:pre-wrap; }
.cp-allocations { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:8px 24px; padding:14px 0; }
.cp-allocations li { display:flex; justify-content:space-between; gap:12px; font-size:13px; }
.cp-allocations strong { font-variant-numeric:tabular-nums; font-weight:500; }
.cp-audit { margin-top:12px; font-size:13px; }
.cp-audit summary { display:flex; align-items:center; gap:7px; color:var(--cp-muted); cursor:pointer; width:fit-content; }
.cp-audit[open] summary { color:var(--cp-info); }
.cp-audit>div { border-left:2px solid var(--cp-border); padding:3px 12px; margin-top:12px; }
.cp-audit p { margin-top:8px; overflow-wrap:anywhere; }
.cp-dialog { margin:auto; padding:0; width:min(560px,calc(100vw - 24px)); max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); background:var(--cp-bg); border:1px solid var(--cp-border); border-radius:8px; overflow:auto; }
.cp-dialog::backdrop { background:#000a; }
.cp-dialog-wide { width:min(1120px,calc(100vw - 24px)); }
.cp-dialog>header { padding:16px 20px; border-bottom:1px solid var(--cp-border); }
.cp-dialog>header h2 { font-size:17px; font-weight:600; overflow-wrap:anywhere; }
.cp-dialog .order-payments { --vs-bg:var(--cp-bg); --vs-ink:var(--cp-text); --vs-muted:var(--cp-muted); --vs-border:var(--cp-border); margin:0; padding:20px; border:0; border-radius:0; }
.cp-form { padding:20px; }
.cp-form fieldset { display:grid; gap:16px; min-width:0; }
.cp-form label { display:grid; gap:7px; color:var(--cp-muted); font-size:13px; }
.cp-form footer { display:flex; justify-content:flex-end; margin-top:20px; }
.cp-form input:not([type=checkbox]) { width:100%; }
.cp-session-orders { max-height:300px; overflow:auto; }
.cp-session-orders label { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--cp-border); color:var(--cp-text); overflow-wrap:anywhere; }
.cp-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.cp-spin { animation:cp-spin 1s linear infinite; }
@keyframes cp-spin { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .cp-spin { animation:none; } }
@media(max-width:760px) {
  .cp-page { padding:20px 16px; }
  .cp-heading h1 { font-size:21px; }
  .cp-balances dl { gap:16px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cp-balances dd { font-size:19px; }
  .cp-session-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cp-scope span { margin-left:0; }
  .cp-table { min-width:780px; }
  .cp-heading,.cp-section>header { gap:16px; }
  .cp-dialog>header,.cp-form,.cp-dialog .order-payments { padding:16px; }
  .cp-receipt>header>.cp-actions { width:100%; }
  .cp-receipt>header>strong { margin-left:0; }
}
/*$vite$:1*/