/*
 * Design tokens ported from the live Eluxir Shopify theme
 * (config/settings_data.json "current" values + the per-page inline
 * <style> block Shopify renders from theme.liquid). Keeping these as
 * literal CSS custom properties -- rather than re-deriving them --
 * is what makes the rest of the ported component CSS (base.css,
 * component-*.css, section-*.css) render pixel-identical colors,
 * radii, and spacing to the real store.
 */

:root,
.color-scheme-1 {
  --color-background: 255, 255, 255;
  --gradient-background: #ffffff;
  --color-foreground: 30, 25, 38;
  --color-background-contrast: 191, 191, 191;
  --color-shadow: 30, 25, 38;
  --color-button: 62, 37, 200;
  --color-button-text: 255, 255, 255;
  --color-secondary-button: 255, 255, 255;
  --color-secondary-button-text: 62, 37, 200;
  --color-link: 62, 37, 200;
  --color-badge-foreground: 30, 25, 38;
  --color-badge-background: 255, 255, 255;
  --color-badge-border: 30, 25, 38;
  --payment-terms-background-color: rgb();
}

.color-scheme-2 {
  --color-background: 243, 243, 243;
  --gradient-background: #f3f3f3;
  --color-foreground: 18, 18, 18;
  --color-background-contrast: 182, 182, 182;
  --color-shadow: 18, 18, 18;
  --color-button: 18, 18, 18;
  --color-button-text: 243, 243, 243;
  --color-secondary-button: 243, 243, 243;
  --color-secondary-button-text: 18, 18, 18;
  --color-link: 18, 18, 18;
  --color-badge-foreground: 18, 18, 18;
  --color-badge-background: 243, 243, 243;
  --color-badge-border: 18, 18, 18;
  --payment-terms-background-color: rgb();
}

.color-scheme-3 {
  --color-background: 36, 40, 51;
  --gradient-background: #242833;
  --color-foreground: 255, 255, 255;
  --color-background-contrast: 47, 51, 61;
  --color-shadow: 18, 18, 18;
  --color-button: 255, 255, 255;
  --color-button-text: 0, 0, 0;
  --color-secondary-button: 36, 40, 51;
  --color-secondary-button-text: 255, 255, 255;
  --color-link: 255, 255, 255;
  --color-badge-foreground: 255, 255, 255;
  --color-badge-background: 36, 40, 51;
  --color-badge-border: 255, 255, 255;
  --payment-terms-background-color: rgb();
}

.color-scheme-4 {
  --color-background: 18, 18, 18;
  --gradient-background: #121212;
  --color-foreground: 255, 255, 255;
  --color-background-contrast: 137, 137, 137;
  --color-shadow: 18, 18, 18;
  --color-button: 255, 255, 255;
  --color-button-text: 18, 18, 18;
  --color-secondary-button: 18, 18, 18;
  --color-secondary-button-text: 255, 255, 255;
  --color-link: 255, 255, 255;
  --color-badge-foreground: 255, 255, 255;
  --color-badge-background: 18, 18, 18;
  --color-badge-border: 255, 255, 255;
  --payment-terms-background-color: rgb();
}

.color-scheme-5 {
  --color-background: 51, 79, 180;
  --gradient-background: #334fb4;
  --color-foreground: 255, 255, 255;
  --color-background-contrast: 38, 59, 135;
  --color-shadow: 18, 18, 18;
  --color-button: 255, 255, 255;
  --color-button-text: 51, 79, 180;
  --color-secondary-button: 51, 79, 180;
  --color-secondary-button-text: 255, 255, 255;
  --color-link: 255, 255, 255;
  --color-badge-foreground: 255, 255, 255;
  --color-badge-background: 51, 79, 180;
  --color-badge-border: 255, 255, 255;
  --payment-terms-background-color: rgb();
}

body,
.color-scheme-1,
.color-scheme-2,
.color-scheme-3,
.color-scheme-4,
.color-scheme-5 {
  color: rgba(var(--color-foreground), 0.75);
  background-color: rgb(var(--color-background));
}

