html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--brand: #22c55e;--brand-hover: #16a34a;--brand-dark: #15803d;--brand-light: #bbf7d0;--brand-subtle: #dcfce7;--accent: #f97316;--accent-hover: #ea580c;--accent-light: #fed7aa;--accent-subtle: #fff7ed;--surface: #f7faf8;--surface-end: #eef5f1;--surface-card: rgba(255, 255, 255, .85);--surface-white: #ffffff;--surface-dark: #0f172a;--surface-dark-hover: #1e293b;--surface-muted: #f8fafc;--surface-slate: #f1f5f9;--text: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--border: #e2e8f0;--border-light: rgba(255, 255, 255, .7);--border-strong: #cbd5e1;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--shadow: 0 12px 50px rgba(15, 23, 42, .08);--shadow-lg: 0 18px 60px rgba(15, 23, 42, .12);--shadow-brand: 0 18px 60px rgba(16, 185, 129, .28);--shadow-dark: 0 18px 60px rgba(15, 23, 42, .22);--radius-xs: 8px;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 28px;--radius-2xl: 32px;--radius-full: 999px;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ease: cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:radial-gradient(circle at top left,rgba(34,197,94,.18),transparent 28%),radial-gradient(circle at top right,rgba(249,115,22,.16),transparent 26%),linear-gradient(180deg,var(--surface) 0%,var(--surface-end) 100%);background-attachment:fixed;color:var(--text);font-family:var(--font);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p,ul{margin:0}ul{padding-left:1.25rem}app-root{display:block;min-height:100vh}.mat-mdc-icon{font-family:Material Symbols Rounded!important}.eyebrow{color:var(--brand-hover);font-size:.7rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;line-height:1.2}.eyebrow--accent{color:var(--accent)}.muted-copy,.state-card__message,.summary-card__caption,.public-panel__caption,.field__hint{color:var(--text-secondary);font-size:.9rem}.page-header h2,.section-heading h2,.hero-copy h1,.state-card h2{font-weight:800;letter-spacing:-.03em;line-height:1.7}.page-header h2,.section-heading h2{font-size:clamp(1.4rem,2.5vw,1.8rem)}.page,.page-shell{display:grid;gap:1.5rem}.page-header,.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1.5rem}.summary-grid,.content-grid{display:grid;gap:1rem}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.button,.pill,.link-button{align-items:center;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;font-weight:600;font-size:.9rem;justify-content:center;gap:.5rem;min-height:2.75rem;padding:.7rem 1.25rem;transition:transform .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease)}.button:hover,.pill:hover{transform:translateY(-1px)}.button--primary{background:var(--surface-dark);color:var(--text-inverse);box-shadow:0 4px 14px #0f172a33}.button--primary:hover{background:var(--surface-dark-hover);box-shadow:0 6px 20px #0f172a40}.button--secondary{background:var(--surface-card);border-color:var(--border-subtle);color:var(--text-primary)}.button--secondary:hover{background:var(--surface-muted)}.button--brand{background:var(--brand);color:var(--text-inverse);box-shadow:0 4px 14px #22c55e4d}.button--brand:hover{background:var(--brand-hover)}.button--ghost,.pill{background:var(--surface-white);border-color:var(--border);color:var(--text)}.button--ghost:hover,.pill:hover{background:var(--surface-white);box-shadow:var(--shadow-sm)}.button--sm{min-height:2.25rem;padding:.5rem .9rem;font-size:.82rem}.button:disabled{cursor:not-allowed;opacity:.5;transform:none}.pill--active{background:var(--surface-dark);color:var(--text-inverse);border-color:transparent}.link-button{padding:0;min-height:auto;border:0;background:transparent;color:var(--brand-dark);font-weight:600}.link-button:hover{color:var(--brand);transform:none}.card,.summary-card,.state-card,.campaign-card{background:var(--surface-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.card,.campaign-card,.state-card{padding:1.5rem}.summary-card{padding:1.25rem}.card-stack,.list-stack,.faq-stack,.consent-stack{display:grid;gap:1rem}.summary-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:.75rem}.summary-card__value{font-size:2rem;font-weight:800;line-height:1;letter-spacing:-.02em;margin-bottom:.5rem}.summary-card__supporting{color:var(--brand-dark);font-weight:700}.summary-card__caption{font-size:.82rem}.campaign-card__header,.campaign-card__footer{display:flex;justify-content:space-between;gap:1rem;align-items:start}.campaign-card__description{color:var(--text-secondary);margin:.75rem 0;font-size:.9rem;line-height:1.6}.campaign-card__reward{color:var(--brand-dark);font-weight:700}.loyalty-badge{background:var(--brand);color:var(--text-inverse);border-radius:var(--radius-md);display:inline-grid;gap:.1rem;padding:.65rem .85rem}.loyalty-badge__label{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85}.loyalty-badge__value{font-size:.9rem;font-weight:700;letter-spacing:.08em}.status-badge{border-radius:var(--radius-full);display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;padding:.35rem .65rem}.status-badge--success{background:var(--brand-subtle);color:var(--brand-dark)}.status-badge--warning{background:var(--accent-subtle);color:var(--accent-hover)}.status-badge--danger{background:#fef2f2;color:#dc2626}.status-badge--muted{background:var(--surface-slate);color:var(--text-secondary)}.state-card{display:grid;gap:1rem;max-width:44rem;width:100%;padding:2rem}.state-card--error{background:#fef2f2e6;border-color:#f8717133}.state-card__spinner{width:2.5rem;height:2.5rem;border-radius:50%;border:3px solid var(--brand-light);border-top-color:var(--brand);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.state-card h2{font-size:1.25rem}.list-row,.table-like__row{display:flex;justify-content:space-between;gap:1rem;align-items:center;border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem 1.25rem;background:var(--surface-white);transition:transform .12s var(--ease),box-shadow .12s var(--ease)}.list-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.list-row__meta{display:grid;gap:.35rem;justify-items:end;text-align:right}.table-like,.detail-grid{display:grid;gap:.75rem}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.detail-grid div{border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;background:var(--surface-white)}.detail-grid div strong{display:block;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}.pagination-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-top:1rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.form-inline{align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:.4rem}.field--full{grid-column:1 / -1}.field--grow{grid-column:span 3}.field>span{font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--text-secondary)}.field input,.field select,.field textarea{background:var(--surface-white);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);min-height:2.85rem;padding:.7rem .9rem;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.field input:focus,.field select:focus,.field textarea:focus,.toggle input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #22c55e26}.field input[readonly]{background:var(--surface-slate);color:var(--text-secondary)}.field__error{color:#dc2626;font-size:.8rem}.field__hint{font-size:.8rem}.toggle{align-items:start;display:flex;gap:.75rem}.toggle input[type=checkbox]{margin-top:.2rem;width:1.1rem;height:1.1rem;accent-color:var(--brand)}.toggle span{font-weight:600;font-size:.92rem}.toggle small{color:var(--text-secondary);display:block;font-weight:400;margin-top:.15rem}.consent-card{border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:.75rem;padding:1rem;background:var(--surface-white)}.consent-card details{color:var(--text-secondary);font-size:.88rem}.consent-card details summary{cursor:pointer;font-weight:600;color:var(--brand-dark)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.shell-header{margin:1rem 1rem 0;border-radius:var(--radius-xl);border:1px solid var(--border-light);background:var(--surface-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow);padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.shell-header__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.shell-header__brand{display:flex;align-items:center;gap:.85rem}.brand-mark{width:3rem;height:3rem;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand) 0%,var(--brand-hover) 100%);color:var(--text-inverse);display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:900;box-shadow:0 4px 16px #22c55e4d;flex-shrink:0}.shell-header__brand-text .eyebrow{margin-bottom:.1rem}.shell-header__title{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}.shell-header__actions{display:flex;align-items:center;gap:.75rem}.shell-header__user{font-size:.88rem;font-weight:600;color:var(--text-secondary)}.shell-nav{display:flex;gap:.25rem;overflow-x:auto;padding:.25rem;background:var(--surface-slate);border-radius:var(--radius-md);scrollbar-width:thin}.shell-nav__link{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;transition:background-color .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease);border:none;text-decoration:none}.shell-nav__link:hover{color:var(--text);background:#fff9}.shell-nav__link--active{background:var(--surface-white);color:var(--text);box-shadow:var(--shadow-xs)}.shell-nav__link mat-icon,.shell-nav__link .mat-icon{font-size:18px;width:18px;height:18px}.shell-content{flex:1;padding:1.5rem;max-width:1400px;width:100%;margin:0 auto}.shell-frame{flex:1;display:flex;flex-direction:column}.shell-profile small{color:var(--text-muted)}.shell-header__meta{display:flex;gap:.75rem;align-items:center}.shell-header__tagline{display:none}.global-banner,.inline-message{border-radius:var(--radius-md);border:1px solid var(--border);padding:.75rem 1rem;font-size:.88rem;display:flex;align-items:center;gap:.65rem}.global-banner{background:var(--accent-subtle);margin:.75rem 1rem}.global-banner--warning{background:#fffbeb;border-color:#f59e0b33}.inline-message{background:var(--brand-subtle);border-color:#22c55e26}.inline-message--error{background:#fef2f2;border-color:#ef444426;color:#b91c1c}.public-hero{min-height:100vh;padding:clamp(2rem,5vw,4rem);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem;align-items:center;max-width:1300px;margin:0 auto}.public-panel{min-height:100vh;padding:clamp(2rem,5vw,4rem);display:grid;place-items:center;gap:1rem}.hero-copy,.public-panel>*{max-width:56rem}.hero-copy{display:grid;gap:1.25rem}.hero-copy h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1.05}.hero-copy__lead{color:var(--text-secondary);font-size:1.05rem;max-width:38rem;line-height:1.7}.hero-copy__actions,.quick-actions,.page-actions,.filter-pills{display:flex;flex-wrap:wrap;gap:.75rem}.feature-list{color:var(--text-secondary);display:grid;gap:.55rem;font-size:.92rem;line-height:1.6}.wallet-hero{border-radius:var(--radius-2xl);background:linear-gradient(135deg,#22c55e,#10b981 55%,#0f172a 140%);padding:2rem;color:var(--text-inverse);box-shadow:var(--shadow-brand);overflow:hidden;position:relative}.wallet-hero:after{content:"";position:absolute;top:-30%;right:-10%;width:22rem;height:22rem;background:#ffffff0f;border-radius:50%;pointer-events:none}.wallet-hero__header{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.75rem;position:relative;z-index:1}.wallet-hero__eyebrow{font-size:.65rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#ffffffb3;margin-bottom:.5rem}.wallet-hero__title{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;letter-spacing:-.03em;line-height:1.1;max-width:32rem}.wallet-hero__subtitle{font-size:.88rem;color:#fffc;margin-top:.5rem;max-width:30rem}.wallet-hero__tier{border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.2);background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.65rem .85rem;text-align:right;flex-shrink:0}.wallet-hero__tier-label{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:#fff9}.wallet-hero__tier-value{font-size:1rem;font-weight:800}.wallet-hero__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;position:relative;z-index:1}.wallet-stat{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.2);background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1.1rem}.wallet-stat__label{font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:#fff9}.wallet-stat__value{font-size:2rem;font-weight:900;margin-top:.5rem;letter-spacing:-.02em}.wallet-stat__caption{font-size:.8rem;color:#ffffffbf;margin-top:.5rem}.loyalty-card-section{border-radius:var(--radius-xl);border:1px solid var(--border-light);background:var(--surface-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:1.5rem;box-shadow:var(--shadow)}.loyalty-card-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.loyalty-card-visual{border-radius:var(--radius-xl);background:linear-gradient(135deg,#22c55e 0% 68%,#f97316 68% 100%);color:var(--text-inverse);padding:1.5rem;box-shadow:0 8px 30px #22c55e40;position:relative;overflow:hidden}.loyalty-card-visual__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem}.loyalty-card-visual__rings{display:flex}.loyalty-card-visual__ring{width:2.2rem;height:2.2rem;border-radius:50%;border:3px solid rgba(255,255,255,.85)}.loyalty-card-visual__ring+.loyalty-card-visual__ring{margin-left:-.85rem}.loyalty-card-visual__brand-name{font-size:1.5rem;font-weight:900;font-style:italic}.loyalty-card-visual__bottom{display:flex;justify-content:space-between;align-items:flex-end}.loyalty-card-visual__id-label{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:#ffffffb3}.loyalty-card-visual__id{font-size:1.1rem;font-weight:800;letter-spacing:.18em;margin-top:.25rem}.loyalty-card-visual__badge{border-radius:var(--radius-sm);background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:.4rem .65rem;font-size:.72rem;font-weight:600}.loyalty-card-actions{display:flex;gap:.75rem;margin-top:1rem}.loyalty-card-actions .button{flex:1}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.quick-action-btn{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-muted);padding:1rem;font-weight:600;font-size:.88rem;color:var(--text);text-align:left;cursor:pointer;transition:transform .16s var(--ease),background-color .16s var(--ease),box-shadow .16s var(--ease);display:flex;align-items:center;gap:.5rem}.quick-action-btn:hover{transform:translateY(-2px);background:var(--surface-white);box-shadow:var(--shadow-sm)}.transaction-table{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.transaction-table__header{display:grid;grid-template-columns:1.4fr .8fr .8fr .9fr;padding:.85rem 1.1rem;background:var(--surface-muted);font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.transaction-table__row{display:grid;grid-template-columns:1.4fr .8fr .8fr .9fr;align-items:center;padding:.85rem 1.1rem;border-top:1px solid var(--border);font-size:.88rem;transition:background-color .12s var(--ease)}.transaction-table__row:hover{background:var(--surface-muted)}.transaction-table__activity{font-weight:600;color:var(--text)}.transaction-table__date{color:var(--text-secondary)}.transaction-table__amount{font-weight:500;color:var(--text)}.transaction-table__points{font-weight:700}.transaction-table__points--positive{color:var(--brand-hover)}.transaction-table__points--negative{color:var(--accent-hover)}.profile-field{border-radius:var(--radius-md);background:var(--surface-muted);padding:.85rem 1rem}.profile-field__label{font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted)}.profile-field__value{font-weight:600;color:var(--text);margin-top:.2rem}.insight-card{border-radius:var(--radius-xl);border:1px solid var(--border-light);background:var(--surface-dark);color:var(--text-inverse);padding:1.5rem;box-shadow:var(--shadow-dark)}.insight-card .eyebrow{color:var(--brand-light)}.insight-card p{color:#ffffffb3;margin-top:.75rem;font-size:.88rem;line-height:1.7}.insight-card h3{font-weight:800;font-size:1.15rem;margin-top:.25rem}.dashboard-top{display:grid;grid-template-columns:1.35fr .9fr;gap:1.5rem}.dashboard-bottom{display:grid;grid-template-columns:.95fr 1.3fr .95fr;gap:1.5rem}.dashboard-sidebar{display:grid;gap:1.25rem}.offer-item{border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(180deg,#fff,#f8fafc);padding:1rem}.offer-item__header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem}.offer-item__title{font-weight:700;font-size:.92rem}.offer-item__tag{border-radius:var(--radius-full);background:var(--brand-subtle);color:var(--brand-dark);font-size:.7rem;font-weight:700;padding:.25rem .55rem}.offer-item__desc{color:var(--text-secondary);font-size:.85rem;line-height:1.6}.filter-tabs{display:flex;align-items:center;gap:.15rem;background:var(--surface-slate);border-radius:var(--radius-md);padding:.25rem}.filter-tab{padding:.5rem .85rem;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;color:var(--text-secondary);border:none;background:transparent;cursor:pointer;transition:background-color .16s var(--ease),color .16s var(--ease)}.filter-tab:hover{color:var(--text)}.filter-tab--active{background:var(--surface-white);color:var(--text);box-shadow:var(--shadow-xs)}.count-badge{border-radius:var(--radius-full);padding:.2rem .55rem;font-size:.7rem;font-weight:700}.count-badge--brand{background:var(--brand-subtle);color:var(--brand-dark)}.count-badge--accent{background:var(--accent-subtle);color:var(--accent-hover)}.faq-stack details{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.faq-stack details summary{padding:1rem;font-weight:600;cursor:pointer;transition:background-color .12s var(--ease)}.faq-stack details summary:hover{background:var(--surface-muted)}.faq-stack details[open] summary{border-bottom:1px solid var(--border)}.faq-stack details p{padding:1rem;color:var(--text-secondary);font-size:.9rem;line-height:1.7}.progress-bar{height:.5rem;border-radius:var(--radius-full);background:#fff3;overflow:hidden;margin-top:.75rem}.progress-bar__fill{height:100%;border-radius:var(--radius-full);background:var(--accent);transition:width .6s var(--ease)}@media(max-width:1280px){.dashboard-bottom{grid-template-columns:1fr 1fr}.dashboard-bottom>:last-child{grid-column:1 / -1}}@media(max-width:1024px){.dashboard-top,.dashboard-bottom{grid-template-columns:1fr}.dashboard-bottom>:last-child{grid-column:auto}.content-grid{grid-template-columns:1fr}}@media(max-width:768px){.public-hero{grid-template-columns:1fr}.shell-header{margin:.75rem .75rem 0;padding:.85rem 1rem}.shell-header__top{flex-direction:column;align-items:start;gap:.75rem}.shell-content{padding:1rem}.form-grid,.form-inline,.summary-grid{grid-template-columns:1fr}.field--grow{grid-column:auto}.wallet-hero{padding:1.5rem}.wallet-hero__title,.wallet-stat__value{font-size:1.5rem}.quick-actions-grid{grid-template-columns:1fr}.transaction-table__header,.transaction-table__row{grid-template-columns:1fr 1fr;gap:.25rem}.transaction-table__header>:nth-child(3),.transaction-table__header>:nth-child(4),.transaction-table__row>:nth-child(3){display:none}.page-header,.section-heading{flex-direction:column;align-items:start;margin-bottom:1.5rem}.list-row,.table-like__row,.campaign-card__header,.campaign-card__footer{flex-direction:column;align-items:start}.list-row__meta{justify-items:start;text-align:left}.pagination-bar{flex-direction:column;align-items:start}.hero-copy h1{font-size:2.2rem}.loyalty-card-actions{flex-direction:column}}@media(max-width:480px){.shell-header{margin:.5rem;border-radius:var(--radius-lg)}.shell-content{padding:.75rem}.card,.campaign-card,.state-card{padding:1.15rem;border-radius:var(--radius-lg)}.wallet-hero{border-radius:var(--radius-lg);padding:1.25rem}}
