@font-face{font-family:Montserrat;src:url(Montserrat.ttf);font-display:swap}
@font-face{font-family:Montserrat;src:url(Montserrat-Bold.ttf);font-weight:700;font-display:swap}
.rp-portal{--accent:#c505ff;--line:#dedee3;--ink:#171717;--muted:#5c5c5c;--soft:#f7f7f8;font-family:Montserrat,Arial,sans-serif;width:100%;max-width:100%;margin:0;color:var(--ink);background:#fff;min-height:70vh;overflow-x:clip;line-height:1.5}
.rp-portal *{box-sizing:border-box}
.rp-portal,.rp-portal button,.rp-portal input,.rp-portal textarea,.rp-portal select,.rp-portal option,.rp-portal table{font-family:Montserrat,Arial,sans-serif!important}
.rp-portal>header{display:none;align-items:center;justify-content:space-between;gap:12px;padding:0;border:0;background:transparent}
.rp-portal header img{width:160px;max-width:46%;height:auto}
.rp-portal button{font:inherit;border:1px solid #d8d8d8;background:#fff;color:var(--ink);border-radius:10px;min-height:42px;padding:8px 12px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease}
.rp-portal button.primary,.rp-portal nav button.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.rp-portal button:hover,.rp-portal a.portal-review-link:hover{border-color:var(--accent)}
.rp-portal button:focus-visible,.rp-portal a:focus-visible,.rp-portal input:focus-visible,.rp-portal textarea:focus-visible,.rp-portal select:focus-visible{outline:3px solid #090d2d;outline-offset:2px}
.rp-portal button.portal-pay{width:100%;margin-top:12px;min-height:44px;background:#c505ff;color:#fff;border-color:#c505ff}
.rp-portal button.portal-pay:focus-visible{outline:3px solid #090d2d;outline-offset:2px}
.rp-portal main{padding:16px;background:var(--soft)}
.rp-portal nav{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 12px}
.rp-portal nav button{padding:6px 10px;font-size:13px}
.rp-portal h1,.rp-portal h2,.rp-portal h3{line-height:1.25;margin:0;font-weight:700}
.rp-portal h1{font-size:22px}
.rp-portal h2{font-size:16px}
.rp-portal h3{font-size:14px}
.rp-portal p{margin:0}
.rp-portal .portal-pagehead{margin:0 0 12px}
.rp-portal .portal-pagehead p,.rp-portal .portal-note{margin:4px 0 0;color:var(--muted);font-size:13px}
.rp-portal .portal-card,.rp-portal .portal-task{border:1px solid var(--line);border-radius:16px;padding:18px;margin:0 0 12px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.045)}
.rp-portal .portal-auth{width:100%;max-width:980px;margin:0 auto}.rp-portal .portal-auth>header{text-align:center;margin:4px 0 20px}.rp-portal .portal-auth>header p{margin-top:5px;color:var(--muted);font-size:13px}.rp-portal .portal-auth-logo{display:block;width:190px;max-width:70%;height:auto;margin:0 auto 14px}.rp-portal .portal-auth-grid{display:grid;gap:16px}.rp-portal .portal-auth-card{margin:0}.rp-portal .portal-auth-card>h2{font-size:20px}.rp-portal .portal-auth-card button{width:100%;margin-top:4px}
.rp-portal form{margin:8px 0 0;padding:0;border:0;background:transparent}
.rp-portal label{display:block;margin:8px 0;font-size:13px;font-weight:700}
.rp-portal input,.rp-portal textarea,.rp-portal select{display:block;width:100%;max-width:100%;padding:10px 12px;border:1px solid #bdbdc5;border-radius:10px;font:inherit;font-weight:400;margin-top:4px;background:#fff;color:var(--ink)}
.rp-portal input::placeholder,.rp-portal textarea::placeholder{font-family:Montserrat,Arial,sans-serif;color:#767676}
.rp-portal .portal-grid,.rp-portal .portal-recent-grid{display:grid;gap:12px;align-items:start}
.rp-portal .portal-dashboard{display:grid;gap:12px}.rp-portal .portal-dashboard-grid{display:grid;gap:12px;align-items:start}.rp-portal .portal-dashboard-main,.rp-portal .portal-dashboard-aside{display:grid;gap:12px;min-width:0}.rp-portal .portal-dashboard-main>.portal-card,.rp-portal .portal-dashboard-aside>.portal-card{margin:0}.rp-portal .portal-summary-card{display:flex;flex-direction:column;gap:6px}.rp-portal .portal-summary-card>button{align-self:flex-start;margin-top:4px}.rp-portal .portal-task-section{display:grid;gap:8px}.rp-portal .portal-sectionhead{display:flex;align-items:center;justify-content:space-between;gap:10px}.rp-portal .portal-sectionhead>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:var(--accent);color:#fff;font-size:12px;font-weight:700}.rp-portal .portal-task-grid,.rp-portal .portal-content-grid{display:grid;gap:12px;align-items:start}.rp-portal .portal-task-grid>.portal-task,.rp-portal .portal-content-grid>.portal-card,.rp-portal .portal-recent-grid>.portal-card{margin:0}
.rp-portal .portal-card>header,.rp-portal .portal-order>header,.rp-portal .portal-task>header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin:0 0 10px;padding:0;border:0}
.rp-portal .portal-kicker{margin:0 0 2px;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.rp-portal .portal-status{display:inline-block;background:#f6e9ff;color:#6d12b8;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700;white-space:nowrap}
.rp-portal dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 12px;margin:0;font-size:13px}
.rp-portal dt{font-weight:700}
.rp-portal dd{margin:0}
.rp-portal .portal-money{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:12px;padding:10px 12px;background:#faf5ff;border-radius:12px}
.rp-portal .portal-money p{font-size:13px}
.rp-portal .portal-money strong{font-size:18px}
.rp-portal .portal-k{font-weight:700;margin-right:6px}
.rp-portal .portal-balance{display:flex;gap:6px;align-items:baseline;margin:0 0 8px}
.rp-portal .portal-amount{font-weight:700;font-size:18px}
.rp-portal .portal-lines,.rp-portal .portal-docs{list-style:none;margin:10px 0 0;padding:0}
.rp-portal .portal-lines li{display:grid;grid-template-columns:2.2em minmax(0,1fr) auto;gap:2px 10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:14px}.rp-portal .portal-lines li.portal-balance-row{grid-template-columns:minmax(0,1fr) auto}.rp-portal .portal-featured>button,.rp-portal .portal-recent button{margin-top:10px}
.rp-portal .portal-line-qty{font-weight:700}
.rp-portal .portal-line-price{font-weight:700;white-space:nowrap}
.rp-portal .portal-lines small,.rp-portal .portal-docs .portal-note{grid-column:1/-1;color:var(--muted);font-size:12px}
.rp-portal .portal-docs li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.rp-portal .planned{margin-top:10px;border-left:4px solid var(--accent);padding-left:10px}
.rp-portal .planned p{color:var(--muted);font-size:13px}
.rp-portal .portal-task{border:2px solid var(--accent);background:#fff}
.rp-portal .portal-task p{margin:4px 0;font-size:14px}
.rp-portal .portal-task dl{margin:0 0 8px}.rp-portal .portal-task form{margin-top:8px}.rp-portal .portal-task[data-overdue="true"]{border-color:#b42318}.rp-portal .portal-overdue{color:#b42318;font-weight:700}
.rp-portal .portal-task-status{font-weight:700}
.rp-portal .portal-task textarea{min-height:72px}
.rp-portal .portal-review-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch}.rp-portal .portal-review-card{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0}.rp-portal .portal-review-card h2{font-size:20px}.rp-portal .portal-review-card>p:not(.portal-kicker){color:var(--muted);flex:1}.rp-portal a.portal-review-link,.rp-portal button.portal-review-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:10px 14px;border:2px solid var(--accent);border-radius:12px;background:var(--accent);color:#fff;font-family:Montserrat,Arial,sans-serif;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}.rp-portal .portal-review-help{margin-top:14px}.rp-portal .portal-review-help p{margin:6px 0 12px;color:var(--muted)}.rp-portal .portal-share{margin-top:14px}.rp-portal .portal-share .portal-pagehead{margin-bottom:12px}.rp-portal .portal-refer-link{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.rp-portal .portal-refer-link input{flex:1;min-width:180px}.rp-portal .portal-quickshare{display:flex;flex-wrap:wrap;gap:6px}.rp-portal .portal-quickshare button{min-height:40px;padding:8px 12px;border:1px solid #e7c8f8;border-radius:10px;background:#fff;color:#7100bd;font-family:Montserrat,Arial,sans-serif;font-weight:700;cursor:pointer}
@media(min-width:960px){.rp-portal .portal-review-help button.portal-review-link{width:30%;max-width:30%}}
.rp-portal .portal-transfer{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.rp-portal .portal-transfer>header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin:0 0 8px}
.rp-portal .muted{color:var(--muted)}
.rp-portal .error{color:#a00}
#rp-customer-portal.rp-portal p,#rp-customer-portal.rp-portal li,#rp-customer-portal.rp-portal h1,#rp-customer-portal.rp-portal h2,#rp-customer-portal.rp-portal h3,#rp-customer-portal.rp-portal label{white-space:normal;word-spacing:normal}
#rp-customer-portal.rp-portal .portal-k{display:inline}
#rp-customer-portal.rp-portal .portal-task{display:block}
@media(min-width:720px){.rp-portal .portal-auth-grid,.rp-portal .portal-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-portal .portal-register-card{order:-1}.rp-portal .portal-task-grid,.rp-portal .portal-content-grid,.rp-portal .portal-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-portal main{padding:18px}}
@media(min-width:960px){.rp-portal .portal-dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(280px,.8fr)}.rp-portal .portal-orders-grid,.rp-portal .portal-payments-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-portal .portal-quotes-grid,.rp-portal .portal-recent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rp-portal .portal-payments-grid,.rp-portal .portal-orders-grid{grid-template-columns:minmax(0,1fr)}
.rp-portal .portal-pay-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;margin-top:12px}
.rp-portal .portal-pay-card{margin:0;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;min-width:0}
.rp-portal .portal-pay-card>h3{margin:0 0 8px}
.rp-portal .portal-pay-card form{display:flex;flex-direction:column;gap:8px;margin:0}
.rp-portal .portal-pay-methods{margin:0!important;padding:0!important;border:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;min-width:0;font-family:Montserrat,sans-serif!important}
.rp-portal .portal-pay-methods legend{margin:0 0 4px!important;padding:0!important;font-family:Montserrat,sans-serif!important;font-weight:700}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto!important;align-items:center!important;column-gap:12px!important;width:100%!important;height:52px!important;min-height:52px!important;max-height:52px!important;margin:0!important;padding:0 16px!important;box-sizing:border-box!important;background:#fff!important;border:2px solid #b8b8b8!important;border-radius:10px!important;color:#161616!important;font-family:Montserrat,sans-serif!important;font-weight:700!important;line-height:1.2!important;cursor:pointer!important}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method:has(input:checked){border-color:#c505ff!important}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method>input[type=radio]{appearance:none!important;-webkit-appearance:none!important;display:grid!important;place-content:center!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;border:2px solid #777!important;border-radius:50%!important;background:#fff!important;box-shadow:none!important;position:static!important;transform:none!important}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method>input[type=radio]::before{content:'';width:8px;height:8px;border-radius:50%;background:#c505ff;transform:scale(0)}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method>input[type=radio]:checked{border-color:#c505ff!important}
#rp-customer-portal.rp-portal .portal-pay-methods>.portal-pay-method>input[type=radio]:checked::before{transform:scale(1)}
#rp-customer-portal.rp-portal .portal-pay-card-icon{font-size:20px;line-height:1}
#rp-customer-portal.rp-portal .portal-pay-submit{width:100%!important;justify-content:center!important;font-family:Montserrat,sans-serif!important}
.rp-portal .portal-transfer-report{margin-top:8px}
.rp-portal .portal-transfer-report summary{cursor:pointer;font-weight:700}
@media(min-width:720px){.rp-portal .portal-pay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rp-portal .portal-pay-screen{align-items:stretch;gap:16px}
.rp-portal .portal-pay-page{display:grid;gap:14px}
.rp-portal .portal-pay-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.rp-portal .portal-pay-back,.rp-portal .portal-pay-crumb button{border:0;background:transparent;padding:0;font-weight:600}
.rp-portal .portal-pay-back{display:inline-flex;margin:0 0 8px;color:#c505ff;font-size:14px}
.rp-portal .portal-pay-title{font-size:28px;letter-spacing:-.02em}
.rp-portal .portal-pay-crumb{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0;color:#8a8a8a;font-size:13px}
.rp-portal .portal-pay-crumb button{color:#8a8a8a;font-size:13px}
.rp-portal .portal-order-details,.rp-portal .portal-payment-summary{background:#fff;border-top:0;padding:18px}
.rp-portal .portal-pay-screen>.portal-pay-card{border-radius:18px;box-shadow:0 8px 24px rgba(20,16,40,.04)}
.rp-portal .portal-pay-orderhead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 14px}
.rp-portal .portal-pay-orderhead h3,.rp-portal .portal-payment-summary>h3,.rp-portal .portal-method-stack>h3{font-size:18px}
.rp-portal .portal-pay-facts{grid-template-columns:7.5rem minmax(0,1fr);column-gap:18px;margin-bottom:8px}
.rp-portal .portal-pay-facts dt{color:#8a8a8a;font-weight:500}
.rp-portal .portal-pay-facts dd{font-weight:600}
.rp-portal .portal-pay-lines{list-style:none;margin:12px 0 0;padding:0}
.rp-portal .portal-pay-lines li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:start;padding:12px 0;border-top:1px solid #eee}
.rp-portal .portal-pay-lines li:has(img){grid-template-columns:54px minmax(0,1fr) auto}
.rp-portal .portal-pay-lines img{width:54px;height:54px;object-fit:cover;border-radius:8px}
.rp-portal .portal-pay-lines li div{display:flex;flex-direction:column;gap:2px;min-width:0}
.rp-portal .portal-pay-lines li span,.rp-portal .portal-pay-lines li small{color:#8a8a8a;font-size:12px;font-weight:500}
.rp-portal .portal-pay-lines li b{font-size:14px}
.rp-portal .portal-pay-totals p,.rp-portal .portal-pay-paid{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:14px}
.rp-portal .portal-pay-totals p:last-child{font-weight:700}
.rp-portal .portal-pay-outstanding{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:12px 14px;border-radius:12px;background:#f6e5ff;font-weight:700}
.rp-portal .portal-pay-outstanding strong{color:#c505ff;font-size:20px}
.rp-portal .portal-pay-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:12px 0}
.rp-portal button.portal-amount-card,.rp-portal .portal-amount-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:168px;margin:0;padding:14px;border:1.5px solid #ececec;border-radius:16px;background:#fff;color:#161616;font-family:Montserrat,sans-serif;text-align:left;box-shadow:none}
.rp-portal button.portal-amount-card.active,.rp-portal .portal-amount-card.active{background:#c505ff;border-color:#c505ff;color:#fff}
.rp-portal .portal-amount-card b{font-size:26px;line-height:1.1;margin:6px 0}
.rp-portal .portal-amount-card small{font-size:12px;font-weight:500;color:#6b6b6b}
.rp-portal .portal-amount-card.active small{color:rgba(255,255,255,.92)}
.rp-portal .portal-amount-mark{width:22px;height:22px;margin-bottom:8px;border:2px solid #d0d0d0;border-radius:50%;display:grid;place-items:center}
.rp-portal .portal-amount-card.active .portal-amount-mark{border-color:#fff;background:#fff}
.rp-portal .portal-amount-card.active .portal-amount-mark::after{content:'';width:10px;height:6px;border-left:2px solid #c505ff;border-bottom:2px solid #c505ff;transform:rotate(-45deg) translateY(-1px)}
.rp-portal .portal-amount-card label{display:flex;align-items:center;gap:6px;width:100%;margin:6px 0;font-weight:700}
.rp-portal .portal-amount-card input{flex:1;width:auto;margin:0;padding:8px 10px;color:#161616;background:#fff}
.rp-portal .portal-pay-hint{display:flex;gap:10px;align-items:flex-start;margin:4px 0 16px;padding:12px 14px;border-radius:12px;background:#f8e9ff;color:#7a18b5;font-size:13px;line-height:1.45}
.rp-portal .portal-pay-hint>span:first-child{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#c505ff;color:#fff;font-size:12px;font-weight:700;flex:0 0 auto}
.rp-portal .portal-method-stack{display:flex;flex-direction:column;gap:8px}
.rp-portal .portal-pay-card form.portal-pay-form{display:contents}
.rp-portal .portal-method-stack>h3{order:1}
.rp-portal .portal-method-stack .portal-pay-methods{order:2}
.rp-portal .portal-method-stack [data-bacs-panel]{order:3}
.rp-portal .portal-method-stack .portal-pay-submit{order:4}
.rp-portal .portal-method-stack .portal-pay-secure{order:5}
.rp-portal .portal-pay-method-copy{display:flex;flex-direction:row;align-items:center;gap:10px;min-width:0}
.rp-portal .portal-pay-method-copy>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.rp-portal .portal-pay-method-copy strong{font-size:14px}
.rp-portal .portal-pay-method-copy small{color:#6b6b6b;font-size:12px;font-weight:500}
.rp-portal .portal-pay-glyph{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center}
.rp-portal .portal-pay-glyph svg{width:22px;height:22px;fill:none;stroke:#222;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.rp-portal .portal-pay-glyph-paypal{border-radius:50%;background:#003087;color:#fff;font-size:14px;font-weight:800}
.rp-portal .portal-pay-brands{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:flex-end}
.rp-portal .portal-pay-brands span{font-size:10px;font-weight:800;letter-spacing:.02em;color:#1a1f71;border:0;border-radius:3px;padding:0;background:transparent}
.rp-portal .brand-visa{font-style:italic;font-size:13px;letter-spacing:.04em}
.rp-portal .brand-mc{display:inline-block;width:26px;height:16px;background:radial-gradient(circle at 8px 8px,#eb001b 6.5px,transparent 7px),radial-gradient(circle at 17px 8px,#f79e1b 6.5px,transparent 7px)}
.rp-portal .brand-amex{padding:2px 3px;background:#2e77bb;color:#fff;font-size:8px}
.rp-portal .brand-apple,.rp-portal .brand-gpay{color:#222;font-size:11px;font-weight:700}
.rp-portal .brand-gpay b{color:#4285f4;font-weight:800}
.rp-portal .portal-pay-secure{margin:8px 0 0;color:#8a8a8a;font-size:12px;text-align:center}
.rp-portal .portal-pay-lock{width:16px;height:16px;border:2px solid currentColor;border-radius:3px;position:relative}
.rp-portal .portal-pay-lock::before{content:'';position:absolute;left:2px;right:2px;top:-7px;height:7px;border:2px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0}
.rp-portal .portal-pay-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rp-portal .portal-pay-screen [data-bacs-panel]{margin:0;padding:12px;border:1px solid #e6e6e6;border-radius:12px;background:#fafafa}
#rp-customer-portal.rp-portal .portal-pay-screen .portal-pay-methods>.portal-pay-method{height:auto!important;min-height:68px!important;max-height:none!important;padding:12px 14px!important;border:1px solid #e6e6e6!important;border-radius:12px!important}
#rp-customer-portal.rp-portal .portal-pay-screen .portal-pay-methods>.portal-pay-method:has(input:checked){border-color:#e6e6e6!important}
#rp-customer-portal.rp-portal .portal-pay-screen .portal-pay-submit{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:54px;border-radius:14px;font-size:16px}
#rp-customer-portal.rp-portal .portal-pay-screen .portal-pay-submit[hidden]{display:none!important}
@media(min-width:720px){.rp-portal .portal-pay-screen.portal-pay-grid{grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr)}.rp-portal .portal-pay-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}
#rpPayModal{width:min(440px,calc(100vw - 32px));margin:auto;padding:0;border:0;border-radius:14px;background:#fff;color:#161616;font-family:Montserrat,sans-serif;box-shadow:0 18px 48px rgba(9,13,45,.28)}
#rpPayModal::backdrop{background:rgba(9,13,45,.45)}
#rpPayModal form{display:grid;gap:12px;margin:0;padding:22px}
#rpPayModal h2{margin:0;font-size:20px}
#rpPayModal p{margin:0;color:#3a3a3a;line-height:1.45}
#rpPayModal button{justify-self:end;min-width:88px;min-height:44px;background:#c505ff;color:#fff;border-color:#c505ff;border-radius:10px}
.rp-pay-spinner{width:42px;height:42px;border-radius:12px;background:#f3e5ff;display:grid;place-items:center}
.rp-pay-spinner span{width:22px;height:22px;border:3px solid #e6ccff;border-top-color:#c505ff;border-radius:50%;animation:rp-pay-spin .8s linear infinite}
@keyframes rp-pay-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.rp-pay-spinner span{animation:none;border-top-color:#c505ff}}
.rp-portal .portal-year{margin:0 0 10px}
.rp-portal .portal-year-toggle,.rp-portal .portal-order-bar{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;text-align:left;border-radius:12px;padding:10px 12px;font-weight:700}
.rp-portal .portal-year-toggle{justify-content:space-between;background:#c505ff;color:#fff;border-color:#c505ff}
.rp-portal .portal-order-bar{flex-wrap:wrap;background:#fff}
.rp-portal .portal-order-ref{min-width:7.5rem}
.rp-portal .portal-order-balance{margin-left:auto}
.rp-portal .portal-order-panel{padding:12px 2px 4px}
.rp-portal .portal-year-toggle:focus-visible,.rp-portal .portal-order-bar:focus-visible{outline:3px solid #090d2d;outline-offset:2px}
.rp-portal .portal-loading{display:grid;gap:12px;max-width:420px;margin:28px auto;text-align:center}
.rp-portal .portal-loading-track{height:8px;border-radius:999px;background:#f3e5ff;overflow:hidden}
.rp-portal .portal-loading-track span{display:block;width:38%;height:100%;border-radius:inherit;background:#c505ff;animation:rp-portal-load 1.1s ease-in-out infinite}
@keyframes rp-portal-load{0%{transform:translateX(-130%)}100%{transform:translateX(340%)}}
@media(prefers-reduced-motion:reduce){.rp-portal .portal-loading-track span{animation:none;width:100%}}
@media(max-width:719px){.rp-portal{width:100%;max-width:none;margin:0}.rp-portal h1{font-size:20px}.rp-portal>header{padding:10px 12px}.rp-portal main{padding:10px}.rp-portal nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px}.rp-portal nav button{flex:0 0 auto}.rp-portal .portal-money{grid-template-columns:1fr}.rp-portal .portal-login-card{order:-1}.rp-portal .portal-task textarea,.rp-portal .portal-task button,.rp-portal .portal-featured>button,.rp-portal .portal-recent button,.rp-portal .portal-summary-card>button{width:100%}.rp-portal .portal-docs li{grid-template-columns:1fr}.rp-portal .portal-card,.rp-portal .portal-task{padding:12px;border-radius:13px}.rp-portal dl{grid-template-columns:1fr;gap:2px}.rp-portal dd{margin-bottom:6px}}
.portal-order-files{margin-top:20px;padding-top:16px;border-top:1px solid #ddd}.portal-proof{padding:14px;border:1px solid #ddd;border-radius:12px;margin-top:10px}.portal-proof form{display:grid;gap:10px}.portal-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.portal-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.rp-portal .portal-quote-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.rp-portal .portal-proof-options{display:grid;gap:8px}.rp-portal .portal-proof-choice{display:block}.rp-portal label.portal-proof-option{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.rp-portal .portal-proof-option input{display:block;width:18px;height:18px;margin:0;padding:0}.rp-portal .portal-proof-option span{display:block;font-weight:700}.rp-portal .portal-proof-conditional{margin:7px 0 2px 28px}.rp-portal .portal-proof-acknowledgement{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:8px;margin:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:#faf5ff;font-weight:400;cursor:pointer}.rp-portal .portal-proof-acknowledgement input{display:block;width:18px;height:18px;margin:1px 0 0;padding:0}.rp-portal .portal-proof-acknowledgement span{font-weight:400;line-height:1.45}.rp-portal .portal-proof-instructions{margin:0}.rp-portal .portal-field-error{margin:5px 0 0;color:#a00;font-size:12px;font-weight:700}.rp-portal [aria-invalid="true"]{border-color:#a00;outline:2px solid rgba(170,0,0,.12)}.rp-portal [hidden]{display:none!important}
#rpErrorDialog{width:min(440px,calc(100vw - 32px));max-height:min(72vh,520px);margin:auto;padding:0;border:0;border-radius:14px;background:#fff;color:#161616;font-family:Montserrat,sans-serif;box-shadow:0 18px 48px rgba(9,13,45,.28)}
#rpErrorDialog::backdrop{background:rgba(9,13,45,.45)}
#rpErrorDialog form{display:grid;gap:10px;margin:0;padding:18px 18px 16px}
#rpErrorDialog .rp-error-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#c505ff;color:#fff}
#rpErrorDialog .rp-error-mark svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#rpErrorDialog h2{margin:0;font-size:18px;line-height:1.3;color:#c505ff}
#rpErrorDialog p{margin:0;font-size:14px;line-height:1.45}
#rpErrorDialog #rpErrorDialogId{color:#5c5c5c;font-size:12px}
#rpErrorDialog button{justify-self:end;min-width:88px;height:40px;margin-top:4px;padding:0 16px;border:0;border-radius:8px;background:#c505ff;color:#fff;font-family:Montserrat,sans-serif;font-weight:700;cursor:pointer}
#rpErrorDialog button:focus-visible{outline:2px solid #090d2d;outline-offset:2px}
.rp-portal.portal-app{background:#f4f4f6;min-height:100vh}.rp-portal.portal-app>header{position:relative;z-index:4;width:auto;background:#fff;border-bottom:4px solid #c505ff;padding:12px 16px}.rp-portal.portal-app>header [data-portal-logout]{display:none}.rp-portal.portal-app>header img{width:148px;max-width:100%;height:auto}.rp-portal.portal-app .portal-menu{display:none}.rp-portal.portal-app main{position:relative;min-height:70vh}.rp-portal.portal-app .portal-frame{display:block}.rp-portal.portal-app .portal-sidebar{position:absolute;top:0;bottom:0;left:0;z-index:1;width:248px;overflow:auto;background:#111;color:#fff;padding:16px 14px 20px}.rp-portal.portal-app .portal-sidebar nav{display:flex;flex-direction:column;gap:4px;padding:0}.rp-portal.portal-app .portal-sidebar nav button{display:flex;align-items:center;justify-content:space-between;width:100%;margin:0;padding:11px 12px;border:0;border-radius:12px;background:transparent;color:#fff;font-weight:700;text-align:left}.rp-portal.portal-app .portal-sidebar nav button.active,.rp-portal.portal-app .portal-sidebar nav button:hover{background:#c505ff;color:#fff}.rp-portal.portal-app .portal-unread{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:24px;height:24px;min-width:24px;margin-left:auto;padding:0;border:0;border-radius:50%;background:#c505ff;color:#fff;font-family:Montserrat,sans-serif;font-weight:600;font-size:12px;line-height:1;text-align:center;box-shadow:none;flex:0 0 24px}.rp-portal.portal-app .portal-stage{margin-left:248px;padding:28px;min-width:0}.rp-portal .portal-message-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.rp-portal .portal-message-head .primary{min-height:44px;padding:0 16px;border-radius:12px;background:#c505ff;color:#fff;font-weight:700}.rp-portal .portal-message-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:16px}.rp-portal .portal-convo-list,.rp-portal .portal-thread{margin:0;min-height:420px}.rp-portal .portal-convo-filters{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.rp-portal .portal-convo-filters button{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.rp-portal .portal-convo-filters button.active{background:#c505ff;color:#fff;border-color:#c505ff}.rp-portal .portal-convo{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;width:100%;margin:0 0 6px;padding:10px;border:0;border-radius:12px;background:transparent;color:#111;text-align:left}.rp-portal .portal-convo>span{display:grid;min-width:0}.rp-portal .portal-convo strong,.rp-portal .portal-convo small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-portal .portal-convo.active{background:#f8e9ff}.rp-portal .portal-convo small,.rp-portal .portal-convo time{color:#666;font-size:12px;font-weight:400}.rp-portal .portal-unread-dot{width:8px;height:8px;border-radius:50%;background:#c505ff}.rp-portal .portal-thread-log{display:grid;align-content:start;gap:10px;max-height:460px;margin:12px 0;overflow:auto}.rp-portal .portal-day{justify-self:center;color:#777;font-size:12px}.rp-portal .portal-bubble{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px}.rp-portal .portal-bubble-body{padding:10px 12px;border:1px solid #ececec;border-radius:14px;background:#fff}.rp-portal .portal-bubble[data-direction="staff"] .portal-bubble-body{background:#f8e9ff;border-color:#f0d4ff}.rp-portal .portal-bubble header{display:flex;justify-content:space-between;gap:8px;margin:0 0 4px}.rp-portal .portal-bubble p{white-space:pre-wrap}.rp-portal .portal-avatar{display:grid;width:36px;height:36px;place-items:center;overflow:hidden;border-radius:50%;background:#111;color:#fff;font-size:11px;font-weight:700}.rp-portal .portal-avatar img{width:100%;height:100%;object-fit:cover}.rp-portal .portal-message-help{margin-top:16px;padding:14px 16px;border-radius:14px;background:#f8e9ff}.rp-portal .portal-thread{position:relative}.rp-portal .portal-thread-jump{position:absolute;left:50%;bottom:92px;transform:translateX(-50%);z-index:2;border:0;border-radius:999px;background:#c505ff;color:#fff;font-weight:700}.rp-portal .portal-new-message{position:fixed;top:0;right:0;z-index:20;width:min(380px,100%);height:100%;max-height:100vh;overflow-y:auto;overscroll-behavior:contain;padding:18px 18px 28px;background:#fff;box-shadow:-8px 0 24px rgba(0,0,0,.12)}.rp-portal .portal-new-message>header{display:flex;justify-content:space-between;align-items:center;margin:0 0 8px}.rp-portal .portal-new-message>header button{width:36px;height:36px;padding:0;border:0;border-radius:8px;background:#f4f4f6;color:#111;font-size:22px;line-height:1}.rp-portal .portal-new-message>img{width:150px;height:auto;margin:8px 0}.rp-portal .portal-topic{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:center;margin:8px 0;padding:10px;border:1px solid #e6e6e6;border-radius:12px}.rp-portal .portal-topic:has(input:checked){border-color:#c505ff}.rp-portal .portal-topic small{display:block;color:#666;font-weight:400}.rp-portal .portal-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rp-portal .portal-thread form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.rp-portal .portal-thread textarea{min-height:72px}.rp-portal .portal-thread form .primary{width:auto;min-width:148px}.rp-portal .portal-new-message form{display:grid;gap:8px}.rp-portal .portal-bubble[data-direction="customer"] .portal-avatar{background:#111}.rp-portal .portal-bubble[data-direction="staff"] .portal-avatar{background:#c505ff}@media(max-width:1200px){.rp-portal.portal-app>header{display:none!important;height:0;margin:0;padding:0;border:0}.rp-portal.portal-app .portal-menu{display:inline-flex;align-items:center;justify-content:center;gap:10px;position:sticky;top:calc(var(--rp-portal-top-offset,0px) + 8px);z-index:8;min-width:112px;min-height:44px;margin:8px 0 12px 16px;padding:0 16px;border:0;border-radius:12px;background:#c505ff;color:#fff;font-weight:700}.rp-portal.portal-app .portal-nav-backdrop{display:none}.rp-portal.portal-app.portal-nav-open .portal-nav-backdrop{display:block;position:fixed;inset:0;z-index:5;background:rgba(17,17,17,.45);border:0;padding:0}.rp-portal.portal-app .portal-sidebar{position:static;width:auto;height:auto;padding:0;background:transparent;overflow:visible}.rp-portal.portal-app .portal-sidebar nav{display:none}.rp-portal.portal-app.portal-nav-open .portal-sidebar nav{display:flex;position:fixed;z-index:6;top:var(--rp-portal-top-offset,0px);left:0;bottom:0;width:min(280px,86vw);overflow:auto;background:#111;padding:8px 10px;gap:2px}.rp-portal .portal-message-head{flex-direction:column;align-items:stretch}.rp-portal .portal-message-head .primary{align-self:flex-start}.rp-portal .portal-message-layout,.rp-portal .portal-thread form{grid-template-columns:1fr}.rp-portal .portal-stage,.rp-portal.portal-app .portal-stage{margin-left:0;padding:16px}}
.rp-portal>header,.rp-portal.portal-app>header{display:none!important;height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}
.rp-portal.portal-app .portal-nav-backdrop{display:none}
.rp-portal .portal-sidebar-brand{display:flex;align-items:center;justify-content:center;margin:0 0 14px;padding:10px;border-radius:12px;background:#fff}.rp-portal .portal-sidebar-brand img{display:block;width:170px;max-width:100%;height:auto}
.rp-portal .portal-menu-bars{display:inline-block;width:18px;height:2px;background:#fff;box-shadow:0 -6px 0 #fff,0 6px 0 #fff}
.rp-portal .portal-attach{display:inline-flex;align-items:center;min-height:40px;margin:0;padding:0 12px;border:1px solid #c505ff;border-radius:12px;color:#111;font-weight:700;cursor:pointer}
.rp-portal .portal-attach input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.rp-portal .portal-compose-images,.rp-portal .portal-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.rp-portal .portal-compose-images figure,.rp-portal .portal-thumb{position:relative;width:72px;height:72px;margin:0;padding:0;border:0;border-radius:10px;overflow:hidden;background:#111}
.rp-portal .portal-compose-images img,.rp-portal .portal-thumb img{width:100%;height:100%;object-fit:cover}
.rp-portal .portal-compose-images button{position:absolute;right:4px;bottom:4px;min-height:24px;margin:0;padding:0 6px;border:0;border-radius:8px;background:#111;color:#fff;font-size:11px}
.portal-image-dialog{width:min(960px,96vw);max-height:96vh;padding:12px;border:0;border-radius:16px}
.portal-image-dialog img{display:block;max-width:100%;max-height:80vh;margin:8px auto}
.portal-image-dialog button{min-height:40px}
html.rp-portal-drawer-open,body.rp-portal-drawer-open{overflow:hidden!important;overscroll-behavior:none}
.rp-portal .portal-new-message{box-sizing:border-box;display:flex;flex-direction:column;top:var(--rp-portal-drawer-top,0px);height:calc(100vh - var(--rp-portal-drawer-top,0px));height:calc(100dvh - var(--rp-portal-drawer-top,0px));max-height:calc(100vh - var(--rp-portal-drawer-top,0px));max-height:calc(100dvh - var(--rp-portal-drawer-top,0px));overflow:hidden;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) 18px}
.rp-portal .portal-new-message>header{flex:0 0 auto}
.rp-portal .portal-new-message>img{display:none}
.rp-portal .portal-new-message>p{flex:0 0 auto}
.rp-portal .portal-new-message form{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 2px max(16px,env(safe-area-inset-bottom)) 0}
.rp-portal .portal-new-message form>button.primary{position:sticky;bottom:0;z-index:1;min-height:46px;margin-top:4px;box-shadow:0 -8px 12px #fff;background:#c505ff}
@media(max-width:719px){.rp-portal{width:100%;max-width:100%;margin:0}.rp-portal main{padding:12px}.rp-portal .portal-card,.rp-portal .portal-task{padding:15px}.rp-portal .portal-auth-logo{width:160px}.rp-portal .portal-review-card h2{font-size:18px}.rp-portal a.portal-review-link{min-height:48px}}

/* 3.00 Portal UI refinement: presentation only. */
.rp-portal .primary,.rp-portal button.primary,.rp-portal a.primary{min-height:46px;padding:0 18px;border:1px solid #c505ff;border-radius:12px;background:#c505ff;color:#fff;font-family:Montserrat,Arial,sans-serif;font-weight:700;line-height:1.2}
.rp-portal .primary:hover,.rp-portal button.primary:hover,.rp-portal a.primary:hover{background:#a900dc;border-color:#a900dc;color:#fff}.rp-portal .primary:focus-visible{outline:3px solid #090d2d;outline-offset:2px}.rp-portal .primary:disabled{cursor:not-allowed;opacity:.55}
.rp-portal .portal-summary-balances{background:#faefff;border-color:#ebcbfa}
.rp-portal .portal-order-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px;border:1px solid #ebcbfa;border-radius:14px;background:#fff}
.rp-portal .portal-order-facts section{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding:15px 18px}.rp-portal .portal-order-facts section+section{border-left:1px solid #ebcbfa}
.rp-portal .portal-order-facts svg{width:28px;height:28px;fill:none;stroke:#c505ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.rp-portal .portal-order-facts span{min-width:0;overflow-wrap:anywhere}.rp-portal .portal-order-facts b{display:block;margin-bottom:3px;font-size:12px}
.rp-portal .portal-money{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 36px;margin:0 0 18px;padding:16px 22px;border:1px solid #ebcbfa;border-radius:14px;background:#faefff}.rp-portal .portal-money p{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.rp-portal .portal-money p:nth-child(odd){padding-right:18px;border-right:1px solid #ebcbfa}.rp-portal .portal-money b,.rp-portal .portal-money strong{font-size:inherit}.rp-portal .portal-money strong{font-size:20px}
.rp-portal .portal-overdue{color:#d20c2b!important;font-weight:700}
.rp-portal .portal-items{margin-top:16px}.rp-portal .portal-items>h3{margin:0 0 9px}.rp-portal .portal-lines{display:grid;gap:10px;margin:0}.rp-portal .portal-lines li.portal-line-card{display:block;padding:15px 18px;border:1px solid #ebcbfa;border-radius:14px;background:#fff;container-type:inline-size}
.rp-portal .portal-line-head{display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;gap:10px;align-items:baseline}.rp-portal .portal-line-specs{display:grid;grid-template-columns:1fr;gap:8px 28px;margin:10px 0 0;padding:0}@container (min-width:36rem){.rp-portal .portal-line-specs{grid-template-columns:1fr 1fr}}.rp-portal .portal-line-specs>div{display:grid;grid-template-columns:minmax(8.5rem,42%) minmax(0,1fr);gap:8px;align-items:start}.rp-portal .portal-line-specs dt{font-weight:600;color:#3d4058;overflow-wrap:break-word;word-break:normal}.rp-portal .portal-line-specs dd{margin:0;color:#3d4058;overflow-wrap:break-word;word-break:normal}
.rp-portal .portal-order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.rp-portal .portal-order-action{width:100%;margin:0}.rp-portal .portal-year-count{margin-left:auto;font-weight:500}.rp-portal .portal-year-toggle .portal-chevron{margin-left:2px}
.rp-portal .portal-pay-glyph-paypal{overflow:hidden;background:transparent url('payment-paypal.svg') center/contain no-repeat;color:transparent;font-size:0;text-indent:-999px}
.rp-portal .portal-pay-brands span{display:block;height:20px;padding:0!important;background-color:transparent!important;background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;color:transparent!important;font-size:0!important;text-indent:-999px;overflow:hidden}.rp-portal .portal-pay-brands .brand-visa{width:42px;background-image:url('payment-visa.svg')}.rp-portal .portal-pay-brands .brand-mc{width:32px;background-image:url('payment-mastercard.svg')}.rp-portal .portal-pay-brands .brand-amex{width:32px;background-image:url('payment-amex.svg')}.rp-portal .portal-pay-brands .brand-apple{width:34px;background-image:url('payment-applepay.svg')}.rp-portal .portal-pay-brands .brand-gpay{width:42px;background-image:url('payment-googlepay.svg')}.rp-portal .portal-pay-brands .brand-gpay b{display:none}
@media(min-width:1201px){.rp-portal.portal-app{min-height:0}.rp-portal.portal-app>header{display:none}.rp-portal.portal-app main{padding:0}.rp-portal.portal-app .portal-frame{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:stretch}.rp-portal.portal-app .portal-sidebar{align-self:start;position:sticky;top:var(--rp-portal-top-offset,0px);left:auto;bottom:auto;width:auto;height:calc(100dvh - var(--rp-portal-top-offset,0px));max-height:calc(100dvh - var(--rp-portal-top-offset,0px));box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.rp-portal.portal-app .portal-stage{margin-left:0;min-width:0}}
@media(max-width:719px){.rp-portal .portal-order-facts{grid-template-columns:1fr}.rp-portal .portal-order-facts section+section{border-left:0;border-top:1px solid #ebcbfa}.rp-portal .portal-money{grid-template-columns:1fr;padding:14px 16px}.rp-portal .portal-money p:nth-child(odd){padding-right:0;border-right:0}.rp-portal .portal-line-specs{grid-template-columns:1fr;padding-left:0}.rp-portal .portal-line-specs>div{grid-template-columns:minmax(8.5rem,42%) minmax(0,1fr)}.rp-portal .portal-order-actions{grid-template-columns:1fr}.rp-portal .portal-pay-brands{gap:3px}.rp-portal .portal-pay-brands .brand-visa{width:34px}.rp-portal .portal-pay-brands .brand-mc,.rp-portal .portal-pay-brands .brand-amex{width:27px}.rp-portal .portal-pay-brands .brand-apple{width:29px}.rp-portal .portal-pay-brands .brand-gpay{width:36px}}

/* 3.01 final Portal refinement: scoped theme resilience and approved light navigation. */
#rp-customer-portal.rp-portal,#rp-customer-portal.rp-portal *{font-family:Montserrat,Arial,sans-serif!important}
#rp-customer-portal.rp-portal{width:100%;max-width:none;margin-left:0;margin-right:0}
.rp-portal .portal-nav-icon{display:block;width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rp-portal .portal-nav-label{min-width:0;flex:1;text-align:left}
.rp-portal .portal-order-actions .portal-order-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;margin:0;padding:0 18px;border-radius:12px}.rp-portal .portal-order-actions .portal-order-action .portal-nav-icon{display:block;width:20px;height:20px;flex:0 0 20px}
.rp-portal .portal-dashboard button.primary{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:112px;align-self:flex-start}
@media(min-width:1201px){.rp-portal.portal-app .portal-sidebar{border-right:1px solid #ebcbfa;background:#fff;color:#171717;padding:8px 10px}.rp-portal.portal-app .portal-sidebar nav{flex:1 1 auto;min-height:0;gap:2px;padding:0;overflow-y:auto}.rp-portal.portal-app .portal-sidebar nav button{display:flex;justify-content:flex-start;gap:10px;min-height:40px;padding:7px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#171717}.rp-portal.portal-app .portal-sidebar nav button .portal-nav-icon{color:#c505ff}.rp-portal.portal-app .portal-sidebar nav button:hover{border-color:#ebcbfa;background:#fbf4ff;color:#171717}.rp-portal.portal-app .portal-sidebar nav button:focus-visible{outline:3px solid #090d2d;outline-offset:2px}.rp-portal.portal-app .portal-sidebar nav button.active{border-color:#ebcbfa;background:#faefff;color:#c505ff}.rp-portal.portal-app .portal-sidebar nav [data-portal-logout-side]{margin-top:auto;padding-top:8px;border-top-color:#ebcbfa;border-radius:10px}.rp-portal.portal-app .portal-unread{color:#fff}}
@media(max-width:1200px){#rp-customer-portal.rp-portal{width:100%;max-width:none;margin:0}.rp-portal.portal-app.portal-nav-open .portal-sidebar nav{gap:5px;border-right:1px solid #ebcbfa;background:#fff;color:#171717}.rp-portal.portal-app .portal-sidebar nav button{display:flex;justify-content:flex-start;gap:10px;min-height:40px;padding:7px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#171717}.rp-portal.portal-app .portal-sidebar nav button .portal-nav-icon{color:#c505ff}.rp-portal.portal-app .portal-sidebar nav button:hover{border-color:#ebcbfa;background:#fbf4ff;color:#171717}.rp-portal.portal-app .portal-sidebar nav button.active{border-color:#ebcbfa;background:#faefff;color:#c505ff}.rp-portal.portal-app .portal-sidebar nav [data-portal-logout-side]{margin-top:auto;border-top-color:#ebcbfa}.rp-portal.portal-app .portal-unread{color:#fff}}
.rp-portal .portal-rewards-progress{display:grid;gap:14px}.rp-portal .portal-rewards-progress .portal-money{margin:0}.rp-portal .portal-rewards-track{height:14px;border-radius:999px;background:#f3e6fb;overflow:hidden}.rp-portal .portal-rewards-track>span{display:block;height:100%;min-width:0;background:#c505ff;border-radius:999px}.rp-portal .portal-rewards-marks{display:flex;justify-content:space-between;gap:12px;color:#000;font-size:13px;font-weight:700}.rp-portal .portal-rewards-convert{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}.rp-portal .portal-rewards-convert .primary{width:100%}.rp-portal .portal-rewards-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.rp-portal .portal-rewards-pair>.portal-card{margin:0;min-width:0}.rp-portal .portal-rewards-pair .portal-money{margin:0 0 12px}.rp-portal .portal-lines li.portal-note{display:block;padding:0;border:0}.rp-portal .portal-lines li.portal-line-card.portal-reward-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.rp-portal .portal-reward-row small{display:block;color:var(--muted);font-size:12px}.rp-portal .portal-rewards-criteria{margin-top:12px;padding:16px 18px;border:1px solid #ebcbfa;border-radius:14px;background:#faefff}.rp-portal .portal-rewards-criteria h2{margin:0 0 10px;font-size:18px}.rp-portal .portal-rewards-criteria ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 28px;margin:0;padding:0;list-style:none}.rp-portal .portal-rewards-criteria li{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.rp-portal .portal-rewards-criteria strong,.rp-portal .portal-rewards-criteria span{white-space:nowrap}.rp-portal .portal-rewards-criteria span{color:#3d4058;font-size:13px}
@media(min-width:960px){.rp-portal .portal-rewards-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:719px){.rp-portal .portal-lines li.portal-line-card.portal-reward-row{grid-template-columns:minmax(0,1fr) auto}.rp-portal .portal-reward-row .portal-status{grid-column:1/-1;justify-self:start}.rp-portal .portal-rewards-criteria ul{grid-template-columns:minmax(0,1fr)}}
