:root{
  --ui-brand:#4f46e5;--ui-brand-hover:#4338ca;--ui-brand-soft:#eef2ff;
  --ui-ink:#172033;--ui-muted:#667085;--ui-bg:#f5f7fb;--ui-surface:#fff;
  --ui-line:#e4e7ec;--ui-line-strong:#cfd5df;--ui-success:#067647;
  --ui-success-bg:#ecfdf3;--ui-warning:#93370d;--ui-warning-bg:#fffaeb;
  --ui-danger:#b42318;--ui-danger-bg:#fef3f2;--ui-info:#175cd3;--ui-info-bg:#eff8ff;
  --ui-radius-sm:9px;--ui-radius:14px;--ui-radius-lg:20px;
  --ui-shadow:0 8px 24px rgba(16,24,40,.055);--ui-focus:0 0 0 3px rgba(79,70,229,.18);
}
html{scroll-behavior:smooth}body{color:var(--ui-ink);background:var(--ui-bg);line-height:1.5}
::selection{background:#c7d2fe;color:#1e1b4b}
button,a,input,select,textarea,summary{transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:0;box-shadow:var(--ui-focus)!important}
:where(button,input,select,textarea):disabled{cursor:not-allowed;opacity:.58}
:where(input,select,textarea){max-width:100%;border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);background:#fff;color:var(--ui-ink)}
:where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){min-height:44px;padding:10px 12px}
textarea{min-height:104px;padding:11px 12px;resize:vertical}
:where(input,select,textarea)::placeholder{color:#98a2b3}
:where(input,select,textarea):hover:not(:disabled){border-color:#98a2b3}
:where(input,select,textarea):focus{border-color:var(--ui-brand);outline:0;box-shadow:var(--ui-focus)}
label{color:#344054;font-weight:700}label>small,.field-hint{color:var(--ui-muted);font-weight:500}
.primary-button,.member-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;border-radius:var(--ui-radius-sm);background:var(--ui-brand);color:#fff;font-weight:800;box-shadow:0 6px 16px rgba(79,70,229,.2)}
.primary-button:hover,.member-primary:hover{background:var(--ui-brand-hover);transform:translateY(-1px)}
.primary-button:active,.member-primary:active{transform:translateY(0)}
.ghost-button,.clear-filter-button,.row-action,.member-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:#fff;color:#475467;font-weight:700}
.ghost-button:hover,.clear-filter-button:hover,.row-action:hover{border-color:#c7d2fe;background:var(--ui-brand-soft);color:var(--ui-brand)}
.text-action,.link-button{min-height:36px;border-radius:8px}.text-action:hover,.link-button:hover{background:var(--ui-brand-soft)}
.danger,.text-action.danger{color:var(--ui-danger)}.positive,.text-action.positive{color:var(--ui-success)}
.page-head{gap:20px;padding-top:32px}.page-head h1{color:var(--ui-ink);font-size:clamp(1.65rem,2.4vw,2.15rem);line-height:1.15}.page-head p{max-width:720px;line-height:1.55}
.eyebrow.dark,.section-kicker{color:var(--ui-brand)}
:where(.table-card,.insight-card,.stat-card,.report-card,.form-card,.settings-card,.password-card,.member-section,.login-card){border-color:var(--ui-line);box-shadow:var(--ui-shadow)}
:where(.table-card,.insight-card,.stat-card,.report-card,.form-card,.settings-card,.password-card){border-radius:var(--ui-radius)}
.table-wrap{border-radius:10px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}
table{font-variant-numeric:tabular-nums}thead{background:#f9fafb}th{color:#667085;font-weight:800}tbody tr:hover{background:#fafbff}td{color:#344054}
.table-sub,td small{display:block;margin-top:3px;color:var(--ui-muted);line-height:1.35}
.empty-row{height:100px;color:var(--ui-muted)!important;text-align:center!important;white-space:normal}
.empty-state{min-height:150px;border:1px dashed var(--ui-line-strong);border-radius:var(--ui-radius);background:#fafbfc}.empty-state.compact{min-height:110px}
.content-alert,.alert,.member-alert,.member-notice{border:1px solid transparent;border-radius:var(--ui-radius-sm);line-height:1.5}
.content-alert.success,.member-alert-success,.member-notice.success{border-color:#abefc6;background:var(--ui-success-bg);color:var(--ui-success)}
.content-alert.bad,.alert.bad,.member-alert:not(.member-alert-success):not(.member-alert-local),.member-notice.error{border-color:#fecdca;background:var(--ui-danger-bg);color:var(--ui-danger)}
.member-alert-local{border-color:#b2ddff;background:var(--ui-info-bg);color:var(--ui-info)}
:where(.badge,.report-status,.status-badge,.claim-status,.txn-status,.role-pill,.amount-badge){display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 9px;border-radius:999px;font-size:.7rem;font-weight:800;line-height:1.2;white-space:nowrap}
:where(.status-active,.status-approved,.status-completed,.status-paid,.badge.status-active,.status-badge.approved,.status-badge.completed,.status-badge.paid,.claim-status-approved,.claim-status-paid,.txn-completed,.txn-approved,.txn-paid){background:var(--ui-success-bg);color:var(--ui-success)}
:where(.status-pending,.status-awaitingconfirmation,.status-badge.pending,.status-badge.awaitingconfirmation,.claim-status-pending,.claim-status-awaitingconfirmation,.txn-pending){background:var(--ui-warning-bg);color:var(--ui-warning)}
:where(.status-suspended,.status-rejected,.status-cancelled,.status-refunded,.status-reversed,.status-badge.rejected,.status-badge.cancelled,.status-badge.refunded,.status-badge.reversed,.claim-status-rejected,.txn-cancelled,.txn-refunded,.txn-reversed){background:var(--ui-danger-bg);color:var(--ui-danger)}
:where(.status-inactive,.status-expired,.claim-status-expired){background:#f2f4f7;color:#475467}
.form-actions,.settings-actions,.password-actions,.catalog-actions,.inline-actions{gap:10px;align-items:center}
.form-actions{padding-top:18px;border-top:1px solid var(--ui-line)}
.mobile-admin-menu{display:none;position:relative}.mobile-admin-menu summary{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ui-line);border-radius:11px;background:#fff;cursor:pointer;list-style:none;font-size:0}.mobile-admin-menu summary::-webkit-details-marker{display:none}.mobile-admin-menu summary:before{content:'☰';font-size:20px;color:var(--ui-brand)}
.mobile-admin-menu nav{position:absolute;z-index:40;top:50px;left:0;display:grid;width:min(82vw,290px);max-height:calc(100vh - 90px);padding:9px;overflow:auto;border:1px solid var(--ui-line);border-radius:14px;background:#fff;box-shadow:0 20px 50px rgba(16,24,40,.18)}
.mobile-admin-menu nav a{padding:11px 12px;border-radius:9px;color:#475467;font-size:.84rem;font-weight:700}.mobile-admin-menu nav a:hover,.mobile-admin-menu nav a.active{background:var(--ui-brand-soft);color:var(--ui-brand)}
.member-session{--portal-blue:var(--ui-brand);--portal-blue-dark:var(--ui-brand-hover);--portal-blue-soft:var(--ui-brand-soft);--portal-bg:var(--ui-bg);--portal-border:var(--ui-line);--portal-text:var(--ui-ink);--portal-muted:var(--ui-muted)}
.member-session .member-section,.member-session .balance-card,.member-session .stat-card{border-radius:var(--ui-radius)}
.member-session .member-side-nav a,.member-session .member-bottom-nav a{border-radius:10px}
.member-session .member-side-nav a.active{background:var(--ui-brand-soft);color:var(--ui-brand)}
.member-auth-body .login-card{border-radius:var(--ui-radius-lg)}
.app-version{padding:2px 5px;border-radius:5px;background:rgba(255,255,255,.88)}
@media(max-width:850px){.page-head{align-items:flex-start}.table-card{padding:18px}.topbar{gap:12px}}
@media(max-width:540px){
  .mobile-admin-menu{display:block;margin-right:auto}.topbar{position:sticky;top:0;z-index:30;height:66px;padding:0 14px}.topbar>.top-search{display:none!important}
  .page-head{display:grid;padding:24px 16px 18px}.page-head>div:last-child:not(:first-child),.page-head>.catalog-actions,.page-head>.report-head-actions{width:100%}
  .page-head .primary-button.compact,.primary-button.compact,.page-head .ghost-button{display:inline-flex;width:100%;min-height:44px}
  .stat-grid{padding-left:16px;padding-right:16px}.insight-grid{margin-left:16px;margin-right:16px}.table-card{margin-left:16px;margin-right:16px}
  .section-title.split{gap:12px;align-items:flex-start;flex-direction:column}.section-title.split>.ghost-button{width:100%}
  .form-actions,.settings-actions,.password-actions,.catalog-actions{display:grid;grid-template-columns:1fr;width:100%}.form-actions>*{width:100%}
  th,td{padding:12px 10px}.login-card{border-radius:18px}.app-version{bottom:4px}
}
@media(pointer:coarse){:where(button,.primary-button,.ghost-button,.row-action,.text-action,.link-button,summary){min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.sidebar,.topbar,.member-sidebar,.member-topbar,.member-bottom-nav,.app-version,.page-head a,.page-head button{display:none!important}.app-shell,.member-session .member-shell{display:block}.main-area,.member-workspace{width:100%}.table-card,.report-card{break-inside:avoid;box-shadow:none}}
