/* Kwik — software tokens v2.1 (2026-10-19). Verified against the live Kwik Rewards app. Import once; use only the --k-* names in product code.
   Source of truth: https://brand.kwik.com/software-rules.md · spec: https://brand.kwik.com/software */
@font-face{font-family:'Kwik';src:url('https://brand.kwik.com/assets/kwik-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Kwik';src:url('https://brand.kwik.com/assets/kwik-medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Kwik';src:url('https://brand.kwik.com/assets/kwik-semibold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Kwik';src:url('https://brand.kwik.com/assets/kwik-bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{
  /* ---- primitives ---- */
  --k-ink:#0B0B0F;--k-ink-2:#3A3A40;--k-muted:#6A6A70;--k-faint:#84848A;
  --k-yellow:#FFD836;--k-yellow-soft:#FFF6CC;--k-yellow-ring:#FFEFC2;--k-yellow-deep:#D99A00;
  --k-peach:#FDBA9A;
  --k-white:#FFFFFF;--k-canvas:#F2F2F3;--k-chip:#F4F4F5;--k-feature:#E6E6E9;
  --k-line:#EDEDEF;--k-line-2:#E7E7E9;--k-row:#F0F0F2;--k-track:#ECECEF;--k-placeholder:#D4D4D8;
  --k-green:#138A5B;--k-green-2:#1FB57A;--k-green-soft:#E3F6EC;--k-green-on-feature:#0E744B;
  --k-red:#C2410C;--k-red-soft:#FEE2E2;--k-orange:#B4471A;--k-warning:#B7791F;--k-warning-soft:#FFF4CC;
  --k-disabled-bg:#CFCFD4;--k-disabled-text:#FFFFFF;
  /* ---- semantic ---- */
  --k-bg:var(--k-canvas);--k-card:var(--k-white);--k-bg-subtle:var(--k-chip);
  --k-action:var(--k-ink);--k-on-action:#FFFFFF;--k-action-hover:#1C1C21;
  --k-accent:var(--k-yellow);--k-on-accent:var(--k-ink);--k-accent-soft:var(--k-yellow-soft);--k-accent-ring:var(--k-yellow-ring);
  --k-accent-bar:var(--k-yellow);--k-accent-bar-2:var(--k-peach);
  --k-text:var(--k-ink);--k-text-2:var(--k-ink-2);--k-text-3:var(--k-muted);
  --k-summary:var(--k-ink);--k-on-summary:#FFFFFF;--k-on-summary-2:rgba(255,255,255,.6);
  --k-feature-bg:var(--k-feature);--k-on-feature:#3F3F46;--k-feature-cell:#FFFFFF;--k-feature-line:#D6D6DA;
  --k-focus:var(--k-ink);
  /* ---- type ---- */
  --k-font:'Kwik','Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --k-fs-overline:11px;--k-fs-caption:12px;--k-fs-label:12px;--k-fs-ui:13px;--k-fs-body:14px;--k-fs-input:15px;
  --k-fs-section:16px;--k-fs-app-section:18px;--k-fs-card-metric:20px;--k-fs-stat:24px;--k-fs-greeting:26px;--k-fs-page:28px;--k-fs-summary:28px;--k-fs-hero:36px;--k-fs-feature:52px;
  --k-lh:1.4;--k-tracking-overline:.08em;--k-tracking-hero:-.02em;--k-tracking-feature:-.04em;
  /* ---- space ---- */
  --k-s1:4px;--k-s2:8px;--k-s3:12px;--k-s4:16px;--k-s5:20px;--k-s6:24px;--k-s7:32px;--k-s8:40px;--k-s9:48px;
  /* ---- radius (role-locked) ---- */
  --k-r-card:20px;--k-r-media:16px;--k-r-panel:14px;--k-r-control:12px;--k-r-segment:10px;--k-r-iconbox:10px;--k-r-pill:999px;--k-r-btn:999px;--k-r-btn-inline:12px;--k-r-accentbar:3px;
  /* ---- stroke + elevation ---- */
  --k-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.05); /* hover on tappable cards + sheets/menus; resting cards have none */
  --k-shadow-seg:0 1px 3px rgba(0,0,0,.10);
  --k-shadow-menu:0 16px 40px -8px rgba(0,0,0,.18),0 4px 12px rgba(0,0,0,.06);
  --k-hairline:1px solid var(--k-line);--k-input-line:1px solid var(--k-line-2);--k-row-line:1px solid var(--k-row);
  --k-focus-ring:0 0 0 3px var(--k-yellow-ring);
  /* ---- sizing ---- */
  --k-h-btn:48px;--k-h-btn-sm:36px;--k-h-btn-xs:30px;--k-h-btn-inline:44px;--k-h-input:48px;--k-h-input-inline:44px;--k-h-search:40px;--k-h-chip:32px;
  --k-h-segment:38px;--k-h-view:36px;--k-h-pill:22px;--k-h-nav:46px;--k-h-iconbtn:44px;--k-h-row:56px;
  --k-h-topbar:76px;--k-h-topbar-mobile:64px;--k-w-sidebar:256px;--k-w-rail:360px;--k-w-search:260px;--k-content-max:1480px;--k-page-pad:24px 28px 40px;--k-page-pad-mobile:8px 16px 32px;
  --k-accentbar-w:8px;--k-accentbar-h:24px;--k-rank:28px;--k-avatar:36px;--k-avatar-lg:56px;--k-iconbox:36px;--k-valuetile:52px;--k-media-h:280px;--k-bar-h:6px;--k-card-pad:18px;--k-card-pad-tile:16px;--k-card-pad-feature:20px;
  /* ---- motion ---- */
  --k-fast:120ms;--k-base:200ms;--k-ease:cubic-bezier(.2,.8,.2,1);--k-spring:cubic-bezier(.3,1.3,.5,1);
  color-scheme:light;
}
/* ---- dark mode: near-black page, slightly lighter cards, light ink; the accent stays the one bright colour ---- */
:root[data-mode="dark"]{
  color-scheme:dark;
  --k-ink:#F4F4F5;--k-ink-2:#D4D4D8;--k-muted:#A1A1AA;--k-faint:#8B8B93;
  --k-bg:#0D0D0F;--k-card:#18181B;--k-chip:#232328;--k-bg-subtle:#232328;
  --k-line:#26262B;--k-line-2:#303036;--k-row:#232328;--k-track:#2C2C31;
  --k-action:#F4F4F5;--k-on-action:#0B0B0F;--k-action-hover:#E4E4E7;
  --k-accent-soft:#3A3214;--k-accent-ring:#5C4E12;
  --k-text:#F4F4F5;--k-text-2:#D4D4D8;--k-text-3:#A1A1AA;
  --k-feature-bg:#222227;--k-on-feature:#E4E4E7;--k-feature-cell:#2C2C32;--k-feature-line:#38383F;--k-green-on-feature:#4ADE80;
  --k-green:#4ADE80;--k-green-2:#22C55E;--k-green-soft:#12301F;--k-red:#F87171;--k-orange:#FB923C;
  --k-disabled-bg:#2C2C31;--k-disabled-text:#6B6B73;
  --k-shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35);
}
body{font-family:var(--k-font);font-size:var(--k-fs-body);line-height:var(--k-lh);color:var(--k-text);background:var(--k-bg);-webkit-font-smoothing:antialiased}
