Skip to content
On this page

Custom theme

You can modify the styling of the product selector in many aspects. All modification is done via custom css properties.

Colors

css
#psa {
  --psa-color-primary: #1a1a1a;
  --psa-color-primary-invert: #fff;
  --psa-color-highlight: #00f;
  --psa-color-highlight-invert: #fff;
  --psa-color-grey: #aaa;
  --psa-color-grey-light: #f1f1f1;
  --psa-color-shadow: rgba(0 0 0 / 0.1);
}

Sizes

css
#psa {
  --psa-size-0: 0;
  --psa-size-1: 3rem;
  --psa-size-1-min: 1.75rem;
  --psa-size-1-pref: 3vw;
  --psa-size-1-max: 3rem;
  --psa-size-2: 2.5rem;
  --psa-size-2-min: 1.5rem;
  --psa-size-2-pref: 2.5vw;
  --psa-size-2-max: 2.5rem;
  --psa-size-3: 2rem;
  --psa-size-3-min: 1.35rem;
  --psa-size-3-pref: 2vw;
  --psa-size-3-max: 2rem;
  --psa-size-4: 1.75rem;
  --psa-size-4-min: 1.25rem;
  --psa-size-4-pref: 1.5vw;
  --psa-size-4-max: 1.75rem;
  --psa-size-5: 1.35rem;
  --psa-size-5-min: 1.15rem;
  --psa-size-5-pref: 1.25vw;
  --psa-size-5-max: 1.35rem;
  --psa-size-6: 1rem;
  --psa-size-6-min: 1rem;
  --psa-size-6-pref: 1rem;
  --psa-size-6-max: 1rem;
  --psa-size-7: 0.75rem;
  --psa-size-7-min: 0.75rem;
  --psa-size-7-pref: 0.75rem;
  --psa-size-7-max: 0.75rem;
}

Typography

css
#psa {
    --psa-font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;
    --psa-font-weight-light: 300;
    --psa-font-weight-normal: 400;
    --psa-font-weight-bold: 600;
}

Radius

css
#psa {
  --psa-radius-large: 16px;
  --psa-radius: 8px;
  --psa-radius-small: 4px;
}

App

css
#psa {
  --psa-app-margin: 1.5rem;
}

Elements

Title

css
#psa {
  --psa-title-family: var(--psa-font-family);
  --psa-title-weight: var(--psa-font-weight-bold);
}

Subtitle

css
#psa {
  --psa-subtitle-family: var(--psa-font-family);
  --psa-subtitle-weight: var(--psa-font-weight-light);
}

Input

css
#psa {
  --psa-input-color: var(--psa-color-primary);
  --psa-input-background-color: var(--psa-color-primary-invert);
  --psa-input-outline-color: var(--psa-color-primary);
  --psa-input-border-color: var(--psa-color-primary);
  --psa-input-border-radius: 0;
  --psa-input-font-weight: var(--psa-font-weight-bold);
  --psa-input-placeholder-color: var(--psa-color-grey);
  --psa-input-error-color: red;
  --psa-input-padding-x: 0.5em;
  --psa-input-padding-y: 0.5em;
  --psa-input-border-width: 1px;
}

Button

css
#psa {
  --psa-button-color: var(--psa-color-highlight);
  --psa-button-color-invert: var(--psa-color-highlight-invert);
  --psa-button-border-radius: var(--psa-radius-small);
  --psa-button-border-width: 2px;
  --psa-button-font-weight: var(--psa-font-weight-normal);
  --psa-button-padding-y: 0.5em;
  --psa-button-padding-x: 1.25em;
}