:root {
  --font-body-family: Inter, sans-serif;
  --font-body-style: normal;
  --font-body-weight: 400;
  --font-body-weight-bold: 700;

  --font-heading-family: Inter, sans-serif;
  --font-heading-style: normal;
  --font-heading-weight: 400;

  --font-body-scale: 1;
  --font-heading-scale: 1;

  --media-padding: px;
  --media-border-opacity: 0.05;
  --media-border-width: 1px;
  --media-radius: 0px;
  --media-shadow-opacity: 0;
  --media-shadow-horizontal-offset: 0px;
  --media-shadow-vertical-offset: 4px;
  --media-shadow-blur-radius: 5px;
  --media-shadow-visible: 0;

  --page-width: 120rem;
  --page-width-margin: 0rem;

  --product-card-image-padding: 0rem;
  --product-card-corner-radius: 0rem;
  --product-card-text-alignment: left;
  --product-card-border-width: 0rem;
  --product-card-border-opacity: 0.1;
  --product-card-shadow-opacity: 0;
  --product-card-shadow-visible: 0;
  --product-card-shadow-horizontal-offset: 0rem;
  --product-card-shadow-vertical-offset: 0.4rem;
  --product-card-shadow-blur-radius: 0.5rem;

  --collection-card-image-padding: 0rem;
  --collection-card-corner-radius: 0rem;
  --collection-card-text-alignment: left;
  --collection-card-border-width: 0rem;
  --collection-card-border-opacity: 0.1;
  --collection-card-shadow-opacity: 0;
  --collection-card-shadow-visible: 0;
  --collection-card-shadow-horizontal-offset: 0rem;
  --collection-card-shadow-vertical-offset: 0.4rem;
  --collection-card-shadow-blur-radius: 0.5rem;

  --blog-card-image-padding: 0rem;
  --blog-card-corner-radius: 0rem;
  --blog-card-text-alignment: left;
  --blog-card-border-width: 0rem;
  --blog-card-border-opacity: 0.1;
  --blog-card-shadow-opacity: 0;
  --blog-card-shadow-visible: 0;
  --blog-card-shadow-horizontal-offset: 0rem;
  --blog-card-shadow-vertical-offset: 0.4rem;
  --blog-card-shadow-blur-radius: 0.5rem;

  --badge-corner-radius: 4rem;

  --popup-border-width: 1px;
  --popup-border-opacity: 0.1;
  --popup-corner-radius: 0px;
  --popup-shadow-opacity: 0.05;
  --popup-shadow-horizontal-offset: 0px;
  --popup-shadow-vertical-offset: 4px;
  --popup-shadow-blur-radius: 5px;

  --drawer-border-width: 1px;
  --drawer-border-opacity: 0.1;
  --drawer-shadow-opacity: 0;
  --drawer-shadow-horizontal-offset: 0px;
  --drawer-shadow-vertical-offset: 4px;
  --drawer-shadow-blur-radius: 5px;

  --spacing-sections-desktop: 0px;
  --spacing-sections-mobile: 0px;

  --grid-desktop-vertical-spacing: 8px;
  --grid-desktop-horizontal-spacing: 8px;
  --grid-mobile-vertical-spacing: 4px;
  --grid-mobile-horizontal-spacing: 4px;

  --text-boxes-border-opacity: 0.1;
  --text-boxes-border-width: 0px;
  --text-boxes-radius: 0px;
  --text-boxes-shadow-opacity: 0;
  --text-boxes-shadow-visible: 0;
  --text-boxes-shadow-horizontal-offset: 0px;
  --text-boxes-shadow-vertical-offset: 4px;
  --text-boxes-shadow-blur-radius: 5px;

  --buttons-radius: 6px;
  --buttons-radius-outset: 7px;
  --buttons-border-width: 1px;
  --buttons-border-opacity: 1;
  --buttons-shadow-opacity: 0;
  --buttons-shadow-visible: 0;
  --buttons-shadow-horizontal-offset: 0px;
  --buttons-shadow-vertical-offset: 4px;
  --buttons-shadow-blur-radius: 5px;
  --buttons-border-offset: 0.3px;

  --inputs-radius: 0px;
  --inputs-border-width: 1px;
  --inputs-border-opacity: 0.55;
  --inputs-shadow-opacity: 0;
  --inputs-shadow-horizontal-offset: 0px;
  --inputs-margin-offset: 0px;
  --inputs-shadow-vertical-offset: 4px;
  --inputs-shadow-blur-radius: 5px;
  --inputs-radius-outset: 0px;

  --variant-pills-radius: 40px;
  --variant-pills-border-width: 1px;
  --variant-pills-border-opacity: 0.55;
  --variant-pills-shadow-opacity: 0;
  --variant-pills-shadow-horizontal-offset: 0px;
  --variant-pills-shadow-vertical-offset: 4px;
  --variant-pills-shadow-blur-radius: 5px;

  /* CUSTOM VARIABLES */
  --color-light: #fafcfe;
  --color-primary: #3e25c8;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  font-size: calc(var(--font-body-scale) * 62.5%);
  height: 100%;
}

body {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  grid-template-columns: 100%;
  min-height: 100%;
  margin: 0;
  font-size: 1.5rem;
  letter-spacing: 0.06rem;
  line-height: calc(1 + 0.8 / var(--font-body-scale));
  font-family: var(--font-body-family);
  font-style: var(--font-body-style);
  font-weight: var(--font-body-weight);
}

@media screen and (min-width: 750px) {
  body {
    font-size: 1.6rem;
  }
}
