/* Table standard: /our-pricing-plans/#compare.
   Shared tokens also feed the account comparison; variants only adapt density and column sizing. */
:root {
 --table-canvas:#080c11;
 --table-surface:#11171e;
 --table-raised:#182029;
 --table-text:#f4f6f8;
 --table-secondary:#c0c9d3;
 --table-muted:#9eacbc;
 --table-border:#2b3541;
 --table-radius:26px;
 --table-column-gap:4px;
 --table-section-gap:8px;
 --table-cell-block:24px;
 --table-cell-inline:22px;
}
body[data-brand="loyal-primus"] .lp-table-scroll {
 max-width:100%; overflow-x:auto; overscroll-behavior-x:contain;
 border:0; border-radius:0; background:transparent;
 scrollbar-width:thin; scrollbar-color:#536d80 var(--table-canvas);
}
body[data-brand="loyal-primus"] .lp-table-scroll:focus-visible {outline:2px solid #90cdec;outline-offset:5px}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) {
 width:100%; min-width:var(--table-min-width,600px); table-layout:fixed;
 border-collapse:separate; border-spacing:var(--table-column-gap) 0;
 background:transparent; color:var(--table-text); font-size:16px; line-height:1.4;
 font-variant-numeric:tabular-nums; color-scheme:dark;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) caption:not(.sr-only):not(.visually-hidden) {
 background:transparent; text-align:left; color:var(--table-muted); padding:0 0 20px;
 font-size:14px; line-height:1.5; font-weight:400;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) :is(th,td) {
 padding:var(--table-cell-block) var(--table-cell-inline); border:0;
 vertical-align:middle; text-align:center; font-size:15px; font-weight:400;
 line-height:1.5; white-space:normal; overflow-wrap:break-word;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tr>:first-child {text-align:left}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead {background:none}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th {
 background:var(--table-raised); color:var(--table-text); padding-block:26px 22px;
 border-bottom:var(--table-section-gap) solid var(--table-canvas); vertical-align:top; font-size:17px;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th:first-child {border-radius:var(--table-radius) 0 0 0}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th:last-child {border-radius:0 var(--table-radius) 0 0}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody tr {background:none}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody tr>:is(th,td) {background:var(--table-surface);color:var(--table-secondary)}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody tr:nth-child(even)>:is(th,td) {background:var(--table-raised)}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody th {color:var(--table-text);font-weight:500}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody:last-child tr:last-child>:first-child {border-radius:0 0 0 var(--table-radius)}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody:last-child tr:last-child>:last-child {border-radius:0 0 var(--table-radius) 0}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) :is(a,button):focus-visible {outline:2px solid #90cdec;outline-offset:5px}
/* Keep content-specific structure: wide legal examples, short price histories and ranked entries. */
.lp-table--compact {--table-cell-block:18px;--table-cell-inline:18px;--table-min-width:760px}
.lp-table--history {--table-cell-block:16px;--table-cell-inline:18px;--table-min-width:0px}
.lp-table--leaderboard {--table-min-width:760px}
.lp-table--tiers {--table-min-width:540px}
body[data-brand="loyal-primus"] .lp-table.lp-table--compact thead th {font-size:14px}
body[data-brand="loyal-primus"] .lp-table.lp-table--compact :is(th,td) {font-size:14px}
body[data-brand="loyal-primus"] .lp-table.lp-table--leaderboard tr>:first-child {text-align:center}
body[data-brand="loyal-primus"] .lp-table.lp-table--leaderboard tr>:nth-child(2) {text-align:left}
body[data-brand="loyal-primus"] .lp-table.lp-table--leaderboard tbody tr:hover>:is(th,td) {background:#222e38}
body[data-brand="loyal-primus"] .lp-table.partner-table strong {font-size:25px;font-weight:500;letter-spacing:-.025em}
body[data-brand="loyal-primus"] .lp-table.partner-table .tier-index {color:var(--table-muted)}
body[data-brand="loyal-primus"] .lp-table.lp-table--history thead th {font-size:15px}
@media(max-width:1100px) {
 :root {--table-cell-inline:16px}
 body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th {padding-block:22px 20px}
}
@media(max-width:700px) {
 :root {--table-column-gap:3px;--table-cell-block:21px;--table-cell-inline:16px}
 body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) :is(th,td) {font-size:14px}
 body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th {font-size:16px;padding-block:20px 18px}
 body[data-brand="loyal-primus"] .lp-table.lp-table--compact {--table-cell-block:18px;--table-cell-inline:14px}
 body[data-brand="loyal-primus"] .lp-table.lp-table--compact thead th {font-size:14px}
 body[data-brand="loyal-primus"] .lp-table.lp-table--leaderboard {--table-min-width:720px}
 body[data-brand="loyal-primus"] .lp-table.bonus-table tr>:first-child {box-shadow:var(--table-column-gap) 0 var(--table-canvas)}
}
/* Compact two-column specifications use the same header, gutters and banding. */
.lp-table--specs {--table-min-width:0px}
body[data-brand="loyal-primus"] .lp-table.lp-table--specs tr>:first-child {width:52%}
body[data-brand="loyal-primus"] .lp-table.lp-table--specs thead th {font-size:clamp(18px,1.8vw,26px);letter-spacing:-.025em;vertical-align:middle}
body[data-brand="loyal-primus"] .offer-account {background:transparent;border:0;border-radius:0;padding:0;align-items:start}
body[data-brand="loyal-primus"] .offer-account>.lp-table-scroll {width:100%;min-width:0}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) tbody+tbody tr:first-child>* {border-top:var(--table-section-gap) solid var(--table-canvas)}
@media(max-width:480px){body[data-brand="loyal-primus"] .lp-table.lp-table--specs :is(th,td){padding:20px 14px}}

/* The empty corner is the signature of the pricing comparison: column headings
   begin over values, while the first column carries row labels. Keep its axis
   name in the accessibility tree instead of deleting information. */
.lp-table-axis-label {
 position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
 clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th {
 padding-block:32px; border-bottom-color:transparent; background-clip:padding-box;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead .lp-table-corner,
body[data-brand="loyal-primus"] .lp-table--comparison thead .lp-table-corner {
 background:transparent;border-radius:0;border-color:transparent;box-shadow:none;
 backdrop-filter:none;
}
body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead .lp-table-corner+th,
body[data-brand="loyal-primus"] .lp-table--comparison thead .lp-table-corner+th {
 border-top-left-radius:var(--table-radius);
}
/* An opaque matching canvas keeps scrolled rows out of the sticky comparison corner. */
body[data-brand="loyal-primus"] .lp-table--comparison thead .lp-table-corner {
 background:var(--table-canvas);
}
@media(max-width:700px) {
 body[data-brand="loyal-primus"] .lp-table:not(.lp-table--comparison) thead th {padding-block:24px}
}
