/* Customer content polish; shared dark/light material tokens stay authoritative. */
html:root body.royal-fidelity-theme.portal-customer .rc-sr-only {
 position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
 margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
 white-space:nowrap!important;border:0!important;
}
html:root body.royal-fidelity-theme.portal-customer .rc-form-field {display:flex;flex-direction:column;gap:7px;min-width:0}
html:root body.royal-fidelity-theme.portal-customer .rc-form-field>label {font:600 12px/1.55 var(--royal-ui);color:var(--rf-ink);margin:0;overflow-wrap:anywhere}
html:root body.royal-fidelity-theme.portal-customer .rc-credit-form {align-items:flex-end!important;gap:12px!important}
html:root body.royal-fidelity-theme.portal-customer .rc-credit-form .rc-recipient-field {flex:1 1 240px}
html:root body.royal-fidelity-theme.portal-customer .rc-credit-form .rc-amount-field {flex:0 1 150px}
html:root body.royal-fidelity-theme.portal-customer .rc-credit-form .rc-form-field>input {box-sizing:border-box;width:100%!important;max-width:100%;min-width:0}
html:root body.royal-fidelity-theme.portal-customer .rc-rent-amount {max-width:100%}
html:root body.royal-fidelity-theme.portal-customer .rc-rent-amount .amt {max-width:100%;margin:0}
html:root body.royal-fidelity-theme.portal-customer .rc-rent-amount input {min-width:0;max-width:180px}
html:root body.royal-fidelity-theme.portal-customer .prev form.actions {align-items:flex-end}
html:root body.royal-fidelity-theme.portal-customer .rc-ledger .tx[hidden],
html:root body.royal-fidelity-theme.portal-customer .rc-ledger .rc-history-toggle[hidden] {display:none!important}
html:root body.royal-fidelity-theme.portal-customer .rc-ledger .rc-history-toggle {
 display:flex;align-items:center;justify-content:center;margin:16px 20px 20px;
 min-height:44px;max-width:calc(100% - 40px);padding:10px 16px;white-space:normal;text-align:center;
}
html:root body.royal-fidelity-theme.portal-customer .rc-payment-guide a.rc-inline-link {
 display:inline;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;
 color:var(--rf-gold);font:inherit;text-decoration:underline;text-decoration-thickness:1px;
 text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere;
}
html:root body.royal-fidelity-theme.portal-customer .rc-payment-guide a.rc-inline-link:hover {text-decoration-thickness:2px}
html:root body.royal-fidelity-theme.portal-customer .rc-payment-guide a.rc-inline-link:focus-visible {outline:2px solid currentColor;outline-offset:3px}
@media(max-width:700px) {
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table-wrap {
  overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices table.rc-responsive-table {
  display:block;width:100%;min-width:0!important;border:0;border-spacing:0;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table thead {
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table tbody {display:grid;gap:14px}
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table tbody>tr {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;
  padding:15px 17px;background:var(--rf-panel);border:1px solid var(--rf-frame);
  border-radius:12px;box-shadow:var(--rf-shadow);min-width:0;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table tbody>tr>td {
  display:block;width:auto;max-width:100%;min-width:0;padding:10px 0;border:0;
  background:none;white-space:normal;overflow-wrap:anywhere;text-align:start;vertical-align:top;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table tbody>tr>td+td {border-top:1px solid var(--rf-line)}
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table tbody>tr>td:nth-child(-n+2) {grid-column:1/-1}
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table td::before {
  content:attr(data-label);display:block;margin-bottom:5px;color:var(--rf-muted);
  font:600 11px/1.4 var(--royal-ui);letter-spacing:.025em;
 }
 html:root body.royal-fidelity-theme.portal-customer .rc-devices .rc-responsive-table td .pill {white-space:normal}
 html:root body.royal-fidelity-theme.portal-customer .rc-credit-form .rc-recipient-field {flex-basis:100%}
 html:root body.royal-fidelity-theme.portal-customer .rc-credit-form .rc-amount-field {flex:1 1 125px}
 html:root body.royal-fidelity-theme.portal-customer .rc-credit-form>button {flex:1 1 140px}
}
@media print {
 html:root body.royal-fidelity-theme.portal-customer .rc-ledger .tx[hidden] {display:flex!important}
 html:root body.royal-fidelity-theme.portal-customer .rc-ledger .rc-history-toggle {display:none!important}
}

/* Customer form polish: presentation only; native controls and form actions remain intact. */
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-form {
 align-items:flex-end;gap:14px;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-amount-field {
 display:flex;flex:1 1 150px;flex-direction:column;min-width:0;gap:7px;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-amount-field label {
 margin:0;line-height:1.5;text-transform:none;letter-spacing:0;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-panel .rc-hud-amount-field .amt {
 display:flex;flex:none;width:100%;min-height:46px;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-form>button {
 flex:0 1 auto;max-width:100%;margin:0;min-height:46px;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx {
 --job-ink:#cad3dc;--job-tint:#9badbf1a;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-pending {
 --job-ink:#e0c18a;--job-tint:#d4ac661c;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-credited {
 --job-ink:#8ed5af;--job-tint:#68c6941c;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-failed {
 --job-ink:#f1a5ae;--job-tint:#e77b901c;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-ic {
 color:var(--job-ink);background:var(--job-tint);border:1px solid currentColor;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-note {
 color:var(--job-ink);white-space:normal;max-width:none;overflow:visible;
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-amt {
 color:var(--rf-ink);
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-credited .tx-amt {
 color:var(--job-ink);
}
:root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-meta {
 white-space:normal;
}
html:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx {
 --job-ink:#536273;--job-tint:#5362730d;
}
html:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-pending {
 --job-ink:#76571f;--job-tint:#cda75416;
}
html:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-credited {
 --job-ink:#245e42;--job-tint:#589e7414;
}
html:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-outcome-failed {
 --job-ink:#943847;--job-tint:#bc697916;
}
:root body.royal-fidelity-theme.portal-customer .rc-form-label {
 display:block;margin:0 0 10px;color:var(--rf-muted);font:600 13px/1.5 var(--royal-ui);
}
:root body.royal-fidelity-theme.portal-customer .rc-webhook-field {
 display:flex;align-items:center;gap:10px;min-width:0;
}
:root body.royal-fidelity-theme.portal-customer .rc-webhook-field>input {
 flex:1 1 150px;min-width:0;width:0;
}
:root body.royal-fidelity-theme.portal-customer .rc-webhook-field>.rc-webhook-toggle {
 flex:0 0 auto;min-height:46px;width:auto;margin:0;padding-inline:14px;
}
:root body.royal-fidelity-theme.portal-customer .rc-webhook-toggle[hidden] {
 display:none!important;
}
:root body.royal-fidelity-theme.portal-customer .rc-password-form>button[type=submit] {
 margin-top:16px;
}
@media(max-width:480px) {
 :root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx {
  grid-template-columns:30px minmax(0,1fr);gap:10px;
 }
 :root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-ic {
  width:30px;height:30px;font-size:16px;align-self:start;
 }
 :root body.royal-fidelity-theme.portal-customer .rc-hud-jobs .tx-right {
  grid-column:2;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;text-align:start;white-space:normal;
 }
 :root body.royal-fidelity-theme.portal-customer .rc-hud-topup-form>button {
  flex:1 1 100%;
 }
}
@media(forced-colors:active) {
 :root body.royal-fidelity-theme.portal-customer .rc-hud-jobs :is(.tx-ic,.tx-note,.tx-amt) {
  color:CanvasText;background:Canvas;
 }
}

/* Shared customer finishing touches; no changes to the admin or payment controls. */
html:root body.royal-fidelity-theme.portal-customer .royal-customer-drawer-identity {display:none}
@media screen and (max-width:900px) {
 html:root body.royal-fidelity-theme.portal-customer .royal-customer-drawer-identity {
  display:block;margin:0 0 12px;padding:0 5px 16px;border-bottom:1px solid var(--rf-line);
  color:var(--rf-muted);font:500 12px/1.7 var(--royal-ui);overflow-wrap:anywhere;
 }
}
@media screen and (max-width:820px) and (forced-colors:none) {
 html:root[data-theme=light] body.royal-balanced-theme.portal-customer .royal-page-hero {
  min-height:0;padding:18px 20px;
 }
 html:root[data-theme=light] body.royal-balanced-theme.portal-customer .royal-page-hero::after {
  height:64px;margin:0 0 -6px;
 }
 html:root[data-theme=light] body.royal-balanced-theme.portal-customer .royal-hero-copy p {margin-top:7px}
}
@media screen and (max-width:700px) {
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-breadcrumb {margin-bottom:12px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-hero {padding:18px;gap:16px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-hero h2 {font-size:28px;margin:8px 0 12px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-hero-copy>p {margin-bottom:14px;line-height:1.6}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-flow-row {padding:11px 12px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-flow-label {padding:0 0 10px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-flow-note {margin-top:10px}
 html:root body.royal-fidelity-theme.portal-customer .rc-wiki .wiki-search-box {margin-block:16px;min-height:48px}
}
