:root{--points-ink:#0b3039;--points-muted:#607579;--points-teal:#087667;--points-deep:#074c50;--points-aqua:#e7f3f1;--points-line:#d9e4e2;--points-bg:#f3f7f6;--points-danger:#a34141}
body.points-login,body.points-dashboard{margin:0;background:var(--points-bg);color:var(--points-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.points-login *,.points-dashboard *{box-sizing:border-box}.points-login [hidden],.points-dashboard [hidden]{display:none!important}.points-login button,.points-dashboard button,.points-login input{font:inherit}.points-login button,.points-dashboard button{cursor:pointer}.points-login button:disabled,.points-dashboard button:disabled{opacity:.55;cursor:wait}.points-login button:focus-visible,.points-dashboard button:focus-visible,.points-dashboard a:focus-visible{outline:3px solid #43b5a0;outline-offset:4px}.points-login input:focus-visible{outline:2px solid #168d7d;outline-offset:3px}.points-eyebrow{display:block;margin:0 0 9px;color:var(--points-teal);font-size:10px;font-weight:750;letter-spacing:.17em}.points-muted{color:var(--points-muted);line-height:1.7}.points-primary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px;min-height:50px;background:var(--points-deep);color:#fff;border:0;border-radius:8px;font-size:14px!important;font-weight:650!important}.points-primary:hover{background:#08655d}.points-secondary{padding:10px 17px;background:#fff;border:1px solid var(--points-line);border-radius:999px;color:var(--points-ink);font-size:12px!important;font-weight:650!important}.points-secondary:hover{background:var(--points-aqua)}.points-message{font-size:13px;line-height:1.7;padding:13px 16px;border:1px solid var(--points-line);border-radius:8px;background:#fff;color:var(--points-deep)}.points-message.points-error{color:var(--points-danger);background:#fff9f7;border-color:#ebd1ca}.points-text-button{border:0;background:transparent;color:var(--points-teal);font-size:12px!important;padding:8px 0}
.points-login-layout{display:grid;grid-template-columns:1.06fr 1fr;min-height:100svh}.points-story{display:flex;flex-direction:column;justify-content:space-between;min-height:100svh;padding:48px 55px;color:#fff;background:linear-gradient(180deg,rgba(235,246,243,.16),rgba(4,46,47,.1) 35%,rgba(4,40,43,.92)),url('/brand-assets/assets/nurex-wellness-hero.png') center/cover}.points-logo{width:182px;height:auto;align-self:flex-start}.points-story-copy{margin:auto 0 55px;padding-top:160px;max-width:470px}.points-story .points-eyebrow{color:#d2e8df;letter-spacing:.22em}.points-story h1{font:400 clamp(38px,4.2vw,62px)/1.1 Georgia,serif;letter-spacing:-.035em;margin:22px 0}.points-story-copy>p:last-child{max-width:310px;color:#d7e8e2;font-size:15px;line-height:1.8}.points-story-footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:25px;margin:0;font-size:9px;letter-spacing:.16em;color:#d7e8e2}.points-sign-in{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:65px 50px 35px;min-width:0;background:#fafbf9}.points-login-card{width:100%;max-width:380px;margin:auto 0}.points-kicker{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.17em;color:var(--points-teal);border:1px solid #d5e5de;border-radius:4px;padding:8px 10px}.points-login-card h2{font:400 45px/1.1 Georgia,serif;letter-spacing:-.025em;margin:30px 0 13px}.points-login-card .points-muted{font-size:14px}.points-form{display:flex;flex-direction:column;gap:12px;margin-top:30px}.points-form label{font-size:13px;font-weight:650;margin-top:5px}.points-form input{width:100%;min-width:0;padding:14px 15px;border:1px solid #d2deda;border-radius:8px;background:#fff;color:var(--points-ink)}.points-form .points-primary{margin-top:8px}.points-form small{font-size:12px;color:var(--points-muted)}.points-code-note{font-size:13px;line-height:1.7;margin:0 0 4px;overflow-wrap:anywhere;color:var(--points-muted)}.points-form .points-code-input{font-size:26px;letter-spacing:.3em;text-align:center}.points-code-actions{display:flex;justify-content:space-between;gap:14px}.points-login-help{font-size:12px;color:var(--points-muted);line-height:1.85;margin:27px 0 0}.points-login-footer{width:100%;max-width:380px;display:flex;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.09em;color:var(--points-muted);padding-top:60px;margin:0}.points-login-footer span{letter-spacing:0}
.points-topbar{height:80px;background:#fff;border-bottom:1px solid var(--points-line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(24px,calc((100vw - 1160px)/2));}.points-brand{display:flex;align-items:center;gap:22px;text-decoration:none;color:var(--points-teal)}.points-brand img{width:142px;height:auto}.points-brand span{border-left:1px solid var(--points-line);padding-left:22px;font-size:9px;letter-spacing:.15em;font-weight:750}.points-main{max-width:1160px;margin:auto;padding:52px 24px 30px}.points-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.points-heading h1{font:400 clamp(34px,4.5vw,49px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:12px 0}.points-heading .points-muted{font-size:14px;margin:0}.points-store-switch{display:flex;background:#e6eeeb;padding:5px;border-radius:999px}.points-store-switch button{border:0;padding:11px 21px;border-radius:999px;background:transparent;color:var(--points-muted);font-size:13px;font-weight:700}.points-store-switch button.active{background:#fff;color:var(--points-ink);box-shadow:0 4px 16px #0b30390d}.points-code-banner{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:20px;padding:25px 30px;border-radius:15px;background:var(--points-deep);color:#fff}.points-code-banner .points-eyebrow{color:#b7d6cb;font-size:9px;margin-bottom:9px}.points-code-banner strong{display:block;font-size:25px;font-weight:600;letter-spacing:.08em;overflow-wrap:anywhere}.points-code-banner p{font-size:12px;color:#d2e8df;margin:0;white-space:nowrap}.points-metrics{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:16px;margin:0 0 32px}.points-metric{padding:25px 26px;background:#fff;border:1px solid var(--points-line);border-radius:15px;min-width:0}.points-metric>span{display:block;color:var(--points-muted);font-size:12px;line-height:1.5}.points-metric>strong{display:block;margin:21px 0 12px;font:400 clamp(25px,2.6vw,35px)/1.15 Georgia,serif;overflow-wrap:anywhere}.points-metric>small{display:block;color:var(--points-muted);font-size:10px;line-height:1.5}.points-sales{background:#e9f3ee;border-color:#c8dcd2}.points-sales>strong{color:var(--points-teal)}.points-month-panel{background:#fff;border:1px solid var(--points-line);border-radius:17px;overflow:hidden}.points-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 28px;border-bottom:1px solid var(--points-line)}.points-panel-heading h2{font:400 27px/1.25 Georgia,serif;margin:0}.points-panel-heading>p{font-size:11px;line-height:1.7;color:var(--points-muted);text-align:right;margin:0}.points-table-wrap{overflow:auto}.points-month-table{border-collapse:collapse;width:100%;min-width:460px;text-align:right;font-size:13px}.points-month-table th,.points-month-table td{padding:19px 28px;border-bottom:1px solid #edf1ef;white-space:nowrap}.points-month-table thead th{background:#fafcfb;color:var(--points-muted);font-size:10px;letter-spacing:.06em;font-weight:650;text-transform:uppercase}.points-month-table th:first-child{text-align:left}.points-month-table tbody th{font-weight:550}.points-month-table td:last-child{font-weight:650;color:var(--points-deep)}.points-month-table tbody tr:last-child>*{border-bottom:0}.points-empty{padding:34px 28px;margin:0;font-size:14px;color:var(--points-muted);line-height:1.8}.points-report-notes{max-width:780px;padding:16px 2px 0;color:var(--points-muted);font-size:11px;line-height:1.75}.points-report-notes p{margin:8px 0}.points-footer{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--points-line);margin-top:35px;padding:22px 0 0;color:var(--points-muted);font-size:9px;letter-spacing:.08em}.points-loading{padding:25px;background:#fff;border:1px solid var(--points-line);border-radius:15px;color:var(--points-muted);font-size:14px}
.points-totals-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 18px;margin:27px 2px 13px}.points-totals-heading h2{font-size:14px;font-weight:650;margin:0}.points-totals-heading p{font-size:11px;line-height:1.6;color:var(--points-muted);margin:0}
/* Account directory styling is scoped to the new admin tab. */
#promo-accounts .promo-account-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.35fr);gap:22px}#promo-accounts .promo-account-layout .settings-card{margin-bottom:0}#promo-accounts .promo-account-list{display:grid;gap:0}#promo-accounts .promo-account-row{display:flex;align-items:center;gap:16px;padding:20px 0;border-top:1px solid var(--points-line)}#promo-accounts .promo-account-row:first-child{border-top:0}#promo-accounts .promo-account-person{flex:1;min-width:0;overflow-wrap:anywhere}#promo-accounts .promo-account-person strong,#promo-accounts .promo-account-person small{display:block}#promo-accounts .promo-account-person small{font-size:12px;color:var(--points-muted);margin-top:6px}#promo-accounts .promo-account-code{font-weight:650;color:var(--points-teal)}#promo-accounts .promo-account-disabled{opacity:.6}#promo-accounts .promo-account-status{font-size:10px;font-weight:650;color:var(--points-muted)}#promo-accounts .promo-account-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px}#promo-accounts .promo-account-help{margin:18px 0 0;font-size:12px;line-height:1.7;color:var(--points-muted)}#promo-accounts .promo-account-help a{color:var(--points-teal)}#promo-accounts .promo-account-message{font-size:13px;line-height:1.7;color:var(--points-deep)}#promo-accounts .promo-account-message.is-error{color:var(--points-danger)}#promo-accounts .account-form select{width:100%;min-width:0}#promo-accounts .promo-account-refresh{margin-left:auto}#promo-accounts .promo-account-list-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}#promo-accounts .promo-account-list-heading h2{margin:0}#promo-accounts .promo-account-row button{flex-shrink:0}
@media(max-width:980px){#promo-accounts .promo-account-layout{grid-template-columns:1fr}.points-metrics{grid-template-columns:1fr 1fr}.points-sales{grid-column:1/-1}.points-metric>strong{font-size:32px}.points-story{padding:35px}.points-sign-in{padding:50px 30px}.points-story h1{font-size:44px}}
@media(max-width:650px){.points-login-layout{display:block}.points-story{min-height:0;padding:26px;background-position:center 25%}.points-logo{width:132px}.points-story-copy{padding-top:50px;margin:0}.points-story h1{font-size:32px;margin:14px 0 0}.points-story-copy>p:last-child,.points-story-footer,.points-story .points-eyebrow{display:none}.points-sign-in{padding:36px 26px}.points-login-card h2{font-size:36px;margin-top:24px}.points-login-footer{padding-top:36px}.points-topbar{height:69px;padding:0 20px}.points-brand img{width:115px}.points-brand span{display:none}.points-main{padding:30px 18px 25px}.points-heading{align-items:start;flex-direction:column;gap:22px;margin-bottom:24px}.points-heading h1{font-size:35px;max-width:300px}.points-store-switch{width:100%}.points-store-switch button{flex:1}.points-code-banner{align-items:start;flex-direction:column;padding:22px;gap:18px}.points-code-banner strong{font-size:22px}.points-code-banner p{font-size:11px}.points-metrics{gap:10px;margin-bottom:24px}.points-metric{padding:20px 18px}.points-metric>span{min-height:36px;font-size:11px}.points-metric>strong{font-size:30px;margin-top:12px}.points-metric>small{font-size:9px}.points-sales>span{min-height:0}.points-panel-heading{align-items:start;flex-direction:column;padding:22px;gap:12px}.points-panel-heading h2{font-size:25px}.points-panel-heading>p{text-align:left;font-size:10px}.points-panel-heading>p br{display:none}.points-month-table{font-size:12px;min-width:360px}.points-month-table th,.points-month-table td{padding:17px 14px}.points-month-table thead th{font-size:9px}.points-empty{padding:25px 22px}.points-footer{flex-direction:column;gap:9px;line-height:1.6}.points-report-notes{font-size:10px}#promo-accounts .promo-account-row{gap:12px}#promo-accounts .promo-account-row button{padding:9px 12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.points-login *,.points-dashboard *{scroll-behavior:auto}}
