:root{--font-display:"Bricolage Grotesque",sans-serif;--font-text:"DM Sans",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,monospace;--weave-green:#56bd97;--weave-teal:#007a71;--weave-purple:#3423a6;--weave-plum:#88498f;--weave-cream:#f7f5ee;--weave-ink:#17142e;--weave-white:#fff;--weave-lavender:#eee9fa;--weave-mint:#e6f6ee;--weave-green-100:color-mix(in oklch,var(--weave-green) 18%,white);--weave-green-200:color-mix(in oklch,var(--weave-green) 40%,white);--weave-green-600:color-mix(in oklch,var(--weave-green) 88%,black);--weave-green-700:color-mix(in oklch,var(--weave-green) 72%,black);--weave-teal-100:color-mix(in oklch,var(--weave-teal) 12%,white);--weave-teal-600:color-mix(in oklch,var(--weave-teal) 88%,black);--weave-teal-800:color-mix(in oklch,var(--weave-teal) 70%,black);--weave-purple-100:color-mix(in oklch,var(--weave-purple) 10%,white);--weave-purple-200:color-mix(in oklch,var(--weave-purple) 22%,white);--weave-purple-600:color-mix(in oklch,var(--weave-purple) 90%,black);--weave-purple-800:color-mix(in oklch,var(--weave-purple) 74%,black);--weave-purple-900:color-mix(in oklch,var(--weave-purple) 55%,var(--weave-ink));--weave-plum-100:color-mix(in oklch,var(--weave-plum) 14%,white);--weave-plum-600:color-mix(in oklch,var(--weave-plum) 88%,black);--weave-plum-700:color-mix(in oklch,var(--weave-plum) 72%,black);--weave-ink-70:color-mix(in oklch,var(--weave-ink) 72%,white);--weave-ink-50:color-mix(in oklch,var(--weave-ink) 52%,white);--weave-ink-30:color-mix(in oklch,var(--weave-ink) 30%,white);--weave-ink-15:color-mix(in oklch,var(--weave-ink) 14%,white);--weave-ink-8:color-mix(in oklch,var(--weave-ink) 8%,white);--weave-cream-200:color-mix(in oklch,var(--weave-cream) 86%,var(--weave-ink));--weave-cream-300:color-mix(in oklch,var(--weave-cream) 76%,var(--weave-ink));--weave-amber:#d98a1c;--weave-amber-100:#fbf1df;--weave-red:#c5333f;--weave-red-100:#fbe6e7;--bg-page:var(--weave-cream);--bg-surface:var(--weave-white);--bg-surface-sunken:var(--weave-cream);--bg-brand:var(--weave-purple);--bg-brand-deep:var(--weave-purple-900);--bg-brand-soft:var(--weave-lavender);--bg-accent:var(--weave-green);--bg-accent-soft:var(--weave-mint);--bg-secondary:var(--weave-teal);--bg-plum:var(--weave-plum);--bg-plum-soft:var(--weave-plum-100);--bg-ink:var(--weave-ink);--bg-overlay:color-mix(in oklch,var(--weave-ink) 56%,transparent);--bg-disabled:var(--weave-ink-8);--fg-primary:var(--weave-ink);--fg-secondary:var(--weave-ink-70);--fg-muted:var(--weave-ink-50);--fg-disabled:var(--weave-ink-30);--fg-brand:var(--weave-purple);--fg-accent:var(--weave-teal);--fg-plum:var(--weave-plum);--fg-on-brand:var(--weave-white);--fg-on-accent:var(--weave-ink);--fg-on-ink:var(--weave-cream);--fg-link:var(--weave-purple);--fg-link-hover:var(--weave-purple-800);--fg-link-on-dark:var(--weave-green);--border-subtle:var(--weave-ink-8);--border-default:var(--weave-ink-15);--border-strong:var(--weave-ink-30);--border-brand:var(--weave-purple);--border-accent:var(--weave-green);--border-on-dark:color-mix(in oklch,white 22%,transparent);--border-focus:var(--weave-purple);--action-primary-bg:var(--weave-green);--action-primary-bg-hover:var(--weave-green-600);--action-primary-bg-active:var(--weave-green-700);--action-primary-fg:var(--weave-ink);--action-secondary-bg:var(--weave-teal);--action-secondary-bg-hover:var(--weave-teal-600);--action-secondary-fg:var(--weave-white);--action-brand-bg:var(--weave-purple);--action-brand-bg-hover:var(--weave-purple-600);--action-brand-fg:var(--weave-white);--action-outline-border:var(--weave-ink);--action-outline-fg:var(--weave-ink);--action-outline-bg-hover:var(--weave-ink-8);--action-ghost-bg-hover:var(--weave-ink-8);--action-disabled-bg:var(--weave-ink-8);--action-disabled-fg:var(--weave-ink-30);--state-success-bg:var(--weave-mint);--state-success-fg:var(--weave-teal);--state-info-bg:var(--weave-lavender);--state-info-fg:var(--weave-purple);--state-warning-bg:var(--weave-amber-100);--state-warning-fg:#7a4b06;--state-error-bg:var(--weave-red-100);--state-error-fg:var(--weave-red);--focus-ring:0 0 0 3px var(--weave-cream),0 0 0 6px var(--weave-purple);--focus-ring-on-dark:0 0 0 3px var(--weave-purple),0 0 0 6px var(--weave-green);--badge-sale-bg:var(--weave-plum);--badge-sale-fg:var(--weave-white);--badge-new-bg:var(--weave-green);--badge-new-fg:var(--weave-ink);--cat-flower:var(--weave-green);--cat-prerolls:var(--weave-teal);--cat-vapes:var(--weave-purple);--cat-edibles:var(--weave-plum);--cat-concentrates:var(--weave-ink);--cat-tinctures:var(--weave-mint);--cat-topicals:var(--weave-lavender);--cat-accessories:var(--weave-cream-200);--gradient-purple-plum:linear-gradient(135deg,#3423a6 0%,#88498f 100%);--gradient-teal-green:linear-gradient(135deg,#007a71 0%,#56bd97 100%);--gradient-purple-teal:linear-gradient(135deg,#3423a6 0%,#007a71 100%);--gradient-psychedelic:linear-gradient(120deg,#3423a6 0%,#88498f 52%,#56bd97 100%);--gradient-aurora:radial-gradient(60% 80% at 15% 20%,color-mix(in oklch,#88498f 70%,transparent) 0%,transparent 60%),radial-gradient(50% 60% at 85% 80%,color-mix(in oklch,#007a71 60%,transparent) 0%,transparent 60%),radial-gradient(40% 50% at 70% 15%,color-mix(in oklch,#56bd97 40%,transparent) 0%,transparent 60%),#3423a6;--gradient-protect-bottom:linear-gradient(to top,color-mix(in oklch,#17142e 72%,transparent) 0%,transparent 60%);--texture-halftone:radial-gradient(circle at center,currentColor 1px,transparent 1.4px);--texture-halftone-size:8px 8px;--fs-display-xl:clamp(3.5rem,2rem + 6.4vw,7rem);--fs-display-l:clamp(2.75rem,1.75rem + 4.4vw,5rem);--fs-h1:clamp(2.25rem,1.5rem + 3.2vw,4rem);--fs-h2:clamp(1.875rem,1.3rem + 2.2vw,3rem);--fs-h3:clamp(1.5rem,1.2rem + 1.2vw,2.25rem);--fs-h4:clamp(1.25rem,1.1rem + .6vw,1.75rem);--fs-h5:clamp(1.125rem,1.05rem + .3vw,1.375rem);--fs-h6:clamp(1rem,.95rem + .2vw,1.125rem);--fs-body-lg:1.125rem;--fs-body:1rem;--fs-sm:0.875rem;--fs-xs:0.75rem;--leading-display:.92;--leading-heading:1.05;--leading-subhead:1.2;--leading-body:1.55;--leading-tight:1.3;--tracking-display:-0.035em;--tracking-heading:-0.02em;--tracking-label:0.08em;--tracking-eyebrow:0.14em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--type-display-xl:var(--weight-extrabold) var(--fs-display-xl)/var(--leading-display) var(--font-display);--type-display-l:var(--weight-extrabold) var(--fs-display-l)/var(--leading-display) var(--font-display);--type-h1:var(--weight-extrabold) var(--fs-h1)/var(--leading-heading) var(--font-display);--type-h2:var(--weight-bold) var(--fs-h2)/var(--leading-heading) var(--font-display);--type-h3:var(--weight-bold) var(--fs-h3)/var(--leading-subhead) var(--font-display);--type-h4:var(--weight-bold) var(--fs-h4)/var(--leading-subhead) var(--font-display);--type-h5:var(--weight-semibold) var(--fs-h5)/var(--leading-tight) var(--font-text);--type-h6:var(--weight-semibold) var(--fs-h6)/var(--leading-tight) var(--font-text);--type-body-lg:var(--weight-regular) var(--fs-body-lg)/var(--leading-body) var(--font-text);--type-body:var(--weight-regular) var(--fs-body)/var(--leading-body) var(--font-text);--type-body-strong:var(--weight-semibold) var(--fs-body)/var(--leading-body) var(--font-text);--type-sm:var(--weight-regular) var(--fs-sm)/var(--leading-body) var(--font-text);--type-label:var(--weight-semibold) var(--fs-sm)/1 var(--font-text);--type-caption:var(--weight-medium) var(--fs-xs)/1.3 var(--font-text);--type-eyebrow:var(--weight-semibold) var(--fs-xs)/1 var(--font-text);--type-price:var(--weight-bold) var(--fs-body-lg)/1 var(--font-text);--type-price-lg:var(--weight-bold) var(--fs-h4)/1 var(--font-text);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-section-sm:clamp(48px,8vw,64px);--space-section:clamp(64px,10vw,96px);--space-gutter:clamp(16px,4vw,32px);--layout-max:1280px;--layout-max-wide:1440px;--layout-max-prose:68ch;--grid-gap:clamp(16px,2vw,24px);--size-touch:44px;--size-control-sm:36px;--size-control-md:44px;--size-control-lg:52px;--size-header:72px;--size-header-mobile:60px;--size-announcement:40px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--radius-pill:999px;--radius-control:999px;--radius-card:20px;--radius-tile:32px;--radius-image:12px;--radius-badge:999px;--radius-modal:32px;--radius-blob:60% 40% 55% 45%/50% 60% 40% 50%;--shadow-xs:0 1px 2px color-mix(in oklch,#17142e 8%,transparent);--shadow-sm:0 2px 6px color-mix(in oklch,#17142e 8%,transparent),0 1px 2px color-mix(in oklch,#17142e 6%,transparent);--shadow-md:0 8px 20px -6px color-mix(in oklch,#17142e 16%,transparent),0 2px 6px color-mix(in oklch,#17142e 6%,transparent);--shadow-lg:0 20px 40px -12px color-mix(in oklch,#17142e 24%,transparent),0 4px 10px color-mix(in oklch,#17142e 6%,transparent);--shadow-xl:0 32px 64px -16px color-mix(in oklch,#3423a6 32%,transparent);--shadow-brand:0 12px 32px -8px color-mix(in oklch,#3423a6 45%,transparent);--shadow-accent:0 10px 24px -8px color-mix(in oklch,#56bd97 55%,transparent);--shadow-card-hover:var(--shadow-md);--shadow-drawer:-16px 0 48px -16px color-mix(in oklch,#17142e 30%,transparent);--duration-fast:160ms;--duration-base:240ms;--duration-slow:400ms;--ease-standard:cubic-bezier(.2,0,0,1);--ease-out:cubic-bezier(.16,1,.3,1);--ease-bounce:cubic-bezier(.34,1.56,.64,1);--transition-color:color 160ms cubic-bezier(.2,0,0,1),background-color 160ms cubic-bezier(.2,0,0,1),border-color 160ms cubic-bezier(.2,0,0,1);--transition-lift:transform 240ms cubic-bezier(.16,1,.3,1),box-shadow 240ms cubic-bezier(.16,1,.3,1);--transition-pop:transform 240ms cubic-bezier(.34,1.56,.64,1);--lift-card:translateY(-4px);--lift-button:translateY(-2px);--press-scale:scale(.97);--zoom-image:scale(1.05);--button-height-sm:36px;--button-height-md:44px;--button-height-lg:52px;--button-pad-x-sm:14px;--button-pad-x-md:20px;--button-pad-x-lg:28px;--input-height:48px;--input-radius:12px;--chip-height:36px;--badge-height:24px;--card-bg:var(--weave-white);--card-border:var(--weave-ink-8);--card-radius:20px;--card-image-radius:12px;--header-bg:var(--weave-white);--header-border:var(--weave-ink-8);--header-height:72px;--drawer-width:440px;--weave-accent:var(--weave-teal);--weave-on-accent:var(--weave-white);--weave-sale:var(--weave-plum);--weave-surface:var(--weave-white);--weave-muted:var(--weave-ink-50);--weave-radius:12px;--weave-font:var(--font-text);--weave-display-font:var(--font-display);--weave-display-weight:700;--weave-heading-color:var(--weave-ink);--weave-danger:var(--weave-red);--weave-warning:var(--weave-amber);--weave-primary-color:var(--weave-teal)}