/* Accepted B / Dengeli customer presentation, adapted to real PHP views.
   Exact material sources: atelier, material-refinements, royal-refinement,
   customer-live-refinements, canarun-preview. No synthetic application data. */
:root body.royal-fidelity-theme:is(.portal-customer,.portal-login) {
 --rf-canvas:#080d16;--rf-surface:#101925;--rf-alt:#172231;--rf-hover:#203044;
 --rf-panel:linear-gradient(145deg,#182332,#121c29 65%,#0f1823);
 --rf-raised:linear-gradient(160deg,#253449,#1a293a 55%,#132031);
 --rf-metal:linear-gradient(145deg,#e1c899,#c8a96e 52%,#ab8950);
 --rf-frame:#414951;--rf-line:#2d3847;--rf-control:#738094;
 --rf-ink:#f5f5f4;--rf-text:#e9e9e7;--rf-muted:#d5d5d4;
 --rf-gold:#c8a96e;--rf-gold-pale:#e9d9ba;
 --rf-shadow:inset 0 1px 0 #ffffff0c,inset 0 -1px 0 #0005,0 8px 22px #0003;
 --rf-bevel:inset 0 1px 0 #ffffff15,inset 0 -1px 0 #0008,0 3px 0 #0008,0 6px 12px #0003;
 --rf-rail:264px;
 background:var(--rf-canvas);color:var(--rf-text);font:400 15px/1.6 var(--royal-ui);font-synthesis:none;
}
:root[data-theme=light] body.royal-fidelity-theme:is(.portal-customer,.portal-login) {
 --rf-canvas:#eeece7;--rf-surface:#fffdf9;--rf-alt:#f1ede5;--rf-hover:#e5e0d6;
 --rf-panel:linear-gradient(145deg,#fffefa,#f5f1e9 70%,#eee8dc);
 --rf-raised:linear-gradient(160deg,#fffef9,#eee8dc 55%,#e0d8c9);
 --rf-frame:#c4bcad;--rf-line:#d4cbbd;--rf-control:#ac9d84;
 --rf-ink:#20334a;--rf-text:#344558;--rf-muted:#526171;
 --rf-gold:#735523;--rf-gold-pale:#77531d;
 --rf-metal:linear-gradient(145deg,#f7e8c1,#d7bd88 52%,#b5965c);
 --rf-shadow:inset 0 1px #fff,inset 0 -1px #c5b9a744,0 8px 22px #20365115;
 --rf-bevel:inset 0 1px #fff,inset 0 -1px #b7a88c66,0 3px #a0917755,0 6px 12px #20365115;
}
/* The real customer header retains its native language/logout/theme controls. */
:root body.royal-fidelity-theme.portal-customer .customer-topbar {
 position:fixed;inset-block:0;inset-inline-start:0;width:var(--rf-rail);height:100dvh;z-index:50;
 background:linear-gradient(160deg,var(--rf-surface),var(--rf-canvas) 72%);
 border:0;border-inline-end:1px solid var(--rf-line);box-shadow:none;backdrop-filter:none;overflow-y:auto;
}
:root body.royal-fidelity-theme.portal-customer .customer-topbar .tbin {
 display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;
 padding:20px 16px;gap:24px;width:100%;max-width:none;min-width:0;margin:0;
}
:root body.royal-fidelity-theme.portal-customer .customer-topbar .brand {display:flex;justify-content:center;min-width:0;margin:0;padding:0;gap:0;min-height:75px}
:root body.royal-fidelity-theme.portal-customer .customer-topbar .brand>.royal-brand-mark {display:block;position:relative;width:190px;height:75px;overflow:hidden;flex:0 0 190px}
:root body.royal-fidelity-theme.portal-customer .customer-topbar .royal-brand-mark img {position:absolute;width:190px!important;max-width:none!important;height:190px!important;object-fit:contain;left:0;top:-56px;filter:none}
:root body.royal-fidelity-theme.portal-customer .customer-topbar .brand>.word {display:none}
:root body.royal-fidelity-theme.portal-customer .pills {display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:9px;flex:none;width:100%;padding:3px 2px 10px;margin:0;border:0;background:none;box-shadow:none;overflow:visible}
:root body.royal-fidelity-theme.portal-customer .pills a {
 display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;width:100%;padding:9px 10px;
 white-space:normal;border:1px solid #ffffff2b;border-top-color:#ffffff3d;border-radius:8px;
 background:var(--rf-raised);color:#fff!important;font:600 13px/1.45 var(--royal-ui);text-shadow:none!important;
 box-shadow:inset 0 1px #ffffff10,0 2px #0009,0 4px 8px #0002;
}
:root body.royal-fidelity-theme.portal-customer .pills a.on {background:linear-gradient(180deg,#5a4b34,#443a2b);border-color:#c8a96eaa;border-top-color:#e9d5b3;box-shadow:inset 0 1px #e9d5b329,0 2px #19140d,0 4px 8px #0003}
:root body.royal-fidelity-theme.portal-customer .pills a svg.royal-material-icon {width:22px;height:22px;flex:0 0 22px;filter:none;stroke:none}
:root body.royal-fidelity-theme.portal-customer .topright {
 position:fixed;inset-block-start:0;inset-inline-start:var(--rf-rail);inset-inline-end:0;
 display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;min-height:62px;padding:8px 30px;gap:12px;
 border-bottom:1px solid var(--rf-line);background:var(--rf-surface);box-shadow:0 3px 12px #0002;z-index:55;
}
:root body.royal-fidelity-theme.portal-customer .topright :is(.who,.who b) {font:400 13px/1.4 var(--royal-ui);color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .topright .who b {font-weight:600;color:var(--rf-ink)}
:root body.royal-fidelity-theme.portal-customer .topright :is(select,.langsel,.navbtn,.tgl) {min-height:40px;font:600 12px/1.35 var(--royal-ui)}
:root body.royal-fidelity-theme.portal-customer .topright .portal-signout {min-height:40px;padding:8px 11px;background:var(--rf-raised);border:1px solid var(--rf-frame);box-shadow:var(--rf-bevel)}
:root body.royal-fidelity-theme.portal-customer .topright .portal-signout svg.royal-material-icon {width:20px;height:20px}
:root body.royal-fidelity-theme.portal-customer main.wrap {width:auto;max-width:2200px;margin:62px 0 0 var(--rf-rail);padding:28px 30px 36px;min-width:0}
:root[dir=rtl] body.royal-fidelity-theme.portal-customer main.wrap {margin-left:0;margin-right:var(--rf-rail)}
:root body.royal-fidelity-theme.portal-customer :is(.royal-customer-menu,.royal-customer-backdrop) {display:none}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .pills a {background:linear-gradient(180deg,#516b80,#3d5368 46%,#2c3e50);border-color:#7f96ac;border-top-color:#bed0df}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .pills a.on {background:linear-gradient(180deg,#886430,#6f4e24 42%,#50391c);border-color:#b99350;border-top-color:#f4dca3}
/* Shared native body surfaces. */
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page {min-width:0}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(h2,h3,.paybox-h) {font-family:var(--royal-ui);font-weight:600;color:var(--rf-ink);letter-spacing:0;text-transform:none;text-shadow:none}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page>h2 {font-size:21px;margin:28px 0 15px}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(.hint,.help,.steps,.paybox ol,.foot) {font-family:var(--royal-prose);font-weight:350;color:var(--rf-muted);line-height:1.7}
:root body.royal-fidelity-theme.portal-customer :is(.card,.paybox,.prev,.tablewrap,.txlist,.rc-balance-bar,.rc-residence,.rc-ledger,.rc-rental-activity) {background:var(--rf-panel);border:1px solid var(--rf-frame);border-top-color:#ffffff25;border-radius:12px;box-shadow:var(--rf-shadow);min-width:0}
:root body.royal-fidelity-theme.portal-customer :is(.card,.paybox,.prev) {padding:22px;margin:0 0 20px}
:root body.royal-fidelity-theme.portal-customer :is(.card,.paybox,.prev):before {pointer-events:none}
:root body.royal-fidelity-theme.portal-customer :is(.narrow,.wide,.formcard) {width:100%;max-width:none}
:root body.royal-fidelity-theme.portal-customer .formcard {max-width:560px}
:root body.royal-fidelity-theme.portal-customer .rc-password .formcard {margin-inline:auto}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(.btn,button,a.map) {
 display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;max-width:100%;width:auto;margin:0;
 border:1px solid var(--rf-control);border-top-color:#d9e5f33d;border-bottom-color:#040d1d;border-radius:7px;
 background:var(--rf-raised);box-shadow:var(--rf-bevel);color:var(--rf-text);font:600 14px/1.4 var(--royal-ui);text-shadow:none;letter-spacing:0;text-transform:none;white-space:normal;text-decoration:none;
}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(.btn.cta:not(.ghost),button.pay,.formcard button,.schedule-actions button,.rc-hudpay .actions button:not(.ghost)) {
 background:linear-gradient(145deg,#d7bf8e,#c8a96e 58%,#a88951);border-color:#c8a96e;border-top-color:#ead5ad;color:#241c11;
 box-shadow:inset 0 1px #f6e4c43d,0 2px #6b512b,0 5px 10px #0003;
}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(.btn,button):is(:hover,:focus-visible) {filter:brightness(1.09);border-color:var(--rf-gold)}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(.btn,button):active {transform:translateY(1px)}
:root body.royal-fidelity-theme.portal-customer :is(.rc-fidelity-page,.wrap) :is(input,select,textarea) {font-family:var(--royal-ui);font-weight:400;min-height:44px;border-radius:7px;border-color:var(--rf-control);background:var(--rf-canvas);color:var(--rf-ink)}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page :is(.lbl,.rc-label) {font:400 13px/1.5 var(--royal-ui);letter-spacing:0;text-transform:none;color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page label {font:600 14px/1.5 var(--royal-ui);letter-spacing:0;text-transform:none;color:var(--rf-ink)}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page :is(.pill,.pill.green,.pill.amber,.pill.red) {
 --badge-ink:#e6eef9;--badge-top:#536b87;--badge-mid:#2a415d;--badge-bottom:#20334c;--badge-rim:#71839b;--badge-light:#e4edff42;
 display:inline-flex;align-items:center;position:relative;isolation:isolate;width:fit-content;max-width:100%;min-height:34px;padding:5px 10px;border:1px solid var(--badge-rim);border-radius:8px;
 color:var(--badge-ink);font:600 13px/1.5 var(--royal-ui);letter-spacing:.005em;white-space:normal;text-shadow:none;
 background:linear-gradient(170deg,var(--badge-top),var(--badge-mid) 45%,var(--badge-bottom) 51%,var(--badge-mid));
 box-shadow:inset 0 1px var(--badge-light),inset 0 -1px #0005,0 2px #030b1890,0 3px 5px #0003;
}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill::after {content:"";position:absolute;inset:2px;border:1px solid #ffffff0c;border-top-color:#ffffff25;border-bottom-color:#00000020;border-radius:5px;pointer-events:none}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.green {--badge-ink:#def2e9;--badge-top:#43695f;--badge-mid:#294e46;--badge-bottom:#1d3e39;--badge-rim:#77968a;--badge-light:#d7f4e951}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.amber {--badge-ink:#f6e7c7;--badge-top:#6c5e43;--badge-mid:#4e412d;--badge-bottom:#3d3123;--badge-rim:#a3926c;--badge-light:#fff2d049}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.red {--badge-ink:#f7dfe6;--badge-top:#715261;--badge-mid:#513847;--badge-bottom:#422b39;--badge-rim:#a0808e;--badge-light:#fbe5ed45}
/* Balance strip and genuine account summary. */
:root body.royal-fidelity-theme.portal-customer .rc-balance-bar {display:flex;align-items:center;flex-wrap:wrap;gap:24px;padding:26px;margin-bottom:12px;border-color:#c8a96e70;position:relative;overflow:hidden}
:root body.royal-fidelity-theme.portal-customer .rc-balance-main {display:flex;align-items:center;gap:17px;min-width:0}
:root body.royal-fidelity-theme.portal-customer .rc-balance-emblem {width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;background:var(--rf-metal);border:1px solid #edd4a0;border-radius:50%;box-shadow:inset 0 1px #fffc,inset 0 -2px #81561f80,0 4px 8px #0005}
:root body.royal-fidelity-theme.portal-customer .rc-balance-emblem svg.royal-material-icon {width:25px;height:25px}
:root body.royal-fidelity-theme.portal-customer .rc-balance-main .big {font:500 43px/1.2 var(--royal-ui);font-variant-numeric:tabular-nums;letter-spacing:-.025em;color:var(--rf-gold-pale);margin:4px 0 0;background:none;-webkit-text-fill-color:currentColor}
:root body.royal-fidelity-theme.portal-customer .rc-balance-main .cur {font:400 16px/1.2 var(--royal-ui);margin-inline-end:6px;color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-balance-detail {padding-inline-start:24px;border-inline-start:1px solid #bda57a45}
:root body.royal-fidelity-theme.portal-customer .rc-balance-detail strong {display:block;font:500 21px/1.5 var(--royal-ui);color:var(--rf-gold-pale);margin-top:4px}
:root body.royal-fidelity-theme.portal-customer .rc-balance-detail small {font-size:12px;color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-balance-actions {display:flex;gap:11px;flex-wrap:wrap;margin-inline-start:auto;align-items:center;max-width:100%}
:root body.royal-fidelity-theme.portal-customer .rc-balance-actions .ghost {order:-1}
:root body.royal-fidelity-theme.portal-customer .rc-account-summary {display:flex;gap:7px;flex-wrap:wrap;align-items:center;padding:0 3px;margin:0;color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-account-summary :is(.lbl,.big) {font:400 13px/1.5 var(--royal-ui);margin:0;color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-account-summary .big {order:-1;font-weight:600}
:root body.royal-fidelity-theme.portal-customer .rc-account-summary .hint {font-size:12px;margin:0;border-inline-start:1px solid var(--rf-line);padding-inline-start:12px;margin-inline-start:5px}
:root body.royal-fidelity-theme.portal-customer .rc-home>.hint {font-size:12px;margin:4px 3px 18px}
:root body.royal-fidelity-theme.portal-customer .rc-home>.lowbal {font:400 13px/1.6 var(--royal-ui);color:#efd092;border:1px solid #c8a96e55;background:#c8a96e0d;padding:10px 14px;border-radius:8px;margin:12px 0}
/* Rental cards use only the real row's fields, status, dates, UUID and forms. */
:root body.royal-fidelity-theme.portal-customer .rc-home .rc-rentals-section>h2 {font:400 40px/1.3 var(--royal-title);color:var(--rf-ink);margin:25px 0 20px}
:root body.royal-fidelity-theme.portal-customer .rc-rental-collection {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch;margin-bottom:24px}
:root body.royal-fidelity-theme.portal-customer .rc-rental-collection>.msg {grid-column:1/-1}
:root body.royal-fidelity-theme.portal-customer .rc-residence {position:relative;isolation:isolate;display:grid;grid-template-columns:47px minmax(0,1fr);align-content:start;gap:0;padding:25px;overflow:hidden}
:root body.royal-fidelity-theme.portal-customer .rc-residence::before {content:"";position:absolute;inset:0 0 auto;height:130px;z-index:-1;background:linear-gradient(180deg,#fff8e30a,transparent);pointer-events:none}
:root body.royal-fidelity-theme.portal-customer .rc-residence::after {content:"";position:absolute;top:0;left:30px;right:30px;height:1px;background:linear-gradient(90deg,transparent,#edd197aa,transparent);pointer-events:none}
:root body.royal-fidelity-theme.portal-customer .rc-residence-emblem {grid-row:1;grid-column:1;width:47px;height:47px;border:1px solid #c5b28b70;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#48617e,#1b304b 50%,#142338);box-shadow:inset 0 1px #fff7,inset 0 -2px #0007,0 4px 8px #0005;margin-bottom:20px}
:root body.royal-fidelity-theme.portal-customer .rc-residence-emblem svg.royal-material-icon {width:30px;height:30px;filter:none}
:root body.royal-fidelity-theme.portal-customer .rc-residence .rc-state {grid-row:1;grid-column:2;justify-self:end;align-self:start;padding-inline-start:10px;max-width:100%}
:root body.royal-fidelity-theme.portal-customer .rc-residence>:not(.rc-state):not(.rc-residence-emblem) {grid-column:1/-1;min-width:0}
:root body.royal-fidelity-theme.portal-customer .rc-region {grid-row:2;font:600 24px/1.3 var(--royal-ui);margin:0 0 5px;overflow-wrap:anywhere}
:root body.royal-fidelity-theme.portal-customer .rc-region a {color:var(--rf-ink);text-decoration:none}
:root body.royal-fidelity-theme.portal-customer .rc-unit {grid-row:3;font:350 15px/1.6 var(--royal-prose);color:var(--rf-muted);padding-bottom:18px;border-bottom:1px solid #aec0d82c}
:root body.royal-fidelity-theme.portal-customer .rc-time {grid-row:4;padding:18px 0}
:root body.royal-fidelity-theme.portal-customer .rc-time>.rc-label {display:block;margin-bottom:5px}
:root body.royal-fidelity-theme.portal-customer .rc-timer {display:block;font:500 18px/1.5 var(--royal-ui);color:var(--rf-gold-pale)}
:root body.royal-fidelity-theme.portal-customer .rc-time .sub {font:400 12px/1.6 var(--royal-ui);margin-top:5px;overflow-wrap:anywhere}
:root body.royal-fidelity-theme.portal-customer .rc-rent {grid-row:5;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:20px;border-bottom:1px solid #aec0d82c}
:root body.royal-fidelity-theme.portal-customer .rc-rent strong {font:500 24px/1.3 var(--royal-ui);font-variant-numeric:tabular-nums;color:var(--rf-gold-pale);letter-spacing:-.025em;overflow-wrap:anywhere}
:root body.royal-fidelity-theme.portal-customer .rc-actions {grid-row:6;padding-top:18px}
:root body.royal-fidelity-theme.portal-customer .rc-actions .rowact {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 12px}
:root body.royal-fidelity-theme.portal-customer .rc-actions .rowact>.map {flex:1 1 112px;margin:0}
:root body.royal-fidelity-theme.portal-customer .rc-actions .rowact>form {margin:0;flex:1 1 112px}
:root body.royal-fidelity-theme.portal-customer .rc-actions .rowact>form>button {width:100%}
:root body.royal-fidelity-theme.portal-customer .rc-actions .rowact>form:has(.ap-on,.ap-off) {display:flex;justify-content:flex-end;flex:1 1 100%;border-top:1px solid #b99e6940;padding-top:12px}
:root body.royal-fidelity-theme.portal-customer .rc-actions :is(button.ap-on,button.ap-off) {
 position:relative;min-width:160px;min-height:48px;width:auto!important;padding:0 0 0 56px!important;border:0!important;border-radius:0;
 background:none!important;box-shadow:none!important;font:600 15px/1.4 var(--royal-ui);color:var(--rf-ink)!important;text-shadow:none;white-space:nowrap;filter:none;
}
:root body.royal-fidelity-theme.portal-customer .rc-actions :is(button.ap-on,button.ap-off)::before {content:"";box-sizing:border-box;position:absolute;left:0;top:calc(50% - 13px);width:46px;height:26px;border:1px solid #8c9bb1;border-radius:999px;background:radial-gradient(circle at 12px 12px,#bac7d8 9px,transparent 9.5px) #0b1727;box-shadow:inset 0 2px 3px #0009;transform:none}
:root body.royal-fidelity-theme.portal-customer .rc-actions button.ap-on::before {border-color:#d8c18c;background:radial-gradient(circle at 32px 12px,#fff8e3 9px,transparent 9.5px),linear-gradient(#d4b470,#8f672f);box-shadow:inset 0 1px #fff5,0 1px 4px #0005}
:root body.royal-fidelity-theme.portal-customer .rc-actions :is(button.ap-on,button.ap-off)::after {content:none}
:root body.royal-fidelity-theme.portal-customer .rc-uuid {grid-row:7;margin:14px 0 10px}
:root body.royal-fidelity-theme.portal-customer .rc-box-uuid {font:12px/1.6 Consolas,monospace!important;color:var(--rf-text);overflow-wrap:anywhere;user-select:all;margin-top:4px}
:root body.royal-fidelity-theme.portal-customer .rc-autopay-note {grid-row:8;margin:0;padding-top:12px;border-top:1px solid #b99e6940;font:350 13px/1.6 var(--royal-prose);color:var(--rf-muted)}
/* Actual ledger, transfer and help remain available below the rental cards. */
:root body.royal-fidelity-theme.portal-customer .rc-account-workspace {display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:22px;align-items:start}
:root body.royal-fidelity-theme.portal-customer .rc-credit-workspace {min-width:0}
:root body.royal-fidelity-theme.portal-customer :is(.rc-ledger,.rc-rental-activity)>h2 {font:600 18px/1.4 var(--royal-ui);padding:19px 22px;margin:0;border-bottom:1px solid var(--rf-line)}
:root body.royal-fidelity-theme.portal-customer :is(.rc-ledger,.rc-rental-activity)>p {padding:22px;margin:0}
:root body.royal-fidelity-theme.portal-customer :is(.rc-ledger,.rc-rental-activity)>.txlist {border:0;background:none;box-shadow:none;margin:0;border-radius:0}
:root body.royal-fidelity-theme.portal-customer .rc-rental-activity {margin-top:24px}
:root body.royal-fidelity-theme.portal-customer .rc-send-credit>.paybox {margin-top:0!important}
:root body.royal-fidelity-theme.portal-customer .paybox-h {font-size:18px;padding-bottom:14px;margin-bottom:15px;border-bottom:1px solid var(--rf-line)}
:root body.royal-fidelity-theme.portal-customer .tx {padding:18px 22px;background:none;border-color:var(--rf-line)}
:root body.royal-fidelity-theme.portal-customer .tx-type {font-size:14px;font-weight:600}
:root body.royal-fidelity-theme.portal-customer :is(.tx-meta,.tx-note,.tx-gain) {font-size:12px;line-height:1.6;overflow-wrap:anywhere}
:root body.royal-fidelity-theme.portal-customer .tx-amt {font-size:17px;font-weight:500}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page .tablewrap {margin-bottom:24px}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page table {font-size:14px}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page :is(th,td) {padding:15px 18px;border-color:var(--rf-line);font-family:var(--royal-ui)}
:root body.royal-fidelity-theme.portal-customer .rc-fidelity-page th {background:var(--rf-alt);color:var(--rf-muted);text-transform:none;font-size:12px;letter-spacing:0}
:root body.royal-fidelity-theme.portal-customer .reminder-entry-row {grid-template-columns:26px minmax(70px,1fr) minmax(100px,1fr) auto;gap:12px}
:root body.royal-fidelity-theme.portal-customer .rc-reminders .reminder-schedule-card {max-width:850px}
:root body.royal-fidelity-theme.portal-customer .rc-hudpay .wide {max-width:1000px}
:root body.royal-fidelity-theme.portal-customer .rc-hudpay .tablewrap {max-width:1000px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start;margin:0 0 22px}
:root body.royal-fidelity-theme.portal-customer :is(.rc-hud-status-panel,.rc-hud-topup-panel,.rc-hud-setup) {background:var(--rf-panel);border:1px solid var(--rf-frame);border-top-color:#ffffff25;border-radius:12px;box-shadow:var(--rf-shadow);min-width:0;overflow:hidden}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid h2 {font:600 18px/1.4 var(--royal-ui);padding:19px 22px;border-bottom:1px solid var(--rf-line);margin:0;color:var(--rf-ink)}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid :is(.card.wide,.tablewrap) {background:none;border:0;border-radius:0;box-shadow:none;width:100%;max-width:none;margin:0;padding:22px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid .tablewrap {padding:0 22px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid table {min-width:0;table-layout:fixed;font-size:14px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid th {width:45%;background:none;padding:16px 10px 16px 0}
:root body.royal-fidelity-theme.portal-customer .rc-hud-grid td {padding:16px 0;overflow-wrap:anywhere}
:root body.royal-fidelity-theme.portal-customer .rc-hud-status-panel>.actions {padding:20px 22px;margin:0;display:flex;flex-wrap:wrap;gap:12px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-status-panel>.muted {padding:22px;margin:0}
:root body.royal-fidelity-theme.portal-customer .rc-hud-status-panel>.codebox {margin:20px 22px 0}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-panel .card>p:first-child {margin-top:0}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-panel .actions {margin-top:20px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-panel .amt {flex:1 1 110px;max-width:100%;width:auto}
:root body.royal-fidelity-theme.portal-customer .rc-hud-topup-panel .amt input {width:100%;min-width:0}
:root body.royal-fidelity-theme.portal-customer .rc-hud-setup {margin-bottom:24px}
:root body.royal-fidelity-theme.portal-customer .rc-hud-setup>summary {cursor:pointer;padding:18px 22px;color:var(--rf-ink);font:600 15px/1.5 var(--royal-ui);min-height:58px;list-style-position:inside}
:root body.royal-fidelity-theme.portal-customer .rc-hud-setup[open]>summary {border-bottom:1px solid var(--rf-line)}
:root body.royal-fidelity-theme.portal-customer .rc-hud-setup-copy {padding:22px;font:350 14px/1.7 var(--royal-prose);color:var(--rf-muted)}
:root body.royal-fidelity-theme.portal-customer .rc-hud-setup-copy>p:first-child {margin-top:0}
:root body.royal-fidelity-theme.portal-customer [data-royal-customer-icon] svg {width:23px;height:23px;stroke:none;filter:none}
/* Login/get-password retain the same native form and public language links. */
:root body.portal-login.royal-balanced-theme .lbox {background:linear-gradient(145deg,#182332,#121c29 65%,#0f1823);border:1px solid #414951;border-top-color:#ffffff25;border-radius:12px;box-shadow:inset 0 1px #ffffff0c,inset 0 -1px #0005,0 8px 22px #0003}
:root body.portal-login.royal-balanced-theme .lbox button {background:linear-gradient(145deg,#d7bf8e,#c8a96e 58%,#a88951);border-color:#c8a96e;border-top-color:#ead5ad;color:#241c11;border-radius:7px;box-shadow:inset 0 1px #f6e4c43d,0 2px #6b512b,0 5px 10px #0003;font:600 14px/1.4 var(--royal-ui);min-height:46px;text-shadow:none}
:root[data-theme=light] body.portal-login.royal-balanced-theme .lbox {background:linear-gradient(145deg,#fffefa,#f5f1e9 70%,#eee8dc);border-color:#c4bcad;border-top-color:#fff}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-home>.lowbal {color:#795519;border-color:#b6a078;background:#fff3d3}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill {--badge-ink:#243e5b;--badge-top:#f5f8fc;--badge-mid:#dae4ee;--badge-bottom:#c4d1df;--badge-rim:#a0b2c6;--badge-light:#fff;box-shadow:inset 0 1px #fff,inset 0 -1px #566b8124,0 2px #8d9eae45,0 3px 6px #27436015}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.green {--badge-ink:#214c41;--badge-top:#f2fbf6;--badge-mid:#d8ebe2;--badge-bottom:#b9d6c8;--badge-rim:#94b3a3}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.amber {--badge-ink:#604714;--badge-top:#fffaf0;--badge-mid:#eee2c4;--badge-bottom:#decca5;--badge-rim:#bdab80}
:root[data-theme=light] body.royal-fidelity-theme.portal-customer .rc-fidelity-page .pill.red {--badge-ink:#712f44;--badge-top:#fff5f8;--badge-mid:#eedce3;--badge-bottom:#ddc2cd;--badge-rim:#bd9ca9}
@media(min-width:2464px) {:root body.royal-fidelity-theme.portal-customer main.wrap {margin-inline-start:calc(var(--rf-rail) + (100vw - var(--rf-rail) - 2200px)/2)}}
@media(max-width:1320px) and (min-width:901px) {:root body.royal-fidelity-theme.portal-customer .rc-rental-collection {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1120px) {:root body.royal-fidelity-theme.portal-customer .rc-account-workspace {grid-template-columns:minmax(0,1fr)}:root body.royal-fidelity-theme.portal-customer main.wrap {padding-inline:24px}}
@media(max-width:1100px) {:root body.royal-fidelity-theme.portal-customer .rc-hud-grid {grid-template-columns:minmax(0,1fr)}}
@media(max-width:900px) {
 :root body.royal-fidelity-theme.portal-customer .customer-topbar {position:relative;width:100%;height:auto;overflow:visible;border:0;inset:auto}
 :root body.royal-fidelity-theme.portal-customer .customer-topbar .tbin {padding:14px 18px;gap:15px}
 :root body.royal-fidelity-theme.portal-customer .topright {position:relative;inset:auto;padding:8px 12px;gap:8px;min-height:62px;max-width:100%;flex-wrap:wrap}
 :root body.royal-fidelity-theme.portal-customer .topright .who {margin-inline-end:auto;min-width:0;max-width:calc(100% - 54px);overflow-wrap:anywhere}
 :root body.royal-fidelity-theme.portal-customer main.wrap {margin:0!important;max-width:none;padding:20px 18px 30px}
 :root body.royal-fidelity-theme.portal-customer .pills {display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 :root body.royal-fidelity-theme.portal-customer .rc-rental-collection {grid-template-columns:repeat(2,minmax(0,1fr))}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .customer-topbar .tbin {display:block;padding:0}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .customer-topbar .brand {display:none;position:fixed;inset-block-start:0;inset-inline-start:0;z-index:102;width:264px;height:112px;padding:18px 16px;background:var(--rf-surface)}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .pills {display:none;position:fixed;inset-block:112px 0;inset-inline-start:0;z-index:102;width:264px;max-width:86vw;overflow:auto;padding:7px 16px 24px;background:linear-gradient(160deg,var(--rf-surface),var(--rf-canvas));border-inline-end:1px solid var(--rf-line)}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .customer-topbar.is-menu-open :is(.brand,.pills) {display:flex}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .customer-topbar.is-menu-open {z-index:102}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .royal-customer-menu {display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;background:var(--rf-raised);color:var(--rf-ink);border:1px solid var(--rf-control);border-radius:7px;box-shadow:var(--rf-bevel);margin:0;margin-inline-end:auto}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-ready .royal-customer-backdrop:not([hidden]) {display:block;position:fixed;inset:0;z-index:101;border:0;border-radius:0;box-shadow:none;background:#0009;padding:0;margin:0;width:100%;height:100%;min-height:0}
 :root body.royal-fidelity-theme.portal-customer.royal-customer-drawer-open {overflow:hidden}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-bar {padding:22px;gap:18px}
}
@media(max-width:660px) {
 :root body.royal-fidelity-theme.portal-customer .rc-rental-collection {grid-template-columns:minmax(0,1fr)}
 :root body.royal-fidelity-theme.portal-customer .rc-residence {padding:23px}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-main .big {font-size:38px}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-detail {padding:0;border:0}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-actions {flex:1 1 100%;margin:0;align-items:stretch}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-actions .btn {flex:1 1 160px}
 :root body.royal-fidelity-theme.portal-customer .rc-account-summary .hint {flex:1 1 100%;padding:0;margin:0;border:0}
 :root body.royal-fidelity-theme.portal-customer .reminder-entry-row {grid-template-columns:20px minmax(58px,1fr) minmax(82px,1fr);gap:8px}
 :root body.royal-fidelity-theme.portal-customer .reminder-entry-row .reminder-row-action {grid-column:2/-1;justify-self:end}
 :root body.royal-fidelity-theme.portal-customer :is(.card,.paybox,.prev) {padding:18px}
 :root body.royal-fidelity-theme.portal-customer .tx {padding:16px}
}
@media(max-width:400px) {
 :root body.royal-fidelity-theme.portal-customer main.wrap {padding-inline:12px}
 :root body.royal-fidelity-theme.portal-customer .topright .who {display:none}
 :root body.royal-fidelity-theme.portal-customer .rc-balance-bar {padding:18px}
 :root body.royal-fidelity-theme.portal-customer .rc-residence {padding:20px}
 :root body.royal-fidelity-theme.portal-customer .rc-rent {align-items:flex-start;flex-direction:column}
 :root body.royal-fidelity-theme.portal-customer .rc-region {font-size:22px}
}
@media(prefers-reduced-motion:reduce) {:root body.royal-fidelity-theme.portal-customer :is(button,.btn,.pills a) {transition:none!important;transform:none!important}}
@media(forced-colors:active) {:root body.royal-fidelity-theme.portal-customer :is(.card,.paybox,.prev,.rc-residence,.rc-balance-bar,.pill,.btn,button,.pills a) {background:Canvas!important;color:CanvasText!important;border:1px solid ButtonText!important;box-shadow:none!important}}
@media print {:root body.royal-fidelity-theme.portal-customer :is(.customer-topbar,.royal-customer-backdrop,.royal-customer-menu) {display:none!important}:root body.royal-fidelity-theme.portal-customer main.wrap {margin:0!important;max-width:none}:root body.royal-fidelity-theme.portal-customer .rc-rental-collection {grid-template-columns:repeat(2,minmax(0,1fr))}}


/* AutoPay visual hotfix: explicitly anchor both pseudo-elements to the same
   inline-start track. This outranks the older balanced .wrap button.sm rule;
   native button/form behaviour and the existing material colours are retained. */
:root body.royal-fidelity-theme.portal-customer .wrap .rc-actions button.sm:is(.ap-on,.ap-off) {
 padding:0!important;padding-inline-start:56px!important;
}
:root body.royal-fidelity-theme.portal-customer .wrap .rc-actions button.sm:is(.ap-on,.ap-off)::before {
 left:auto;right:auto;inset-inline-start:0;inset-inline-end:auto;
 top:50%;transform:translateY(-50%);width:46px;height:26px;pointer-events:none;
}
:root body.royal-fidelity-theme.portal-customer .wrap .rc-actions button.sm:is(.ap-on,.ap-off)::after {
 content:"";left:auto;right:auto;inset-inline-start:3px;inset-inline-end:auto;
 top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none;
}
:root body.royal-fidelity-theme.portal-customer .wrap .rc-actions button.sm.ap-on::after {
 inset-inline-start:23px;inset-inline-end:auto;
}
