/* Readable payment states, shared by web and all hybrid partner panels. */
:root body.panel-compact [data-payment-state] {--payment-ink:#586570;--payment-tint:#f3f5f7;--payment-line:#d9e0e5;--payment-accent:#7c8993}
:root body.panel-compact [data-payment-state="paid"] {--payment-ink:#116744;--payment-tint:#eef9f3;--payment-line:#b9ddca;--payment-accent:#199266}
:root body.panel-compact [data-payment-state="unpaid"] {--payment-ink:#805300;--payment-tint:#fff8e9;--payment-line:#ecd498;--payment-accent:#bc871e}
:root body.panel-compact [data-payment-state="expired"],
:root body.panel-compact [data-payment-state="failed"] {--payment-ink:#a13f49;--payment-tint:#fff1f2;--payment-line:#eac1c5;--payment-accent:#ca6974}
:root body.panel-compact [data-payment-state="free"] {--payment-ink:#285f86;--payment-tint:#eff7fc;--payment-line:#c3dce9;--payment-accent:#5a9abd}
:root body.panel-compact [data-payment-state="refunded"] {--payment-ink:#6c4c8c;--payment-tint:#f6f1fb;--payment-line:#d9c8e7;--payment-accent:#a180bd}
:root body.panel-compact .ticket-report {margin:0 0 18px;min-width:0}
:root body.panel-compact .ticket-report-heading {display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
:root body.panel-compact .ticket-report-heading h2 {margin:0 0 4px;font-size:15px!important;font-weight:600!important;line-height:1.4}
:root body.panel-compact .ticket-report-heading p,
:root body.panel-compact .ticket-report-note {margin:0;color:#62716a;font-size:12px!important;line-height:1.5!important;font-weight:400!important}
:root body.panel-compact .ticket-report-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
:root body.panel-compact .ticket-report-stat {min-width:0;padding:14px;border:1px solid var(--payment-line);border-radius:16px;background:var(--payment-tint);color:var(--payment-ink)}
:root body.panel-compact .ticket-report-stat strong {display:block;margin:12px 0 3px;font-size:25px!important;font-weight:600!important;line-height:1.2!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
:root body.panel-compact .ticket-report-stat strong small {display:inline;font-size:12px!important;font-weight:400!important;color:inherit}
:root body.panel-compact .ticket-report-stat p {margin:6px 0 0;font-size:12px!important;line-height:1.5!important;font-weight:400!important;color:var(--payment-ink)}
:root body.panel-compact .ticket-report-help {margin-top:8px;color:#62716a;font-size:11px;line-height:1.5}
:root body.panel-compact .ticket-report-help summary {cursor:pointer;width:fit-content;font-weight:400}
:root body.panel-compact .ticket-report-help p {margin:6px 0 0;font-size:12px!important;font-weight:400!important}
:root body.panel-compact .ticket-report-extras {display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
:root body.panel-compact .ticket-report-extras:empty {display:none}
:root body.panel-compact .ticket-payment-badge {display:inline-flex!important;align-items:center;gap:6px;max-width:100%;width:fit-content;padding:5px 9px;border-radius:9px;background:var(--payment-tint);color:var(--payment-ink)!important;font-size:12px!important;font-weight:600!important;line-height:1.4!important;white-space:normal!important;font-style:normal}
:root body.panel-compact .ticket-payment-badge:before {content:'';flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:var(--payment-accent)}
:root body.panel-compact .ticket-report-stat .ticket-payment-badge {padding:0;background:transparent}
:root body.panel-compact .record-table>tbody>tr.record-disclosure[data-payment-state],
:root body.panel-compact .trip-order-card[data-payment-state],
:root body.panel-compact .guide-ticket-order-list>a[data-payment-state] {border-color:var(--payment-line)!important;border-left:3px solid var(--payment-accent)!important;background:var(--payment-tint)!important}
:root body.panel-compact .record-disclosure[data-payment-state] button.record-toggle .record-status {color:var(--payment-ink)!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
:root:root body.panel-compact .record-disclosure[data-payment-state] button.record-toggle:is(:hover,:focus,:focus-visible,:active) {background:transparent!important;filter:none!important}
:root:root body.panel-compact .record-disclosure[data-payment-state] button.record-toggle:focus-visible {outline:2px solid var(--payment-accent)!important;outline-offset:-4px!important}
:root body.panel-compact tr[data-payment-state]>td {background:var(--payment-tint)}
:root body.panel-compact .ticket-report-inset {padding:16px 18px 0}
@media(max-width:600px) {
  :root body.panel-compact .ticket-report-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  :root body.panel-compact .ticket-report-stat {padding:11px 9px;border-radius:13px}
  :root body.panel-compact .ticket-report-stat .ticket-payment-badge {font-size:11px!important;gap:4px}
  :root body.panel-compact .ticket-report-stat strong {font-size:23px!important;margin:10px 0 4px}
  :root body.panel-compact .ticket-report-stat strong small {font-size:10px!important}
  :root body.panel-compact .ticket-report-stat p {font-size:10px!important}
  :root body.panel-compact .ticket-report-stat .ticket-payment-badge:before {display:none}
}
/* Native disclosure cards for EO orders: no nested panel or JS transformation. */
:root body .ticket-orders-page { min-width:0; }
:root body .ticket-orders-page .ticket-orders-search { width:100%; max-width:none; margin:0 0 12px; background:#fff; }
:root body .ticket-orders-page .ticket-orders-search input { min-width:0; width:100%; }
:root body .ticket-orders-page .ticket-report { margin-bottom:14px; }
:root body .ticket-orders-page .ticket-report-heading { margin-bottom:8px; }
:root body .ticket-orders-page .ticket-report-heading p { margin:0; font-size:12px!important; }
:root body .ticket-orders-page .ticket-report-grid { gap:8px; }
:root body .ticket-orders-page .ticket-report-stat { padding:10px 12px; border-radius:12px; }
:root body .ticket-orders-page .ticket-report-stat strong { margin:5px 0 0; font-size:22px!important; font-weight:600!important; line-height:1.25; }
:root body .ticket-orders-page .ticket-report-stat small { font-size:11px!important; font-weight:400!important; }
:root body .ticket-orders-page .ticket-report-stat .ticket-payment-badge { font-size:11px!important; }
:root body .ticket-orders-page .ticket-orders-list { display:grid; gap:8px; }
:root body .ticket-orders-page .ticket-order { min-width:0; margin:0; border:1px solid var(--payment-line); border-left:3px solid var(--payment-accent); border-radius:12px; background:#fff; overflow:hidden; }
:root body .ticket-orders-page .ticket-order > summary { display:grid; grid-template-columns:minmax(0,1fr) auto 14px; gap:10px; align-items:center; padding:12px; min-height:76px; cursor:pointer; list-style:none; background:var(--payment-tint); -webkit-tap-highlight-color:transparent; }
:root body .ticket-orders-page .ticket-order > summary::-webkit-details-marker { display:none; }
:root body .ticket-orders-page .ticket-order > summary:focus-visible { outline:2px solid var(--payment-ink); outline-offset:-3px; }
:root body .ticket-orders-page .ticket-order > summary:is(:hover,:focus,:active) { background:var(--payment-tint)!important; }
:root body .ticket-orders-page .ticket-order-main { display:grid; gap:3px; min-width:0; }
:root body .ticket-orders-page .ticket-order-name { font-size:14px!important; font-weight:600!important; line-height:1.4; overflow-wrap:anywhere; }
:root body .ticket-orders-page .ticket-order-event { color:#52615a; font-size:12px!important; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
:root body .ticket-orders-page .ticket-order-main small { color:#68766e; font-size:11px!important; font-weight:400!important; overflow-wrap:anywhere; }
:root body .ticket-orders-page .ticket-order-payment { display:grid; gap:6px; justify-items:end; min-width:0; max-width:180px; }
:root body .ticket-orders-page .ticket-order-payment strong { font-size:14px!important; font-weight:600!important; line-height:1.4; overflow-wrap:anywhere; text-align:right; }
:root body .ticket-orders-page .ticket-order-payment .ticket-payment-badge { font-size:11px!important; font-weight:500!important; padding:0; border:0; background:transparent; white-space:normal; text-align:right; }
:root body .ticket-orders-page .ticket-order-payment .ticket-payment-badge::before { display:none; }
:root body .ticket-orders-page .ticket-order-chevron { width:7px; height:7px; border:solid #68766e; border-width:0 1.5px 1.5px 0; transform:rotate(45deg); justify-self:center; }
:root body .ticket-orders-page .ticket-order[open] .ticket-order-chevron { transform:rotate(225deg); }
:root body .ticket-orders-page .ticket-order[open] .ticket-order-event { white-space:normal; overflow-wrap:anywhere; }
:root body .ticket-orders-page .ticket-order-detail { padding:12px; border-top:1px solid var(--payment-line); }
:root body .ticket-orders-page .ticket-order-detail dl { display:grid; gap:8px; margin:0 0 8px; }
:root body .ticket-orders-page .ticket-order-detail dl > div { display:grid; grid-template-columns:100px minmax(0,1fr); gap:12px; }
:root body .ticket-orders-page .ticket-order-detail dt { color:#68766e; font-size:12px!important; }
:root body .ticket-orders-page .ticket-order-detail dd { margin:0; font-size:12px!important; overflow-wrap:anywhere; }
@media(max-width:380px) {
  :root body .ticket-orders-page .ticket-report-grid { gap:6px; }
  :root body .ticket-orders-page .ticket-report-stat { padding:9px 8px; }
  :root body .ticket-orders-page .ticket-order > summary { gap:8px; padding:10px; }
  :root body .ticket-orders-page .ticket-order-payment { max-width:112px; }
  :root body .ticket-orders-page .ticket-order-payment strong { font-size:13px!important; }
}
