@charset "UTF-8";
/**
 * Do not edit directly, this file was auto-generated.
 */
:root {
  --bal-color-white: #FFFFFF;
  --bal-color-black: #000000;
  --bal-color-neutral: rgba(255, 255, 255, 0);
  --bal-color-danger-1: #FCE8E6;
  --bal-color-danger-2: #F7A299;
  --bal-color-danger-3: #F05D4D;
  --bal-color-danger-4: #EA1800;
  --bal-color-danger-5: #CB1501;
  --bal-color-danger-6: #A01100;
  --bal-color-warning-1: #FFF9E8;
  --bal-color-warning-2: #FFE5A3;
  --bal-color-warning-3: #FFD25E;
  --bal-color-warning-4: #FFBE19;
  --bal-color-warning-5: #F99319;
  --bal-color-warning-6: #C97612;
  --bal-color-success-1: #E8F3EC;
  --bal-color-success-2: #A1CFB3;
  --bal-color-success-3: #5BAB7A;
  --bal-color-success-4: #168741;
  --bal-color-success-5: #116B34;
  --bal-color-success-6: #0B5227;
  --bal-color-info-1: #E8F1FB;
  --bal-color-info-2: #A4C9ED;
  --bal-color-info-3: #60A0E0;
  --bal-color-info-4: #1C77D2;
  --bal-color-info-5: #155BA3;
  --bal-color-info-6: #0E457B;
  --bal-color-sky-1: #E5F1FE;
  --bal-color-sky-2: #A7D1FA;
  --bal-color-sky-3: #56A7F5;
  --bal-color-sky-4: #6672CC;
  --bal-color-sky-5: #0014AA;
  --bal-color-sky-6: #000A55;
  --bal-color-grey-1: #FAFAFA;
  --bal-color-grey-2: #F6F6F6;
  --bal-color-grey-3: #E8E8E8;
  --bal-color-grey-4: #B6B6B6;
  --bal-color-grey-5: #747474;
  --bal-color-grey-6: #313131;
  --bal-color-yellow-1: #FFF9E8;
  --bal-color-yellow-2: #FFECBC;
  --bal-color-yellow-3: #FAE052;
  --bal-color-yellow-4: #FFBE19;
  --bal-color-yellow-5: #FA9319;
  --bal-color-yellow-6: #B24A00;
  --bal-color-red-1: #FFEEF1;
  --bal-color-red-2: #FFD7D7;
  --bal-color-red-3: #FFACA6;
  --bal-color-red-4: #FF596F;
  --bal-color-red-5: #D9304C;
  --bal-color-red-6: #99172D;
  --bal-color-green-1: #E9FBF7;
  --bal-color-green-2: #CBF2EC;
  --bal-color-green-3: #94E3D4;
  --bal-color-green-4: #21D9AC;
  --bal-color-green-5: #00B28F;
  --bal-color-green-6: #1B5951;
  --bal-color-purple-1: #F9F3FF;
  --bal-color-purple-2: #E1D9FF;
  --bal-color-purple-3: #B8B2FF;
  --bal-color-purple-4: #BE82FA;
  --bal-color-purple-5: #9F52CC;
  --bal-color-purple-6: #6C2273;
  --bal-color-primary-1: #E5E7F0;
  --bal-color-primary-2: #B3B6D4;
  --bal-color-primary-3: #656EA8;
  --bal-color-primary-4: #293485;
  --bal-color-primary-5: #000D6E;
  --bal-color-primary-6: #000739;
  --bal-elevation-shadow-0: none;
  --bal-elevation-shadow-1: 0 2px 5px 1px rgba(0, 7, 57, 0.12);
  --bal-elevation-shadow-2: 0 4px 4px 0 rgba(0, 7, 57, 0.15);
  --bal-elevation-shadow-3: 0 0 10px 0 rgba(0, 7, 57, 0.15);
  --bal-elevation-shadow-4: 0 0 30px 0 rgba(0, 7, 57, 0.15);
  --bal-elevation-opacity-0: 0;
  --bal-elevation-opacity-30: 0.3;
  --bal-elevation-opacity-40: 0.4;
  --bal-elevation-opacity-50: 0.5;
  --bal-elevation-opacity-60: 0.6;
  --bal-elevation-opacity-80: 0.8;
  --bal-elevation-opacity-100: 1;
  --bal-elevation-z-index-100: 6.25rem;
  --bal-elevation-z-index-200: 12.5rem;
  --bal-elevation-z-index-300: 18.75rem;
  --bal-elevation-z-index-400: 25rem;
  --bal-elevation-z-index-1000: 62.5rem;
  --bal-elevation-z-index-1100: 68.75rem;
  --bal-elevation-z-index-1200: 75rem;
  --bal-elevation-z-index-1300: 81.25rem;
  --bal-elevation-z-index-behind-all: -62499.9375rem;
  --bal-font-shadow-0: none;
  --bal-font-shadow-1: 0px 0px 4px rgba(0, 0, 0, 0.15), 0px 4px 12px rgba(0, 0, 0, 0.25), 0px 0px 80px rgba(0, 0, 0, 0.5);
  --bal-font-size-0: 0rem;
  --bal-font-size-12: 0.75rem;
  --bal-font-size-14: 0.875rem;
  --bal-font-size-16: 1rem;
  --bal-font-size-18: 1.125rem;
  --bal-font-size-20: 1.25rem;
  --bal-font-size-24: 1.5rem;
  --bal-font-size-28: 1.75rem;
  --bal-font-size-32: 2rem;
  --bal-font-size-40: 2.5rem;
  --bal-font-size-48: 3rem;
  --bal-font-size-80: 5rem;
  --bal-font-size-176: 11rem;
  --bal-font-family-heading: "BaloiseCreateHeadline", "Arial", "sans-serif";
  --bal-font-family-body: "BaloiseCreateText", "Arial", "sans-serif";
  --bal-font-weight-300: 300;
  --bal-font-weight-400: 400;
  --bal-font-weight-700: 700;
  --bal-font-line-height-1: 1;
  --bal-font-line-height-2: 1.3;
  --bal-font-line-height-3: 1.5;
  --bal-font-line-height-4: 2;
  --bal-size-border-0: 0rem;
  --bal-size-border-1: 0.0625rem;
  --bal-size-border-2: 0.125rem;
  --bal-size-border-3: 0.25rem;
  --bal-size-radius-0: 0rem;
  --bal-size-radius-1: 0.25rem;
  --bal-size-radius-2: 0.75rem;
  --bal-size-radius-3: 9999px;
  --bal-size-breakpoint-1: 769px;
  --bal-size-breakpoint-2: 1024px;
  --bal-size-breakpoint-3: 1280px;
  --bal-size-breakpoint-4: 1440px;
  --bal-size-breakpoint-5: 1920px;
  --bal-size-container-1: 320px;
  --bal-size-container-2: 480px;
  --bal-size-container-3: 640px;
  --bal-size-container-4: 896px;
  --bal-size-container-5: 1496px;
  --bal-size-container-full: 100%;
  --bal-size-space-0: 0rem;
  --bal-size-space-1: 0.0625rem;
  --bal-size-space-2: 0.125rem;
  --bal-size-space-4: 0.25rem;
  --bal-size-space-8: 0.5rem;
  --bal-size-space-12: 0.75rem;
  --bal-size-space-14: 0.875rem;
  --bal-size-space-16: 1rem;
  --bal-size-space-20: 1.25rem;
  --bal-size-space-24: 1.5rem;
  --bal-size-space-32: 2rem;
  --bal-size-space-40: 2.5rem;
  --bal-size-space-48: 3rem;
  --bal-size-space-56: 3.5rem;
  --bal-size-space-64: 4rem;
  --bal-size-space-72: 4.5rem;
  --bal-size-space-96: 6rem;
  --bal-size-space-128: 8rem;
  --bal-size-space-auto: auto;
  --bal-interaction-focus-size-inner: 2;
  --bal-interaction-focus-size-outer: 5;
  --bal-interaction-focus-size-inner-inset: 3;
  --bal-interaction-focus-size-outer-inset: 5;
  --bal-heading-color-base: inherit;
  --bal-close-color-background-hover: rgba(0, 7, 57, 0.10000000149011612);
  --bal-close-color-background-active: rgba(0, 7, 57, 0.30000001192092896);
  --bal-close-color-background-inverted-hover: rgba(255, 255, 255, 0.30000001192092896);
  --bal-close-color-background-inverted-active: rgba(255, 255, 255, 0.5);
  --bal-card-color-base-text: inherit;
  --bal-card-color-white-text: inherit;
  --bal-card-color-info-text: inherit;
  --bal-card-color-success-text: inherit;
  --bal-card-color-warning-text: inherit;
  --bal-card-color-danger-text: inherit;
  --bal-card-color-grey-light-text: inherit;
  --bal-card-color-grey-text: inherit;
  --bal-card-color-red-lighter-text: inherit;
  --bal-card-color-red-light-text: inherit;
  --bal-card-color-red-text: inherit;
  --bal-card-color-purple-lighter-text: inherit;
  --bal-card-color-purple-light-text: inherit;
  --bal-card-color-purple-text: inherit;
  --bal-card-color-green-lighter-text: inherit;
  --bal-card-color-green-light-text: inherit;
  --bal-card-color-green-text: inherit;
  --bal-card-color-yellow-lighter-text: inherit;
  --bal-card-color-yellow-light-text: inherit;
  --bal-card-color-yellow-text: inherit;
  --bal-notification-color-base-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M5.52 3.448C6.452 2.521 7.716 2 9.033 2s2.562 0.521 3.493 1.448C13.478 4.374 14.001 5.632 14.001 6.942v4.413c0 0.31 0.124 0.605 0.344 0.824 0.249 0.248 0.445 0.342 0.719 0.342 0.278 0 0.503 0.224 0.503 0.501 0 0.277-0.225 0.501-0.503 0.501H3.003c-0.278 0-0.503-0.224-0.503-0.501 0-0.277 0.225-0.501 0.503-0.501 0.275 0 0.47-0.094 0.719-0.342 0.219-0.219 0.344-0.514 0.344-0.824V6.942c0-1.311 0.523-2.569 1.456-3.494zM7.274 15.25c0-0.414 0.338-0.75 0.754-0.75h2.01c0.416 0 0.754 0.336 0.754 0.75s-0.338 0.75-0.754 0.75h-2.01c-0.416 0-0.754-0.336-0.754-0.75z" fill="black"/></svg>');
  --bal-notification-color-info-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M6.176 13.705c-0.65 0-1.176 0.514-1.176 1.147 0 0.635 0.526 1.149 1.176 1.149h2.824h2.824c0.65 0 1.176-0.514 1.176-1.149 0-0.633-0.526-1.147-1.176-1.147h-1.647V8.426c0-0.634-0.526-1.147-1.176-1.147H7.118C6.468 7.279 5.941 7.792 5.941 8.426c0 0.633 0.526 1.147 1.176 1.147h0.706v4.132H6.176zM10.882 3.836c0 1.014-0.843 1.836-1.882 1.836S7.118 4.85 7.118 3.836C7.118 2.822 7.96 2 9 2s1.882 0.822 1.882 1.836z" fill="black"/></svg>');
  --bal-notification-color-success-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M15.637 3.247c0.426 0.379 0.486 1.059 0.134 1.518L7.73 15.251l-0.002 0.003c-0.183 0.237-0.413 0.426-0.672 0.555-0.26 0.13-0.543 0.195-0.829 0.191-0.291-0.004-0.577-0.08-0.837-0.219-0.259-0.14-0.485-0.341-0.662-0.588l-2.517-3.488c-0.339-0.47-0.261-1.147 0.175-1.512 0.436-0.365 1.064-0.28 1.403 0.19l2.463 3.414 7.976-10.403c0.352-0.459 0.982-0.524 1.408-0.144z" fill="black"/></svg>');
  --bal-notification-color-warning-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-notification-color-danger-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-notification-color-outline-base-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M5.52 3.448C6.452 2.521 7.716 2 9.033 2s2.562 0.521 3.493 1.448C13.478 4.374 14.001 5.632 14.001 6.942v4.413c0 0.31 0.124 0.605 0.344 0.824 0.249 0.248 0.445 0.342 0.719 0.342 0.278 0 0.503 0.224 0.503 0.501 0 0.277-0.225 0.501-0.503 0.501H3.003c-0.278 0-0.503-0.224-0.503-0.501 0-0.277 0.225-0.501 0.503-0.501 0.275 0 0.47-0.094 0.719-0.342 0.219-0.219 0.344-0.514 0.344-0.824V6.942c0-1.311 0.523-2.569 1.456-3.494zM7.274 15.25c0-0.414 0.338-0.75 0.754-0.75h2.01c0.416 0 0.754 0.336 0.754 0.75s-0.338 0.75-0.754 0.75h-2.01c-0.416 0-0.754-0.336-0.754-0.75z" fill="black"/></svg>');
  --bal-notification-color-outline-purple-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M6.176 13.705c-0.65 0-1.176 0.514-1.176 1.147 0 0.635 0.526 1.149 1.176 1.149h2.824h2.824c0.65 0 1.176-0.514 1.176-1.149 0-0.633-0.526-1.147-1.176-1.147h-1.647V8.426c0-0.634-0.526-1.147-1.176-1.147H7.118C6.468 7.279 5.941 7.792 5.941 8.426c0 0.633 0.526 1.147 1.176 1.147h0.706v4.132H6.176zM10.882 3.836c0 1.014-0.843 1.836-1.882 1.836S7.118 4.85 7.118 3.836C7.118 2.822 7.96 2 9 2s1.882 0.822 1.882 1.836z" fill="black"/></svg>');
  --bal-notification-color-outline-green-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M15.637 3.247c0.426 0.379 0.486 1.059 0.134 1.518L7.73 15.251l-0.002 0.003c-0.183 0.237-0.413 0.426-0.672 0.555-0.26 0.13-0.543 0.195-0.829 0.191-0.291-0.004-0.577-0.08-0.837-0.219-0.259-0.14-0.485-0.341-0.662-0.588l-2.517-3.488c-0.339-0.47-0.261-1.147 0.175-1.512 0.436-0.365 1.064-0.28 1.403 0.19l2.463 3.414 7.976-10.403c0.352-0.459 0.982-0.524 1.408-0.144z" fill="black"/></svg>');
  --bal-notification-color-outline-yellow-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-notification-color-outline-red-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-link-family: inherit;
  --bal-toast-success-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M15.637 3.247c0.426 0.379 0.486 1.059 0.134 1.518L7.73 15.251l-0.002 0.003c-0.183 0.237-0.413 0.426-0.672 0.555-0.26 0.13-0.543 0.195-0.829 0.191-0.291-0.004-0.577-0.08-0.837-0.219-0.259-0.14-0.485-0.341-0.662-0.588l-2.517-3.488c-0.339-0.47-0.261-1.147 0.175-1.512 0.436-0.365 1.064-0.28 1.403 0.19l2.463 3.414 7.976-10.403c0.352-0.459 0.982-0.524 1.408-0.144z" fill="black"/></svg>');
  --bal-toast-info-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M6.176 13.705c-0.65 0-1.176 0.514-1.176 1.147 0 0.635 0.526 1.149 1.176 1.149h2.824h2.824c0.65 0 1.176-0.514 1.176-1.149 0-0.633-0.526-1.147-1.176-1.147h-1.647V8.426c0-0.634-0.526-1.147-1.176-1.147H7.118C6.468 7.279 5.941 7.792 5.941 8.426c0 0.633 0.526 1.147 1.176 1.147h0.706v4.132H6.176zM10.882 3.836c0 1.014-0.843 1.836-1.882 1.836S7.118 4.85 7.118 3.836C7.118 2.822 7.96 2 9 2s1.882 0.822 1.882 1.836z" fill="black"/></svg>');
  --bal-toast-base-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M5.52 3.448C6.452 2.521 7.716 2 9.033 2s2.562 0.521 3.493 1.448C13.478 4.374 14.001 5.632 14.001 6.942v4.413c0 0.31 0.124 0.605 0.344 0.824 0.249 0.248 0.445 0.342 0.719 0.342 0.278 0 0.503 0.224 0.503 0.501 0 0.277-0.225 0.501-0.503 0.501H3.003c-0.278 0-0.503-0.224-0.503-0.501 0-0.277 0.225-0.501 0.503-0.501 0.275 0 0.47-0.094 0.719-0.342 0.219-0.219 0.344-0.514 0.344-0.824V6.942c0-1.311 0.523-2.569 1.456-3.494zM7.274 15.25c0-0.414 0.338-0.75 0.754-0.75h2.01c0.416 0 0.754 0.336 0.754 0.75s-0.338 0.75-0.754 0.75h-2.01c-0.416 0-0.754-0.336-0.754-0.75z" fill="black"/></svg>');
  --bal-toast-warning-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-toast-danger-icon: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18"><path d="M9.333 2c0.805 0 1.458 0.514 1.458 1.148v5.508c0 0.634-0.653 1.148-1.458 1.148s-1.458-0.514-1.458-1.148V3.148C7.875 2.514 8.528 2 9.333 2zM9.333 16c1.289 0 2.334-0.822 2.334-1.836s-1.045-1.836-2.334-1.836S7 13.15 7 14.164 8.044 16 9.333 16z" fill="black"/></svg>');
  --bal-background-color-white: var(--bal-color-white);
  --bal-background-color-transparent: var(--bal-color-neutral);
  --bal-background-color-sky-light: var(--bal-color-sky-1);
  --bal-background-color-sky: var(--bal-color-sky-2);
  --bal-background-color-sky-dark: var(--bal-color-sky-3);
  --bal-background-color-disabled: var(--bal-color-grey-3);
  --bal-background-color-info: var(--bal-color-info-3);
  --bal-background-color-info-light: var(--bal-color-info-2);
  --bal-background-color-info-dark: var(--bal-color-info-4);
  --bal-background-color-info-darker: var(--bal-color-info-5);
  --bal-background-color-info-darkest: var(--bal-color-info-6);
  --bal-background-color-success: var(--bal-color-success-3);
  --bal-background-color-success-lighter: var(--bal-color-success-1);
  --bal-background-color-success-light: var(--bal-color-success-2);
  --bal-background-color-success-dark: var(--bal-color-success-4);
  --bal-background-color-success-darker: var(--bal-color-success-5);
  --bal-background-color-success-darkest: var(--bal-color-success-6);
  --bal-background-color-warning-lighter: var(--bal-color-warning-1);
  --bal-background-color-warning-light: var(--bal-color-warning-2);
  --bal-background-color-warning: var(--bal-color-warning-3);
  --bal-background-color-warning-dark: var(--bal-color-warning-4);
  --bal-background-color-warning-darker: var(--bal-color-warning-5);
  --bal-background-color-warning-darkest: var(--bal-color-warning-6);
  --bal-background-color-danger-lighter: var(--bal-color-danger-1);
  --bal-background-color-danger-light: var(--bal-color-danger-2);
  --bal-background-color-danger: var(--bal-color-danger-3);
  --bal-background-color-danger-dark: var(--bal-color-danger-4);
  --bal-background-color-danger-darker: var(--bal-color-danger-5);
  --bal-background-color-danger-darkest: var(--bal-color-danger-6);
  --bal-background-color-green-light-2: var(--bal-color-green-1);
  --bal-background-color-grey-light: var(--bal-color-grey-2);
  --bal-background-color-grey: var(--bal-color-grey-3);
  --bal-background-color-grey-dark: var(--bal-color-grey-4);
  --bal-background-color-primary-light: var(--bal-color-primary-3);
  --bal-background-color-primary: var(--bal-color-primary-5);
  --bal-background-color-primary-hover: var(--bal-color-sky-5);
  --bal-background-color-primary-active: var(--bal-color-primary-6);
  --bal-background-color-green-lighter: var(--bal-color-green-1);
  --bal-background-color-green-light: var(--bal-color-green-2);
  --bal-background-color-green: var(--bal-color-green-3);
  --bal-background-color-purple-lighter: var(--bal-color-purple-1);
  --bal-background-color-purple-light: var(--bal-color-purple-2);
  --bal-background-color-purple: var(--bal-color-purple-3);
  --bal-background-color-red-lighter: var(--bal-color-red-1);
  --bal-background-color-red-light: var(--bal-color-red-2);
  --bal-background-color-red: var(--bal-color-red-3);
  --bal-background-color-yellow-lighter: var(--bal-color-yellow-1);
  --bal-background-color-yellow-light: var(--bal-color-yellow-2);
  --bal-background-color-yellow: var(--bal-color-yellow-3);
  --bal-border-color-white: var(--bal-color-white);
  --bal-border-color-base: var(--bal-color-grey-3);
  --bal-border-color-inverted: var(--bal-color-white);
  --bal-border-color-disabled: var(--bal-color-grey-4);
  --bal-border-color-disabled-inverted: var(--bal-color-primary-3);
  --bal-border-color-grey-light: var(--bal-color-grey-3);
  --bal-border-color-grey: var(--bal-color-grey-3);
  --bal-border-color-grey-dark: var(--bal-color-grey-4);
  --bal-border-color-primary-light: var(--bal-color-primary-3);
  --bal-border-color-primary: var(--bal-color-primary-5);
  --bal-border-color-primary-hover: var(--bal-color-sky-5);
  --bal-border-color-primary-active: var(--bal-color-primary-6);
  --bal-border-color-inverted-primary: var(--bal-color-primary-4);
  --bal-border-color-inverted-primary-hover: var(--bal-color-sky-2);
  --bal-border-color-inverted-primary-active: var(--bal-color-sky-4);
  --bal-border-color-info: var(--bal-color-info-4);
  --bal-border-color-info-hover: var(--bal-color-info-5);
  --bal-border-color-info-active: var(--bal-color-info-6);
  --bal-border-color-success: var(--bal-color-success-4);
  --bal-border-color-success-hover: var(--bal-color-success-5);
  --bal-border-color-success-active: var(--bal-color-success-6);
  --bal-border-color-warning: var(--bal-color-warning-4);
  --bal-border-color-warning-hover: var(--bal-color-warning-5);
  --bal-border-color-warning-active: var(--bal-color-warning-6);
  --bal-border-color-danger: var(--bal-color-danger-4);
  --bal-border-color-danger-hover: var(--bal-color-danger-5);
  --bal-border-color-danger-active: var(--bal-color-danger-6);
  --bal-border-color-green: var(--bal-color-green-4);
  --bal-border-color-green-hover: var(--bal-color-green-5);
  --bal-border-color-green-active: var(--bal-color-green-6);
  --bal-border-color-purple: var(--bal-color-purple-4);
  --bal-border-color-purple-hover: var(--bal-color-purple-5);
  --bal-border-color-purple-active: var(--bal-color-purple-6);
  --bal-border-color-red: var(--bal-color-red-4);
  --bal-border-color-red-hover: var(--bal-color-red-5);
  --bal-border-color-red-active: var(--bal-color-red-6);
  --bal-border-color-yellow: var(--bal-color-yellow-4);
  --bal-border-color-yellow-hover: var(--bal-color-yellow-5);
  --bal-border-color-yellow-active: var(--bal-color-yellow-6);
  --bal-border-width-none: var(--bal-size-border-0);
  --bal-border-width-base: var(--bal-size-border-2);
  --bal-border-width-md: var(--bal-size-border-3);
  --bal-breakpoint-tablet: var(--bal-size-breakpoint-1);
  --bal-breakpoint-desktop: var(--bal-size-breakpoint-2);
  --bal-breakpoint-desktop-lg: var(--bal-size-breakpoint-3); /** HighDefinition */
  --bal-breakpoint-desktop-xl: var(--bal-size-breakpoint-4); /** Widescreen */
  --bal-breakpoint-desktop-2xl: var(--bal-size-breakpoint-5); /** FullHD */
  --bal-container-width-modal: var(--bal-size-container-3);
  --bal-container-width-compact: var(--bal-size-container-4);
  --bal-container-width-base: var(--bal-size-container-5);
  --bal-container-width-fluid: var(--bal-size-container-full);
  --bal-container-space-mobile: var(--bal-size-space-16);
  --bal-container-space-tablet: var(--bal-size-space-40);
  --bal-container-space-desktop: var(--bal-size-space-48);
  --bal-interaction-focus-color-base: var(--bal-color-purple-6);
  --bal-interaction-focus-color-inverted: var(--bal-color-yellow-3);
  --bal-opacity-hidden: var(--bal-elevation-opacity-0);
  --bal-opacity-half: var(--bal-elevation-opacity-50);
  --bal-opacity-disabled: var(--bal-elevation-opacity-60);
  --bal-opacity-backdrop: var(--bal-elevation-opacity-80);
  --bal-opacity-full: var(--bal-elevation-opacity-100);
  --bal-radius-none: var(--bal-size-radius-0);
  --bal-radius-base: var(--bal-size-radius-1);
  --bal-radius-lg: var(--bal-size-radius-2);
  --bal-radius-rounded: var(--bal-size-radius-3);
  --bal-space-none-mobile: var(--bal-size-space-0);
  --bal-space-none-tablet: var(--bal-size-space-0);
  --bal-space-none-desktop: var(--bal-size-space-0);
  --bal-space-auto-mobile: var(--bal-size-space-auto);
  --bal-space-auto-tablet: var(--bal-size-space-auto);
  --bal-space-auto-desktop: var(--bal-size-space-auto);
  --bal-space-2xs-mobile: var(--bal-size-space-4);
  --bal-space-2xs-tablet: var(--bal-size-space-4);
  --bal-space-2xs-desktop: var(--bal-size-space-4);
  --bal-space-xs-mobile: var(--bal-size-space-8);
  --bal-space-xs-tablet: var(--bal-size-space-8);
  --bal-space-xs-desktop: var(--bal-size-space-8);
  --bal-space-sm-mobile: var(--bal-size-space-12);
  --bal-space-sm-tablet: var(--bal-size-space-12);
  --bal-space-sm-desktop: var(--bal-size-space-12);
  --bal-space-base-mobile: var(--bal-size-space-16);
  --bal-space-base-tablet: var(--bal-size-space-16);
  --bal-space-base-desktop: var(--bal-size-space-16);
  --bal-space-md-mobile: var(--bal-size-space-20);
  --bal-space-md-tablet: var(--bal-size-space-20);
  --bal-space-md-desktop: var(--bal-size-space-24);
  --bal-space-lg-mobile: var(--bal-size-space-24);
  --bal-space-lg-tablet: var(--bal-size-space-24);
  --bal-space-lg-desktop: var(--bal-size-space-32);
  --bal-space-xl-mobile: var(--bal-size-space-32);
  --bal-space-xl-tablet: var(--bal-size-space-40);
  --bal-space-xl-desktop: var(--bal-size-space-48);
  --bal-space-2xl-mobile: var(--bal-size-space-48);
  --bal-space-2xl-tablet: var(--bal-size-space-56);
  --bal-space-2xl-desktop: var(--bal-size-space-64);
  --bal-space-3xl-mobile: var(--bal-size-space-56);
  --bal-space-3xl-tablet: var(--bal-size-space-72);
  --bal-space-3xl-desktop: var(--bal-size-space-96);
  --bal-space-4xl-mobile: var(--bal-size-space-64);
  --bal-space-4xl-tablet: var(--bal-size-space-96);
  --bal-space-4xl-desktop: var(--bal-size-space-128);
  --bal-text-shadow: var(--bal-font-shadow-1);
  --bal-text-size-none-mobile: var(--bal-font-size-0);
  --bal-text-size-none-tablet: var(--bal-font-size-0);
  --bal-text-size-none-desktop: var(--bal-font-size-0);
  --bal-text-size-xs-mobile: var(--bal-font-size-12);
  --bal-text-size-xs-tablet: var(--bal-font-size-12);
  --bal-text-size-xs-desktop: var(--bal-font-size-12);
  --bal-text-size-sm-mobile: var(--bal-font-size-14);
  --bal-text-size-sm-tablet: var(--bal-font-size-14);
  --bal-text-size-sm-desktop: var(--bal-font-size-14);
  --bal-text-size-base-mobile: var(--bal-font-size-16);
  --bal-text-size-base-tablet: var(--bal-font-size-16);
  --bal-text-size-base-desktop: var(--bal-font-size-16);
  --bal-text-size-md-mobile: var(--bal-font-size-16);
  --bal-text-size-md-tablet: var(--bal-font-size-18);
  --bal-text-size-md-desktop: var(--bal-font-size-18);
  --bal-text-size-lg-mobile: var(--bal-font-size-18);
  --bal-text-size-lg-tablet: var(--bal-font-size-18);
  --bal-text-size-lg-desktop: var(--bal-font-size-18);
  --bal-text-size-xl-mobile: var(--bal-font-size-20);
  --bal-text-size-xl-tablet: var(--bal-font-size-24);
  --bal-text-size-xl-desktop: var(--bal-font-size-24);
  --bal-text-size-2xl-mobile: var(--bal-font-size-24);
  --bal-text-size-2xl-tablet: var(--bal-font-size-32);
  --bal-text-size-2xl-desktop: var(--bal-font-size-32);
  --bal-text-size-3xl-mobile: var(--bal-font-size-28);
  --bal-text-size-3xl-tablet: var(--bal-font-size-40);
  --bal-text-size-3xl-desktop: var(--bal-font-size-40);
  --bal-text-size-4xl-mobile: var(--bal-font-size-32);
  --bal-text-size-4xl-tablet: var(--bal-font-size-48);
  --bal-text-size-4xl-desktop: var(--bal-font-size-48);
  --bal-text-size-5xl-mobile: var(--bal-font-size-48);
  --bal-text-size-5xl-tablet: var(--bal-font-size-80);
  --bal-text-size-5xl-desktop: var(--bal-font-size-80);
  --bal-text-family-heading: var(--bal-font-family-heading);
  --bal-text-family-body: var(--bal-font-family-body);
  --bal-text-line-height-single: var(--bal-font-line-height-1);
  --bal-text-line-height-heading: var(--bal-font-line-height-2);
  --bal-text-line-height-body: var(--bal-font-line-height-3);
  --bal-text-line-height-double: var(--bal-font-line-height-4);
  --bal-text-weight-light: var(--bal-font-weight-300);
  --bal-text-weight-regular: var(--bal-font-weight-400);
  --bal-text-weight-bold: var(--bal-font-weight-700);
  --bal-text-color-white: var(--bal-color-white);
  --bal-text-color-primary-light: var(--bal-color-primary-3);
  --bal-text-color-disabled: var(--bal-color-grey-5);
  --bal-text-color-info: var(--bal-color-info-4);
  --bal-text-color-warning: var(--bal-color-warning-5);
  --bal-text-color-success: var(--bal-color-success-4);
  --bal-text-color-danger: var(--bal-color-danger-4);
  --bal-text-color-danger-hover: var(--bal-color-danger-5);
  --bal-text-color-danger-active: var(--bal-color-danger-6);
  --bal-text-color-primary: var(--bal-color-primary-5);
  --bal-text-color-primary-hover: var(--bal-color-sky-5);
  --bal-text-color-primary-active: var(--bal-color-primary-6);
  --bal-text-color-inverted-primary-hover: var(--bal-color-sky-2);
  --bal-text-color-inverted-primary-active: var(--bal-color-info-3);
  --bal-text-color-grey-light: var(--bal-color-grey-4);
  --bal-text-color-grey: var(--bal-color-grey-5);
  --bal-text-color-grey-dark: var(--bal-color-grey-6);
  --bal-shadow-text: var(--bal-font-shadow-1);
  --bal-shadow-box-none: var(--bal-elevation-shadow-0);
  --bal-shadow-box-header: var(--bal-elevation-shadow-2);
  --bal-shadow-box-base: var(--bal-elevation-shadow-3);
  --bal-shadow-box-elevated: var(--bal-elevation-shadow-4);
  --bal-z-index-deep: var(--bal-elevation-z-index-behind-all);
  --bal-z-index-masked: var(--bal-elevation-z-index-100);
  --bal-z-index-mask: var(--bal-elevation-z-index-200);
  --bal-z-index-sticky: var(--bal-elevation-z-index-300);
  --bal-z-index-navigation: var(--bal-elevation-z-index-400);
  --bal-z-index-popup: var(--bal-elevation-z-index-1000);
  --bal-z-index-modal: var(--bal-elevation-z-index-1100);
  --bal-z-index-toast: var(--bal-elevation-z-index-1200);
  --bal-z-index-tooltip: var(--bal-elevation-z-index-1300);
  --bal-heading-shadow: var(--bal-font-shadow-1);
  --bal-icon-tile-size-base-mobile: var(--bal-size-space-32);
  --bal-icon-tile-size-base-tablet: var(--bal-size-space-48);
  --bal-icon-tile-size-lg-mobile: var(--bal-size-space-48);
  --bal-icon-tile-size-lg-tablet: var(--bal-size-space-64);
  --bal-icon-tile-size-xl-mobile: var(--bal-size-space-64);
  --bal-icon-tile-size-xl-tablet: var(--bal-size-space-96);
  --bal-icon-size-xs: var(--bal-font-size-12);
  --bal-icon-size-sm: var(--bal-font-size-14);
  --bal-icon-size-base: var(--bal-font-size-16);
  --bal-icon-size-md: var(--bal-font-size-24);
  --bal-icon-size-lg: var(--bal-font-size-40);
  --bal-icon-size-xl: var(--bal-font-size-80);
  --bal-icon-size-2xl: var(--bal-font-size-176);
  --bal-tag-color-purple-dark-background: var(--bal-color-purple-6);
  --bal-tag-color-red-dark-background: var(--bal-color-red-6);
  --bal-tag-color-green-dark-background: var(--bal-color-green-6);
  --bal-tag-color-yellow-dark-background: var(--bal-color-yellow-6);
  --bal-notification-color-outline-base-border: var(--bal-color-primary-2);
  --bal-interaction-focus-color-border: var(--bal-background-color-white);
  --bal-interaction-focus-color-end: var(--bal-interaction-focus-color-base);
  --bal-interaction-focus-color-inverted-end: var(--bal-interaction-focus-color-inverted);
  --bal-text-color-hint: var(--bal-text-color-primary-light);
  --bal-text-color-inverted-disabled: var(--bal-text-color-primary-light);
  --bal-text-color-inverted-primary: var(--bal-text-color-white);
  --bal-heading-1-space: var(--bal-space-xs-mobile);
  --bal-heading-1-size-mobile: var(--bal-text-size-3xl-mobile);
  --bal-heading-1-size-tablet: var(--bal-text-size-3xl-tablet);
  --bal-heading-1-size-desktop: var(--bal-text-size-3xl-desktop);
  --bal-heading-2-space: var(--bal-space-xs-mobile);
  --bal-heading-2-size-mobile: var(--bal-text-size-2xl-mobile);
  --bal-heading-2-size-tablet: var(--bal-text-size-2xl-tablet);
  --bal-heading-2-size-desktop: var(--bal-text-size-2xl-desktop);
  --bal-heading-3-space: var(--bal-space-xs-mobile);
  --bal-heading-3-size-mobile: var(--bal-text-size-xl-mobile);
  --bal-heading-3-size-tablet: var(--bal-text-size-xl-tablet);
  --bal-heading-3-size-desktop: var(--bal-text-size-xl-desktop);
  --bal-heading-4-space: var(--bal-space-xs-mobile);
  --bal-heading-4-size-mobile: var(--bal-text-size-lg-mobile);
  --bal-heading-4-size-tablet: var(--bal-text-size-lg-tablet);
  --bal-heading-4-size-desktop: var(--bal-text-size-lg-desktop);
  --bal-heading-5-space: var(--bal-space-xs-mobile);
  --bal-heading-5-size-mobile: var(--bal-text-size-base-mobile);
  --bal-heading-5-size-tablet: var(--bal-text-size-base-tablet);
  --bal-heading-5-size-desktop: var(--bal-text-size-base-desktop);
  --bal-heading-family: var(--bal-text-family-heading);
  --bal-heading-weight: var(--bal-text-weight-bold);
  --bal-heading-line-height: var(--bal-text-line-height-heading);
  --bal-heading-color-primary: var(--bal-text-color-primary);
  --bal-heading-color-white: var(--bal-text-color-white);
  --bal-heading-color-info: var(--bal-text-color-info);
  --bal-heading-color-success: var(--bal-text-color-success);
  --bal-heading-color-warning: var(--bal-text-color-warning);
  --bal-heading-color-danger: var(--bal-text-color-danger);
  --bal-heading-display1-space: var(--bal-space-base-mobile);
  --bal-heading-display1-size-mobile: var(--bal-text-size-5xl-mobile);
  --bal-heading-display1-size-tablet: var(--bal-text-size-5xl-tablet);
  --bal-heading-display1-size-desktop: var(--bal-text-size-5xl-desktop);
  --bal-heading-display2-space: var(--bal-space-base-mobile);
  --bal-heading-display2-size-mobile: var(--bal-text-size-4xl-mobile);
  --bal-heading-display2-size-tablet: var(--bal-text-size-4xl-tablet);
  --bal-heading-display2-size-desktop: var(--bal-text-size-4xl-desktop);
  --bal-heading-subtitle-family: var(--bal-text-family-heading);
  --bal-heading-subtitle-line-height: var(--bal-text-line-height-heading);
  --bal-heading-subtitle-weight: var(--bal-text-weight-light);
  --bal-close-radius: var(--bal-radius-rounded);
  --bal-close-color-background-base: var(--bal-background-color-transparent);
  --bal-close-color-icon-base: var(--bal-text-color-primary);
  --bal-close-color-icon-inverted: var(--bal-text-color-white);
  --bal-body-color: var(--bal-text-color-primary);
  --bal-body-family: var(--bal-text-family-body);
  --bal-body-line-height: var(--bal-text-line-height-body);
  --bal-body-size: var(--bal-text-size-base-mobile);
  --bal-body-space: var(--bal-space-base-mobile);
  --bal-body-weight: var(--bal-text-weight-regular);
  --bal-icon-color-primary: var(--bal-text-color-primary);
  --bal-icon-color-primary-light: var(--bal-text-color-primary-light);
  --bal-icon-color-success: var(--bal-text-color-success);
  --bal-icon-color-info: var(--bal-text-color-info);
  --bal-icon-color-warning: var(--bal-text-color-warning);
  --bal-icon-color-danger: var(--bal-text-color-danger);
  --bal-icon-color-white: var(--bal-text-color-white);
  --bal-icon-color-grey: var(--bal-text-color-grey);
  --bal-icon-color-disabled: var(--bal-text-color-grey-dark);
  --bal-icon-tile-radius: var(--bal-radius-base);
  --bal-icon-tile-color-purple: var(--bal-background-color-purple-lighter);
  --bal-icon-tile-color-red: var(--bal-background-color-red-lighter);
  --bal-icon-tile-color-green: var(--bal-background-color-green-lighter);
  --bal-icon-tile-color-yellow: var(--bal-background-color-yellow-lighter);
  --bal-spinner-size: var(--bal-space-2xl-mobile);
  --bal-spinner-circle-border-width: var(--bal-border-width-md);
  --bal-spinner-circle-size: var(--bal-space-lg-mobile);
  --bal-spinner-circle-color-background: var(--bal-background-color-grey);
  --bal-spinner-circle-color-progress: var(--bal-background-color-primary);
  --bal-spinner-circle-color-inverted-background: var(--bal-background-color-white);
  --bal-spinner-circle-color-inverted-progress: var(--bal-background-color-primary);
  --bal-tag-family: var(--bal-text-family-body);
  --bal-tag-weight: var(--bal-text-weight-bold);
  --bal-tag-line-height: var(--bal-text-line-height-body);
  --bal-tag-size: var(--bal-text-size-base-mobile);
  --bal-tag-space-y: var(--bal-space-2xs-mobile);
  --bal-tag-space-x: var(--bal-space-sm-mobile);
  --bal-tag-radius-base: var(--bal-radius-lg);
  --bal-tag-radius-square: var(--bal-radius-base);
  --bal-tag-radius-pill: var(--bal-radius-rounded);
  --bal-tag-color-base-text: var(--bal-text-color-primary);
  --bal-tag-color-base-background: var(--bal-background-color-grey);
  --bal-tag-color-primary-text: var(--bal-text-color-white);
  --bal-tag-color-primary-background: var(--bal-background-color-primary);
  --bal-tag-color-grey-text: var(--bal-text-color-white);
  --bal-tag-color-grey-background: var(--bal-background-color-grey-dark);
  --bal-tag-color-info-text: var(--bal-text-color-white);
  --bal-tag-color-info-background: var(--bal-background-color-info-dark);
  --bal-tag-color-success-text: var(--bal-text-color-white);
  --bal-tag-color-success-background: var(--bal-background-color-success-dark);
  --bal-tag-color-warning-text: var(--bal-text-color-primary);
  --bal-tag-color-warning-background: var(--bal-background-color-warning-dark);
  --bal-tag-color-danger-text: var(--bal-text-color-white);
  --bal-tag-color-danger-background: var(--bal-background-color-danger-dark);
  --bal-tag-color-purple-text: var(--bal-text-color-primary);
  --bal-tag-color-purple-background: var(--bal-background-color-purple);
  --bal-tag-color-purple-light-text: var(--bal-text-color-primary);
  --bal-tag-color-purple-light-background: var(--bal-background-color-purple-light);
  --bal-tag-color-purple-dark-text: var(--bal-text-color-white);
  --bal-tag-color-red-text: var(--bal-text-color-primary);
  --bal-tag-color-red-background: var(--bal-background-color-red);
  --bal-tag-color-red-light-text: var(--bal-text-color-primary);
  --bal-tag-color-red-light-background: var(--bal-background-color-red-light);
  --bal-tag-color-red-dark-text: var(--bal-text-color-white);
  --bal-tag-color-green-text: var(--bal-text-color-primary);
  --bal-tag-color-green-background: var(--bal-background-color-green);
  --bal-tag-color-green-light-text: var(--bal-text-color-primary);
  --bal-tag-color-green-light-background: var(--bal-background-color-green-light);
  --bal-tag-color-green-dark-text: var(--bal-text-color-white);
  --bal-tag-color-yellow-text: var(--bal-text-color-primary);
  --bal-tag-color-yellow-background: var(--bal-background-color-yellow);
  --bal-tag-color-yellow-light-text: var(--bal-text-color-primary);
  --bal-tag-color-yellow-light-background: var(--bal-background-color-yellow-light);
  --bal-tag-color-yellow-dark-text: var(--bal-text-color-white);
  --bal-tag-sm-size: var(--bal-text-size-sm-mobile);
  --bal-tag-sm-weight: var(--bal-text-weight-regular);
  --bal-tag-sm-space-y: var(--bal-space-none-mobile);
  --bal-tag-sm-space-x: var(--bal-space-sm-mobile);
  --bal-tag-md-size: var(--bal-text-size-base-mobile);
  --bal-tag-md-weight: var(--bal-text-weight-bold);
  --bal-tag-md-space-y: var(--bal-space-xs-mobile);
  --bal-tag-md-space-x: var(--bal-space-base-mobile);
  --bal-tag-lg-size: var(--bal-text-size-base-mobile);
  --bal-tag-lg-weight: var(--bal-text-weight-bold);
  --bal-tag-lg-space-y: var(--bal-space-sm-mobile);
  --bal-tag-lg-space-x: var(--bal-space-lg-mobile);
  --bal-label-family: var(--bal-text-family-body);
  --bal-label-weight: var(--bal-text-weight-bold);
  --bal-label-line-height: var(--bal-text-line-height-body);
  --bal-label-color-base: var(--bal-text-color-primary);
  --bal-label-color-base-hover: var(--bal-text-color-primary-hover);
  --bal-label-color-base-active: var(--bal-text-color-primary-active);
  --bal-label-color-disabled: var(--bal-text-color-disabled);
  --bal-label-color-success: var(--bal-text-color-success);
  --bal-label-color-warning: var(--bal-text-color-warning);
  --bal-label-color-danger: var(--bal-text-color-danger);
  --bal-label-color-danger-hover: var(--bal-text-color-danger-hover);
  --bal-label-color-danger-active: var(--bal-text-color-danger-active);
  --bal-label-size-3xl-mobile: var(--bal-text-size-3xl-mobile);
  --bal-label-size-3xl-tablet: var(--bal-text-size-3xl-tablet);
  --bal-label-size-3xl-desktop: var(--bal-text-size-3xl-desktop);
  --bal-label-size-2xl-mobile: var(--bal-text-size-2xl-mobile);
  --bal-label-size-2xl-tablet: var(--bal-text-size-2xl-tablet);
  --bal-label-size-2xl-desktop: var(--bal-text-size-2xl-desktop);
  --bal-label-size-xl-mobile: var(--bal-text-size-xl-mobile);
  --bal-label-size-xl-tablet: var(--bal-text-size-xl-tablet);
  --bal-label-size-xl-desktop: var(--bal-text-size-xl-desktop);
  --bal-label-size-lg-mobile: var(--bal-text-size-lg-mobile);
  --bal-label-size-lg-tablet: var(--bal-text-size-lg-tablet);
  --bal-label-size-lg-desktop: var(--bal-text-size-lg-tablet);
  --bal-label-size-md-mobile: var(--bal-text-size-md-mobile);
  --bal-label-size-md-tablet: var(--bal-text-size-md-tablet);
  --bal-label-size-md-desktop: var(--bal-text-size-md-desktop);
  --bal-label-size-base-mobile: var(--bal-text-size-base-mobile);
  --bal-label-size-base-tablet: var(--bal-text-size-base-tablet);
  --bal-label-size-base-desktop: var(--bal-text-size-base-tablet);
  --bal-label-size-sm-mobile: var(--bal-text-size-sm-mobile);
  --bal-label-size-sm-tablet: var(--bal-text-size-sm-tablet);
  --bal-label-size-sm-desktop: var(--bal-space-sm-desktop);
  --bal-divider-radius: var(--bal-radius-rounded);
  --bal-divider-width: var(--bal-border-width-base);
  --bal-divider-color-base: var(--bal-border-color-grey);
  --bal-divider-color-primary-light: var(--bal-border-color-primary-light);
  --bal-divider-color-primary: var(--bal-border-color-primary);
  --bal-divider-color-light-blue: var(--bal-border-color-primary-hover);
  --bal-divider-color-primary-dark: var(--bal-border-color-primary-active);
  --bal-divider-color-grey-light: var(--bal-border-color-grey-light);
  --bal-divider-color-grey: var(--bal-border-color-grey);
  --bal-divider-color-grey-dark: var(--bal-border-color-grey-dark);
  --bal-divider-color-warning: var(--bal-border-color-warning);
  --bal-divider-color-success: var(--bal-border-color-success);
  --bal-divider-color-danger: var(--bal-border-color-danger);
  --bal-divider-color-danger-dark: var(--bal-border-color-danger-hover);
  --bal-divider-color-danger-darker: var(--bal-border-color-danger-active);
  --bal-divider-color-white: var(--bal-border-color-white);
  --bal-card-radius-base: var(--bal-radius-lg);
  --bal-card-radius-square: var(--bal-radius-base);
  --bal-card-shadow-flat: var(--bal-shadow-box-none);
  --bal-card-shadow-base: var(--bal-shadow-box-base);
  --bal-card-shadow-hover: var(--bal-shadow-box-elevated);
  --bal-card-color-base-background: var(--bal-background-color-white);
  --bal-card-color-base-outline: var(--bal-border-color-grey);
  --bal-card-color-white-background: var(--bal-background-color-white);
  --bal-card-color-white-outline: var(--bal-border-color-grey);
  --bal-card-color-primary-text: var(--bal-text-color-white);
  --bal-card-color-primary-background: var(--bal-background-color-primary);
  --bal-card-color-info-background: var(--bal-background-color-info);
  --bal-card-color-success-background: var(--bal-background-color-success);
  --bal-card-color-warning-background: var(--bal-background-color-warning);
  --bal-card-color-danger-background: var(--bal-background-color-danger);
  --bal-card-color-grey-light-background: var(--bal-background-color-grey-light);
  --bal-card-color-grey-light-outline: var(--bal-border-color-grey-dark);
  --bal-card-color-grey-background: var(--bal-background-color-grey);
  --bal-card-color-grey-outline: var(--bal-border-color-grey-dark);
  --bal-card-color-red-lighter-background: var(--bal-background-color-red-lighter);
  --bal-card-color-red-lighter-outline: var(--bal-background-color-red);
  --bal-card-color-red-light-background: var(--bal-background-color-red-light);
  --bal-card-color-red-light-outline: var(--bal-background-color-red);
  --bal-card-color-red-background: var(--bal-background-color-red);
  --bal-card-color-red-outline: var(--bal-background-color-red);
  --bal-card-color-purple-lighter-background: var(--bal-background-color-purple-lighter);
  --bal-card-color-purple-lighter-outline: var(--bal-background-color-purple);
  --bal-card-color-purple-light-background: var(--bal-background-color-purple-light);
  --bal-card-color-purple-light-outline: var(--bal-background-color-purple);
  --bal-card-color-purple-background: var(--bal-background-color-purple);
  --bal-card-color-purple-outline: var(--bal-background-color-purple);
  --bal-card-color-green-lighter-background: var(--bal-background-color-green-lighter);
  --bal-card-color-green-lighter-outline: var(--bal-background-color-green);
  --bal-card-color-green-light-background: var(--bal-background-color-green-light);
  --bal-card-color-green-light-outline: var(--bal-background-color-green);
  --bal-card-color-green-background: var(--bal-background-color-green);
  --bal-card-color-green-outline: var(--bal-background-color-green);
  --bal-card-color-yellow-lighter-background: var(--bal-background-color-yellow-lighter);
  --bal-card-color-yellow-lighter-outline: var(--bal-background-color-yellow);
  --bal-card-color-yellow-light-background: var(--bal-background-color-yellow-light);
  --bal-card-color-yellow-light-outline: var(--bal-background-color-yellow);
  --bal-card-color-yellow-background: var(--bal-background-color-yellow);
  --bal-card-color-yellow-outline: var(--bal-background-color-yellow);
  --bal-card-space-sm-mobile: var(--bal-space-base-mobile);
  --bal-card-space-sm-tablet: var(--bal-space-base-mobile);
  --bal-card-space-sm-desktop: var(--bal-space-base-mobile);
  --bal-card-space-base-mobile: var(--bal-space-base-mobile);
  --bal-card-space-base-tablet: var(--bal-space-lg-mobile);
  --bal-card-space-base-desktop: var(--bal-space-lg-mobile);
  --bal-card-space-md-mobile: var(--bal-space-base-mobile);
  --bal-card-space-md-tablet: var(--bal-space-lg-mobile);
  --bal-card-space-md-desktop: var(--bal-space-xl-mobile);
  --bal-card-space-lg-mobile: var(--bal-space-base-mobile);
  --bal-card-space-lg-tablet: var(--bal-space-xl-mobile);
  --bal-card-space-lg-desktop: var(--bal-space-2xl-mobile);
  --bal-card-outline-width: var(--bal-border-width-base);
  --bal-button-family: var(--bal-text-family-heading);
  --bal-button-weight: var(--bal-text-weight-bold);
  --bal-button-line-height: var(--bal-text-line-height-heading);
  --bal-button-size-sm: var(--bal-text-size-sm-mobile);
  --bal-button-size-base: var(--bal-text-size-base-mobile);
  --bal-button-size-lg: var(--bal-text-size-lg-mobile);
  --bal-button-radius-base: var(--bal-radius-base);
  --bal-button-radius-rounded: var(--bal-radius-rounded);
  --bal-button-color-primary-base-text: var(--bal-text-color-white);
  --bal-button-color-primary-base-background: var(--bal-background-color-primary);
  --bal-button-color-primary-base-border: var(--bal-border-color-primary);
  --bal-button-color-primary-hover-text: var(--bal-text-color-white);
  --bal-button-color-primary-hover-background: var(--bal-background-color-primary-hover);
  --bal-button-color-primary-hover-border: var(--bal-border-color-primary-hover);
  --bal-button-color-primary-active-text: var(--bal-text-color-white);
  --bal-button-color-primary-active-background: var(--bal-background-color-primary-active);
  --bal-button-color-primary-active-border: var(--bal-border-color-primary-active);
  --bal-button-color-secondary-base-text: var(--bal-background-color-primary);
  --bal-button-color-secondary-base-background: var(--bal-background-color-transparent);
  --bal-button-color-secondary-base-border: var(--bal-border-color-primary);
  --bal-button-color-secondary-hover-text: var(--bal-text-color-primary-hover);
  --bal-button-color-secondary-hover-background: var(--bal-background-color-sky-light);
  --bal-button-color-secondary-hover-border: var(--bal-border-color-primary-hover);
  --bal-button-color-secondary-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-secondary-active-background: var(--bal-background-color-sky-light);
  --bal-button-color-secondary-active-border: var(--bal-border-color-primary-active);
  --bal-button-color-tertiary-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-base-background: var(--bal-background-color-transparent);
  --bal-button-color-tertiary-base-border: var(--bal-background-color-transparent);
  --bal-button-color-tertiary-hover-text: var(--bal-text-color-primary-hover);
  --bal-button-color-tertiary-hover-background: var(--bal-background-color-sky-light);
  --bal-button-color-tertiary-hover-border: var(--bal-background-color-sky-light);
  --bal-button-color-tertiary-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-active-background: var(--bal-background-color-sky-light);
  --bal-button-color-tertiary-active-border: var(--bal-background-color-sky-light);
  --bal-button-color-tertiary-purple-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-purple-base-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-base-border: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-purple-hover-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-hover-border: var(--bal-border-color-purple-hover);
  --bal-button-color-tertiary-purple-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-purple-active-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-active-border: var(--bal-border-color-purple-active);
  --bal-button-color-tertiary-green-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-green-base-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-base-border: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-green-hover-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-hover-border: var(--bal-border-color-green-hover);
  --bal-button-color-tertiary-green-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-green-active-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-active-border: var(--bal-border-color-green-active);
  --bal-button-color-tertiary-red-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-red-base-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-base-border: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-red-hover-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-hover-border: var(--bal-border-color-red-hover);
  --bal-button-color-tertiary-red-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-red-active-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-active-border: var(--bal-border-color-red-active);
  --bal-button-color-tertiary-yellow-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-yellow-base-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-base-border: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-yellow-hover-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-hover-border: var(--bal-border-color-yellow-hover);
  --bal-button-color-tertiary-yellow-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-yellow-active-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-active-border: var(--bal-border-color-yellow-active);
  --bal-button-color-info-base-text: var(--bal-background-color-primary);
  --bal-button-color-info-base-background: var(--bal-background-color-sky);
  --bal-button-color-info-base-border: var(--bal-background-color-info-darker);
  --bal-button-color-info-hover-text: var(--bal-text-color-white);
  --bal-button-color-info-hover-background: var(--bal-background-color-info-darker);
  --bal-button-color-info-hover-border: var(--bal-background-color-info-darker);
  --bal-button-color-info-active-text: var(--bal-text-color-white);
  --bal-button-color-info-active-background: var(--bal-background-color-info-darkest);
  --bal-button-color-info-active-border: var(--bal-background-color-info-darkest);
  --bal-button-color-success-base-text: var(--bal-background-color-primary);
  --bal-button-color-success-base-background: var(--bal-background-color-success-lighter);
  --bal-button-color-success-base-border: var(--bal-background-color-success-darker);
  --bal-button-color-success-hover-text: var(--bal-text-color-white);
  --bal-button-color-success-hover-background: var(--bal-background-color-success-darker);
  --bal-button-color-success-hover-border: var(--bal-background-color-success-darker);
  --bal-button-color-success-active-text: var(--bal-text-color-white);
  --bal-button-color-success-active-background: var(--bal-background-color-success-darkest);
  --bal-button-color-success-active-border: var(--bal-background-color-success-darkest);
  --bal-button-color-warning-base-text: var(--bal-background-color-primary);
  --bal-button-color-warning-base-background: var(--bal-background-color-warning-lighter);
  --bal-button-color-warning-base-border: var(--bal-background-color-warning-darker);
  --bal-button-color-warning-hover-text: var(--bal-text-color-primary);
  --bal-button-color-warning-hover-background: var(--bal-background-color-warning-darker);
  --bal-button-color-warning-hover-border: var(--bal-background-color-warning-darker);
  --bal-button-color-warning-active-text: var(--bal-text-color-primary);
  --bal-button-color-warning-active-background: var(--bal-background-color-warning-darkest);
  --bal-button-color-warning-active-border: var(--bal-background-color-warning-darkest);
  --bal-button-color-danger-base-text: var(--bal-background-color-primary);
  --bal-button-color-danger-base-background: var(--bal-background-color-danger-lighter);
  --bal-button-color-danger-base-border: var(--bal-background-color-danger-darker);
  --bal-button-color-danger-hover-text: var(--bal-text-color-white);
  --bal-button-color-danger-hover-background: var(--bal-background-color-danger-darker);
  --bal-button-color-danger-hover-border: var(--bal-background-color-danger-darker);
  --bal-button-color-danger-active-text: var(--bal-text-color-white);
  --bal-button-color-danger-active-background: var(--bal-background-color-danger-darkest);
  --bal-button-color-danger-active-border: var(--bal-background-color-danger-darkest);
  --bal-button-color-disabled-base-text: var(--bal-text-color-disabled);
  --bal-button-color-disabled-base-background: var(--bal-background-color-grey);
  --bal-button-color-disabled-base-border: var(--bal-border-color-grey);
  --bal-button-color-disabled-hover-text: var(--bal-text-color-disabled);
  --bal-button-color-disabled-hover-background: var(--bal-background-color-grey);
  --bal-button-color-disabled-hover-border: var(--bal-border-color-grey);
  --bal-button-color-disabled-active-text: var(--bal-text-color-disabled);
  --bal-button-color-disabled-active-background: var(--bal-background-color-grey);
  --bal-button-color-disabled-active-border: var(--bal-border-color-grey);
  --bal-button-color-link-base-text: var(--bal-background-color-primary);
  --bal-button-color-link-base-background: var(--bal-background-color-transparent);
  --bal-button-color-link-base-border: var(--bal-background-color-transparent);
  --bal-button-color-link-hover-text: var(--bal-text-color-primary-hover);
  --bal-button-color-link-hover-background: var(--bal-background-color-transparent);
  --bal-button-color-link-hover-border: var(--bal-background-color-transparent);
  --bal-button-color-link-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-link-active-background: var(--bal-background-color-transparent);
  --bal-button-color-link-active-border: var(--bal-background-color-transparent);
  --bal-button-color-inverted-base-text: var(--bal-background-color-primary);
  --bal-button-color-inverted-base-background: var(--bal-background-color-white);
  --bal-button-color-inverted-base-border: var(--bal-background-color-white);
  --bal-button-color-inverted-hover-text: var(--bal-background-color-primary);
  --bal-button-color-inverted-hover-background: var(--bal-background-color-sky);
  --bal-button-color-inverted-hover-border: var(--bal-background-color-sky);
  --bal-button-color-inverted-active-text: var(--bal-text-color-white);
  --bal-button-color-inverted-active-background: var(--bal-background-color-primary-hover);
  --bal-button-color-inverted-active-border: var(--bal-background-color-primary-hover);
  --bal-button-color-inverted-secondary-base-text: var(--bal-text-color-white);
  --bal-button-color-inverted-secondary-base-background: var(--bal-background-color-transparent);
  --bal-button-color-inverted-secondary-base-border: var(--bal-background-color-white);
  --bal-button-color-inverted-secondary-hover-text: var(--bal-text-color-white);
  --bal-button-color-inverted-secondary-hover-background: var(--bal-background-color-primary-light);
  --bal-button-color-inverted-secondary-hover-border: var(--bal-background-color-sky-dark);
  --bal-button-color-inverted-secondary-active-text: var(--bal-text-color-white);
  --bal-button-color-inverted-secondary-active-background: var(--bal-background-color-primary-light);
  --bal-button-color-inverted-secondary-active-border: var(--bal-background-color-primary-hover);
  --bal-button-color-inverted-tertiary-base-text: var(--bal-background-color-primary);
  --bal-button-color-inverted-tertiary-base-background: var(--bal-background-color-grey-light);
  --bal-button-color-inverted-tertiary-base-border: var(--bal-background-color-grey-light);
  --bal-button-color-inverted-tertiary-hover-text: var(--bal-text-color-primary);
  --bal-button-color-inverted-tertiary-hover-background: var(--bal-background-color-sky-light);
  --bal-button-color-inverted-tertiary-hover-border: var(--bal-background-color-sky-light);
  --bal-button-color-inverted-tertiary-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-inverted-tertiary-active-background: var(--bal-background-color-sky);
  --bal-button-color-inverted-tertiary-active-border: var(--bal-background-color-sky);
  --bal-button-color-inverted-link-base-background: var(--bal-background-color-transparent);
  --bal-button-color-inverted-link-base-border: var(--bal-background-color-transparent);
  --bal-button-color-inverted-link-hover-text: var(--bal-text-color-inverted-primary-hover);
  --bal-button-color-inverted-link-hover-background: var(--bal-background-color-transparent);
  --bal-button-color-inverted-link-hover-border: var(--bal-background-color-transparent);
  --bal-button-color-inverted-link-active-text: var(--bal-text-color-inverted-primary-active);
  --bal-button-color-inverted-link-active-background: var(--bal-background-color-transparent);
  --bal-button-color-inverted-link-active-border: var(--bal-background-color-transparent);
  --bal-button-color-tertiary-purple-dashed-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-purple-dashed-base-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-dashed-base-border: var(--bal-background-color-purple);
  --bal-button-color-tertiary-purple-dashed-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-purple-dashed-hover-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-dashed-hover-border: var(--bal-border-color-purple-hover);
  --bal-button-color-tertiary-purple-dashed-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-purple-dashed-active-background: var(--bal-background-color-purple-lighter);
  --bal-button-color-tertiary-purple-dashed-active-border: var(--bal-border-color-purple-active);
  --bal-button-color-tertiary-green-dashed-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-green-dashed-base-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-dashed-base-border: var(--bal-background-color-green);
  --bal-button-color-tertiary-green-dashed-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-green-dashed-hover-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-dashed-hover-border: var(--bal-border-color-green-hover);
  --bal-button-color-tertiary-green-dashed-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-green-dashed-active-background: var(--bal-background-color-green-lighter);
  --bal-button-color-tertiary-green-dashed-active-border: var(--bal-border-color-green-active);
  --bal-button-color-tertiary-red-dashed-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-red-dashed-base-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-dashed-base-border: var(--bal-background-color-red);
  --bal-button-color-tertiary-red-dashed-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-red-dashed-hover-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-dashed-hover-border: var(--bal-border-color-red-hover);
  --bal-button-color-tertiary-red-dashed-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-red-dashed-active-background: var(--bal-background-color-red-lighter);
  --bal-button-color-tertiary-red-dashed-active-border: var(--bal-border-color-red-active);
  --bal-button-color-tertiary-yellow-dashed-base-text: var(--bal-background-color-primary);
  --bal-button-color-tertiary-yellow-dashed-base-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-dashed-base-border: var(--bal-background-color-yellow);
  --bal-button-color-tertiary-yellow-dashed-hover-text: var(--bal-text-color-primary);
  --bal-button-color-tertiary-yellow-dashed-hover-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-dashed-hover-border: var(--bal-border-color-yellow-hover);
  --bal-button-color-tertiary-yellow-dashed-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-tertiary-yellow-dashed-active-background: var(--bal-background-color-yellow-lighter);
  --bal-button-color-tertiary-yellow-dashed-active-border: var(--bal-border-color-yellow-active);
  --bal-button-color-text-base-text: var(--bal-background-color-primary);
  --bal-button-color-text-base-background: var(--bal-background-color-transparent);
  --bal-button-color-text-base-border: var(--bal-background-color-transparent);
  --bal-button-color-text-hover-text: var(--bal-text-color-primary-hover);
  --bal-button-color-text-hover-background: var(--bal-background-color-transparent);
  --bal-button-color-text-hover-border: var(--bal-background-color-transparent);
  --bal-button-color-text-active-text: var(--bal-text-color-primary-active);
  --bal-button-color-text-active-background: var(--bal-background-color-transparent);
  --bal-button-color-text-active-border: var(--bal-background-color-transparent);
  --bal-notification-radius: var(--bal-radius-lg);
  --bal-notification-color-base-background: var(--bal-background-color-grey-light);
  --bal-notification-color-base-border: var(--bal-background-color-grey-light);
  --bal-notification-color-base-text: var(--bal-text-color-primary);
  --bal-notification-color-info-background: var(--bal-background-color-info-light);
  --bal-notification-color-info-border: var(--bal-background-color-info-light);
  --bal-notification-color-info-text: var(--bal-text-color-primary);
  --bal-notification-color-success-background: var(--bal-background-color-success-light);
  --bal-notification-color-success-border: var(--bal-background-color-success-light);
  --bal-notification-color-success-text: var(--bal-text-color-primary);
  --bal-notification-color-warning-background: var(--bal-background-color-warning-light);
  --bal-notification-color-warning-border: var(--bal-background-color-warning-light);
  --bal-notification-color-warning-text: var(--bal-text-color-primary);
  --bal-notification-color-danger-background: var(--bal-background-color-danger-light);
  --bal-notification-color-danger-border: var(--bal-background-color-danger-light);
  --bal-notification-color-danger-text: var(--bal-text-color-primary);
  --bal-notification-color-outline-base-background: var(--bal-background-color-white);
  --bal-notification-color-outline-base-text: var(--bal-text-color-primary);
  --bal-notification-color-outline-purple-background: var(--bal-background-color-purple-lighter);
  --bal-notification-color-outline-purple-border: var(--bal-border-color-purple);
  --bal-notification-color-outline-purple-text: var(--bal-text-color-primary);
  --bal-notification-color-outline-green-background: var(--bal-background-color-green-lighter);
  --bal-notification-color-outline-green-border: var(--bal-border-color-green);
  --bal-notification-color-outline-green-text: var(--bal-text-color-primary);
  --bal-notification-color-outline-yellow-background: var(--bal-background-color-yellow-lighter);
  --bal-notification-color-outline-yellow-border: var(--bal-border-color-yellow);
  --bal-notification-color-outline-yellow-text: var(--bal-text-color-primary);
  --bal-notification-color-outline-red-background: var(--bal-background-color-red-lighter);
  --bal-notification-color-outline-red-border: var(--bal-border-color-red);
  --bal-notification-color-outline-red-text: var(--bal-text-color-primary);
  --bal-badge-text-family: var(--bal-text-family-heading);
  --bal-badge-text-weight: var(--bal-text-weight-bold);
  --bal-badge-text-size-sm: var(--bal-text-size-none-mobile);
  --bal-badge-text-size-base: var(--bal-text-size-xs-mobile);
  --bal-badge-text-size-lg: var(--bal-text-size-base-mobile);
  --bal-badge-size-sm: var(--bal-space-sm-mobile);
  --bal-badge-size-base: var(--bal-space-lg-mobile);
  --bal-badge-size-lg: var(--bal-space-xl-mobile);
  --bal-badge-color-base-text: var(--bal-text-color-primary);
  --bal-badge-color-base-background: var(--bal-background-color-red);
  --bal-badge-color-info-text: var(--bal-text-color-primary);
  --bal-badge-color-info-background: var(--bal-background-color-purple);
  --bal-badge-color-success-text: var(--bal-text-color-primary);
  --bal-badge-color-success-background: var(--bal-background-color-green);
  --bal-badge-color-warning-text: var(--bal-text-color-primary);
  --bal-badge-color-warning-background: var(--bal-background-color-yellow-light);
  --bal-badge-color-danger-text: var(--bal-text-color-primary);
  --bal-badge-color-danger-background: var(--bal-background-color-red);
  --bal-badge-color-red-text: var(--bal-text-color-primary);
  --bal-badge-color-red-background: var(--bal-background-color-red);
  --bal-badge-color-purple-text: var(--bal-text-color-primary);
  --bal-badge-color-purple-background: var(--bal-background-color-purple);
  --bal-badge-color-green-text: var(--bal-text-color-primary);
  --bal-badge-color-green-background: var(--bal-background-color-green);
  --bal-badge-color-yellow-text: var(--bal-text-color-primary);
  --bal-badge-color-yellow-background: var(--bal-background-color-yellow-light);
  --bal-badge-color-grey-text: var(--bal-text-color-grey-dark);
  --bal-badge-color-grey-background: var(--bal-background-color-grey);
  --bal-link-weight: var(--bal-text-weight-bold);
  --bal-link-border-width: var(--bal-border-width-base);
  --bal-link-color-base: var(--bal-text-color-primary);
  --bal-link-color-base-hover: var(--bal-text-color-primary-hover);
  --bal-link-color-base-active: var(--bal-text-color-primary-active);
  --bal-link-color-inverted-hover: var(--bal-text-color-inverted-primary-hover);
  --bal-link-color-inverted-active: var(--bal-text-color-inverted-primary-active);
  --bal-toast-radius: var(--bal-radius-base);
  --bal-toast-success-background: var(--bal-background-color-success-light);
  --bal-toast-success-border: var(--bal-background-color-success-light);
  --bal-toast-success-text: var(--bal-text-color-primary);
  --bal-toast-info-background: var(--bal-background-color-info-light);
  --bal-toast-info-border: var(--bal-background-color-info-light);
  --bal-toast-info-text: var(--bal-text-color-primary);
  --bal-toast-base-background: var(--bal-background-color-grey-light);
  --bal-toast-base-border: var(--bal-background-color-grey-light);
  --bal-toast-base-text: var(--bal-text-color-primary);
  --bal-toast-warning-background: var(--bal-background-color-warning-light);
  --bal-toast-warning-border: var(--bal-background-color-warning-light);
  --bal-toast-warning-text: var(--bal-text-color-primary);
  --bal-toast-danger-background: var(--bal-background-color-danger-light);
  --bal-toast-danger-border: var(--bal-background-color-danger-light);
  --bal-toast-danger-text: var(--bal-text-color-primary);
  --bal-snackbar-radius: var(--bal-radius-base);
  --bal-snackbar-success-background: var(--bal-background-color-success-light);
  --bal-snackbar-success-border: var(--bal-background-color-success-light);
  --bal-snackbar-success-text: var(--bal-text-color-primary);
  --bal-snackbar-info-background: var(--bal-background-color-info-light);
  --bal-snackbar-info-border: var(--bal-background-color-info-light);
  --bal-snackbar-info-text: var(--bal-text-color-primary);
  --bal-snackbar-base-background: var(--bal-background-color-grey-light);
  --bal-snackbar-base-border: var(--bal-background-color-grey-light);
  --bal-snackbar-base-text: var(--bal-text-color-primary);
  --bal-snackbar-warning-background: var(--bal-background-color-warning-light);
  --bal-snackbar-warning-border: var(--bal-background-color-warning-light);
  --bal-snackbar-warning-text: var(--bal-text-color-primary);
  --bal-snackbar-danger-background: var(--bal-background-color-danger-light);
  --bal-snackbar-danger-border: var(--bal-background-color-danger-light);
  --bal-snackbar-danger-text: var(--bal-text-color-primary);
  --bal-interaction-focus-color-start: var(--bal-interaction-focus-color-border);
  --bal-interaction-focus-color-inverted-start: var(--bal-interaction-focus-color-border);
  --bal-button-color-inverted-link-base-text: var(--bal-text-color-inverted-primary);
  --bal-link-color-inverted: var(--bal-text-color-inverted-primary);
  /* Base tokens */
  --bal-container-space: var(--bal-size-space-16);
  --bal-space-none: var(--bal-size-space-0);
  --bal-space-auto: var(--bal-size-space-auto);
  --bal-space-2xs: var(--bal-size-space-4);
  --bal-space-xs: var(--bal-size-space-8);
  --bal-space-sm: var(--bal-size-space-12);
  --bal-space-base: var(--bal-size-space-16);
  --bal-space-md: var(--bal-size-space-20);
  --bal-space-lg: var(--bal-size-space-24);
  --bal-space-xl: var(--bal-size-space-32);
  --bal-space-2xl: var(--bal-size-space-48);
  --bal-space-3xl: var(--bal-size-space-56);
  --bal-space-4xl: var(--bal-size-space-64);
  --bal-text-size-none: var(--bal-font-size-0);
  --bal-text-size-xs: var(--bal-font-size-12);
  --bal-text-size-sm: var(--bal-font-size-14);
  --bal-text-size-base: var(--bal-font-size-16);
  --bal-text-size-md: var(--bal-font-size-16);
  --bal-text-size-lg: var(--bal-font-size-18);
  --bal-text-size-xl: var(--bal-font-size-20);
  --bal-text-size-2xl: var(--bal-font-size-24);
  --bal-text-size-3xl: var(--bal-font-size-28);
  --bal-text-size-4xl: var(--bal-font-size-32);
  --bal-text-size-5xl: var(--bal-font-size-48);
  --bal-icon-tile-size-base: var(--bal-size-space-32);
  --bal-icon-tile-size-lg: var(--bal-size-space-48);
  --bal-icon-tile-size-xl: var(--bal-size-space-64);
  --bal-heading-1-size: var(--bal-text-size-3xl-mobile);
  --bal-heading-2-size: var(--bal-text-size-2xl-mobile);
  --bal-heading-3-size: var(--bal-text-size-xl-mobile);
  --bal-heading-4-size: var(--bal-text-size-lg-mobile);
  --bal-heading-5-size: var(--bal-text-size-base-mobile);
  --bal-heading-display1-size: var(--bal-text-size-5xl-mobile);
  --bal-heading-display2-size: var(--bal-text-size-4xl-mobile);
  --bal-label-size-3xl: var(--bal-text-size-3xl-mobile);
  --bal-label-size-2xl: var(--bal-text-size-2xl-mobile);
  --bal-label-size-xl: var(--bal-text-size-xl-mobile);
  --bal-label-size-lg: var(--bal-text-size-lg-mobile);
  --bal-label-size-md: var(--bal-text-size-md-mobile);
  --bal-label-size-base: var(--bal-text-size-base-mobile);
  --bal-label-size-sm: var(--bal-text-size-sm-mobile);
  --bal-card-space-sm: var(--bal-space-base-mobile);
  --bal-card-space-base: var(--bal-space-base-mobile);
  --bal-card-space-md: var(--bal-space-base-mobile);
  --bal-card-space-lg: var(--bal-space-base-mobile);
  /* Device tokens */
  --bal-container-space-device: var(--bal-size-space-16);
  --bal-space-none-device: var(--bal-size-space-0);
  --bal-space-auto-device: var(--bal-size-space-auto);
  --bal-space-2xs-device: var(--bal-size-space-4);
  --bal-space-xs-device: var(--bal-size-space-8);
  --bal-space-sm-device: var(--bal-size-space-12);
  --bal-space-base-device: var(--bal-size-space-16);
  --bal-space-md-device: var(--bal-size-space-20);
  --bal-space-lg-device: var(--bal-size-space-24);
  --bal-space-xl-device: var(--bal-size-space-32);
  --bal-space-2xl-device: var(--bal-size-space-48);
  --bal-space-3xl-device: var(--bal-size-space-56);
  --bal-space-4xl-device: var(--bal-size-space-64);
  --bal-text-size-none-device: var(--bal-font-size-0);
  --bal-text-size-xs-device: var(--bal-font-size-12);
  --bal-text-size-sm-device: var(--bal-font-size-14);
  --bal-text-size-base-device: var(--bal-font-size-16);
  --bal-text-size-md-device: var(--bal-font-size-16);
  --bal-text-size-lg-device: var(--bal-font-size-18);
  --bal-text-size-xl-device: var(--bal-font-size-20);
  --bal-text-size-2xl-device: var(--bal-font-size-24);
  --bal-text-size-3xl-device: var(--bal-font-size-28);
  --bal-text-size-4xl-device: var(--bal-font-size-32);
  --bal-text-size-5xl-device: var(--bal-font-size-48);
  --bal-icon-tile-size-base-device: var(--bal-size-space-32);
  --bal-icon-tile-size-lg-device: var(--bal-size-space-48);
  --bal-icon-tile-size-xl-device: var(--bal-size-space-64);
  --bal-heading-1-size-device: var(--bal-text-size-3xl-mobile);
  --bal-heading-2-size-device: var(--bal-text-size-2xl-mobile);
  --bal-heading-3-size-device: var(--bal-text-size-xl-mobile);
  --bal-heading-4-size-device: var(--bal-text-size-lg-mobile);
  --bal-heading-5-size-device: var(--bal-text-size-base-mobile);
  --bal-heading-display1-size-device: var(--bal-text-size-5xl-mobile);
  --bal-heading-display2-size-device: var(--bal-text-size-4xl-mobile);
  --bal-label-size-3xl-device: var(--bal-text-size-3xl-mobile);
  --bal-label-size-2xl-device: var(--bal-text-size-2xl-mobile);
  --bal-label-size-xl-device: var(--bal-text-size-xl-mobile);
  --bal-label-size-lg-device: var(--bal-text-size-lg-mobile);
  --bal-label-size-md-device: var(--bal-text-size-md-mobile);
  --bal-label-size-base-device: var(--bal-text-size-base-mobile);
  --bal-label-size-sm-device: var(--bal-text-size-sm-mobile);
  --bal-card-space-sm-device: var(--bal-space-base-mobile);
  --bal-card-space-base-device: var(--bal-space-base-mobile);
  --bal-card-space-md-device: var(--bal-space-base-mobile);
  --bal-card-space-lg-device: var(--bal-space-base-mobile);
}

/* Device tokens: Tablet */
@media (min-width: 769px) {
  :root {
    --bal-breakpoint-device: var(--bal-size-breakpoint-1);
    --bal-container-space-device: var(--bal-size-space-40);
    --bal-space-none-device: var(--bal-size-space-0);
    --bal-space-auto-device: var(--bal-size-space-auto);
    --bal-space-2xs-device: var(--bal-size-space-4);
    --bal-space-xs-device: var(--bal-size-space-8);
    --bal-space-sm-device: var(--bal-size-space-12);
    --bal-space-base-device: var(--bal-size-space-16);
    --bal-space-md-device: var(--bal-size-space-20);
    --bal-space-lg-device: var(--bal-size-space-24);
    --bal-space-xl-device: var(--bal-size-space-40);
    --bal-space-2xl-device: var(--bal-size-space-56);
    --bal-space-3xl-device: var(--bal-size-space-72);
    --bal-space-4xl-device: var(--bal-size-space-96);
    --bal-text-size-none-device: var(--bal-font-size-0);
    --bal-text-size-xs-device: var(--bal-font-size-12);
    --bal-text-size-sm-device: var(--bal-font-size-14);
    --bal-text-size-base-device: var(--bal-font-size-16);
    --bal-text-size-md-device: var(--bal-font-size-18);
    --bal-text-size-lg-device: var(--bal-font-size-18);
    --bal-text-size-xl-device: var(--bal-font-size-24);
    --bal-text-size-2xl-device: var(--bal-font-size-32);
    --bal-text-size-3xl-device: var(--bal-font-size-40);
    --bal-text-size-4xl-device: var(--bal-font-size-48);
    --bal-text-size-5xl-device: var(--bal-font-size-80);
    --bal-icon-tile-size-base-device: var(--bal-size-space-48);
    --bal-icon-tile-size-lg-device: var(--bal-size-space-64);
    --bal-icon-tile-size-xl-device: var(--bal-size-space-96);
    --bal-heading-1-size-device: var(--bal-text-size-3xl-tablet);
    --bal-heading-2-size-device: var(--bal-text-size-2xl-tablet);
    --bal-heading-3-size-device: var(--bal-text-size-xl-tablet);
    --bal-heading-4-size-device: var(--bal-text-size-lg-tablet);
    --bal-heading-5-size-device: var(--bal-text-size-base-tablet);
    --bal-heading-display1-size-device: var(--bal-text-size-5xl-tablet);
    --bal-heading-display2-size-device: var(--bal-text-size-4xl-tablet);
    --bal-label-size-3xl-device: var(--bal-text-size-3xl-tablet);
    --bal-label-size-2xl-device: var(--bal-text-size-2xl-tablet);
    --bal-label-size-xl-device: var(--bal-text-size-xl-tablet);
    --bal-label-size-lg-device: var(--bal-text-size-lg-tablet);
    --bal-label-size-md-device: var(--bal-text-size-md-tablet);
    --bal-label-size-base-device: var(--bal-text-size-base-tablet);
    --bal-label-size-sm-device: var(--bal-text-size-sm-tablet);
    --bal-card-space-sm-device: var(--bal-space-base-mobile);
    --bal-card-space-base-device: var(--bal-space-lg-mobile);
    --bal-card-space-md-device: var(--bal-space-lg-mobile);
    --bal-card-space-lg-device: var(--bal-space-xl-mobile);
  }
}
/* Device tokens: Desktop */
@media (min-width: 1024px) {
  :root {
    --bal-breakpoint-device: var(--bal-size-breakpoint-2);
    --bal-container-space-device: var(--bal-size-space-48);
    --bal-space-none-device: var(--bal-size-space-0);
    --bal-space-auto-device: var(--bal-size-space-auto);
    --bal-space-2xs-device: var(--bal-size-space-4);
    --bal-space-xs-device: var(--bal-size-space-8);
    --bal-space-sm-device: var(--bal-size-space-12);
    --bal-space-base-device: var(--bal-size-space-16);
    --bal-space-md-device: var(--bal-size-space-24);
    --bal-space-lg-device: var(--bal-size-space-32);
    --bal-space-xl-device: var(--bal-size-space-48);
    --bal-space-2xl-device: var(--bal-size-space-64);
    --bal-space-3xl-device: var(--bal-size-space-96);
    --bal-space-4xl-device: var(--bal-size-space-128);
    --bal-text-size-none-device: var(--bal-font-size-0);
    --bal-text-size-xs-device: var(--bal-font-size-12);
    --bal-text-size-sm-device: var(--bal-font-size-14);
    --bal-text-size-base-device: var(--bal-font-size-16);
    --bal-text-size-md-device: var(--bal-font-size-18);
    --bal-text-size-lg-device: var(--bal-font-size-18);
    --bal-text-size-xl-device: var(--bal-font-size-24);
    --bal-text-size-2xl-device: var(--bal-font-size-32);
    --bal-text-size-3xl-device: var(--bal-font-size-40);
    --bal-text-size-4xl-device: var(--bal-font-size-48);
    --bal-text-size-5xl-device: var(--bal-font-size-80);
    --bal-heading-1-size-device: var(--bal-text-size-3xl-desktop);
    --bal-heading-2-size-device: var(--bal-text-size-2xl-desktop);
    --bal-heading-3-size-device: var(--bal-text-size-xl-desktop);
    --bal-heading-4-size-device: var(--bal-text-size-lg-desktop);
    --bal-heading-5-size-device: var(--bal-text-size-base-desktop);
    --bal-heading-display1-size-device: var(--bal-text-size-5xl-desktop);
    --bal-heading-display2-size-device: var(--bal-text-size-4xl-desktop);
    --bal-label-size-3xl-device: var(--bal-text-size-3xl-desktop);
    --bal-label-size-2xl-device: var(--bal-text-size-2xl-desktop);
    --bal-label-size-xl-device: var(--bal-text-size-xl-desktop);
    --bal-label-size-lg-device: var(--bal-text-size-lg-tablet);
    --bal-label-size-md-device: var(--bal-text-size-md-desktop);
    --bal-label-size-base-device: var(--bal-text-size-base-tablet);
    --bal-label-size-sm-device: var(--bal-space-sm-desktop);
    --bal-card-space-sm-device: var(--bal-space-base-mobile);
    --bal-card-space-base-device: var(--bal-space-lg-mobile);
    --bal-card-space-md-device: var(--bal-space-xl-mobile);
    --bal-card-space-lg-device: var(--bal-space-2xl-mobile);
  }
}
:root {
  --bal-column-gap: 1rem;
}

/**
  * @deprecated Use desktop with t-shirt size breakpoints instead
  */
.table:not(:last-child), .table-container:not(:last-child) {
  margin-bottom: 0.25rem;
}

.file.is-disabled .file-label,
.file.is-disabled .file-cta {
  cursor: default !important;
  pointer-events: none !important;
}

.file {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

/**
 * @prop --bal-body-background: Body background color
 * @prop --bal-body-font-family: Body font family
 * @prop --bal-body-color: Body text color
 * @prop --bal-body-font-weight: Body text weight
 * @prop --bal-body-font-size: Body font size
 * @prop --bal-body-line-height: Body line height
 * @prop --bal-divider-background: Divider background color
 * @prop --bal-focus-shadow-start-color: Focus shadow start color
 * @prop --bal-focus-shadow-end-color: Focus shadow start end
 * @prop --bal-focus-shadow: Focus shadow
 * @prop --bal-focus-shadow-inset: Focus shadow inset
 * @prop --bal-focus-shadow-inverted-start-color: Focus shadow start color
 * @prop --bal-focus-shadow-inverted-end-color: Focus shadow end color
 * @prop --bal-focus-shadow-inverted: Focus shadow on a dark background
 * @prop --bal-focus-shadow-inverted-inset: Focus shadow on a dark background inset
 * @prop --bal-small-font-size: TBD
 * @prop --bal-strong-color: TBD
 * @prop --bal-strong-font-weight: TBD
 */
/**
 * @prop --bal-form-field-control-font-size: TBD
 * @prop --bal-form-field-control-font-family: TBD
 * @prop --bal-form-field-control-color: TBD
 * @prop --bal-form-field-control-placeholder-color: TBD
 * @prop --bal-form-field-control-radius: TBD
 * @prop --bal-form-field-control-background: TBD
 * @prop --bal-form-field-control-background-hover: TBD
 * @prop --bal-form-field-control-background-active: TBD
 * @prop --bal-form-field-control-border-width: TBD
 * @prop --bal-form-field-control-border-style: TBD
 * @prop --bal-form-field-control-border-color: TBD
 * @prop --bal-form-field-control-border-color-hover: TBD
 * @prop --bal-form-field-control-border-color-active: TBD
 * @prop --bal-form-field-control-success-background: TBD
 * @prop --bal-form-field-control-success-background-hover: TBD
 * @prop --bal-form-field-control-success-background-active: TBD
 * @prop --bal-form-field-control-success-border-color: TBD
 * @prop --bal-form-field-control-success-border-color-hover: TBD
 * @prop --bal-form-field-control-success-border-color-active: TBD
 * @prop --bal-form-field-control-danger-background: TBD
 * @prop --bal-form-field-control-danger-background-hover: TBD
 * @prop --bal-form-field-control-danger-background-active: TBD
 * @prop --bal-form-field-control-danger-border-color: TBD
 * @prop --bal-form-field-control-danger-border-color-hover: TBD
 * @prop --bal-form-field-control-danger-border-color-active: TBD
 * @prop --bal-form-field-control-disabled-color: TBD
 * @prop --bal-form-field-control-disabled-background: TBD
 * @prop --bal-form-field-control-disabled-border-color: TBD
 * @prop --bal-form-field-label-font-size: TBD
 * @prop --bal-form-field-label-line-height: TBD
 * @prop --bal-form-field-label-font-weight: TBD
 * @prop --bal-form-field-label-font-family: TBD
 * @prop --bal-form-field-label-margin-bottom: TBD
 * @prop --bal-form-field-label-color-hover: TBD
 * @prop --bal-form-field-label-color-active: TBD
 * @prop --bal-form-field-label-success-color: TBD
 * @prop --bal-form-field-label-danger-color: TBD
 * @prop --bal-form-field-label-danger-color-hover: TBD
 * @prop --bal-form-field-label-danger-color-active: TBD
 * @prop --bal-form-field-label-disabled-color TBD
 * @prop --bal-form-field-message-font-size: TBD
 * @prop --bal-form-field-message-font-weight: TBD
 * @prop --bal-form-field-message-color: TBD
 * @prop --bal-form-field-message-color-hover: TBD
 * @prop --bal-form-field-message-color-active: TBD
 * @prop --bal-form-field-message-font-weight: TBD
 * @prop --bal-form-field-message-success-color: TBD
 * @prop --bal-form-field-message-danger-color: TBD
 * @prop --bal-form-field-message-disabled-color: TBD
 * @prop --bal-form-field-icon-color: TBD
 * @prop --bal-form-field-icon-color-hover: TBD
 * @prop --bal-form-field-icon-color-active: TBD
 * @prop --bal-form-field-icon-success-color: TBD
 * @prop --bal-form-field-icon-danger-color: TBD
 * @prop --bal-form-field-icon-disabled-color: TBD
 * @prop --bal-file-label-color: TBD
 * @prop --bal-file-label-color-hover: TBD
 * @prop --bal-file-label-color-active: TBD
 * @prop --bal-file-border-style: TBD
 * @prop --bal-file-label-disabled-color: TBD
 */
:root {
  --bal-form-field-control-font-size: var(--bal-text-size-base);
  --bal-form-field-control-font-family: var(--bal-font-family-text);
  --bal-form-field-control-color: var(--bal-color-text-primary);
  --bal-form-field-control-placeholder-color: var(--bal-color-text-primary-light);
  --bal-form-field-control-radius: var(--bal-radius-base);
  --bal-form-field-control-background: var(--bal-color-white);
  --bal-form-field-control-background-hover: var(--bal-color-grey-1);
  --bal-form-field-control-background-active: var(--bal-color-grey-1);
  --bal-form-field-control-border-width: var(--bal-border-width-base);
  --bal-form-field-control-border-style: solid;
  --bal-form-field-control-border-color: var(--bal-color-border-base);
  --bal-form-field-control-border-color-hover: var(--bal-form-field-control-border-color);
  --bal-form-field-control-border-color-active: var(--bal-color-border-primary-base);
  --bal-form-field-control-success-background: var(--bal-color-success-1);
  --bal-form-field-control-success-background-hover: var(--bal-color-success-1);
  --bal-form-field-control-success-background-active: var(--bal-color-success-1);
  --bal-form-field-control-success-border-color: var(--bal-color-border-success-base);
  --bal-form-field-control-success-border-color-hover: var(--bal-form-field-control-border-color);
  --bal-form-field-control-success-border-color-active: var(--bal-color-border-primary-base);
  --bal-form-field-control-danger-background: var(--bal-color-danger-1);
  --bal-form-field-control-danger-background-hover: var(--bal-color-danger-1);
  --bal-form-field-control-danger-background-active: var(--bal-color-danger-1);
  --bal-form-field-control-danger-border-color: var(--bal-color-border-danger-base);
  --bal-form-field-control-danger-border-color-hover: var(--bal-form-field-control-border-color);
  --bal-form-field-control-danger-border-color-active: var(--bal-color-border-primary-base);
  --bal-form-field-control-disabled-color: var(--bal-color-text-grey-dark);
  --bal-form-field-control-disabled-background: var(--bal-color-grey-2);
  --bal-form-field-control-disabled-border-color: var(--bal-color-border-grey-dark);
  --bal-form-field-label-font-size: var(--bal-text-size-sm);
  --bal-form-field-label-line-height: var(--bal-line-height-small);
  --bal-form-field-label-font-weight: var(--bal-text-weight-bold);
  --bal-form-field-label-font-family: var(--bal-font-family-text);
  --bal-form-field-label-margin-bottom: 0.25rem;
  --bal-form-field-label-color-hover: var(--bal-link-color-text-primary-hover);
  --bal-form-field-label-color-active: var(--bal-link-color-text-primary-active);
  --bal-form-field-label-success-color: var(--bal-color-text-success);
  --bal-form-field-label-danger-color: var(--bal-color-text-danger);
  --bal-form-field-label-danger-color-hover: var(--bal-color-text-danger-hover);
  --bal-form-field-label-danger-color-active: var(--bal-color-text-danger-active);
  --bal-form-field-label-disabled-color: var(--bal-color-text-grey);
  --bal-form-field-message-font-size: var(--bal-text-size-xs);
  --bal-form-field-message-font-weight: var(--bal-text-weight-regular);
  --bal-form-field-message-color: var(--bal-color-text-primary-light);
  --bal-form-field-message-color-hover: var(--bal-link-color-text-primary-hover);
  --bal-form-field-message-color-active: var(--bal-link-color-text-primary-active);
  --bal-form-field-message-font-weight: var(--bal-text-weight-regular);
  --bal-form-field-message-success-color: var(--bal-color-text-success);
  --bal-form-field-message-danger-color: var(--bal-color-text-danger);
  --bal-form-field-message-disabled-color: var(--bal-color-text-grey);
  --bal-form-field-icon-color: var(--bal-link-color-text-primary-base);
  --bal-form-field-icon-color-hover: var(--bal-link-color-text-primary-hover);
  --bal-form-field-icon-color-active: var(--bal-link-color-text-primary-active);
  --bal-form-field-icon-success-color: var(--bal-color-text-success);
  --bal-form-field-icon-danger-color: var(--bal-color-text-danger);
  --bal-form-field-icon-disabled-color: var(--bal-color-text-grey);
  --bal-file-label-color: var(--bal-link-color-text-primary-base);
  --bal-file-label-color-hover: var(--bal-link-color-text-primary-hover);
  --bal-file-label-color-active: var(--bal-link-color-text-primary-active);
  --bal-file-border-style: dashed;
  --bal-file-label-disabled-color: var(--bal-color-text-grey-dark);
}

/**
 * @prop --bal-list-marker-color: Color of the list marker symbol
 * @prop --bal-list-marker-inverted-color: Color of the list marker symbol on a dark background
 * @prop --bal-list-bullet-radius: Radius of the custom bullet
 * @prop --bal-list-bullet-background: Background color of the custom bullet
 * @prop --bal-list-bullet-background-green: Green background color of the custom bullet
 * @prop --bal-list-bullet-background-red: Red background color of the custom bullet
 * @prop --bal-list-bullet-background-yellow: Yellow background color of the custom bullet
 * @prop --bal-list-bullet-background-purple: Purple background color of the custom bullet
 */
:root {
  --bal-list-marker-color: var(--bal-color-brand-primary-base);
  --bal-list-marker-inverted-color: var(--bal-color-white);
  --bal-list-bullet-radius: var(--bal-radius-rounded);
  --bal-list-bullet-background: var(--bal-color-green-3);
  --bal-list-bullet-background-green: var(--bal-color-green-3);
  --bal-list-bullet-background-red: var(--bal-color-red-3);
  --bal-list-bullet-background-yellow: var(--bal-color-yellow-3);
  --bal-list-bullet-background-purple: var(--bal-color-purple-3);
  --bal-description-list-grid-term: 1fr;
  --bal-description-list-grid-detail: 1fr;
  --bal-description-list-row-gap: var(--bal-space-2xs);
  --bal-description-list-column-gap: var(--bal-space-base);
  --bal-description-list-term-color: var(--bal-color-text-primary-light);
  --bal-description-list-term-font-weight: var(--bal-text-weight-regular);
  --bal-description-list-detail-color: var(--bal-color-text-primary);
  --bal-description-list-detail-font-weight: var(--bal-text-weight-regular);
}

/**
 * @prop --bal-table-color: Tables default font color
 * @prop --bal-table-background-color: Tables default background color
 * @prop --bal-table-body-background-color: Table body background
 * @prop --bal-table-cell-border: Table cell border
 * @prop --bal-table-cell-border-width: Table cell border width
 * @prop --bal-table-cell-padding: Table cell padding
 * @prop --bal-table-cell-heading-color: Table cell heading color
 * @prop --bal-table-head-cell-border-width: Table head cell border width
 * @prop --bal-table-head-cell-border-color: Table head cell border color
 * @prop --bal-table-head-cell-color: Table head cell color
 * @prop --bal-table-head-background-color: Table head cell background
 * @prop --bal-table-head-font-size:  Table head cell font size backgound
 * @prop --bal-table-head-font-family: Table head cell font family
 * @prop --bal-table-foot-cell-border-width: Table foot cell border width
 * @prop --bal-table-foot-cell-color: Table foot cell color
 * @prop --bal-table-foot-background-color: Table foot cell background
 * @prop --bal-table-row-background-color-hover: Table row hover background
 * @prop --bal-table-row-background-color-active: Table row pressed background
 * @prop --bal-table-row-color-active: Table row pressed font color
 * @prop --bal-table-striped-row-even-background-color: Table row striped background
 * @prop --bal-table-striped-row-even-background-color-hover: Table row striped background on hover
 */
:root {
  --bal-table-color: var(--bal-color-primary-5);
  --bal-table-background-color: var(--bal-color-white);
  --bal-table-body-background-color: transparent;
  --bal-table-cell-border-color: var(--bal-border-color-base);
  --bal-table-cell-border: 2px solid var(--bal-table-cell-border-color);
  --bal-table-cell-border-width: 0 0 2px;
  --bal-table-cell-padding: 0.5em 0.75em;
  --bal-table-cell-heading-color: var(--bal-color-primary-5);
  --bal-table-head-cell-border-width: 0 0 1px;
  --bal-table-head-cell-border-color: var(--bal-color-primary-5);
  --bal-table-head-cell-color: var(--bal-color-primary-5);
  --bal-table-head-background-color: transparent;
  --bal-table-head-font-size: var(--bal-text-size-base);
  --bal-table-head-font-family: var(--bal-font-family-title);
  --bal-table-foot-cell-border-width: 0 0 0;
  --bal-table-foot-cell-color: var(--bal-color-primary-5);
  --bal-table-foot-background-color: transparent;
  --bal-table-row-background-color-hover: var(--bal-color-grey-2);
  --bal-table-row-background-color-active: var(--bal-color-primary-1);
  --bal-table-row-color-active: var(--bal-color-primary-5);
  --bal-table-striped-row-even-background-color: var(--bal-color-grey-1);
  --bal-table-striped-row-even-background-color-hover: var(--bal-color-grey-2);
}

.select select, .input, .textarea {
  justify-content: flex-start;
  background-color: var(--bal-form-field-control-background);
  border-color: var(--bal-form-field-control-border-color);
  border-style: var(--bal-form-field-control-border-style);
  border-radius: var(--bal-form-field-control-radius);
  color: var(--bal-form-field-control-color);
}
.select select::-moz-placeholder, .input::-moz-placeholder, .textarea::-moz-placeholder {
  color: var(--bal-form-field-control-placeholder-color);
}
.select select::-webkit-input-placeholder, .input::-webkit-input-placeholder, .textarea::-webkit-input-placeholder {
  color: var(--bal-form-field-control-placeholder-color);
}
.select select:-moz-placeholder, .input:-moz-placeholder, .textarea:-moz-placeholder {
  color: var(--bal-form-field-control-placeholder-color);
}
.select select:-ms-input-placeholder, .input:-ms-input-placeholder, .textarea:-ms-input-placeholder {
  color: var(--bal-form-field-control-placeholder-color);
}
@media (hover: hover) and (pointer: fine) {
  .select select:hover, .input:hover, .textarea:hover, .select select.is-hovered, .is-hovered.input, .is-hovered.textarea {
    border-color: var(--bal-form-field-control-border-color-hover);
    background-color: var(--bal-form-field-control-background-hover);
  }
}
.select select.bal-focused, .bal-focused.input, .bal-focused.textarea, .select select:focus, .input:focus, .textarea:focus, .select select.is-focused, .is-focused.input, .is-focused.textarea, .select select:active, .input:active, .textarea:active, .select select.is-active, .is-active.input, .is-active.textarea {
  border-color: var(--bal-form-field-control-border-color-active);
  background-color: var(--bal-form-field-control-background-active);
}
.select select[disabled], [disabled].input, [disabled].textarea, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .input, fieldset[disabled] .textarea {
  background-color: var(--bal-form-field-control-disabled-background);
  border-color: var(--bal-form-field-control-disabled-border-color);
  box-shadow: none;
  color: var(--bal-form-field-control-disabled-color);
}
.select select[disabled]::-moz-placeholder, [disabled].input::-moz-placeholder, [disabled].textarea::-moz-placeholder, fieldset[disabled] .select select::-moz-placeholder, .select fieldset[disabled] select::-moz-placeholder, fieldset[disabled] .input::-moz-placeholder, fieldset[disabled] .textarea::-moz-placeholder {
  color: var(--bal-form-field-control-disabled-color);
}
.select select[disabled]::-webkit-input-placeholder, [disabled].input::-webkit-input-placeholder, [disabled].textarea::-webkit-input-placeholder, fieldset[disabled] .select select::-webkit-input-placeholder, .select fieldset[disabled] select::-webkit-input-placeholder, fieldset[disabled] .input::-webkit-input-placeholder, fieldset[disabled] .textarea::-webkit-input-placeholder {
  color: var(--bal-form-field-control-disabled-color);
}
.select select[disabled]:-moz-placeholder, [disabled].input:-moz-placeholder, [disabled].textarea:-moz-placeholder, fieldset[disabled] .select select:-moz-placeholder, .select fieldset[disabled] select:-moz-placeholder, fieldset[disabled] .input:-moz-placeholder, fieldset[disabled] .textarea:-moz-placeholder {
  color: var(--bal-form-field-control-disabled-color);
}
.select select[disabled]:-ms-input-placeholder, [disabled].input:-ms-input-placeholder, [disabled].textarea:-ms-input-placeholder, fieldset[disabled] .select select:-ms-input-placeholder, .select fieldset[disabled] select:-ms-input-placeholder, fieldset[disabled] .input:-ms-input-placeholder, fieldset[disabled] .textarea:-ms-input-placeholder {
  color: var(--bal-form-field-control-disabled-color);
}

.file-cta, .select select, .input, .textarea {
  -moz-appearance: none !important;
  -webkit-appearance: none !important;
  align-items: center;
  border-width: var(--bal-border-width-base);
  border-color: var(--bal-color-border-base);
  border-radius: var(--bal-radius-base);
  box-shadow: none;
  display: inline-flex;
  font-size: var(--bal-text-size-base);
  min-height: 3rem;
  height: 3rem;
  line-height: 1.5;
  padding-left: calc(0.75em - var(--bal-border-width-base));
  padding-right: calc(0.75em - var(--bal-border-width-base));
  position: relative;
  vertical-align: top;
}
.file-cta:focus, .select select:focus, .input:focus, .textarea:focus, .is-focused.file-cta, .select select.is-focused, .is-focused.input, .is-focused.textarea, .file-cta:active, .select select:active, .input:active, .textarea:active, .is-active.file-cta, .select select.is-active, .is-active.input, .is-active.textarea {
  outline: none;
}
[disabled].file-cta, .select select[disabled], [disabled].input, [disabled].textarea, fieldset[disabled] .file-cta, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .input, fieldset[disabled] .textarea {
  cursor: default;
}

.textarea, .input {
  max-width: 100%;
  width: 100%;
}
[readonly].textarea, [readonly].input {
  box-shadow: none;
}
.is-fullwidth.textarea, .is-fullwidth.input {
  display: block;
  width: 100%;
}
.is-inline.textarea, .is-inline.input {
  display: inline;
  width: auto;
}

.textarea {
  display: block;
  max-width: 100%;
  min-width: 100%;
  resize: vertical;
  padding: calc(0.75em - 2px);
}
.textarea:not([rows]) {
  max-height: 40em;
  min-height: 8em;
}
.textarea[rows] {
  height: initial;
}
.textarea.has-fixed-size {
  resize: none;
}

input.input,
textarea.textarea {
  border-width: 2px;
  border-radius: var(--bal-form-field-control-radius);
  font-size: var(--bal-form-field-control-font-size);
  font-family: var(--bal-form-field-control-font-family);
  color: var(--bal-form-field-control-color);
  outline: none;
  box-shadow: none;
}
input.input.is-danger,
textarea.textarea.is-danger {
  border-color: var(--bal-form-field-control-danger-border-color);
  background: var(--bal-form-field-control-danger-background);
}
input.input.is-danger.bal-focused, input.input.is-danger:focus, input.input.is-danger.is-focused, input.input.is-danger:active, input.input.is-danger.is-active,
textarea.textarea.is-danger.bal-focused,
textarea.textarea.is-danger:focus,
textarea.textarea.is-danger.is-focused,
textarea.textarea.is-danger:active,
textarea.textarea.is-danger.is-active {
  border-color: var(--bal-form-field-control-border-color-active);
}
input.input.is-success,
textarea.textarea.is-success {
  border-color: var(--bal-form-field-control-success-border-color);
  background: var(--bal-form-field-control-success-background);
}
input.input.is-success.bal-focused, input.input.is-success:focus, input.input.is-success.is-focused, input.input.is-success:active, input.input.is-success.is-active,
textarea.textarea.is-success.bal-focused,
textarea.textarea.is-success:focus,
textarea.textarea.is-success.is-focused,
textarea.textarea.is-success:active,
textarea.textarea.is-success.is-active {
  border-color: var(--bal-form-field-control-border-color-active);
}
input.input.is-warning,
textarea.textarea.is-warning {
  border-color: var(--bal-color-border-warning-base);
  background: var(--bal-color-warning-1);
}
input.input.is-warning.bal-focused, input.input.is-warning:focus, input.input.is-warning.is-focused, input.input.is-warning:active, input.input.is-warning.is-active,
textarea.textarea.is-warning.bal-focused,
textarea.textarea.is-warning:focus,
textarea.textarea.is-warning.is-focused,
textarea.textarea.is-warning:active,
textarea.textarea.is-warning.is-active {
  border-color: var(--bal-form-field-control-border-color-active);
}
input.input.is-disabled,
textarea.textarea.is-disabled {
  color: var(--bal-form-field-control-disabled-color);
  border-color: var(--bal-form-field-control-disabled-border-color);
  background: var(--bal-form-field-control-disabled-background);
}

input.is-grouped {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

.select {
  display: inline-block;
  max-width: 100%;
  width: 100%;
  position: relative;
  vertical-align: top;
}
.select:not(.is-multiple) {
  height: 3rem;
}
.select:not(.is-multiple):not(.is-loading)::after {
  border: 3px solid var(--bal-form-field-icon-color);
  border-radius: 2px;
  border-right: 0;
  border-top: 0;
  content: " ";
  display: block;
  height: 0.625em;
  margin-top: -0.4rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: rotate(-45deg);
  transform-origin: center;
  width: 0.625em;
  right: 1.125em;
  z-index: 4;
}
.select select {
  cursor: pointer;
  display: block;
  font-size: 1em;
  max-width: 100%;
  width: 100%;
  outline: none;
  border-radius: var(--bal-form-field-control-radius);
}
.select select::-ms-expand {
  display: none;
}
.select select[disabled]:hover, fieldset[disabled] .select select:hover {
  border-color: var(--bal-form-field-control-disabled-border-color);
}
.select select:not([multiple]) {
  padding-right: 2.5em;
}
.select select[multiple] {
  height: auto;
  padding: 0;
}
.select select[multiple] option {
  padding: 0.5em 1em;
}
.select:not(.is-multiple):not(.is-loading):hover::after {
  border-color: var(--bal-form-field-label-color-hover);
}
.select:not(.is-multiple):not(.is-loading):active::after {
  border-color: var(--bal-form-field-label-color-active);
}
.select.is-disabled::after {
  border-color: var(--bal-form-field-control-disabled-border-color) !important;
}
.select.is-success select {
  border-color: var(--bal-form-field-control-success-border-color);
  background: var(--bal-form-field-control-success-background);
}
.select.is-success select.bal-focused, .select.is-success select:focus, .select.is-success select.is-focused, .select.is-success select:active, .select.is-success select.is-active {
  border-color: var(--bal-form-field-control-success-border-color-active);
}
.select.is-success::after {
  border-color: var(--bal-form-field-control-success-border-color) !important;
}
.select.is-success:focus::after, .select.is-success:active::after, .select.is-success:focus-within::after {
  border-color: var(--bal-form-field-control-success-border-color-active) !important;
}
.select.is-danger select {
  border-color: var(--bal-form-field-control-danger-border-color);
  background: var(--bal-form-field-control-danger-background);
}
.select.is-danger select.bal-focused, .select.is-danger select:focus, .select.is-danger select.is-focused, .select.is-danger select:active, .select.is-danger select.is-active {
  border-color: var(--bal-form-field-control-danger-border-color-active);
}
.select.is-danger::after {
  border-color: var(--bal-form-field-control-danger-border-color) !important;
}
.select.is-danger:focus::after, .select.is-danger:active::after, .select.is-danger:focus-within::after {
  border-color: var(--bal-form-field-control-danger-border-color-active) !important;
}
.select.is-warning select {
  border-color: var(--bal-color-border-warning-base);
  background: var(--bal-color-warning-1);
}
.select.is-warning select.bal-focused, .select.is-warning select:focus, .select.is-warning select.is-focused, .select.is-warning select:active, .select.is-warning select.is-active {
  border-color: var(--bal-color-border-primary);
}
.select.is-warning::after {
  border-color: var(--bal-color-border-warning-base) !important;
}
.select.is-warning:focus::after, .select.is-warning:active::after, .select.is-warning:focus-within::after {
  border-color: var(--bal-color-border-primary) !important;
}
.select.is-fullwidth {
  width: 100%;
}
.select.is-fullwidth select {
  width: 100%;
}

.file {
  align-items: stretch;
  display: flex;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  font-size: var(--bal-form-field-control-font-size);
  justify-content: center;
}
.file .file-label {
  width: 100%;
  flex-direction: column;
}
.file .file-cta {
  flex-direction: column;
  height: auto;
  padding: 1em 3em;
}
.file .file-icon {
  height: 1.5em;
  width: 1.5em;
}

.file-label {
  align-items: stretch;
  display: flex;
  cursor: pointer;
  justify-content: flex-start;
  overflow: hidden;
  position: relative;
  gap: 0.5rem;
  font-weight: var(--bal-form-field-label-font-weight);
  color: var(--bal-form-field-label-color);
  text-align: center;
  hyphens: auto;
}
.file-label:hover .file-cta,
.file-label:hover .file-label {
  color: var(--bal-form-field-label-color-hover);
}
.file-label:hover .file-cta {
  background-color: var(--bal-form-field-control-background-hover);
  border-color: var(--bal-form-field-control-border-color-hover);
}
.file-label:active .file-cta,
.file-label:active .file-label, .file-label:focus-within .file-cta,
.file-label:focus-within .file-label {
  color: var(--bal-form-field-label-color-active);
}
.file-label:active .file-cta, .file-label:focus-within .file-cta {
  background-color: var(--bal-form-field-control-background-active);
  border-color: var(--bal-form-field-control-border-color-active);
}

.file-input {
  height: 100%;
  left: 0;
  opacity: 0;
  outline: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.file-cta {
  justify-content: flex-start;
  border-style: var(--bal-file-border-style);
  border-color: var(--bal-form-field-control-border-color);
  border-radius: var(--bal-form-field-control-radius);
  background: var(--bal-form-field-control-background);
  font-size: 1em;
  padding-left: 1em;
  padding-right: 1em;
  white-space: nowrap;
  gap: 0.5rem;
}

.file-cta {
  background-color: var(--bal-form-field-control-background);
  color: var(--bal-form-field-control-color);
}

.file-icon {
  align-items: center;
  display: flex;
  height: 1em;
  justify-content: center;
  margin-right: 0.5em;
  width: 1em;
}

.file.is-success .file-label,
.file.is-success .file-cta {
  color: var(--bal-form-field-label-success-color);
}
.file.is-success .file-cta {
  border-color: var(--bal-form-field-control-success-border-color);
  background: var(--bal-form-field-control-success-background);
}
.file.is-success .file-label:active .file-cta, .file.is-success .file-label:focus-within .file-cta {
  border-color: var(--bal-form-field-control-border-color-active);
  color: var(--bal-link-color-text-primary-active);
}
.file.is-success .file-label:active .file-cta .file-label, .file.is-success .file-label:focus-within .file-cta .file-label {
  color: var(--bal-link-color-text-primary-active);
}

.file.is-danger .file-label,
.file.is-danger .file-cta {
  color: var(--bal-form-field-label-danger-color);
}
.file.is-danger .file-cta {
  border-color: var(--bal-form-field-control-danger-border-color);
  background: var(--bal-form-field-control-danger-background);
}
.file.is-danger .file-label:active .file-cta, .file.is-danger .file-label:focus-within .file-cta {
  border-color: var(--bal-form-field-control-border-color-active);
  color: var(--bal-link-color-text-primary-active);
}
.file.is-danger .file-label:active .file-cta .file-label, .file.is-danger .file-label:focus-within .file-cta .file-label {
  color: var(--bal-link-color-text-primary-active);
}

.file.is-warning .file-label,
.file.is-warning .file-cta {
  color: var(--bal-color-text-warning);
}
.file.is-warning .file-cta {
  border-color: var(--bal-color-border-warning-base);
  background: var(--bal-color-warning-1);
}
.file.is-warning .file-label:active .file-cta, .file.is-warning .file-label:focus-within .file-cta {
  border-color: var(--bal-form-field-control-border-color-active);
  color: var(--bal-link-color-text-primary-active);
}
.file.is-warning .file-label:active .file-cta .file-label, .file.is-warning .file-label:focus-within .file-cta .file-label {
  color: var(--bal-link-color-text-primary-active);
}

.file.is-disabled .file-label,
.file.is-disabled .file-cta {
  color: var(--bal-file-label-disabled-color);
}
.file.is-disabled .file-cta {
  border-color: var(--bal-form-field-control-disabled-border-color);
  background: var(--bal-form-field-control-disabled-background);
}

@keyframes spinAround {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}
.help {
  display: block;
  margin-top: -2px;
  color: var(--bal-form-field-message-color);
  font-size: var(--bal-form-field-message-font-size);
  font-weight: var(--bal-form-field-message-font-weight);
  hyphens: auto;
}
.help.is-danger {
  color: var(--bal-form-field-message-danger-color);
}
.help.is-success {
  color: var(--bal-form-field-message-success-color);
}
.help.is-warning {
  color: var(--bal-color-text-warning);
}
.help.is-disabled {
  color: var(--bal-form-field-message-disabled-color);
}

.field:not(:last-child) {
  margin-bottom: 0.25rem;
}
.field.has-addons {
  display: flex;
  justify-content: flex-start;
}
.field.has-addons .control:not(:last-child) {
  margin-right: -1px;
}
.field.has-addons .control:not(:first-child):not(:last-child) .button,
.field.has-addons .control:not(:first-child):not(:last-child) .input,
.field.has-addons .control:not(:first-child):not(:last-child) .select select {
  border-radius: 0;
}
.field.has-addons .control:first-child:not(:only-child) .button,
.field.has-addons .control:first-child:not(:only-child) .input,
.field.has-addons .control:first-child:not(:only-child) .select select {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.field.has-addons .control:last-child:not(:only-child) .button,
.field.has-addons .control:last-child:not(:only-child) .input,
.field.has-addons .control:last-child:not(:only-child) .select select {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.field.has-addons .control .button:not([disabled]):hover, .field.has-addons .control .button:not([disabled]).is-hovered,
.field.has-addons .control .input:not([disabled]):hover,
.field.has-addons .control .input:not([disabled]).is-hovered,
.field.has-addons .control .select select:not([disabled]):hover,
.field.has-addons .control .select select:not([disabled]).is-hovered {
  z-index: 2;
}
.field.has-addons .control .button:not([disabled]):focus, .field.has-addons .control .button:not([disabled]).is-focused, .field.has-addons .control .button:not([disabled]):active, .field.has-addons .control .button:not([disabled]).is-active,
.field.has-addons .control .input:not([disabled]):focus,
.field.has-addons .control .input:not([disabled]).is-focused,
.field.has-addons .control .input:not([disabled]):active,
.field.has-addons .control .input:not([disabled]).is-active,
.field.has-addons .control .select select:not([disabled]):focus,
.field.has-addons .control .select select:not([disabled]).is-focused,
.field.has-addons .control .select select:not([disabled]):active,
.field.has-addons .control .select select:not([disabled]).is-active {
  z-index: 3;
}
.field.has-addons .control .button:not([disabled]):focus:hover, .field.has-addons .control .button:not([disabled]).is-focused:hover, .field.has-addons .control .button:not([disabled]):active:hover, .field.has-addons .control .button:not([disabled]).is-active:hover,
.field.has-addons .control .input:not([disabled]):focus:hover,
.field.has-addons .control .input:not([disabled]).is-focused:hover,
.field.has-addons .control .input:not([disabled]):active:hover,
.field.has-addons .control .input:not([disabled]).is-active:hover,
.field.has-addons .control .select select:not([disabled]):focus:hover,
.field.has-addons .control .select select:not([disabled]).is-focused:hover,
.field.has-addons .control .select select:not([disabled]):active:hover,
.field.has-addons .control .select select:not([disabled]).is-active:hover {
  z-index: 4;
}
.field.has-addons .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.has-addons.has-addons-centered {
  justify-content: center;
}
.field.has-addons.has-addons-right {
  justify-content: flex-end;
}
.field.has-addons.has-addons-fullwidth .control {
  flex-grow: 1;
  flex-shrink: 0;
}
.field.is-grouped {
  display: flex;
  justify-content: flex-start;
}
.field.is-grouped > .control:not(:last-child) {
  margin-bottom: 0;
}
.field.is-grouped > .control.is-expanded {
  flex-grow: 1;
  flex-shrink: 1;
}
.field.is-grouped.is-grouped-centered {
  justify-content: center;
}
.field.is-grouped.is-grouped-right {
  justify-content: flex-end;
}
.field.is-grouped.is-grouped-multiline {
  flex-wrap: wrap;
}
.field.is-grouped.is-grouped-multiline > .control:last-child, .field.is-grouped.is-grouped-multiline > .control:not(:last-child) {
  margin-bottom: 0.75rem;
}
.field.is-grouped.is-grouped-multiline:last-child {
  margin-bottom: -0.75rem;
}
.field.is-grouped.is-grouped-multiline:not(:last-child) {
  margin-bottom: 0;
}
@media screen and (min-width: 769px) {
  .field.is-horizontal {
    display: flex;
  }
}

.field-label .label {
  font-size: inherit;
}
@media screen and (max-width: 768px) {
  .field-label {
    margin-bottom: 0.5rem;
  }
}
@media screen and (min-width: 769px) {
  .field-label {
    flex-basis: 0;
    flex-grow: 1;
    flex-shrink: 0;
    margin-right: 1.5rem;
    text-align: right;
  }
  .field-label.is-small {
    font-size: var(--bal-text-size-sm);
    padding-top: 0.375em;
  }
  .field-label.is-normal {
    padding-top: 0.375em;
  }
}

.field-body .field .field {
  margin-bottom: 0;
}
@media screen and (min-width: 769px) {
  .field-body {
    display: flex;
    flex-basis: 0;
    flex-grow: 5;
    flex-shrink: 1;
  }
  .field-body .field {
    margin-bottom: 0;
  }
  .field-body > .field {
    flex-shrink: 1;
  }
  .field-body > .field:not(.is-narrow) {
    flex-grow: 1;
  }
  .field-body > .field:not(:last-child) {
    margin-right: 0.75rem;
  }
}

.control {
  box-sizing: border-box;
  clear: both;
  font-size: var(--bal-form-field-control-font-size);
  position: relative;
  text-align: inherit;
}
.control.is-loading::after {
  animation: spinAround 500ms infinite linear;
  border: 2px solid var(--bal-form-field-control-border-color-active);
  border-radius: var(--bal-radius-rounded);
  border-right-color: transparent;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 1.125em;
  width: 1.125em;
  position: absolute !important;
  right: 0.875rem;
  top: 0.875rem;
  z-index: 4;
}

.control.has-icons-right::after {
  right: 2.3rem;
}

.field.is-grouped {
  gap: calc(var(--bal-column-gap) / 2);
}

.field.has-direction-row.is-grouped {
  flex-direction: row;
}

.field.has-direction-column.is-grouped {
  flex-direction: column;
  width: -moz-fit-content;
  width: fit-content;
}
.field.has-direction-column.is-grouped .button {
  width: 100%;
}
.field.has-direction-column.is-grouped .bal-button {
  margin: 0 !important;
}

@media screen and (max-width: 768px) {
  .field.has-direction-auto.is-grouped {
    flex-wrap: wrap;
    flex-direction: column;
    width: 100%;
  }
  .field.has-direction-auto.is-grouped .control {
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 100%;
    margin-right: 0 !important;
  }
  .field.has-direction-auto.is-grouped .control .button {
    min-width: 100%;
  }
  .field.has-direction-auto.is-grouped.is-reverse {
    flex-direction: column-reverse;
  }
}
.container {
  flex-grow: 1;
  margin: 0 auto;
  position: relative;
  width: auto;
  padding-left: var(--bal-container-space-device);
  padding-right: var(--bal-container-space-device);
}
@media screen and (min-width: 1024px) {
  .container {
    max-width: var(--bal-container-width-normal);
  }
}
.container.is-fluid {
  max-width: var(--bal-container-width-fluid) !important;
}
.container.is-compact {
  max-width: var(--bal-container-width-compact) !important;
}

.grid {
  flex-basis: 0;
  flex-grow: 1;
  flex-shrink: 1;
}

.col {
  display: block;
  flex-basis: 0;
  flex-grow: 1;
  flex-shrink: 1;
  padding: var(--bal-column-gap);
}
.grid.is-mobile > .col.is-narrow {
  flex: none;
  width: unset;
}
.grid.is-mobile > .col.is-full {
  flex: none;
  width: 100%;
}
.grid.is-mobile > .col.is-three-quarters {
  flex: none;
  width: 75%;
}
.grid.is-mobile > .col.is-two-thirds {
  flex: none;
  width: 66.6666%;
}
.grid.is-mobile > .col.is-half {
  flex: none;
  width: 50%;
}
.grid.is-mobile > .col.is-one-third {
  flex: none;
  width: 33.3333%;
}
.grid.is-mobile > .col.is-one-quarter {
  flex: none;
  width: 25%;
}
.grid.is-mobile > .col.is-one-fifth {
  flex: none;
  width: 20%;
}
.grid.is-mobile > .col.is-two-fifths {
  flex: none;
  width: 40%;
}
.grid.is-mobile > .col.is-three-fifths {
  flex: none;
  width: 60%;
}
.grid.is-mobile > .col.is-four-fifths {
  flex: none;
  width: 80%;
}
.grid.is-mobile > .col.is-offset-three-quarters {
  margin-left: 75%;
}
.grid.is-mobile > .col.is-offset-two-thirds {
  margin-left: 66.6666%;
}
.grid.is-mobile > .col.is-offset-half {
  margin-left: 50%;
}
.grid.is-mobile > .col.is-offset-one-third {
  margin-left: 33.3333%;
}
.grid.is-mobile > .col.is-offset-one-quarter {
  margin-left: 25%;
}
.grid.is-mobile > .col.is-offset-one-fifth {
  margin-left: 20%;
}
.grid.is-mobile > .col.is-offset-two-fifths {
  margin-left: 40%;
}
.grid.is-mobile > .col.is-offset-three-fifths {
  margin-left: 60%;
}
.grid.is-mobile > .col.is-offset-four-fifths {
  margin-left: 80%;
}
.grid.is-mobile > .col.is-0 {
  flex: none;
  width: 0%;
}
.grid.is-mobile > .col.is-offset-0 {
  margin-left: 0%;
}
.grid.is-mobile > .col.is-1 {
  flex: none;
  width: 8.3333333333%;
}
.grid.is-mobile > .col.is-offset-1 {
  margin-left: 8.3333333333%;
}
.grid.is-mobile > .col.is-2 {
  flex: none;
  width: 16.6666666667%;
}
.grid.is-mobile > .col.is-offset-2 {
  margin-left: 16.6666666667%;
}
.grid.is-mobile > .col.is-3 {
  flex: none;
  width: 25%;
}
.grid.is-mobile > .col.is-offset-3 {
  margin-left: 25%;
}
.grid.is-mobile > .col.is-4 {
  flex: none;
  width: 33.3333333333%;
}
.grid.is-mobile > .col.is-offset-4 {
  margin-left: 33.3333333333%;
}
.grid.is-mobile > .col.is-5 {
  flex: none;
  width: 41.6666666667%;
}
.grid.is-mobile > .col.is-offset-5 {
  margin-left: 41.6666666667%;
}
.grid.is-mobile > .col.is-6 {
  flex: none;
  width: 50%;
}
.grid.is-mobile > .col.is-offset-6 {
  margin-left: 50%;
}
.grid.is-mobile > .col.is-7 {
  flex: none;
  width: 58.3333333333%;
}
.grid.is-mobile > .col.is-offset-7 {
  margin-left: 58.3333333333%;
}
.grid.is-mobile > .col.is-8 {
  flex: none;
  width: 66.6666666667%;
}
.grid.is-mobile > .col.is-offset-8 {
  margin-left: 66.6666666667%;
}
.grid.is-mobile > .col.is-9 {
  flex: none;
  width: 75%;
}
.grid.is-mobile > .col.is-offset-9 {
  margin-left: 75%;
}
.grid.is-mobile > .col.is-10 {
  flex: none;
  width: 83.3333333333%;
}
.grid.is-mobile > .col.is-offset-10 {
  margin-left: 83.3333333333%;
}
.grid.is-mobile > .col.is-11 {
  flex: none;
  width: 91.6666666667%;
}
.grid.is-mobile > .col.is-offset-11 {
  margin-left: 91.6666666667%;
}
.grid.is-mobile > .col.is-12 {
  flex: none;
  width: 100%;
}
.grid.is-mobile > .col.is-offset-12 {
  margin-left: 100%;
}
@media screen and (max-width: 768px) {
  .col.mobile\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.mobile\:is-full {
    flex: none;
    width: 100%;
  }
  .col.mobile\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.mobile\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.mobile\:is-half {
    flex: none;
    width: 50%;
  }
  .col.mobile\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.mobile\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.mobile\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.mobile\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.mobile\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.mobile\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.mobile\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.mobile\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.mobile\:is-offset-half {
    margin-left: 50%;
  }
  .col.mobile\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.mobile\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.mobile\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.mobile\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.mobile\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.mobile-offset-four-fifths {
    margin-left: 80%;
  }
  .col.mobile\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.mobile\:is-offset-0 {
    margin-left: 0%;
  }
  .col.mobile\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.mobile\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.mobile\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.mobile\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.mobile\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.mobile\:is-offset-3 {
    margin-left: 25%;
  }
  .col.mobile\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.mobile\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.mobile\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.mobile\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.mobile\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.mobile\:is-offset-6 {
    margin-left: 50%;
  }
  .col.mobile\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.mobile\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.mobile\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.mobile\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.mobile\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.mobile\:is-offset-9 {
    margin-left: 75%;
  }
  .col.mobile\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.mobile\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.mobile\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.mobile\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.mobile\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.mobile\:is-offset-12 {
    margin-left: 100%;
  }
}
@media screen and (min-width: 769px) {
  .col.is-narrow, .col.tablet\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.is-full, .col.tablet\:is-full {
    flex: none;
    width: 100%;
  }
  .col.is-three-quarters, .col.tablet\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.is-two-thirds, .col.tablet\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.is-half, .col.tablet\:is-half {
    flex: none;
    width: 50%;
  }
  .col.is-one-third, .col.tablet\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.is-one-quarter, .col.tablet\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.is-one-fifth, .col.tablet\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.is-two-fifths, .col.tablet\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.is-three-fifths, .col.tablet\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.is-four-fifths, .col.tablet\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.is-offset-three-quarters, .col.tablet\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.is-offset-two-thirds, .col.tablet\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.is-offset-half, .col.tablet\:is-offset-half {
    margin-left: 50%;
  }
  .col.is-offset-one-third, .col.tablet\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.is-offset-one-quarter, .col.tablet\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.is-offset-one-fifth, .col.tablet\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.is-offset-two-fifths, .col.tablet\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.is-offset-three-fifths, .col.tablet\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.is-offset-four-fifths, .col.tablet\:is-offset-four-fifths {
    margin-left: 80%;
  }
  .col.is-0, .col.tablet\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.is-offset-0, .col.tablet\:is-offset-0 {
    margin-left: 0%;
  }
  .col.is-1, .col.tablet\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.is-offset-1, .col.tablet\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.is-2, .col.tablet\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.is-offset-2, .col.tablet\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.is-3, .col.tablet\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.is-offset-3, .col.tablet\:is-offset-3 {
    margin-left: 25%;
  }
  .col.is-4, .col.tablet\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.is-offset-4, .col.tablet\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.is-5, .col.tablet\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.is-offset-5, .col.tablet\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.is-6, .col.tablet\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.is-offset-6, .col.tablet\:is-offset-6 {
    margin-left: 50%;
  }
  .col.is-7, .col.tablet\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.is-offset-7, .col.tablet\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.is-8, .col.tablet\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.is-offset-8, .col.tablet\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.is-9, .col.tablet\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.is-offset-9, .col.tablet\:is-offset-9 {
    margin-left: 75%;
  }
  .col.is-10, .col.tablet\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.is-offset-10, .col.tablet\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.is-11, .col.tablet\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.is-offset-11, .col.tablet\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.is-12, .col.tablet\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.is-offset-12, .col.tablet\:is-offset-12 {
    margin-left: 100%;
  }
}
@media screen and (max-width: 1023px) {
  .col.touch\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.touch\:is-full {
    flex: none;
    width: 100%;
  }
  .col.touch\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.touch\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.touch\:is-half {
    flex: none;
    width: 50%;
  }
  .col.touch\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.touch\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.touch\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.touch\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.touch\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.touch\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.touch\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.touch\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.touch\:is-offset-half {
    margin-left: 50%;
  }
  .col.touch\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.touch\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.touch\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.touch\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.touch\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.touch\:is-offset-four-fifths {
    margin-left: 80%;
  }
  .col.touch\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.touch\:is-offset-0 {
    margin-left: 0%;
  }
  .col.touch\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.touch\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.touch\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.touch\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.touch\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.touch\:is-offset-3 {
    margin-left: 25%;
  }
  .col.touch\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.touch\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.touch\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.touch\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.touch\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.touch\:is-offset-6 {
    margin-left: 50%;
  }
  .col.touch\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.touch\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.touch\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.touch\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.touch\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.touch\:is-offset-9 {
    margin-left: 75%;
  }
  .col.touch\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.touch\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.touch\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.touch\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.touch\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.touch\:is-offset-12 {
    margin-left: 100%;
  }
}
@media screen and (min-width: 1024px) {
  .col.desktop\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.desktop\:is-full {
    flex: none;
    width: 100%;
  }
  .col.desktop\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.desktop\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.desktop\:is-half {
    flex: none;
    width: 50%;
  }
  .col.desktop\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.desktop\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.desktop\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.desktop\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.desktop\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.desktop\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.desktop\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.desktop\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.desktop\:is-offset-half {
    margin-left: 50%;
  }
  .col.desktop\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.desktop\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.desktop\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.desktop\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.desktop\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.desktop\:is-offset-four-fifths {
    margin-left: 80%;
  }
  .col.desktop\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.desktop\:is-offset-0 {
    margin-left: 0%;
  }
  .col.desktop\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.desktop\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.desktop\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.desktop\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.desktop\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.desktop\:is-offset-3 {
    margin-left: 25%;
  }
  .col.desktop\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.desktop\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.desktop\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.desktop\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.desktop\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.desktop\:is-offset-6 {
    margin-left: 50%;
  }
  .col.desktop\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.desktop\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.desktop\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.desktop\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.desktop\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.desktop\:is-offset-9 {
    margin-left: 75%;
  }
  .col.desktop\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.desktop\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.desktop\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.desktop\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.desktop\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.desktop\:is-offset-12 {
    margin-left: 100%;
  }
}
@media screen and (min-width: 1440px) {
  .col.widescreen\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.widescreen\:is-full {
    flex: none;
    width: 100%;
  }
  .col.widescreen\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.widescreen\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.widescreen\:is-half {
    flex: none;
    width: 50%;
  }
  .col.widescreen\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.widescreen\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.widescreen\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.widescreen\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.widescreen\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.widescreen\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.widescreen\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.widescreen\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.widescreen\:is-offset-half {
    margin-left: 50%;
  }
  .col.widescreen\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.widescreen\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.widescreen\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.widescreen\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.widescreen\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.widescreen\:is-offset-four-fifths {
    margin-left: 80%;
  }
  .col.widescreen\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.widescreen\:is-offset-0 {
    margin-left: 0%;
  }
  .col.widescreen\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.widescreen\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.widescreen\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.widescreen\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.widescreen\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.widescreen\:is-offset-3 {
    margin-left: 25%;
  }
  .col.widescreen\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.widescreen\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.widescreen\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.widescreen\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.widescreen\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.widescreen\:is-offset-6 {
    margin-left: 50%;
  }
  .col.widescreen\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.widescreen\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.widescreen\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.widescreen\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.widescreen\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.widescreen\:is-offset-9 {
    margin-left: 75%;
  }
  .col.widescreen\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.widescreen\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.widescreen\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.widescreen\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.widescreen\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.widescreen\:is-offset-12 {
    margin-left: 100%;
  }
}
@media screen and (min-width: 1920px) {
  .col.fullhd\:is-narrow {
    flex: none;
    width: unset;
  }
  .col.fullhd\:is-full {
    flex: none;
    width: 100%;
  }
  .col.fullhd\:is-three-quarters {
    flex: none;
    width: 75%;
  }
  .col.fullhd\:is-two-thirds {
    flex: none;
    width: 66.6666%;
  }
  .col.fullhd\:is-half {
    flex: none;
    width: 50%;
  }
  .col.fullhd\:is-one-third {
    flex: none;
    width: 33.3333%;
  }
  .col.fullhd\:is-one-quarter {
    flex: none;
    width: 25%;
  }
  .col.fullhd\:is-one-fifth {
    flex: none;
    width: 20%;
  }
  .col.fullhd\:is-two-fifths {
    flex: none;
    width: 40%;
  }
  .col.fullhd\:is-three-fifths {
    flex: none;
    width: 60%;
  }
  .col.fullhd\:is-four-fifths {
    flex: none;
    width: 80%;
  }
  .col.fullhd\:is-offset-three-quarters {
    margin-left: 75%;
  }
  .col.fullhd\:is-offset-two-thirds {
    margin-left: 66.6666%;
  }
  .col.fullhd\:is-offset-half {
    margin-left: 50%;
  }
  .col.fullhd\:is-offset-one-third {
    margin-left: 33.3333%;
  }
  .col.fullhd\:is-offset-one-quarter {
    margin-left: 25%;
  }
  .col.fullhd\:is-offset-one-fifth {
    margin-left: 20%;
  }
  .col.fullhd\:is-offset-two-fifths {
    margin-left: 40%;
  }
  .col.fullhd\:is-offset-three-fifths {
    margin-left: 60%;
  }
  .col.fullhd\:is-offset-four-fifths {
    margin-left: 80%;
  }
  .col.fullhd\:is-0 {
    flex: none;
    width: 0%;
  }
  .col.fullhd\:is-offset-0 {
    margin-left: 0%;
  }
  .col.fullhd\:is-1 {
    flex: none;
    width: 8.3333333333%;
  }
  .col.fullhd\:is-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col.fullhd\:is-2 {
    flex: none;
    width: 16.6666666667%;
  }
  .col.fullhd\:is-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col.fullhd\:is-3 {
    flex: none;
    width: 25%;
  }
  .col.fullhd\:is-offset-3 {
    margin-left: 25%;
  }
  .col.fullhd\:is-4 {
    flex: none;
    width: 33.3333333333%;
  }
  .col.fullhd\:is-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col.fullhd\:is-5 {
    flex: none;
    width: 41.6666666667%;
  }
  .col.fullhd\:is-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col.fullhd\:is-6 {
    flex: none;
    width: 50%;
  }
  .col.fullhd\:is-offset-6 {
    margin-left: 50%;
  }
  .col.fullhd\:is-7 {
    flex: none;
    width: 58.3333333333%;
  }
  .col.fullhd\:is-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col.fullhd\:is-8 {
    flex: none;
    width: 66.6666666667%;
  }
  .col.fullhd\:is-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col.fullhd\:is-9 {
    flex: none;
    width: 75%;
  }
  .col.fullhd\:is-offset-9 {
    margin-left: 75%;
  }
  .col.fullhd\:is-10 {
    flex: none;
    width: 83.3333333333%;
  }
  .col.fullhd\:is-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col.fullhd\:is-11 {
    flex: none;
    width: 91.6666666667%;
  }
  .col.fullhd\:is-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col.fullhd\:is-12 {
    flex: none;
    width: 100%;
  }
  .col.fullhd\:is-offset-12 {
    margin-left: 100%;
  }
}

.grid {
  margin-left: calc(var(--bal-column-gap) * -1);
  margin-right: calc(var(--bal-column-gap) * -1);
  margin-top: calc(var(--bal-column-gap) * -1);
}
.grid:last-child {
  margin-bottom: calc(var(--bal-column-gap) * -1);
}
.grid:not(:last-child) {
  margin-bottom: calc(1.5rem - var(--bal-column-gap));
}
.grid.is-centered {
  justify-content: center;
}
.grid.is-gapless {
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
}
.grid.is-gapless > .col {
  margin: 0;
  padding: 0 !important;
}
.grid.is-gapless:not(:last-child) {
  margin-bottom: 1.5rem;
}
.grid.is-gapless:last-child {
  margin-bottom: 0;
}
.grid.is-mobile {
  display: flex;
}
.grid.is-multiline {
  flex-wrap: wrap;
}
.grid.is-vcentered {
  align-items: center;
}
@media screen and (min-width: 769px) {
  .grid:not(.is-desktop) {
    display: flex;
  }
}
@media screen and (min-width: 1024px) {
  .grid.is-desktop {
    display: flex;
  }
}

ol.list,
ul.list,
ol.is-list,
ul.is-list {
  margin-bottom: 1.5rem;
  margin-left: 2rem;
}
@media screen and (min-width: 1024px) {
  ol.list,
  ul.list,
  ol.is-list,
  ul.is-list {
    margin-bottom: 2rem;
  }
}
ol.list.is-inside,
ul.list.is-inside,
ol.is-list.is-inside,
ul.is-list.is-inside {
  list-style-position: inside !important;
  margin-left: 0;
}
ol.list.is-inside li,
ul.list.is-inside li,
ol.is-list.is-inside li,
ul.is-list.is-inside li {
  list-style-position: inside !important;
}
ol.list li,
ul.list li,
ol.is-list li,
ul.is-list li {
  hyphens: auto;
  margin-bottom: 1rem;
}
ol.list li:last-child,
ul.list li:last-child,
ol.is-list li:last-child,
ul.is-list li:last-child {
  margin-bottom: 0;
}
ol.list li::marker,
ul.list li::marker,
ol.is-list li::marker,
ul.is-list li::marker {
  color: var(--bal-list-marker-color);
}
ol.list.has-bullet-circle li::marker,
ul.list.has-bullet-circle li::marker,
ol.is-list.has-bullet-circle li::marker,
ul.is-list.has-bullet-circle li::marker {
  content: none;
}
ol.list.has-bullet-circle li::before,
ul.list.has-bullet-circle li::before,
ol.is-list.has-bullet-circle li::before,
ul.is-list.has-bullet-circle li::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  font-size: 0.75rem;
  margin-left: -1.25rem;
  margin-top: 0.313rem;
  border-radius: var(--bal-list-bullet-radius);
  background: var(--bal-list-bullet-background);
}
ol.list.has-bullet-circle.has-bullet-red li::before,
ol.list.has-bullet-circle li.has-bullet-red::before,
ul.list.has-bullet-circle.has-bullet-red li::before,
ul.list.has-bullet-circle li.has-bullet-red::before,
ol.is-list.has-bullet-circle.has-bullet-red li::before,
ol.is-list.has-bullet-circle li.has-bullet-red::before,
ul.is-list.has-bullet-circle.has-bullet-red li::before,
ul.is-list.has-bullet-circle li.has-bullet-red::before {
  background: var(--bal-list-bullet-background-red);
}
ol.list.has-bullet-circle.has-bullet-yellow li::before,
ol.list.has-bullet-circle li.has-bullet-yellow::before,
ul.list.has-bullet-circle.has-bullet-yellow li::before,
ul.list.has-bullet-circle li.has-bullet-yellow::before,
ol.is-list.has-bullet-circle.has-bullet-yellow li::before,
ol.is-list.has-bullet-circle li.has-bullet-yellow::before,
ul.is-list.has-bullet-circle.has-bullet-yellow li::before,
ul.is-list.has-bullet-circle li.has-bullet-yellow::before {
  background: var(--bal-list-bullet-background-yellow);
}
ol.list.has-bullet-circle.has-bullet-green li::before,
ol.list.has-bullet-circle li.has-bullet-green::before,
ul.list.has-bullet-circle.has-bullet-green li::before,
ul.list.has-bullet-circle li.has-bullet-green::before,
ol.is-list.has-bullet-circle.has-bullet-green li::before,
ol.is-list.has-bullet-circle li.has-bullet-green::before,
ul.is-list.has-bullet-circle.has-bullet-green li::before,
ul.is-list.has-bullet-circle li.has-bullet-green::before {
  background: var(--bal-list-bullet-background-green);
}
ol.list.has-bullet-circle.has-bullet-purple li::before,
ol.list.has-bullet-circle li.has-bullet-purple::before,
ul.list.has-bullet-circle.has-bullet-purple li::before,
ul.list.has-bullet-circle li.has-bullet-purple::before,
ol.is-list.has-bullet-circle.has-bullet-purple li::before,
ol.is-list.has-bullet-circle li.has-bullet-purple::before,
ul.is-list.has-bullet-circle.has-bullet-purple li::before,
ul.is-list.has-bullet-circle li.has-bullet-purple::before {
  background: var(--bal-list-bullet-background-purple);
}
ol.list.is-compact,
ul.list.is-compact,
ol.is-list.is-compact,
ul.is-list.is-compact {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
ol.list.is-compact li,
ul.list.is-compact li,
ol.is-list.is-compact li,
ul.is-list.is-compact li {
  margin-bottom: 0.25rem;
}
ol.list.has-bullets, ol.list.has-bullet-check, ol.list.has-bullet-arrow-down, ol.list.has-bullet-close, ol.list.has-bullet-check-circle,
ul.list.has-bullets,
ul.list.has-bullet-check,
ul.list.has-bullet-arrow-down,
ul.list.has-bullet-close,
ul.list.has-bullet-check-circle,
ol.is-list.has-bullets,
ol.is-list.has-bullet-check,
ol.is-list.has-bullet-arrow-down,
ol.is-list.has-bullet-close,
ol.is-list.has-bullet-check-circle,
ul.is-list.has-bullets,
ul.is-list.has-bullet-check,
ul.is-list.has-bullet-arrow-down,
ul.is-list.has-bullet-close,
ul.is-list.has-bullet-check-circle {
  list-style-type: none !important;
}
ol.list.has-bullets li, ol.list.has-bullet-check li, ol.list.has-bullet-arrow-down li, ol.list.has-bullet-close li, ol.list.has-bullet-check-circle li,
ul.list.has-bullets li,
ul.list.has-bullet-check li,
ul.list.has-bullet-arrow-down li,
ul.list.has-bullet-close li,
ul.list.has-bullet-check-circle li,
ol.is-list.has-bullets li,
ol.is-list.has-bullet-check li,
ol.is-list.has-bullet-arrow-down li,
ol.is-list.has-bullet-close li,
ol.is-list.has-bullet-check-circle li,
ul.is-list.has-bullets li,
ul.is-list.has-bullet-check li,
ul.is-list.has-bullet-arrow-down li,
ul.is-list.has-bullet-close li,
ul.is-list.has-bullet-check-circle li {
  list-style-type: none !important;
}
ol.list.has-bullets li::marker, ol.list.has-bullet-check li::marker, ol.list.has-bullet-arrow-down li::marker, ol.list.has-bullet-close li::marker, ol.list.has-bullet-check-circle li::marker,
ul.list.has-bullets li::marker,
ul.list.has-bullet-check li::marker,
ul.list.has-bullet-arrow-down li::marker,
ul.list.has-bullet-close li::marker,
ul.list.has-bullet-check-circle li::marker,
ol.is-list.has-bullets li::marker,
ol.is-list.has-bullet-check li::marker,
ol.is-list.has-bullet-arrow-down li::marker,
ol.is-list.has-bullet-close li::marker,
ol.is-list.has-bullet-check-circle li::marker,
ul.is-list.has-bullets li::marker,
ul.is-list.has-bullet-check li::marker,
ul.is-list.has-bullet-arrow-down li::marker,
ul.is-list.has-bullet-close li::marker,
ul.is-list.has-bullet-check-circle li::marker {
  content: none !important;
}
ol.list.has-bullets li::before, ol.list.has-bullet-check li::before, ol.list.has-bullet-arrow-down li::before, ol.list.has-bullet-close li::before, ol.list.has-bullet-check-circle li::before,
ul.list.has-bullets li::before,
ul.list.has-bullet-check li::before,
ul.list.has-bullet-arrow-down li::before,
ul.list.has-bullet-close li::before,
ul.list.has-bullet-check-circle li::before,
ol.is-list.has-bullets li::before,
ol.is-list.has-bullet-check li::before,
ol.is-list.has-bullet-arrow-down li::before,
ol.is-list.has-bullet-close li::before,
ol.is-list.has-bullet-check-circle li::before,
ul.is-list.has-bullets li::before,
ul.is-list.has-bullet-check li::before,
ul.is-list.has-bullet-arrow-down li::before,
ul.is-list.has-bullet-close li::before,
ul.is-list.has-bullet-check-circle li::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  font-size: 0.875rem;
  margin-left: -1.375rem;
  margin-top: 0.313rem;
}
ol.list.has-bullets.has-bullet-check-circle li::before, ol.list.has-bullets.has-bullet-arrow-down li::before, ol.list.has-bullet-check.has-bullet-check-circle li::before, ol.list.has-bullet-check.has-bullet-arrow-down li::before, ol.list.has-bullet-arrow-down.has-bullet-check-circle li::before, ol.list.has-bullet-arrow-down.has-bullet-arrow-down li::before, ol.list.has-bullet-close.has-bullet-check-circle li::before, ol.list.has-bullet-close.has-bullet-arrow-down li::before, ol.list.has-bullet-check-circle.has-bullet-check-circle li::before, ol.list.has-bullet-check-circle.has-bullet-arrow-down li::before,
ul.list.has-bullets.has-bullet-check-circle li::before,
ul.list.has-bullets.has-bullet-arrow-down li::before,
ul.list.has-bullet-check.has-bullet-check-circle li::before,
ul.list.has-bullet-check.has-bullet-arrow-down li::before,
ul.list.has-bullet-arrow-down.has-bullet-check-circle li::before,
ul.list.has-bullet-arrow-down.has-bullet-arrow-down li::before,
ul.list.has-bullet-close.has-bullet-check-circle li::before,
ul.list.has-bullet-close.has-bullet-arrow-down li::before,
ul.list.has-bullet-check-circle.has-bullet-check-circle li::before,
ul.list.has-bullet-check-circle.has-bullet-arrow-down li::before,
ol.is-list.has-bullets.has-bullet-check-circle li::before,
ol.is-list.has-bullets.has-bullet-arrow-down li::before,
ol.is-list.has-bullet-check.has-bullet-check-circle li::before,
ol.is-list.has-bullet-check.has-bullet-arrow-down li::before,
ol.is-list.has-bullet-arrow-down.has-bullet-check-circle li::before,
ol.is-list.has-bullet-arrow-down.has-bullet-arrow-down li::before,
ol.is-list.has-bullet-close.has-bullet-check-circle li::before,
ol.is-list.has-bullet-close.has-bullet-arrow-down li::before,
ol.is-list.has-bullet-check-circle.has-bullet-check-circle li::before,
ol.is-list.has-bullet-check-circle.has-bullet-arrow-down li::before,
ul.is-list.has-bullets.has-bullet-check-circle li::before,
ul.is-list.has-bullets.has-bullet-arrow-down li::before,
ul.is-list.has-bullet-check.has-bullet-check-circle li::before,
ul.is-list.has-bullet-check.has-bullet-arrow-down li::before,
ul.is-list.has-bullet-arrow-down.has-bullet-check-circle li::before,
ul.is-list.has-bullet-arrow-down.has-bullet-arrow-down li::before,
ul.is-list.has-bullet-close.has-bullet-check-circle li::before,
ul.is-list.has-bullet-close.has-bullet-arrow-down li::before,
ul.is-list.has-bullet-check-circle.has-bullet-check-circle li::before,
ul.is-list.has-bullet-check-circle.has-bullet-arrow-down li::before {
  width: 1rem;
  height: 1rem;
  font-size: 1rem;
  margin-left: -1.44rem;
  margin-top: 0.25rem;
}
ol.list.has-bullet-check li::before,
ol.list li.has-bullet-check::before,
ul.list.has-bullet-check li::before,
ul.list li.has-bullet-check::before,
ol.is-list.has-bullet-check li::before,
ol.is-list li.has-bullet-check::before,
ul.is-list.has-bullet-check li::before,
ul.is-list li.has-bullet-check::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM4ODU0XzM0MjU0OSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjYzNzEgMS4xOTc5MkMxNC4wNjI4IDEuNTQ5NzQgMTQuMTIyOCAyLjE4MDA2IDEzLjc3MDkgMi42MDU3OUw1LjczMDkgMTIuMzM1TDUuNzI4NDggMTIuMzM3OUM1LjU0NTYgMTIuNTU3NSA1LjMxNjA4IDEyLjczMzYgNS4wNTY2MSAxMi44NTM0QzQuNzk3MTMgMTIuOTczMSA0LjUxNDIzIDEzLjAzMzYgNC4yMjg0OCAxMy4wMzAySDQuMjI3NThDMy45MzcxNSAxMy4wMjY2IDMuNjUxMzEgMTIuOTU3MyAzLjM5MTUyIDEyLjgyNzRDMy4xMzI2IDEyLjY5NzkgMi45MDYyNiAxMi41MTE3IDIuNzI5MzcgMTIuMjgyNkMyLjcyODc3IDEyLjI4MTggMi43MjgxOCAxMi4yODEgMi43Mjc1OCAxMi4yODAyTDAuMjEwNjk0IDkuMDQ0MjZDLTAuMTI4Mzc2IDguNjA4MzEgLTAuMDQ5ODQyIDcuOTgwMDMgMC4zODYxMDUgNy42NDA5NkMwLjgyMjA1MyA3LjMwMTg5IDEuNDUwMzMgNy4zODA0MyAxLjc4OTQgNy44MTYzOEw0LjI1Mjk3IDEwLjk4MzhMMTIuMjI5MiAxLjMzMTc2QzEyLjU4MSAwLjkwNjAzNSAxMy4yMTE0IDAuODQ2MTEzIDEzLjYzNzEgMS4xOTc5MloiIGZpbGw9IiMwMDBENkUiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8zODg1NF8zNDI1NDkiPgo8cmVjdCB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) no-repeat left top;
}
ol.list.has-bullet-arrow-down li::before,
ol.list li.has-bullet-arrow-down::before,
ul.list.has-bullet-arrow-down li::before,
ul.list li.has-bullet-arrow-down::before,
ol.is-list.has-bullet-arrow-down li::before,
ol.is-list li.has-bullet-arrow-down::before,
ul.is-list.has-bullet-arrow-down li::before,
ul.is-list li.has-bullet-arrow-down::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03LjY0NjQ2IDE0Ljg1MzZDNy44NDE3MiAxNS4wNDg4IDguMTU4MyAxNS4wNDg4IDguMzUzNTYgMTQuODUzNkwxMS44NTM2IDExLjM1MzZDMTEuOTk2NiAxMS4yMTA2IDEyLjAzOTMgMTAuOTk1NSAxMS45NjE5IDEwLjgwODdDMTEuODg0NSAxMC42MjE4IDExLjcwMjIgMTAuNSAxMS41IDEwLjVIOS4wMDAwMVYyQzkuMDAwMDEgMS40NDc3IDguNTUyMjkgMSA4LjAwMDAxIDFDNy40NDc3MiAxIDcuMDAwMDEgMS40NDc3IDcuMDAwMDEgMlYxMC41SDQuNTAwMDFDNC4yOTc3OCAxMC41IDQuMTE1NDYgMTAuNjIxOCA0LjAzODA3IDEwLjgwODdDMy45NjA2OCAxMC45OTU1IDQuMDAzNDYgMTEuMjEwNiA0LjE0NjQ2IDExLjM1MzZMNy42NDY0NiAxNC44NTM2WiIgZmlsbD0iIzAwMEQ2RSIvPgo8L3N2Zz4=) no-repeat left top;
}
ol.list.has-bullet-check-circle li::before,
ol.list li.has-bullet-check-circle::before,
ul.list.has-bullet-check-circle li::before,
ul.list li.has-bullet-check-circle::before,
ol.is-list.has-bullet-check-circle li::before,
ol.is-list li.has-bullet-check-circle::before,
ul.is-list.has-bullet-check-circle li::before,
ul.is-list li.has-bullet-check-circle::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE3ODdfMTIyNCkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTggMTZDMTIuNDE4MyAxNiAxNiAxMi40MTgzIDE2IDhDMTYgMy41ODE3MiAxMi40MTgzIDAgOCAwQzMuNTgxNzIgMCAwIDMuNTgxNzIgMCA4QzAgMTIuNDE4MyAzLjU4MTcyIDE2IDggMTZaTTYuNzYxNyAxMS43OTQ1QzYuOTgyNTkgMTEuNjk2NSA3LjE3OTI0IDExLjU1MTMgNy4zMzc3MyAxMS4zNjlMMTIuMzczMSA2LjMzMzIxQzEyLjQ2NzcgNi4yMzM5NiAxMi41NDE3IDYuMTE3MDYgMTIuNTkxIDUuOTg5MTVDMTIuNjQwMyA1Ljg2MTI1IDEyLjY2MzkgNS43MjQ4OCAxMi42NjA0IDUuNTg3ODRDMTIuNjU2OSA1LjQ1MDggMTIuNjI2NCA1LjMxNTgxIDEyLjU3MDcgNS4xOTA1OUMxMi41MTQ5IDUuMDY1MzcgMTIuNDM1IDQuOTUyMzkgMTIuMzM1NSA0Ljg1ODA5QzEyLjIzNjEgNC43NjM3OCAxMi4xMTkgNC42ODk5OSAxMS45OTExIDQuNjQwODhDMTEuODYzMiA0LjU5MTc3IDExLjcyNjggNC41NjgzIDExLjU4OTggNC41NzE3OEMxMS40NTI5IDQuNTc1MjYgMTEuMzE3OSA0LjYwNTYyIDExLjE5MjYgNC42NjExN0MxMS4wNjc3IDQuNzE2NTcgMTAuOTU0IDQuNzk2NzQgMTAuODU5NyA0Ljg5NTYxTDYuMTUwNiA5LjU0MjI2QzYuMTAzODUgOS41ODgzOCA2LjAyNzk1IDkuNTg1NzIgNS45ODQ1NSA5LjUzNjQzTDQuOTA2MjEgOC4zMTE3NUw0LjkwMDA1IDguMzA1MzVDNC43MTM1OCA4LjExMTY0IDQuNDU5NTUgNy45OTczOCA0LjE5MDk4IDcuOTg2MTRDMy45MjI0MSA3Ljk3NDg5IDMuNjU5NzEgOC4wNjc1IDMuNDU3NjggOC4yNDQ5QzMuMjU1NjIgOC40MjIzMyAzLjEyOTgyIDguNjcwOTEgMy4xMDY3OSA4LjkzODlDMy4wODM3NSA5LjIwNjkgMy4xNjUzMSA5LjQ3MzMxIDMuMzM0MjMgOS42ODI1N0wzLjMzOTY4IDkuNjg5MzNMNC43NDk3NyAxMS4yODg4QzQuOTAzMDcgMTEuNDg1NCA1LjA5ODMxIDExLjY0NTUgNS4zMjEzMSAxMS43NTc0QzUuNTQ3OTYgMTEuODcxMiA1Ljc5NzQyIDExLjkzMjIgNi4wNTA5OCAxMS45MzZDNi4yOTU0MiAxMS45NDIgNi41MzgxOSAxMS44OTM2IDYuNzYxNyAxMS43OTQ1WiIgZmlsbD0iIzAwMEQ2RSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzE3ODdfMTIyNCI+CjxyZWN0IHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K) no-repeat left top;
}
ol.list.has-bullet-close li::before,
ol.list li.has-bullet-close::before,
ul.list.has-bullet-close li::before,
ul.list li.has-bullet-close::before,
ol.is-list.has-bullet-close li::before,
ol.is-list li.has-bullet-close::before,
ul.is-list.has-bullet-close li::before,
ul.is-list li.has-bullet-close::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM4ODU0XzM0MjU5OSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEuNzA3MTEgMC4yOTI4OTNDMS4zMTY1OCAtMC4wOTc2MzEgMC42ODM0MTcgLTAuMDk3NjMxIDAuMjkyODkzIDAuMjkyODkzQy0wLjA5NzYzMSAwLjY4MzQxNyAtMC4wOTc2MzEgMS4zMTY1OCAwLjI5Mjg5MyAxLjcwNzExTDUuNTg1NzkgN0wwLjI5Mjg5MyAxMi4yOTI5Qy0wLjA5NzYzMSAxMi42ODM0IC0wLjA5NzYzMSAxMy4zMTY2IDAuMjkyODkzIDEzLjcwNzFDMC42ODM0MTcgMTQuMDk3NiAxLjMxNjU4IDE0LjA5NzYgMS43MDcxMSAxMy43MDcxTDcgOC40MTQyMUwxMi4yOTI5IDEzLjcwNzFDMTIuNjgzNCAxNC4wOTc2IDEzLjMxNjYgMTQuMDk3NiAxMy43MDcxIDEzLjcwNzFDMTQuMDk3NiAxMy4zMTY2IDE0LjA5NzYgMTIuNjgzNCAxMy43MDcxIDEyLjI5MjlMOC40MTQyMSA3TDEzLjcwNzEgMS43MDcxMUMxNC4wOTc2IDEuMzE2NTggMTQuMDk3NiAwLjY4MzQxNyAxMy43MDcxIDAuMjkyODkzQzEzLjMxNjYgLTAuMDk3NjMxIDEyLjY4MzQgLTAuMDk3NjMxIDEyLjI5MjkgMC4yOTI4OTNMNyA1LjU4NTc5TDEuNzA3MTEgMC4yOTI4OTNaIiBmaWxsPSIjMDAwRDZFIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMzg4NTRfMzQyNTk5Ij4KPHJlY3Qgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=) no-repeat left top;
}
ol.list.has-bullet-check.has-bullet-green li::before,
ol.list li.has-bullet-check.has-bullet-green::before,
ul.list.has-bullet-check.has-bullet-green li::before,
ul.list li.has-bullet-check.has-bullet-green::before,
ol.is-list.has-bullet-check.has-bullet-green li::before,
ol.is-list li.has-bullet-check.has-bullet-green::before,
ul.is-list.has-bullet-check.has-bullet-green li::before,
ul.is-list li.has-bullet-check.has-bullet-green::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI1MDdfMTkzNDYxKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTMuNjM3MSAxLjE5NzkyQzE0LjA2MjggMS41NDk3NCAxNC4xMjI4IDIuMTgwMDYgMTMuNzcwOSAyLjYwNTc5TDUuNzMwOSAxMi4zMzVMNS43Mjg0OCAxMi4zMzc5QzUuNTQ1NiAxMi41NTc1IDUuMzE2MDggMTIuNzMzNiA1LjA1NjYxIDEyLjg1MzRDNC43OTcxMyAxMi45NzMxIDQuNTE0MjMgMTMuMDMzNiA0LjIyODQ4IDEzLjAzMDJDMy45MzgwNSAxMy4wMjY2IDMuNjUxMzEgMTIuOTU3MyAzLjM5MTUyIDEyLjgyNzRDMy4xMzI2IDEyLjY5NzkgMi45MDYyNiAxMi41MTE3IDIuNzI5MzcgMTIuMjgyNkMyLjcyODc3IDEyLjI4MTggMi43MjgxOCAxMi4yODEgMi43Mjc1OCAxMi4yODAyTDAuMjEwNjk0IDkuMDQ0MjZDLTAuMTI4Mzc2IDguNjA4MzEgLTAuMDQ5ODQyIDcuOTgwMDMgMC4zODYxMDUgNy42NDA5NkMwLjgyMjA1MyA3LjMwMTg5IDEuNDUwMzMgNy4zODA0MyAxLjc4OTQgNy44MTYzOEw0LjI1Mjk3IDEwLjk4MzhMMTIuMjI5MiAxLjMzMTc2QzEyLjU4MSAwLjkwNjAzNSAxMy4yMTE0IDAuODQ2MTEzIDEzLjYzNzEgMS4xOTc5MloiIGZpbGw9IiMwMEIyOEYiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yNTA3XzE5MzQ2MSI+CjxyZWN0IHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K) no-repeat left top;
}
ol.list.has-bullet-close.has-bullet-red li::before,
ol.list li.has-bullet-close.has-bullet-red::before,
ul.list.has-bullet-close.has-bullet-red li::before,
ul.list li.has-bullet-close.has-bullet-red::before,
ol.is-list.has-bullet-close.has-bullet-red li::before,
ol.is-list li.has-bullet-close.has-bullet-red::before,
ul.is-list.has-bullet-close.has-bullet-red li::before,
ul.is-list li.has-bullet-close.has-bullet-red::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzI1MDdfMTkzNDY1KSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMS43MDcxMSAwLjI5Mjg5M0MxLjMxNjU4IC0wLjA5NzYzMSAwLjY4MzQxNyAtMC4wOTc2MzEgMC4yOTI4OTMgMC4yOTI4OTNDLTAuMDk3NjMxIDAuNjgzNDE3IC0wLjA5NzYzMSAxLjMxNjU4IDAuMjkyODkzIDEuNzA3MTFMNS41ODU3OSA3TDAuMjkyODkzIDEyLjI5MjlDLTAuMDk3NjMxIDEyLjY4MzQgLTAuMDk3NjMxIDEzLjMxNjYgMC4yOTI4OTMgMTMuNzA3MUMwLjY4MzQxNyAxNC4wOTc2IDEuMzE2NTggMTQuMDk3NiAxLjcwNzExIDEzLjcwNzFMNyA4LjQxNDIxTDEyLjI5MjkgMTMuNzA3MUMxMi42ODM0IDE0LjA5NzYgMTMuMzE2NiAxNC4wOTc2IDEzLjcwNzEgMTMuNzA3MUMxNC4wOTc2IDEzLjMxNjYgMTQuMDk3NiAxMi42ODM0IDEzLjcwNzEgMTIuMjkyOUw4LjQxNDIxIDdMMTMuNzA3MSAxLjcwNzExQzE0LjA5NzYgMS4zMTY1OCAxNC4wOTc2IDAuNjgzNDE3IDEzLjcwNzEgMC4yOTI4OTNDMTMuMzE2NiAtMC4wOTc2MzEgMTIuNjgzNCAtMC4wOTc2MzEgMTIuMjkyOSAwLjI5Mjg5M0w3IDUuNTg1NzlMMS43MDcxMSAwLjI5Mjg5M1oiIGZpbGw9IiNEOTMwNEMiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8yNTA3XzE5MzQ2NSI+CjxyZWN0IHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K) no-repeat left top;
}
ol.list.is-inverted li,
ol.list.is-inverted li::marker,
ul.list.is-inverted li,
ul.list.is-inverted li::marker,
ol.is-list.is-inverted li,
ol.is-list.is-inverted li::marker,
ul.is-list.is-inverted li,
ul.is-list.is-inverted li::marker {
  color: var(--bal-list-marker-inverted-color);
}
ol.list.is-inverted.has-bullet-check li::before,
ol.list.is-inverted li.has-bullet-check::before,
ul.list.is-inverted.has-bullet-check li::before,
ul.list.is-inverted li.has-bullet-check::before,
ol.is-list.is-inverted.has-bullet-check li::before,
ol.is-list.is-inverted li.has-bullet-check::before,
ul.is-list.is-inverted.has-bullet-check li::before,
ul.is-list.is-inverted li.has-bullet-check::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM4ODU0XzM0MjU0OSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjYzNzEgMS4xOTc5MkMxNC4wNjI4IDEuNTQ5NzQgMTQuMTIyOCAyLjE4MDA2IDEzLjc3MDkgMi42MDU3OUw1LjczMDkgMTIuMzM1TDUuNzI4NDggMTIuMzM3OUM1LjU0NTYgMTIuNTU3NSA1LjMxNjA4IDEyLjczMzYgNS4wNTY2MSAxMi44NTM0QzQuNzk3MTMgMTIuOTczMSA0LjUxNDIzIDEzLjAzMzYgNC4yMjg0OCAxMy4wMzAySDQuMjI3NThDMy45MzcxNSAxMy4wMjY2IDMuNjUxMzEgMTIuOTU3MyAzLjM5MTUyIDEyLjgyNzRDMy4xMzI2IDEyLjY5NzkgMi45MDYyNiAxMi41MTE3IDIuNzI5MzcgMTIuMjgyNkMyLjcyODc3IDEyLjI4MTggMi43MjgxOCAxMi4yODEgMi43Mjc1OCAxMi4yODAyTDAuMjEwNjk0IDkuMDQ0MjZDLTAuMTI4Mzc2IDguNjA4MzEgLTAuMDQ5ODQyIDcuOTgwMDMgMC4zODYxMDUgNy42NDA5NkMwLjgyMjA1MyA3LjMwMTg5IDEuNDUwMzMgNy4zODA0MyAxLjc4OTQgNy44MTYzOEw0LjI1Mjk3IDEwLjk4MzhMMTIuMjI5MiAxLjMzMTc2QzEyLjU4MSAwLjkwNjAzNSAxMy4yMTE0IDAuODQ2MTEzIDEzLjYzNzEgMS4xOTc5MloiIGZpbGw9IndoaXRlIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMzg4NTRfMzQyNTQ5Ij4KPHJlY3Qgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=) no-repeat left top;
}
ol.list.is-inverted.has-bullet-close li::before,
ol.list.is-inverted li.has-bullet-close::before,
ul.list.is-inverted.has-bullet-close li::before,
ul.list.is-inverted li.has-bullet-close::before,
ol.is-list.is-inverted.has-bullet-close li::before,
ol.is-list.is-inverted li.has-bullet-close::before,
ul.is-list.is-inverted.has-bullet-close li::before,
ul.is-list.is-inverted li.has-bullet-close::before {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM4ODU0XzM0MjU5OSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEuNzA3MTEgMC4yOTI4OTNDMS4zMTY1OCAtMC4wOTc2MzEgMC42ODM0MTcgLTAuMDk3NjMxIDAuMjkyODkzIDAuMjkyODkzQy0wLjA5NzYzMSAwLjY4MzQxNyAtMC4wOTc2MzEgMS4zMTY1OCAwLjI5Mjg5MyAxLjcwNzExTDUuNTg1NzkgN0wwLjI5Mjg5MyAxMi4yOTI5Qy0wLjA5NzYzMSAxMi42ODM0IC0wLjA5NzYzMSAxMy4zMTY2IDAuMjkyODkzIDEzLjcwNzFDMC42ODM0MTcgMTQuMDk3NiAxLjMxNjU4IDE0LjA5NzYgMS43MDcxMSAxMy43MDcxTDcgOC40MTQyMUwxMi4yOTI5IDEzLjcwNzFDMTIuNjgzNCAxNC4wOTc2IDEzLjMxNjYgMTQuMDk3NiAxMy43MDcxIDEzLjcwNzFDMTQuMDk3NiAxMy4zMTY2IDE0LjA5NzYgMTIuNjgzNCAxMy43MDcxIDEyLjI5MjlMOC40MTQyMSA3TDEzLjcwNzEgMS43MDcxMUMxNC4wOTc2IDEuMzE2NTggMTQuMDk3NiAwLjY4MzQxNyAxMy43MDcxIDAuMjkyODkzQzEzLjMxNjYgLTAuMDk3NjMxIDEyLjY4MzQgLTAuMDk3NjMxIDEyLjI5MjkgMC4yOTI4OTNMNyA1LjU4NTc5TDEuNzA3MTEgMC4yOTI4OTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzM4ODU0XzM0MjU5OSI+CjxyZWN0IHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K) no-repeat left top;
}

ul.list:not(.has-bullet-circle):not(.has-bullet-check) li,
ul.is-list:not(.has-bullet-circle):not(.has-bullet-check) li {
  list-style: disc;
}

dl.list {
  display: grid;
  grid-template-columns: var(--bal-description-list-grid-term) var(--bal-description-list-grid-detail);
  row-gap: var(--bal-description-list-row-gap);
  -moz-column-gap: var(--bal-description-list-column-gap);
       column-gap: var(--bal-description-list-column-gap);
}
dl.list dt {
  color: var(--bal-description-list-term-color);
  font-weight: var(--bal-description-list-term-font-weight);
}
dl.list dd {
  color: var(--bal-description-list-detail-color);
  font-weight: var(--bal-description-list-detail-font-weight);
}

.table {
  background-color: var(--bal-table-background-color);
  color: var(--bal-table-color);
}
.table td,
.table th {
  border: var(--bal-table-cell-border);
  border-width: var(--bal-table-cell-border-width);
  padding: var(--bal-table-cell-padding);
  vertical-align: middle;
}
.table td.is-narrow,
.table th.is-narrow {
  white-space: nowrap;
  width: 1%;
}
.table td.is-selected,
.table th.is-selected {
  background-color: var(--bal-table-row-background-color-active);
  color: var(--bal-table-row-color-active);
}
.table td.is-selected a,
.table td.is-selected strong,
.table th.is-selected a,
.table th.is-selected strong {
  color: currentColor;
}
.table th {
  color: var(--bal-table-cell-heading-color);
}
.table th:not([align]) {
  text-align: inherit;
}
.table tr.is-selected {
  background-color: var(--bal-table-row-background-color-active);
  color: var(--bal-table-row-color-active);
}
.table tr.is-selected a,
.table tr.is-selected strong {
  color: currentColor;
}
.table tr.is-selected td,
.table tr.is-selected th {
  border-color: var(--bal-table-row-color-active);
  color: currentColor;
}
.table thead {
  background-color: var(--bal-table-head-background-color);
}
.table thead td,
.table thead th {
  border-width: var(--bal-table-head-cell-border-width);
  color: var(--bal-table-head-cell-color);
}
.table tfoot {
  background-color: var(--bal-table-foot-background-color);
}
.table tfoot td,
.table tfoot th {
  border-width: var(--bal-table-foot-cell-border-width);
  color: var(--bal-table-foot-cell-color);
}
.table tbody {
  background-color: var(--bal-table-body-background-color);
}
.table tbody tr:last-child td,
.table tbody tr:last-child th {
  border-bottom-width: 0;
}
.table.is-bordered th {
  border-top-width: 1px;
  border-left-width: 1px;
  border-right-width: 1px;
  border-top-color: var(--bal-table-cell-border-color);
  border-left-color: var(--bal-table-cell-border-color);
  border-right-color: var(--bal-table-cell-border-color);
}
.table.is-bordered td {
  border-width: 1px;
}
.table.is-bordered tr:last-child td {
  border-bottom-width: 1px;
}
.table.is-fullwidth {
  width: 100%;
}
.table.is-hoverable tbody tr:not(.is-selected):hover {
  background-color: var(--bal-table-row-background-color-hover);
}
.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover {
  background-color: var(--bal-table-row-background-color-hover);
}
.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) {
  background-color: var(--bal-table-striped-row-even-background-color-hover);
}
.table.is-narrow td,
.table.is-narrow th {
  padding: 0.25em 0.5em;
}
.table.is-striped tbody tr:not(.is-selected):nth-child(even) {
  background-color: var(--bal-table-striped-row-even-background-color);
}

.table-container {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
  overflow-y: hidden;
  max-width: 100%;
}

table.table {
  display: table !important;
  border-spacing: 0;
  margin: 0;
}
table.table thead tr {
  border-top: 0;
}
table.table thead th {
  font-family: var(--bal-table-head-font-family);
  border-color: var(--bal-table-head-cell-border-color);
  border-bottom-width: 2px;
}
table.table th:not([align]) {
  text-align: left;
}
table.table td,
table.table th {
  font-size: var(--bal-table-head-font-size);
  vertical-align: middle;
  color: var(--bal-table-color);
  text-align: left;
}
table.table td .bal-checkbox,
table.table th .bal-checkbox {
  padding: 0;
  margin-top: 1px;
}
table.table td {
  color: var(--bal-table-color);
  hyphens: auto;
}
table.table td.has-buttons {
  padding: 2px;
}
table.table td.has-buttons .bal-button {
  margin-right: 0.25rem;
}
table.table td.has-buttons .bal-button:last-child {
  margin-right: 0px;
}
table.table td.has-buttons .buttons {
  justify-content: flex-end;
  padding: 3px;
}

.has-sticky-footer {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.has-sticky-footer main {
  padding-bottom: 2.5rem;
}
.has-sticky-footer .bal-footer,
.has-sticky-footer footer.footer {
  margin-top: auto;
}

/**
  * @deprecated Use desktop with t-shirt size breakpoints instead
  */
/**
  * Mixin to support host and non-host mode for hybrid components.
  * The mixin takes care of the correct selector and allows to write the styles only once.
  * The $selectors parameter can be a single selector or a list of selectors.
  * The $is-host parameter determines if the component is in host mode or not.
  */
/**
  * Mixin sets the selector for host and non-host mode.
  * The styles are wrapped in a :host selector and only applied if the component is used in host mode.
  * The $is-host parameter determines if the component is in host mode or not.
  * The $selector parameter is the selector for non-host mode and can be a single selector or a list of selectors.
  */
/**
  * Mixin generates styles for an element of a component for host and non-host mode.
  * The styles are wrapped in a :host selector and only applied if the component is used in host mode.
  * The $is-host parameter determines if the component is in host mode or not.
  * The $selector parameter is the selector for non-host mode and can be a single selector or a list of selectors.
  */
/**
  * Mixin only generates styles for host mode.
  * The styles are wrapped in a :host selector and only applied if the component is used in host mode.
  * The $is-host parameter determines if the component is in host mode or not.
  */
/**
  * Mixin only generates styles for non-host mode.
  * The styles are not wrapped in a :host selector and only applied if the component is used in non-host mode.
  * The $is-host parameter determines if the component is in host mode or not.
  */
/**
  * Mixin to support host and non-host mode for hybrid components.
  * The mixin takes care of the correct selector and allows to write the styles only once.
  * The $selectors parameter can be a single selector or a list of selectors.
  * The $is-host parameter determines if the component is in host mode or not.
  */
/**
  * Mixin to support host and non-host mode for hybrid components.
  * The mixin takes care of the correct selector and allows to write the styles only once.
  * The $selectors parameter can be a single selector or a list of selectors.
  * The $is-host parameter determines if the component is in host mode or not.
  * The $use-host parameter determines if the component should use the :host selector or not.
  */
/**
  * Mixin to define the host base variables and display property for a component.
  */
/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.toast {
  --_toast-position: var(--toast-position, var(--mod-toast-position, static));
  --_toast-top: var(--toast-top, var(--mod-toast-top));
  --_toast-right: var(--toast-right, var(--mod-toast-right));
  --_toast-bottom: var(--toast-bottom, var(--mod-toast-bottom));
  --_toast-left: var(--toast-left, var(--mod-toast-left));
  position: var(--_toast-position);
  top: var(--_toast-top);
  right: var(--_toast-right);
  bottom: var(--_toast-bottom);
  left: var(--_toast-left);
  --_toast-m: var(--toast-m, var(--mod-toast-m, 0));
  --_toast-my: var(--toast-my, var(--mod-toast-my));
  --_toast-mx: var(--toast-mx, var(--mod-toast-mx));
  --_toast-ml: var(--toast-ml, var(--mod-toast-ml));
  --_toast-mr: var(--toast-mr, var(--mod-toast-mr));
  --_toast-mt: var(--toast-mt, var(--mod-toast-mt));
  --_toast-mb: var(--toast-mb, var(--mod-toast-mb));
  margin: var(--_toast-m);
  margin-inline: var(--_toast-mx);
  margin-block: var(--_toast-my);
  margin-left: var(--_toast-ml);
  margin-right: var(--_toast-mr);
  margin-top: var(--_toast-mt);
  margin-bottom: var(--_toast-mb);
  --_toast-shadow: var(--toast-shadow, var(--mod-toast-shadow, var(--bal-shadow-box-base)));
  --_toast-radius: var(--toast-radius, var(--mod-toast-radius, var(--bal-toast-radius)));
  --_toast-color-background: var(--toast-color-background, var(--mod-toast-color-background, var(--bal-toast-base-background)));
  --_toast-color-text: var(--toast-color-text, var(--mod-toast-color-text, var(--bal-toast-base-text)));
  --_toast-icon: var(--toast-icon, var(--mod-toast-icon, var(--bal-toast-base-icon)));
  --_toast-heading-family: var(--toast-heading-family, var(--mod-toast-heading-family, var(--bal-text-family-heading)));
  --_toast-heading-weight: var(--toast-heading-weight, var(--mod-toast-heading-weight, var(--bal-text-weight-bold)));
  --_toast-heading-size: var(--toast-heading-size, var(--mod-toast-heading-size, var(--bal-text-size-base-device)));
  --_toast-heading-line-height: var(--toast-heading-line-height, var(--mod-toast-heading-line-height, var(--bal-text-line-height-heading)));
  --_toast-content-family: var(--toast-content-family, var(--mod-toast-content-family, var(--bal-text-family-body)));
  --_toast-content-weight: var(--toast-content-weight, var(--mod-toast-content-weight, inherit));
  --_toast-content-size: var(--toast-content-size, var(--mod-toast-content-size, var(--bal-text-size-sm-device)));
  --_toast-content-line-height: var(--toast-content-line-height, var(--mod-toast-content-line-height, var(--bal-text-line-height-body)));
  --_toast-gap: var(--toast-gap, var(--mod-toast-gap, 0.125rem));
  --_toast-pl: var(--toast-pl, var(--mod-toast-pl, 3rem));
  --_toast-pt: var(--toast-pt, var(--mod-toast-pt, 1rem));
  --_toast-pr: var(--toast-pr, var(--mod-toast-pr, 1rem));
  --_toast-pb: var(--toast-pb, var(--mod-toast-pb, 1rem));
  --_toast-animation-start-opacity: var(--toast-animation-start-opacity, var(--mod-toast-animation-start-opacity, 1));
  --_toast-animation-start-transform: var(--toast-animation-start-transform, var(--mod-toast-animation-start-transform, none));
  --_toast-animation-transition: var(--toast-animation-transition, var(--mod-toast-animation-transition, none));
  --_toast-animation-end-opacity: var(--toast-animation-end-opacity, var(--mod-toast-animation-end-opacity, 1));
  --_toast-animation-end-transform: var(--toast-animation-end-transform, var(--mod-toast-animation-end-transform, none));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.toast {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  flex: 1;
  position: relative;
  hyphens: auto;
  color: var(--_toast-color-text);
  background: var(--_toast-color-background);
  border-radius: var(--_toast-radius);
  box-shadow: var(--_toast-shadow);
  padding-top: var(--_toast-pt);
  padding-right: var(--_toast-pr);
  padding-bottom: var(--_toast-pb);
  padding-left: var(--_toast-pl);
  -moz-column-gap: calc(var(--_toast-gap) * 4);
       column-gap: calc(var(--_toast-gap) * 4);
  row-gap: var(--_toast-gap);
  align-items: center;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "message";
}
.toast::before {
  display: block;
  background-color: currentColor;
  color: currentColor;
  forced-color-adjust: preserve-parent-color;
  position: absolute;
  height: 1.5rem;
  width: 1.5rem;
  top: auto;
  left: 0.825rem;
  content: "";
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  mask-image: var(--_toast-icon);
  -webkit-mask-image: var(--_toast-icon);
}
.toast:where(:has(> h2, > strong, > b)):where(:not(:has(> .button, > bal-button))):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: 1fr;
  grid-template-areas: "heading" "message";
}
.toast:where(:has(> .button, > bal-button)):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: 1fr auto;
  grid-template-areas: "message action";
}
.toast:where(:has(> .button, > bal-button)):where(:not(:has(> .close, > bal-close))):has(> h2, > strong, > b) {
  grid-template-areas: "heading action" "message action";
}
.toast:where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button))) {
  grid-template-columns: 1fr auto;
  grid-template-areas: "message close";
}
.toast:where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button))):has(> h2, > strong, > b) {
  grid-template-areas: "heading close" "message close";
}
.toast:where(:has(> .button, > bal-button)):where(:has(> .close, > bal-close)) {
  grid-template-columns: 1fr auto auto;
  grid-template-areas: "message action close";
}
.toast:where(:has(> .button, > bal-button)):where(:has(> .close, > bal-close)):has(> h2, > strong, > b) {
  grid-template-areas: "heading action close" "message action close";
}
.toast, .toast > span, .toast > p {
  font-family: var(--_toast-content-family);
  font-size: var(--_toast-content-size);
  font-weight: var(--_toast-content-weight);
  line-height: var(--_toast-content-line-height);
}
.toast > span, .toast > p {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  margin: 0 !important;
  grid-area: message;
}
.toast > strong, .toast > b, .toast > h2 {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  font-family: var(--_toast-heading-family);
  font-weight: var(--_toast-heading-weight);
  line-height: var(--_toast-heading-line-height);
  font-size: var(--_toast-heading-size);
  margin: 0 !important;
  grid-area: heading;
}
.toast bal-button,
.toast .button {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  --button-mt: 0;
  grid-area: action;
  align-self: center;
}
.toast .close,
.toast bal-close {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: close;
  align-self: center;
}

.toast.is-info {
  --mod-toast-color-text: var(--bal-toast-info-text);
  --mod-toast-color-border: var(--bal-toast-info-border);
  --mod-toast-color-background: var(--bal-toast-info-background);
  --mod-toast-icon: var(--bal-toast-info-icon);
}
.toast.is-success {
  --mod-toast-color-text: var(--bal-toast-success-text);
  --mod-toast-color-border: var(--bal-toast-success-border);
  --mod-toast-color-background: var(--bal-toast-success-background);
  --mod-toast-icon: var(--bal-toast-success-icon);
}
.toast.is-warning {
  --mod-toast-color-text: var(--bal-toast-warning-text);
  --mod-toast-color-border: var(--bal-toast-warning-border);
  --mod-toast-color-background: var(--bal-toast-warning-background);
  --mod-toast-icon: var(--bal-toast-warning-icon);
}
.toast.is-danger {
  --mod-toast-color-text: var(--bal-toast-danger-text);
  --mod-toast-color-border: var(--bal-toast-danger-border);
  --mod-toast-color-background: var(--bal-toast-danger-background);
  --mod-toast-icon: var(--bal-toast-danger-icon);
}

/**
  * Usage examples:
  *   @include attr.has(attr.bool(checked)) { ... }
  *   @include attr.has(attr.bool(checked), attr.bool(invalid), attr.bool(inverted)) { ... }
  *   @include attr.has(attr.val(type, 'button')) { ... }
  *   @include attr.has(attr.val(type, 'button'), attr.bool(checked)) { ... }
  */
/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.text {
  --_text-position: var(--text-position, var(--mod-text-position, static));
  --_text-top: var(--text-top, var(--mod-text-top));
  --_text-right: var(--text-right, var(--mod-text-right));
  --_text-bottom: var(--text-bottom, var(--mod-text-bottom));
  --_text-left: var(--text-left, var(--mod-text-left));
  position: var(--_text-position);
  top: var(--_text-top);
  right: var(--_text-right);
  bottom: var(--_text-bottom);
  left: var(--_text-left);
  --_text-m: var(--text-m, var(--mod-text-m, 0));
  --_text-my: var(--text-my, var(--mod-text-my));
  --_text-mx: var(--text-mx, var(--mod-text-mx));
  --_text-ml: var(--text-ml, var(--mod-text-ml));
  --_text-mr: var(--text-mr, var(--mod-text-mr));
  --_text-mt: var(--text-mt, var(--mod-text-mt));
  --_text-mb: var(--text-mb, var(--mod-text-mb));
  margin: var(--_text-m);
  margin-inline: var(--_text-mx);
  margin-block: var(--_text-my);
  margin-left: var(--_text-ml);
  margin-right: var(--_text-mr);
  margin-top: var(--_text-mt);
  margin-bottom: var(--_text-mb);
  --_text-color: var(--text-color, var(--mod-text-color, inherit));
  --_text-family: var(--text-family, var(--mod-text-family, var(--bal-body-family)));
  --_text-weight: var(--text-weight, var(--mod-text-weight, var(--bal-body-weight)));
  --_text-line-height: var(--text-line-height, var(--mod-text-line-height, var(--bal-body-line-height)));
  --_text-size: var(--text-size, var(--mod-text-size, var(--bal-text-size-base-device)));
  --_text-shadow: var(--text-shadow, var(--mod-text-shadow, var(--bal-shadow-text)));
  --_text-space: var(--text-space, var(--mod-text-space, var(--bal-body-space)));
  --_text-shadow: var(--text-shadow, var(--mod-text-shadow, none));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.text {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: block;
  box-sizing: content-box;
  hyphens: auto;
  overflow-wrap: break-word;
  text-wrap: balance;
  color: var(--_text-color);
  font-family: var(--_text-family);
  font-weight: var(--_text-weight);
  line-height: var(--_text-line-height);
  font-size: var(--_text-size);
  text-shadow: var(--_text-shadow);
}
.text b,
.text strong,
.text .is-bold {
  font-weight: var(--bal-text-weight-bold);
}
.text.is-centered {
  text-align: center;
}
.text.is-right {
  text-align: right;
}
.text.is-justified {
  text-align: justify;
}

.text.has-no-wrap {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

:host([no-wrap]:not([no-wrap=false])) #text {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.text.is-light {
  --mod-text-weight: var(--bal-text-weight-light);
}
.text.is-regular {
  --mod-text-weight: var(--bal-text-weight-regular);
}
.text.is-bold {
  --mod-text-weight: var(--bal-text-weight-bold);
}

:host([bold]:not([bold=false])) {
  --mod-text-weight: var(--bal-text-weight-bold);
}

.text.has-shadow {
  --mod-text-shadow: var(--bal-text-shadow);
}

:host([shadow]:not([shadow=false])) {
  --mod-text-shadow: var(--bal-text-shadow);
}

.text.is-inline {
  display: inline;
}

:host([inline]:not([inline=false])) {
  display: inline;
}

.text.is-white {
  --mod-text-color: var(--bal-text-color-white);
}

.text.is-black {
  --mod-text-color: var(--bal-text-color-black);
}

.text.is-primary {
  --mod-text-color: var(--bal-text-color-primary);
}

.text.is-primary-hover {
  --mod-text-color: var(--bal-text-color-primary-hover);
}

.text.is-primary-active {
  --mod-text-color: var(--bal-text-color-primary-active);
}

.text.is-inverted-primary {
  --mod-text-color: var(--bal-text-color-inverted-primary);
}

.text.is-inverted-primary-hover {
  --mod-text-color: var(--bal-text-color-inverted-primary-hover);
}

.text.is-inverted-primary-active {
  --mod-text-color: var(--bal-text-color-inverted-primary-active);
}

.text.is-primary-light {
  --mod-text-color: var(--bal-text-color-primary-light);
}

.text.is-hint {
  --mod-text-color: var(--bal-text-color-hint);
}

.text.is-grey-light {
  --mod-text-color: var(--bal-text-color-grey-light);
}

.text.is-grey {
  --mod-text-color: var(--bal-text-color-grey);
}

.text.is-grey-dark {
  --mod-text-color: var(--bal-text-color-grey-dark);
}

.text.is-disabled {
  --mod-text-color: var(--bal-text-color-disabled);
}

.text.is-inverted-disabled {
  --mod-text-color: var(--bal-text-color-inverted-disabled);
}

.text.is-info {
  --mod-text-color: var(--bal-text-color-info);
}

.text.is-warning {
  --mod-text-color: var(--bal-text-color-warning);
}

.text.is-success {
  --mod-text-color: var(--bal-text-color-success);
}

.text.is-danger {
  --mod-text-color: var(--bal-text-color-danger);
}

.text.is-danger-hover {
  --mod-text-color: var(--bal-text-color-danger-hover);
}

.text.is-danger-active {
  --mod-text-color: var(--bal-text-color-danger-active);
}

.text.is-xxxxx-large {
  --mod-text-size: var(--bal-text-size-5xl-device);
}
.text.is-5xl {
  --mod-text-size: var(--bal-text-size-5xl-device);
}
.text.is-xxxx-large {
  --mod-text-size: var(--bal-text-size-4xl-device);
}
.text.is-4xl {
  --mod-text-size: var(--bal-text-size-4xl-device);
}
.text.is-xxx-large {
  --mod-text-size: var(--bal-text-size-3xl-device);
}
.text.is-3xl {
  --mod-text-size: var(--bal-text-size-3xl-device);
}
.text.is-xx-large {
  --mod-text-size: var(--bal-text-size-2xl-device);
}
.text.is-2xl {
  --mod-text-size: var(--bal-text-size-2xl-device);
}
.text.is-x-large {
  --mod-text-size: var(--bal-text-size-xl-device);
}
.text.is-xl {
  --mod-text-size: var(--bal-text-size-xl-device);
}
.text.is-large {
  --mod-text-size: var(--bal-text-size-lg-device);
}
.text.is-lead {
  --mod-text-size: var(--bal-text-size-lg-device);
}
.text.is-lg {
  --mod-text-size: var(--bal-text-size-lg-device);
}
.text.is-medium {
  --mod-text-size: var(--bal-text-size-md-device);
}
.text.is-block {
  --mod-text-size: var(--bal-text-size-md-device);
}
.text.is-md {
  --mod-text-size: var(--bal-text-size-md-device);
}
.text.is-normal {
  --mod-text-size: var(--bal-text-size-base-device);
}
.text.is-base {
  --mod-text-size: var(--bal-text-size-base-device);
}
.text.is-small {
  --mod-text-size: var(--bal-text-size-sm-device);
}
.text.is-sm {
  --mod-text-size: var(--bal-text-size-sm-device);
}
.text.is-x-small {
  --mod-text-size: var(--bal-text-size-xs-device);
}
.text.is-xs {
  --mod-text-size: var(--bal-text-size-xs-device);
}

.text.is-heading, .text.is-title {
  --mod-text-family: var(--bal-text-family-heading);
  --mod-text-weight: var(--bal-text-weight-bold);
  --mod-text-line-height: var(--bal-text-line-height-heading);
}
.text.is-subtitle {
  --mod-text-family: var(--bal-text-family-heading);
  --mod-text-weight: var(--bal-text-weight-light);
  --mod-text-line-height: var(--bal-text-line-height-heading);
}

:host([heading]:not([heading=false])) {
  --mod-text-family: var(--bal-text-family-heading);
  --mod-text-weight: var(--bal-text-weight-bold);
  --mod-text-line-height: var(--bal-text-line-height-heading);
}

:host([subtitle]:not([subtitle=false])) {
  --mod-text-family: var(--bal-text-family-heading);
  --mod-text-weight: var(--bal-text-weight-light);
  --mod-text-line-height: var(--bal-text-line-height-heading);
}

.text.has-space-all {
  --mod-text-mt: var(--_text-space);
  --mod-text-mb: var(--_text-space);
}
.text.has-space-top {
  --mod-text-mt: var(--_text-space);
  --mod-text-mb: 0;
}
.text.has-space-bottom {
  --mod-text-mb: var(--_text-space);
}
.text.has-space-none {
  --mod-text-mb: 0;
  --mod-text-mt: 0;
}

:host([space=all]) {
  --text-mt: var(--_text-space);
  --text-mb: var(--_text-space);
}

:host([space=top]) {
  --text-mt: var(--_text-space);
  --text-mb: 0;
}

:host([space=bottom]) {
  --text-mt: 0;
  --text-mb: var(--_text-space);
}

:host([space=none]) {
  --text-mt: 0;
  --text-mb: 0;
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.tag:not(.token) {
  --_tag-m: var(--tag-m, var(--mod-tag-m, 0));
  --_tag-my: var(--tag-my, var(--mod-tag-my));
  --_tag-mx: var(--tag-mx, var(--mod-tag-mx));
  --_tag-ml: var(--tag-ml, var(--mod-tag-ml));
  --_tag-mr: var(--tag-mr, var(--mod-tag-mr));
  --_tag-mt: var(--tag-mt, var(--mod-tag-mt));
  --_tag-mb: var(--tag-mb, var(--mod-tag-mb));
  margin: var(--_tag-m);
  margin-inline: var(--_tag-mx);
  margin-block: var(--_tag-my);
  margin-left: var(--_tag-ml);
  margin-right: var(--_tag-mr);
  margin-top: var(--_tag-mt);
  margin-bottom: var(--_tag-mb);
  --_tag-position: var(--tag-position, var(--mod-tag-position, static));
  --_tag-top: var(--tag-top, var(--mod-tag-top));
  --_tag-right: var(--tag-right, var(--mod-tag-right));
  --_tag-bottom: var(--tag-bottom, var(--mod-tag-bottom));
  --_tag-left: var(--tag-left, var(--mod-tag-left));
  position: var(--_tag-position);
  top: var(--_tag-top);
  right: var(--_tag-right);
  bottom: var(--_tag-bottom);
  left: var(--_tag-left);
  --tag-min-height: 2rem;
  --tag-gap: 0.25rem;
  --tag-padding: var(--bal-tag-space-y) var(--bal-tag-space-x);
  --tag-radius: var(--bal-tag-radius-base);
  --tag-line-height: 1;
  --tag-color-text: var(--bal-tag-color-base-text);
  --tag-color-background: var(--bal-tag-color-base-background);
  --tag-font-family: var(--bal-tag-family);
  --tag-font-size: var(--bal-tag-size);
  --tag-font-weight: var(--bal-tag-weight);
  --tag-close-mr: calc(0.25rem * -1);
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.tag:not(.token) {
  margin: var(--tag-m);
  margin-inline: var(--tag-mx);
  margin-block: var(--tag-my);
  margin-left: var(--tag-ml);
  margin-right: var(--tag-mr);
  margin-top: var(--tag-mt);
  margin-bottom: var(--tag-mb);
  position: var(--tag-position);
  top: var(--tag-top);
  right: var(--tag-right);
  bottom: var(--tag-bottom);
  left: var(--tag-left);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  min-height: var(--tag-min-height);
  gap: var(--tag-gap);
  padding: var(--tag-padding);
  border-radius: var(--tag-radius);
  color: var(--tag-color-text);
  background-color: var(--tag-color-background);
  font-family: var(--tag-font-family);
  line-height: var(--tag-line-height);
  font-size: var(--tag-font-size);
  font-weight: var(--tag-font-weight);
}
.tag:not(.token) > .close,
.tag:not(.token) > bal-close {
  --bal-close-mr: var(--tag-close-mr);
}
.tag:not(.token) > bal-icon {
  --icon-size: 0.875rem;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.tag:not(.token).is-primary {
  --tag-color-text: var(--bal-tag-color-primary-text);
  --tag-color-background: var(--bal-tag-color-primary-background);
}
.tag:not(.token).is-grey {
  --tag-color-text: var(--bal-tag-color-grey-text);
  --tag-color-background: var(--bal-tag-color-grey-background);
}
.tag:not(.token).is-success {
  --tag-color-text: var(--bal-tag-color-success-text);
  --tag-color-background: var(--bal-tag-color-success-background);
}
.tag:not(.token).is-info {
  --tag-color-text: var(--bal-tag-color-info-text);
  --tag-color-background: var(--bal-tag-color-info-background);
}
.tag:not(.token).is-warning {
  --tag-color-text: var(--bal-tag-color-warning-text);
  --tag-color-background: var(--bal-tag-color-warning-background);
}
.tag:not(.token).is-danger {
  --tag-color-text: var(--bal-tag-color-danger-text);
  --tag-color-background: var(--bal-tag-color-danger-background);
}
.tag:not(.token).is-purple {
  --tag-color-text: var(--bal-tag-color-purple-text);
  --tag-color-background: var(--bal-tag-color-purple-background);
}
.tag:not(.token).is-red {
  --tag-color-text: var(--bal-tag-color-red-text);
  --tag-color-background: var(--bal-tag-color-red-background);
}
.tag:not(.token).is-yellow {
  --tag-color-text: var(--bal-tag-color-yellow-text);
  --tag-color-background: var(--bal-tag-color-yellow-background);
}
.tag:not(.token).is-green {
  --tag-color-text: var(--bal-tag-color-green-text);
  --tag-color-background: var(--bal-tag-color-green-background);
}
.tag:not(.token).is-purple-dark {
  --tag-color-text: var(--bal-tag-color-purple-dark-text);
  --tag-color-background: var(--bal-tag-color-purple-dark-background);
}
.tag:not(.token).is-red-dark {
  --tag-color-text: var(--bal-tag-color-red-dark-text);
  --tag-color-background: var(--bal-tag-color-red-dark-background);
}
.tag:not(.token).is-yellow-dark {
  --tag-color-text: var(--bal-tag-color-yellow-dark-text);
  --tag-color-background: var(--bal-tag-color-yellow-dark-background);
}
.tag:not(.token).is-green-dark {
  --tag-color-text: var(--bal-tag-color-green-dark-text);
  --tag-color-background: var(--bal-tag-color-green-dark-background);
}
.tag:not(.token).is-purple-light {
  --tag-color-text: var(--bal-tag-color-purple-light-text);
  --tag-color-background: var(--bal-tag-color-purple-light-background);
}
.tag:not(.token).is-red-light {
  --tag-color-text: var(--bal-tag-color-red-light-text);
  --tag-color-background: var(--bal-tag-color-red-light-background);
}
.tag:not(.token).is-yellow-light {
  --tag-color-text: var(--bal-tag-color-yellow-light-text);
  --tag-color-background: var(--bal-tag-color-yellow-light-background);
}
.tag:not(.token).is-green-light {
  --tag-color-text: var(--bal-tag-color-green-light-text);
  --tag-color-background: var(--bal-tag-color-green-light-background);
}
.tag:not(.token).is-square {
  --tag-radius: var(--bal-tag-radius-square);
}
.tag:not(.token).is-pill {
  --tag-radius: var(--bal-tag-radius-pill);
}
.tag:not(.token).is-sm {
  --tag-min-height: 1.5rem;
  --tag-padding: var(--bal-tag-sm-space-y) var(--bal-tag-sm-space-x);
  --tag-font-size: var(--bal-tag-sm-size);
  --tag-font-weight: var(--bal-tag-sm-weight);
}
.tag:not(.token).is-md {
  --tag-min-height: 2.5rem;
  --tag-padding: var(--bal-tag-md-space-y) var(--bal-tag-md-space-x);
  --tag-font-size: var(--bal-tag-md-size);
  --tag-font-weight: var(--bal-tag-md-weight);
}
.tag:not(.token).is-lg {
  --tag-min-height: 3rem;
  --tag-padding: var(--bal-tag-lg-space-y) var(--bal-tag-lg-space-x);
  --tag-font-size: var(--bal-tag-lg-size);
  --tag-font-weight: var(--bal-tag-lg-weight);
}

/**
  * Overrides child component styles
  * --------------------------------
  * Define here the styles to override child components inside the tag component.
  * Example: close inside tag
  */
.tag:not(.token).is-sm > .close,
.tag:not(.token).is-sm > bal-close {
  --close-padding: 0.25rem;
  --close-size-icon: 10px;
}
.tag:not(.token).is-grey > .close,
.tag:not(.token).is-grey > bal-close, .tag:not(.token).is-info > .close,
.tag:not(.token).is-info > bal-close, .tag:not(.token).is-success > .close,
.tag:not(.token).is-success > bal-close, .tag:not(.token).is-danger > .close,
.tag:not(.token).is-danger > bal-close, .tag:not(.token).is-purple-dark > .close,
.tag:not(.token).is-purple-dark > bal-close, .tag:not(.token).is-red-dark > .close,
.tag:not(.token).is-red-dark > bal-close, .tag:not(.token).is-green-dark > .close,
.tag:not(.token).is-green-dark > bal-close, .tag:not(.token).is-yellow-dark > .close,
.tag:not(.token).is-yellow-dark > bal-close, .tag:not(.token).is-primary > .close,
.tag:not(.token).is-primary > bal-close {
  --close-color-icon: var(--bal-close-color-icon-inverted);
  --close-color-background-hover: var(--bal-close-color-background-inverted-hover);
  --close-color-background-active: var(--bal-close-color-background-inverted-active);
  --close-shadow-focus: var(--bal-close-shadow-outline-inverted);
}
.tag:not(.token).is-grey > bal-icon, .tag:not(.token).is-info > bal-icon, .tag:not(.token).is-success > bal-icon, .tag:not(.token).is-danger > bal-icon, .tag:not(.token).is-purple-dark > bal-icon, .tag:not(.token).is-red-dark > bal-icon, .tag:not(.token).is-green-dark > bal-icon, .tag:not(.token).is-yellow-dark > bal-icon, .tag:not(.token).is-primary > bal-icon {
  --bal-icon-color: var(--bal-close-color-icon-inverted);
}

/**
  * Tags container
  * --------------------------------
  * Define here the styles for tags container to be able to use a flex layout with gap.
  */
.tags {
  display: flex;
  gap: var(--bal-tag-space-x);
}

/**
  * Mixins
  */
/**
  * Basic Style
  */
.stack,
.stack-content {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-flow: column nowrap;
}

.stack {
  gap: 1rem;
}

.stack-content {
  flex: 1;
  height: 100%;
  gap: 0.25rem;
}

.stack > .stack,
.stack > .stack-content {
  align-self: stretch;
}

.stack.is-horizontal > .stack-content {
  align-self: center;
}

.stack.has-wrap,
.stack-content.has-wrap {
  flex-wrap: wrap;
}
.stack.as-row, .stack.is-horizontal, .stack.has-direction-row,
.stack-content.as-row,
.stack-content.is-horizontal,
.stack-content.has-direction-row {
  flex-flow: row nowrap;
  align-items: center;
}
.stack.as-row-reverse, .stack.is-horizontal-reverse, .stack.has-direction-row-reverse,
.stack-content.as-row-reverse,
.stack-content.is-horizontal-reverse,
.stack-content.has-direction-row-reverse {
  flex-flow: row-reverse nowrap;
  align-items: center;
}
.stack.as-col-reverse, .stack.is-vertical-reverse, .stack.has-direction-column-reverse,
.stack-content.as-col-reverse,
.stack-content.is-vertical-reverse,
.stack-content.has-direction-column-reverse {
  flex-flow: column-reverse nowrap;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-left, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-start,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-left,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-start {
  justify-content: flex-start;
  align-items: flex-start;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-center,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-center {
  justify-content: flex-start;
  align-items: center;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-right, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-end,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-right,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-top-end {
  justify-content: flex-start;
  align-items: flex-end;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-start, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-left, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-start,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-start,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-left,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-start {
  justify-content: center;
  align-items: flex-start;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center {
  justify-content: center;
  align-items: center;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-end, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-right, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-end,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-end,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-right,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-center-end {
  justify-content: center;
  align-items: flex-end;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-left, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-start,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-left,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-start {
  justify-content: flex-end;
  align-items: flex-start;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-center,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-center {
  justify-content: flex-end;
  align-items: center;
}
.stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-right, .stack:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-end,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-right,
.stack-content:not(.as-row,
.as-row-reverse,
.has-direction-row,
.has-direction-row-reverse,
.is-horizontal,
.is-horizontal-reverse).align-bottom-end {
  justify-content: flex-end;
  align-items: flex-end;
}
.stack.as-row.align-top-left, .stack.as-row.align-top-start, .stack.is-horizontal.align-top-left, .stack.is-horizontal.align-top-start, .stack.has-direction-row.align-top-left, .stack.has-direction-row.align-top-start, .stack.as-row-reverse.align-top-left, .stack.as-row-reverse.align-top-start, .stack.is-horizontal-reverse.align-top-left, .stack.is-horizontal-reverse.align-top-start, .stack.has-direction-row-reverse.align-top-left, .stack.has-direction-row-reverse.align-top-start,
.stack-content.as-row.align-top-left,
.stack-content.as-row.align-top-start,
.stack-content.is-horizontal.align-top-left,
.stack-content.is-horizontal.align-top-start,
.stack-content.has-direction-row.align-top-left,
.stack-content.has-direction-row.align-top-start,
.stack-content.as-row-reverse.align-top-left,
.stack-content.as-row-reverse.align-top-start,
.stack-content.is-horizontal-reverse.align-top-left,
.stack-content.is-horizontal-reverse.align-top-start,
.stack-content.has-direction-row-reverse.align-top-left,
.stack-content.has-direction-row-reverse.align-top-start {
  align-items: flex-start;
  justify-content: flex-start;
}
.stack.as-row.align-top, .stack.as-row.align-top-center, .stack.is-horizontal.align-top, .stack.is-horizontal.align-top-center, .stack.has-direction-row.align-top, .stack.has-direction-row.align-top-center, .stack.as-row-reverse.align-top, .stack.as-row-reverse.align-top-center, .stack.is-horizontal-reverse.align-top, .stack.is-horizontal-reverse.align-top-center, .stack.has-direction-row-reverse.align-top, .stack.has-direction-row-reverse.align-top-center,
.stack-content.as-row.align-top,
.stack-content.as-row.align-top-center,
.stack-content.is-horizontal.align-top,
.stack-content.is-horizontal.align-top-center,
.stack-content.has-direction-row.align-top,
.stack-content.has-direction-row.align-top-center,
.stack-content.as-row-reverse.align-top,
.stack-content.as-row-reverse.align-top-center,
.stack-content.is-horizontal-reverse.align-top,
.stack-content.is-horizontal-reverse.align-top-center,
.stack-content.has-direction-row-reverse.align-top,
.stack-content.has-direction-row-reverse.align-top-center {
  align-items: flex-start;
  justify-content: center;
}
.stack.as-row.align-top-right, .stack.as-row.align-top-end, .stack.is-horizontal.align-top-right, .stack.is-horizontal.align-top-end, .stack.has-direction-row.align-top-right, .stack.has-direction-row.align-top-end, .stack.as-row-reverse.align-top-right, .stack.as-row-reverse.align-top-end, .stack.is-horizontal-reverse.align-top-right, .stack.is-horizontal-reverse.align-top-end, .stack.has-direction-row-reverse.align-top-right, .stack.has-direction-row-reverse.align-top-end,
.stack-content.as-row.align-top-right,
.stack-content.as-row.align-top-end,
.stack-content.is-horizontal.align-top-right,
.stack-content.is-horizontal.align-top-end,
.stack-content.has-direction-row.align-top-right,
.stack-content.has-direction-row.align-top-end,
.stack-content.as-row-reverse.align-top-right,
.stack-content.as-row-reverse.align-top-end,
.stack-content.is-horizontal-reverse.align-top-right,
.stack-content.is-horizontal-reverse.align-top-end,
.stack-content.has-direction-row-reverse.align-top-right,
.stack-content.has-direction-row-reverse.align-top-end {
  align-items: flex-start;
  justify-content: flex-end;
}
.stack.as-row.align-start, .stack.as-row.align-center-left, .stack.as-row.align-center-start, .stack.is-horizontal.align-start, .stack.is-horizontal.align-center-left, .stack.is-horizontal.align-center-start, .stack.has-direction-row.align-start, .stack.has-direction-row.align-center-left, .stack.has-direction-row.align-center-start, .stack.as-row-reverse.align-start, .stack.as-row-reverse.align-center-left, .stack.as-row-reverse.align-center-start, .stack.is-horizontal-reverse.align-start, .stack.is-horizontal-reverse.align-center-left, .stack.is-horizontal-reverse.align-center-start, .stack.has-direction-row-reverse.align-start, .stack.has-direction-row-reverse.align-center-left, .stack.has-direction-row-reverse.align-center-start,
.stack-content.as-row.align-start,
.stack-content.as-row.align-center-left,
.stack-content.as-row.align-center-start,
.stack-content.is-horizontal.align-start,
.stack-content.is-horizontal.align-center-left,
.stack-content.is-horizontal.align-center-start,
.stack-content.has-direction-row.align-start,
.stack-content.has-direction-row.align-center-left,
.stack-content.has-direction-row.align-center-start,
.stack-content.as-row-reverse.align-start,
.stack-content.as-row-reverse.align-center-left,
.stack-content.as-row-reverse.align-center-start,
.stack-content.is-horizontal-reverse.align-start,
.stack-content.is-horizontal-reverse.align-center-left,
.stack-content.is-horizontal-reverse.align-center-start,
.stack-content.has-direction-row-reverse.align-start,
.stack-content.has-direction-row-reverse.align-center-left,
.stack-content.has-direction-row-reverse.align-center-start {
  align-items: center;
  justify-content: flex-start;
}
.stack.as-row.align-center, .stack.is-horizontal.align-center, .stack.has-direction-row.align-center, .stack.as-row-reverse.align-center, .stack.is-horizontal-reverse.align-center, .stack.has-direction-row-reverse.align-center,
.stack-content.as-row.align-center,
.stack-content.is-horizontal.align-center,
.stack-content.has-direction-row.align-center,
.stack-content.as-row-reverse.align-center,
.stack-content.is-horizontal-reverse.align-center,
.stack-content.has-direction-row-reverse.align-center {
  align-items: center;
  justify-content: center;
}
.stack.as-row.align-end, .stack.as-row.align-center-right, .stack.as-row.align-center-end, .stack.is-horizontal.align-end, .stack.is-horizontal.align-center-right, .stack.is-horizontal.align-center-end, .stack.has-direction-row.align-end, .stack.has-direction-row.align-center-right, .stack.has-direction-row.align-center-end, .stack.as-row-reverse.align-end, .stack.as-row-reverse.align-center-right, .stack.as-row-reverse.align-center-end, .stack.is-horizontal-reverse.align-end, .stack.is-horizontal-reverse.align-center-right, .stack.is-horizontal-reverse.align-center-end, .stack.has-direction-row-reverse.align-end, .stack.has-direction-row-reverse.align-center-right, .stack.has-direction-row-reverse.align-center-end,
.stack-content.as-row.align-end,
.stack-content.as-row.align-center-right,
.stack-content.as-row.align-center-end,
.stack-content.is-horizontal.align-end,
.stack-content.is-horizontal.align-center-right,
.stack-content.is-horizontal.align-center-end,
.stack-content.has-direction-row.align-end,
.stack-content.has-direction-row.align-center-right,
.stack-content.has-direction-row.align-center-end,
.stack-content.as-row-reverse.align-end,
.stack-content.as-row-reverse.align-center-right,
.stack-content.as-row-reverse.align-center-end,
.stack-content.is-horizontal-reverse.align-end,
.stack-content.is-horizontal-reverse.align-center-right,
.stack-content.is-horizontal-reverse.align-center-end,
.stack-content.has-direction-row-reverse.align-end,
.stack-content.has-direction-row-reverse.align-center-right,
.stack-content.has-direction-row-reverse.align-center-end {
  align-items: center;
  justify-content: flex-end;
}
.stack.as-row.align-bottom-left, .stack.as-row.align-bottom-start, .stack.is-horizontal.align-bottom-left, .stack.is-horizontal.align-bottom-start, .stack.has-direction-row.align-bottom-left, .stack.has-direction-row.align-bottom-start, .stack.as-row-reverse.align-bottom-left, .stack.as-row-reverse.align-bottom-start, .stack.is-horizontal-reverse.align-bottom-left, .stack.is-horizontal-reverse.align-bottom-start, .stack.has-direction-row-reverse.align-bottom-left, .stack.has-direction-row-reverse.align-bottom-start,
.stack-content.as-row.align-bottom-left,
.stack-content.as-row.align-bottom-start,
.stack-content.is-horizontal.align-bottom-left,
.stack-content.is-horizontal.align-bottom-start,
.stack-content.has-direction-row.align-bottom-left,
.stack-content.has-direction-row.align-bottom-start,
.stack-content.as-row-reverse.align-bottom-left,
.stack-content.as-row-reverse.align-bottom-start,
.stack-content.is-horizontal-reverse.align-bottom-left,
.stack-content.is-horizontal-reverse.align-bottom-start,
.stack-content.has-direction-row-reverse.align-bottom-left,
.stack-content.has-direction-row-reverse.align-bottom-start {
  align-items: flex-end;
  justify-content: flex-start;
}
.stack.as-row.align-bottom, .stack.as-row.align-bottom-center, .stack.is-horizontal.align-bottom, .stack.is-horizontal.align-bottom-center, .stack.has-direction-row.align-bottom, .stack.has-direction-row.align-bottom-center, .stack.as-row-reverse.align-bottom, .stack.as-row-reverse.align-bottom-center, .stack.is-horizontal-reverse.align-bottom, .stack.is-horizontal-reverse.align-bottom-center, .stack.has-direction-row-reverse.align-bottom, .stack.has-direction-row-reverse.align-bottom-center,
.stack-content.as-row.align-bottom,
.stack-content.as-row.align-bottom-center,
.stack-content.is-horizontal.align-bottom,
.stack-content.is-horizontal.align-bottom-center,
.stack-content.has-direction-row.align-bottom,
.stack-content.has-direction-row.align-bottom-center,
.stack-content.as-row-reverse.align-bottom,
.stack-content.as-row-reverse.align-bottom-center,
.stack-content.is-horizontal-reverse.align-bottom,
.stack-content.is-horizontal-reverse.align-bottom-center,
.stack-content.has-direction-row-reverse.align-bottom,
.stack-content.has-direction-row-reverse.align-bottom-center {
  align-items: flex-end;
  justify-content: center;
}
.stack.as-row.align-bottom-right, .stack.as-row.align-bottom-end, .stack.is-horizontal.align-bottom-right, .stack.is-horizontal.align-bottom-end, .stack.has-direction-row.align-bottom-right, .stack.has-direction-row.align-bottom-end, .stack.as-row-reverse.align-bottom-right, .stack.as-row-reverse.align-bottom-end, .stack.is-horizontal-reverse.align-bottom-right, .stack.is-horizontal-reverse.align-bottom-end, .stack.has-direction-row-reverse.align-bottom-right, .stack.has-direction-row-reverse.align-bottom-end,
.stack-content.as-row.align-bottom-right,
.stack-content.as-row.align-bottom-end,
.stack-content.is-horizontal.align-bottom-right,
.stack-content.is-horizontal.align-bottom-end,
.stack-content.has-direction-row.align-bottom-right,
.stack-content.has-direction-row.align-bottom-end,
.stack-content.as-row-reverse.align-bottom-right,
.stack-content.as-row-reverse.align-bottom-end,
.stack-content.is-horizontal-reverse.align-bottom-right,
.stack-content.is-horizontal-reverse.align-bottom-end,
.stack-content.has-direction-row-reverse.align-bottom-right,
.stack-content.has-direction-row-reverse.align-bottom-end {
  align-items: flex-end;
  justify-content: flex-end;
}

/**
 * Text Alignment for stack-content
 */
.stack-content, .stack-content.align-top-left, .stack-content.align-top-start, .stack-content.align-start, .stack-content.align-center-left, .stack-content.align-center-start, .stack-content.align-bottom-left, .stack-content.align-bottom-start {
  text-align: left;
}
.stack-content.align-top, .stack-content.align-top-center, .stack-content.align-center, .stack-content.align-bottom, .stack-content.align-bottom-center {
  text-align: center;
}
.stack-content.align-top-right, .stack-content.align-top-end, .stack-content.align-end, .stack-content.align-center-right, .stack-content.align-center-end, .stack-content.align-bottom-right, .stack-content.align-bottom-end {
  text-align: right;
}
.stack-content.text-left {
  text-align: left;
}
.stack-content.text-center {
  text-align: center;
}
.stack-content.text-right {
  text-align: right;
}

.stack.fit-content,
.stack-content.fit-content {
  flex: unset;
  width: -moz-fit-content;
  width: fit-content;
}
.stack.p-2xs,
.stack-content.p-2xs {
  padding: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.p-2xs,
  .stack-content.p-2xs {
    padding: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-2xs,
  .stack-content.p-2xs {
    padding: var(--bal-space-2xs-desktop);
  }
}
.stack.p-xs,
.stack-content.p-xs {
  padding: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.p-xs,
  .stack-content.p-xs {
    padding: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-xs,
  .stack-content.p-xs {
    padding: var(--bal-space-xs-desktop);
  }
}
.stack.p-sm,
.stack-content.p-sm {
  padding: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.p-sm,
  .stack-content.p-sm {
    padding: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-sm,
  .stack-content.p-sm {
    padding: var(--bal-space-sm-desktop);
  }
}
.stack.p-base,
.stack-content.p-base {
  padding: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.p-base,
  .stack-content.p-base {
    padding: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-base,
  .stack-content.p-base {
    padding: var(--bal-space-base-desktop);
  }
}
.stack.p-md,
.stack-content.p-md {
  padding: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.p-md,
  .stack-content.p-md {
    padding: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-md,
  .stack-content.p-md {
    padding: var(--bal-space-md-desktop);
  }
}
.stack.p-lg,
.stack-content.p-lg {
  padding: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.p-lg,
  .stack-content.p-lg {
    padding: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-lg,
  .stack-content.p-lg {
    padding: var(--bal-space-lg-desktop);
  }
}
.stack.p-xl,
.stack-content.p-xl {
  padding: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.p-xl,
  .stack-content.p-xl {
    padding: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-xl,
  .stack-content.p-xl {
    padding: var(--bal-space-xl-desktop);
  }
}
.stack.p-2xl,
.stack-content.p-2xl {
  padding: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.p-2xl,
  .stack-content.p-2xl {
    padding: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.p-2xl,
  .stack-content.p-2xl {
    padding: var(--bal-space-2xl-desktop);
  }
}
.stack.px-2xs,
.stack-content.px-2xs {
  padding-left: var(--bal-space-2xs);
  padding-right: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.px-2xs,
  .stack-content.px-2xs {
    padding-left: var(--bal-space-2xs-tablet);
    padding-right: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-2xs,
  .stack-content.px-2xs {
    padding-left: var(--bal-space-2xs-desktop);
    padding-right: var(--bal-space-2xs-desktop);
  }
}
.stack.px-xs,
.stack-content.px-xs {
  padding-left: var(--bal-space-xs);
  padding-right: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.px-xs,
  .stack-content.px-xs {
    padding-left: var(--bal-space-xs-tablet);
    padding-right: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-xs,
  .stack-content.px-xs {
    padding-left: var(--bal-space-xs-desktop);
    padding-right: var(--bal-space-xs-desktop);
  }
}
.stack.px-sm,
.stack-content.px-sm {
  padding-left: var(--bal-space-sm);
  padding-right: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.px-sm,
  .stack-content.px-sm {
    padding-left: var(--bal-space-sm-tablet);
    padding-right: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-sm,
  .stack-content.px-sm {
    padding-left: var(--bal-space-sm-desktop);
    padding-right: var(--bal-space-sm-desktop);
  }
}
.stack.px-base,
.stack-content.px-base {
  padding-left: var(--bal-space-base);
  padding-right: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.px-base,
  .stack-content.px-base {
    padding-left: var(--bal-space-base-tablet);
    padding-right: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-base,
  .stack-content.px-base {
    padding-left: var(--bal-space-base-desktop);
    padding-right: var(--bal-space-base-desktop);
  }
}
.stack.px-md,
.stack-content.px-md {
  padding-left: var(--bal-space-md);
  padding-right: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.px-md,
  .stack-content.px-md {
    padding-left: var(--bal-space-md-tablet);
    padding-right: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-md,
  .stack-content.px-md {
    padding-left: var(--bal-space-md-desktop);
    padding-right: var(--bal-space-md-desktop);
  }
}
.stack.px-lg,
.stack-content.px-lg {
  padding-left: var(--bal-space-lg);
  padding-right: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.px-lg,
  .stack-content.px-lg {
    padding-left: var(--bal-space-lg-tablet);
    padding-right: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-lg,
  .stack-content.px-lg {
    padding-left: var(--bal-space-lg-desktop);
    padding-right: var(--bal-space-lg-desktop);
  }
}
.stack.px-xl,
.stack-content.px-xl {
  padding-left: var(--bal-space-xl);
  padding-right: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.px-xl,
  .stack-content.px-xl {
    padding-left: var(--bal-space-xl-tablet);
    padding-right: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-xl,
  .stack-content.px-xl {
    padding-left: var(--bal-space-xl-desktop);
    padding-right: var(--bal-space-xl-desktop);
  }
}
.stack.px-2xl,
.stack-content.px-2xl {
  padding-left: var(--bal-space-2xl);
  padding-right: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.px-2xl,
  .stack-content.px-2xl {
    padding-left: var(--bal-space-2xl-tablet);
    padding-right: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.px-2xl,
  .stack-content.px-2xl {
    padding-left: var(--bal-space-2xl-desktop);
    padding-right: var(--bal-space-2xl-desktop);
  }
}
.stack.py-2xs,
.stack-content.py-2xs {
  padding-top: var(--bal-space-2xs);
  padding-bottom: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.py-2xs,
  .stack-content.py-2xs {
    padding-top: var(--bal-space-2xs-tablet);
    padding-bottom: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-2xs,
  .stack-content.py-2xs {
    padding-top: var(--bal-space-2xs-desktop);
    padding-bottom: var(--bal-space-2xs-desktop);
  }
}
.stack.py-xs,
.stack-content.py-xs {
  padding-top: var(--bal-space-xs);
  padding-bottom: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.py-xs,
  .stack-content.py-xs {
    padding-top: var(--bal-space-xs-tablet);
    padding-bottom: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-xs,
  .stack-content.py-xs {
    padding-top: var(--bal-space-xs-desktop);
    padding-bottom: var(--bal-space-xs-desktop);
  }
}
.stack.py-sm,
.stack-content.py-sm {
  padding-top: var(--bal-space-sm);
  padding-bottom: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.py-sm,
  .stack-content.py-sm {
    padding-top: var(--bal-space-sm-tablet);
    padding-bottom: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-sm,
  .stack-content.py-sm {
    padding-top: var(--bal-space-sm-desktop);
    padding-bottom: var(--bal-space-sm-desktop);
  }
}
.stack.py-base,
.stack-content.py-base {
  padding-top: var(--bal-space-base);
  padding-bottom: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.py-base,
  .stack-content.py-base {
    padding-top: var(--bal-space-base-tablet);
    padding-bottom: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-base,
  .stack-content.py-base {
    padding-top: var(--bal-space-base-desktop);
    padding-bottom: var(--bal-space-base-desktop);
  }
}
.stack.py-md,
.stack-content.py-md {
  padding-top: var(--bal-space-md);
  padding-bottom: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.py-md,
  .stack-content.py-md {
    padding-top: var(--bal-space-md-tablet);
    padding-bottom: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-md,
  .stack-content.py-md {
    padding-top: var(--bal-space-md-desktop);
    padding-bottom: var(--bal-space-md-desktop);
  }
}
.stack.py-lg,
.stack-content.py-lg {
  padding-top: var(--bal-space-lg);
  padding-bottom: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.py-lg,
  .stack-content.py-lg {
    padding-top: var(--bal-space-lg-tablet);
    padding-bottom: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-lg,
  .stack-content.py-lg {
    padding-top: var(--bal-space-lg-desktop);
    padding-bottom: var(--bal-space-lg-desktop);
  }
}
.stack.py-xl,
.stack-content.py-xl {
  padding-top: var(--bal-space-xl);
  padding-bottom: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.py-xl,
  .stack-content.py-xl {
    padding-top: var(--bal-space-xl-tablet);
    padding-bottom: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-xl,
  .stack-content.py-xl {
    padding-top: var(--bal-space-xl-desktop);
    padding-bottom: var(--bal-space-xl-desktop);
  }
}
.stack.py-2xl,
.stack-content.py-2xl {
  padding-top: var(--bal-space-2xl);
  padding-bottom: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.py-2xl,
  .stack-content.py-2xl {
    padding-top: var(--bal-space-2xl-tablet);
    padding-bottom: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.py-2xl,
  .stack-content.py-2xl {
    padding-top: var(--bal-space-2xl-desktop);
    padding-bottom: var(--bal-space-2xl-desktop);
  }
}
.stack.p-none,
.stack-content.p-none {
  padding: 0;
}
.stack.px-none,
.stack-content.px-none {
  padding-left: 0;
  padding-right: 0;
}
.stack.py-none,
.stack-content.py-none {
  padding-top: 0;
  padding-bottom: 0;
}
.stack.gap-auto, .stack.gap-x-auto, .stack.gap-col-auto, .stack.gap-y-auto, .stack.gap-row-auto, .stack.has-space-auto, .stack.has-space-col-auto, .stack.has-space-row-auto,
.stack-content.gap-auto,
.stack-content.gap-x-auto,
.stack-content.gap-col-auto,
.stack-content.gap-y-auto,
.stack-content.gap-row-auto,
.stack-content.has-space-auto,
.stack-content.has-space-col-auto,
.stack-content.has-space-row-auto {
  justify-content: space-between;
}
.stack.gap-none, .stack.has-space-none,
.stack-content.gap-none,
.stack-content.has-space-none {
  gap: 0;
}
@media screen and (min-width: 769px) {
  .stack.gap-none, .stack.has-space-none,
  .stack-content.gap-none,
  .stack-content.has-space-none {
    gap: 0;
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-none, .stack.has-space-none,
  .stack-content.gap-none,
  .stack-content.has-space-none {
    gap: 0;
  }
}
.stack.gap-x-none, .stack.gap-col-none, .stack.has-space-col-none,
.stack-content.gap-x-none,
.stack-content.gap-col-none,
.stack-content.has-space-col-none {
  -moz-column-gap: 0;
       column-gap: 0;
}
@media screen and (min-width: 769px) {
  .stack.gap-x-none, .stack.gap-col-none, .stack.has-space-col-none,
  .stack-content.gap-x-none,
  .stack-content.gap-col-none,
  .stack-content.has-space-col-none {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-none, .stack.gap-col-none, .stack.has-space-col-none,
  .stack-content.gap-x-none,
  .stack-content.gap-col-none,
  .stack-content.has-space-col-none {
    -moz-column-gap: 0;
         column-gap: 0;
  }
}
.stack.gap-y-none, .stack.gap-row-none, .stack.has-space-row-none,
.stack-content.gap-y-none,
.stack-content.gap-row-none,
.stack-content.has-space-row-none {
  row-gap: 0;
}
@media screen and (min-width: 769px) {
  .stack.gap-y-none, .stack.gap-row-none, .stack.has-space-row-none,
  .stack-content.gap-y-none,
  .stack-content.gap-row-none,
  .stack-content.has-space-row-none {
    row-gap: 0;
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-none, .stack.gap-row-none, .stack.has-space-row-none,
  .stack-content.gap-y-none,
  .stack-content.gap-row-none,
  .stack-content.has-space-row-none {
    row-gap: 0;
  }
}
.stack.gap-2xs, .stack.has-space-2xs,
.stack-content.gap-2xs,
.stack-content.has-space-2xs {
  gap: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-2xs, .stack.has-space-2xs,
  .stack-content.gap-2xs,
  .stack-content.has-space-2xs {
    gap: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-2xs, .stack.has-space-2xs,
  .stack-content.gap-2xs,
  .stack-content.has-space-2xs {
    gap: var(--bal-space-2xs-desktop);
  }
}
.stack.gap-xs, .stack.has-space-xs,
.stack-content.gap-xs,
.stack-content.has-space-xs {
  gap: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-xs, .stack.has-space-xs,
  .stack-content.gap-xs,
  .stack-content.has-space-xs {
    gap: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-xs, .stack.has-space-xs,
  .stack-content.gap-xs,
  .stack-content.has-space-xs {
    gap: var(--bal-space-xs-desktop);
  }
}
.stack.gap-sm, .stack.has-space-sm,
.stack-content.gap-sm,
.stack-content.has-space-sm {
  gap: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.gap-sm, .stack.has-space-sm,
  .stack-content.gap-sm,
  .stack-content.has-space-sm {
    gap: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-sm, .stack.has-space-sm,
  .stack-content.gap-sm,
  .stack-content.has-space-sm {
    gap: var(--bal-space-sm-desktop);
  }
}
.stack.gap-base, .stack.has-space-base,
.stack-content.gap-base,
.stack-content.has-space-base {
  gap: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.gap-base, .stack.has-space-base,
  .stack-content.gap-base,
  .stack-content.has-space-base {
    gap: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-base, .stack.has-space-base,
  .stack-content.gap-base,
  .stack-content.has-space-base {
    gap: var(--bal-space-base-desktop);
  }
}
.stack.gap-md, .stack.has-space-md,
.stack-content.gap-md,
.stack-content.has-space-md {
  gap: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.gap-md, .stack.has-space-md,
  .stack-content.gap-md,
  .stack-content.has-space-md {
    gap: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-md, .stack.has-space-md,
  .stack-content.gap-md,
  .stack-content.has-space-md {
    gap: var(--bal-space-md-desktop);
  }
}
.stack.gap-lg, .stack.has-space-lg,
.stack-content.gap-lg,
.stack-content.has-space-lg {
  gap: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.gap-lg, .stack.has-space-lg,
  .stack-content.gap-lg,
  .stack-content.has-space-lg {
    gap: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-lg, .stack.has-space-lg,
  .stack-content.gap-lg,
  .stack-content.has-space-lg {
    gap: var(--bal-space-lg-desktop);
  }
}
.stack.gap-xl, .stack.has-space-xl,
.stack-content.gap-xl,
.stack-content.has-space-xl {
  gap: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-xl, .stack.has-space-xl,
  .stack-content.gap-xl,
  .stack-content.has-space-xl {
    gap: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-xl, .stack.has-space-xl,
  .stack-content.gap-xl,
  .stack-content.has-space-xl {
    gap: var(--bal-space-xl-desktop);
  }
}
.stack.gap-2xl, .stack.has-space-2xl,
.stack-content.gap-2xl,
.stack-content.has-space-2xl {
  gap: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-2xl, .stack.has-space-2xl,
  .stack-content.gap-2xl,
  .stack-content.has-space-2xl {
    gap: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-2xl, .stack.has-space-2xl,
  .stack-content.gap-2xl,
  .stack-content.has-space-2xl {
    gap: var(--bal-space-2xl-desktop);
  }
}
.stack.gap-x-2xs, .stack.gap-col-2xs, .stack.has-space-col-2xs,
.stack-content.gap-x-2xs,
.stack-content.gap-col-2xs,
.stack-content.has-space-col-2xs {
  -moz-column-gap: var(--bal-space-2xs);
       column-gap: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-2xs, .stack.gap-col-2xs, .stack.has-space-col-2xs,
  .stack-content.gap-x-2xs,
  .stack-content.gap-col-2xs,
  .stack-content.has-space-col-2xs {
    -moz-column-gap: var(--bal-space-2xs-tablet);
         column-gap: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-2xs, .stack.gap-col-2xs, .stack.has-space-col-2xs,
  .stack-content.gap-x-2xs,
  .stack-content.gap-col-2xs,
  .stack-content.has-space-col-2xs {
    -moz-column-gap: var(--bal-space-2xs-desktop);
         column-gap: var(--bal-space-2xs-desktop);
  }
}
.stack.gap-x-xs, .stack.gap-col-xs, .stack.has-space-col-xs,
.stack-content.gap-x-xs,
.stack-content.gap-col-xs,
.stack-content.has-space-col-xs {
  -moz-column-gap: var(--bal-space-xs);
       column-gap: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-xs, .stack.gap-col-xs, .stack.has-space-col-xs,
  .stack-content.gap-x-xs,
  .stack-content.gap-col-xs,
  .stack-content.has-space-col-xs {
    -moz-column-gap: var(--bal-space-xs-tablet);
         column-gap: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-xs, .stack.gap-col-xs, .stack.has-space-col-xs,
  .stack-content.gap-x-xs,
  .stack-content.gap-col-xs,
  .stack-content.has-space-col-xs {
    -moz-column-gap: var(--bal-space-xs-desktop);
         column-gap: var(--bal-space-xs-desktop);
  }
}
.stack.gap-x-sm, .stack.gap-col-sm, .stack.has-space-col-sm,
.stack-content.gap-x-sm,
.stack-content.gap-col-sm,
.stack-content.has-space-col-sm {
  -moz-column-gap: var(--bal-space-sm);
       column-gap: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-sm, .stack.gap-col-sm, .stack.has-space-col-sm,
  .stack-content.gap-x-sm,
  .stack-content.gap-col-sm,
  .stack-content.has-space-col-sm {
    -moz-column-gap: var(--bal-space-sm-tablet);
         column-gap: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-sm, .stack.gap-col-sm, .stack.has-space-col-sm,
  .stack-content.gap-x-sm,
  .stack-content.gap-col-sm,
  .stack-content.has-space-col-sm {
    -moz-column-gap: var(--bal-space-sm-desktop);
         column-gap: var(--bal-space-sm-desktop);
  }
}
.stack.gap-x-base, .stack.gap-col-base, .stack.has-space-col-base,
.stack-content.gap-x-base,
.stack-content.gap-col-base,
.stack-content.has-space-col-base {
  -moz-column-gap: var(--bal-space-base);
       column-gap: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-base, .stack.gap-col-base, .stack.has-space-col-base,
  .stack-content.gap-x-base,
  .stack-content.gap-col-base,
  .stack-content.has-space-col-base {
    -moz-column-gap: var(--bal-space-base-tablet);
         column-gap: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-base, .stack.gap-col-base, .stack.has-space-col-base,
  .stack-content.gap-x-base,
  .stack-content.gap-col-base,
  .stack-content.has-space-col-base {
    -moz-column-gap: var(--bal-space-base-desktop);
         column-gap: var(--bal-space-base-desktop);
  }
}
.stack.gap-x-md, .stack.gap-col-md, .stack.has-space-col-md,
.stack-content.gap-x-md,
.stack-content.gap-col-md,
.stack-content.has-space-col-md {
  -moz-column-gap: var(--bal-space-md);
       column-gap: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-md, .stack.gap-col-md, .stack.has-space-col-md,
  .stack-content.gap-x-md,
  .stack-content.gap-col-md,
  .stack-content.has-space-col-md {
    -moz-column-gap: var(--bal-space-md-tablet);
         column-gap: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-md, .stack.gap-col-md, .stack.has-space-col-md,
  .stack-content.gap-x-md,
  .stack-content.gap-col-md,
  .stack-content.has-space-col-md {
    -moz-column-gap: var(--bal-space-md-desktop);
         column-gap: var(--bal-space-md-desktop);
  }
}
.stack.gap-x-lg, .stack.gap-col-lg, .stack.has-space-col-lg,
.stack-content.gap-x-lg,
.stack-content.gap-col-lg,
.stack-content.has-space-col-lg {
  -moz-column-gap: var(--bal-space-lg);
       column-gap: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-lg, .stack.gap-col-lg, .stack.has-space-col-lg,
  .stack-content.gap-x-lg,
  .stack-content.gap-col-lg,
  .stack-content.has-space-col-lg {
    -moz-column-gap: var(--bal-space-lg-tablet);
         column-gap: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-lg, .stack.gap-col-lg, .stack.has-space-col-lg,
  .stack-content.gap-x-lg,
  .stack-content.gap-col-lg,
  .stack-content.has-space-col-lg {
    -moz-column-gap: var(--bal-space-lg-desktop);
         column-gap: var(--bal-space-lg-desktop);
  }
}
.stack.gap-x-xl, .stack.gap-col-xl, .stack.has-space-col-xl,
.stack-content.gap-x-xl,
.stack-content.gap-col-xl,
.stack-content.has-space-col-xl {
  -moz-column-gap: var(--bal-space-xl);
       column-gap: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-xl, .stack.gap-col-xl, .stack.has-space-col-xl,
  .stack-content.gap-x-xl,
  .stack-content.gap-col-xl,
  .stack-content.has-space-col-xl {
    -moz-column-gap: var(--bal-space-xl-tablet);
         column-gap: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-xl, .stack.gap-col-xl, .stack.has-space-col-xl,
  .stack-content.gap-x-xl,
  .stack-content.gap-col-xl,
  .stack-content.has-space-col-xl {
    -moz-column-gap: var(--bal-space-xl-desktop);
         column-gap: var(--bal-space-xl-desktop);
  }
}
.stack.gap-x-2xl, .stack.gap-col-2xl, .stack.has-space-col-2xl,
.stack-content.gap-x-2xl,
.stack-content.gap-col-2xl,
.stack-content.has-space-col-2xl {
  -moz-column-gap: var(--bal-space-2xl);
       column-gap: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-x-2xl, .stack.gap-col-2xl, .stack.has-space-col-2xl,
  .stack-content.gap-x-2xl,
  .stack-content.gap-col-2xl,
  .stack-content.has-space-col-2xl {
    -moz-column-gap: var(--bal-space-2xl-tablet);
         column-gap: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-x-2xl, .stack.gap-col-2xl, .stack.has-space-col-2xl,
  .stack-content.gap-x-2xl,
  .stack-content.gap-col-2xl,
  .stack-content.has-space-col-2xl {
    -moz-column-gap: var(--bal-space-2xl-desktop);
         column-gap: var(--bal-space-2xl-desktop);
  }
}
.stack.gap-y-2xs, .stack.gap-row-2xs, .stack.has-space-row-2xs,
.stack-content.gap-y-2xs,
.stack-content.gap-row-2xs,
.stack-content.has-space-row-2xs {
  row-gap: var(--bal-space-2xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-2xs, .stack.gap-row-2xs, .stack.has-space-row-2xs,
  .stack-content.gap-y-2xs,
  .stack-content.gap-row-2xs,
  .stack-content.has-space-row-2xs {
    row-gap: var(--bal-space-2xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-2xs, .stack.gap-row-2xs, .stack.has-space-row-2xs,
  .stack-content.gap-y-2xs,
  .stack-content.gap-row-2xs,
  .stack-content.has-space-row-2xs {
    row-gap: var(--bal-space-2xs-desktop);
  }
}
.stack.gap-y-xs, .stack.gap-row-xs, .stack.has-space-row-xs,
.stack-content.gap-y-xs,
.stack-content.gap-row-xs,
.stack-content.has-space-row-xs {
  row-gap: var(--bal-space-xs);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-xs, .stack.gap-row-xs, .stack.has-space-row-xs,
  .stack-content.gap-y-xs,
  .stack-content.gap-row-xs,
  .stack-content.has-space-row-xs {
    row-gap: var(--bal-space-xs-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-xs, .stack.gap-row-xs, .stack.has-space-row-xs,
  .stack-content.gap-y-xs,
  .stack-content.gap-row-xs,
  .stack-content.has-space-row-xs {
    row-gap: var(--bal-space-xs-desktop);
  }
}
.stack.gap-y-sm, .stack.gap-row-sm, .stack.has-space-row-sm,
.stack-content.gap-y-sm,
.stack-content.gap-row-sm,
.stack-content.has-space-row-sm {
  row-gap: var(--bal-space-sm);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-sm, .stack.gap-row-sm, .stack.has-space-row-sm,
  .stack-content.gap-y-sm,
  .stack-content.gap-row-sm,
  .stack-content.has-space-row-sm {
    row-gap: var(--bal-space-sm-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-sm, .stack.gap-row-sm, .stack.has-space-row-sm,
  .stack-content.gap-y-sm,
  .stack-content.gap-row-sm,
  .stack-content.has-space-row-sm {
    row-gap: var(--bal-space-sm-desktop);
  }
}
.stack.gap-y-base, .stack.gap-row-base, .stack.has-space-row-base,
.stack-content.gap-y-base,
.stack-content.gap-row-base,
.stack-content.has-space-row-base {
  row-gap: var(--bal-space-base);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-base, .stack.gap-row-base, .stack.has-space-row-base,
  .stack-content.gap-y-base,
  .stack-content.gap-row-base,
  .stack-content.has-space-row-base {
    row-gap: var(--bal-space-base-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-base, .stack.gap-row-base, .stack.has-space-row-base,
  .stack-content.gap-y-base,
  .stack-content.gap-row-base,
  .stack-content.has-space-row-base {
    row-gap: var(--bal-space-base-desktop);
  }
}
.stack.gap-y-md, .stack.gap-row-md, .stack.has-space-row-md,
.stack-content.gap-y-md,
.stack-content.gap-row-md,
.stack-content.has-space-row-md {
  row-gap: var(--bal-space-md);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-md, .stack.gap-row-md, .stack.has-space-row-md,
  .stack-content.gap-y-md,
  .stack-content.gap-row-md,
  .stack-content.has-space-row-md {
    row-gap: var(--bal-space-md-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-md, .stack.gap-row-md, .stack.has-space-row-md,
  .stack-content.gap-y-md,
  .stack-content.gap-row-md,
  .stack-content.has-space-row-md {
    row-gap: var(--bal-space-md-desktop);
  }
}
.stack.gap-y-lg, .stack.gap-row-lg, .stack.has-space-row-lg,
.stack-content.gap-y-lg,
.stack-content.gap-row-lg,
.stack-content.has-space-row-lg {
  row-gap: var(--bal-space-lg);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-lg, .stack.gap-row-lg, .stack.has-space-row-lg,
  .stack-content.gap-y-lg,
  .stack-content.gap-row-lg,
  .stack-content.has-space-row-lg {
    row-gap: var(--bal-space-lg-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-lg, .stack.gap-row-lg, .stack.has-space-row-lg,
  .stack-content.gap-y-lg,
  .stack-content.gap-row-lg,
  .stack-content.has-space-row-lg {
    row-gap: var(--bal-space-lg-desktop);
  }
}
.stack.gap-y-xl, .stack.gap-row-xl, .stack.has-space-row-xl,
.stack-content.gap-y-xl,
.stack-content.gap-row-xl,
.stack-content.has-space-row-xl {
  row-gap: var(--bal-space-xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-xl, .stack.gap-row-xl, .stack.has-space-row-xl,
  .stack-content.gap-y-xl,
  .stack-content.gap-row-xl,
  .stack-content.has-space-row-xl {
    row-gap: var(--bal-space-xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-xl, .stack.gap-row-xl, .stack.has-space-row-xl,
  .stack-content.gap-y-xl,
  .stack-content.gap-row-xl,
  .stack-content.has-space-row-xl {
    row-gap: var(--bal-space-xl-desktop);
  }
}
.stack.gap-y-2xl, .stack.gap-row-2xl, .stack.has-space-row-2xl,
.stack-content.gap-y-2xl,
.stack-content.gap-row-2xl,
.stack-content.has-space-row-2xl {
  row-gap: var(--bal-space-2xl);
}
@media screen and (min-width: 769px) {
  .stack.gap-y-2xl, .stack.gap-row-2xl, .stack.has-space-row-2xl,
  .stack-content.gap-y-2xl,
  .stack-content.gap-row-2xl,
  .stack-content.has-space-row-2xl {
    row-gap: var(--bal-space-2xl-tablet);
  }
}
@media screen and (min-width: 1024px) {
  .stack.gap-y-2xl, .stack.gap-row-2xl, .stack.has-space-row-2xl,
  .stack-content.gap-y-2xl,
  .stack-content.gap-row-2xl,
  .stack-content.has-space-row-2xl {
    row-gap: var(--bal-space-2xl-desktop);
  }
}

.stack > bal-radio {
  margin-top: -0.25rem;
}

bal-content > bal-text,
.stack-content > bal-text,
bal-content > .text,
.stack-content > .text,
.stack > bal-text,
.stack > bal-label,
.stack > bal-heading,
.stack > bal-heading:not(:last-child),
.stack > .label,
.stack > .heading,
.stack > .heading:not(:last-child),
.stack > .title,
.stack > .title:not(:last-child),
.stack > .subtitle,
.stack > .subtitle:not(:last-child),
.stack > .link,
.stack > .is-link,
.stack > p {
  margin: 0;
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.snackbar {
  --_snackbar-position: var(--snackbar-position, var(--mod-snackbar-position, static));
  --_snackbar-top: var(--snackbar-top, var(--mod-snackbar-top));
  --_snackbar-right: var(--snackbar-right, var(--mod-snackbar-right));
  --_snackbar-bottom: var(--snackbar-bottom, var(--mod-snackbar-bottom));
  --_snackbar-left: var(--snackbar-left, var(--mod-snackbar-left));
  position: var(--_snackbar-position);
  top: var(--_snackbar-top);
  right: var(--_snackbar-right);
  bottom: var(--_snackbar-bottom);
  left: var(--_snackbar-left);
  --_snackbar-m: var(--snackbar-m, var(--mod-snackbar-m, 0));
  --_snackbar-my: var(--snackbar-my, var(--mod-snackbar-my));
  --_snackbar-mx: var(--snackbar-mx, var(--mod-snackbar-mx));
  --_snackbar-ml: var(--snackbar-ml, var(--mod-snackbar-ml));
  --_snackbar-mr: var(--snackbar-mr, var(--mod-snackbar-mr));
  --_snackbar-mt: var(--snackbar-mt, var(--mod-snackbar-mt));
  --_snackbar-mb: var(--snackbar-mb, var(--mod-snackbar-mb));
  margin: var(--_snackbar-m);
  margin-inline: var(--_snackbar-mx);
  margin-block: var(--_snackbar-my);
  margin-left: var(--_snackbar-ml);
  margin-right: var(--_snackbar-mr);
  margin-top: var(--_snackbar-mt);
  margin-bottom: var(--_snackbar-mb);
  --_snackbar-shadow: var(--snackbar-shadow, var(--mod-snackbar-shadow, var(--bal-shadow-box-base)));
  --_snackbar-radius: var(--snackbar-radius, var(--mod-snackbar-radius, var(--bal-snackbar-radius)));
  --_snackbar-color-background: var(--snackbar-color-background, var(--mod-snackbar-color-background, var(--bal-snackbar-base-background)));
  --_snackbar-color-text: var(--snackbar-color-text, var(--mod-snackbar-color-text, var(--bal-snackbar-base-text)));
  --_snackbar-icon: var(--snackbar-icon, var(--mod-snackbar-icon, var(--bal-snackbar-base-icon)));
  --_snackbar-heading-family: var(--snackbar-heading-family, var(--mod-snackbar-heading-family, var(--bal-text-family-heading)));
  --_snackbar-heading-weight: var(--snackbar-heading-weight, var(--mod-snackbar-heading-weight, var(--bal-text-weight-bold)));
  --_snackbar-heading-size: var(--snackbar-heading-size, var(--mod-snackbar-heading-size, var(--bal-text-size-base-device)));
  --_snackbar-heading-line-height: var(--snackbar-heading-line-height, var(--mod-snackbar-heading-line-height, var(--bal-text-line-height-heading)));
  --_snackbar-content-family: var(--snackbar-content-family, var(--mod-snackbar-content-family, var(--bal-text-family-body)));
  --_snackbar-content-weight: var(--snackbar-content-weight, var(--mod-snackbar-content-weight, inherit));
  --_snackbar-content-size: var(--snackbar-content-size, var(--mod-snackbar-content-size, var(--bal-text-size-sm-device)));
  --_snackbar-content-line-height: var(--snackbar-content-line-height, var(--mod-snackbar-content-line-height, var(--bal-text-line-height-body)));
  --_snackbar-gap: var(--snackbar-gap, var(--mod-snackbar-gap, 0.125rem));
  --_snackbar-pl: var(--snackbar-pl, var(--mod-snackbar-pl, 3rem));
  --_snackbar-pt: var(--snackbar-pt, var(--mod-snackbar-pt, 1rem));
  --_snackbar-pr: var(--snackbar-pr, var(--mod-snackbar-pr, 1rem));
  --_snackbar-pb: var(--snackbar-pb, var(--mod-snackbar-pb, 1rem));
  --_snackbar-animation-start-opacity: var(--snackbar-animation-start-opacity, var(--mod-snackbar-animation-start-opacity, 1));
  --_snackbar-animation-start-transform: var(--snackbar-animation-start-transform, var(--mod-snackbar-animation-start-transform, none));
  --_snackbar-animation-transition: var(--snackbar-animation-transition, var(--mod-snackbar-animation-transition, none));
  --_snackbar-animation-end-opacity: var(--snackbar-animation-end-opacity, var(--mod-snackbar-animation-end-opacity, 1));
  --_snackbar-animation-end-transform: var(--snackbar-animation-end-transform, var(--mod-snackbar-animation-end-transform, none));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.snackbar {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  flex: 1;
  position: relative;
  hyphens: auto;
  color: var(--_snackbar-color-text);
  background: var(--_snackbar-color-background);
  border-radius: var(--_snackbar-radius);
  box-shadow: var(--_snackbar-shadow);
  padding-top: var(--_snackbar-pt);
  padding-right: var(--_snackbar-pr);
  padding-bottom: var(--_snackbar-pb);
  padding-left: var(--_snackbar-pl);
  -moz-column-gap: calc(var(--_snackbar-gap) * 4);
       column-gap: calc(var(--_snackbar-gap) * 4);
  row-gap: var(--_snackbar-gap);
  align-items: center;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "message";
}
.snackbar:not(:has(bal-icon, .icon))::before {
  display: block;
  background-color: currentColor;
  color: currentColor;
  forced-color-adjust: preserve-parent-color;
  position: absolute;
  height: 1.5rem;
  width: 1.5rem;
  top: var(--_snackbar-pt);
  left: 0.825rem;
  content: "";
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  mask-image: var(--_snackbar-icon);
  -webkit-mask-image: var(--_snackbar-icon);
}
.snackbar:has(bal-icon) {
  --mod-snackbar-pl: 1rem;
}
.snackbar bal-icon {
  --icon-color: null;
  --icon-size: var(--bal-icon-size-lg);
}
.snackbar:where(:has(> h2, > strong, > b)):where(:not(:has(> .button, > bal-button, > .buttons))):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: 1fr;
  grid-template-areas: "heading" "message";
}
.snackbar:where(:has(> .button, > bal-button, > .buttons)):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: 1fr auto;
  grid-template-areas: "message" "action";
}
.snackbar:where(:has(> .button, > bal-button, > .buttons)):where(:not(:has(> .close, > bal-close))):has(> h2, > strong, > b) {
  grid-template-areas: "heading" "message" "action";
}
.snackbar:where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button, > .buttons))) {
  grid-template-columns: 1fr auto;
  grid-template-areas: "message close";
}
.snackbar:where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button, > .buttons))):has(> h2, > strong, > b) {
  grid-template-areas: "heading close" "message message";
}
.snackbar:where(:has(> .button, > bal-button, > .buttons)):where(:has(> .close, > bal-close)) {
  grid-template-columns: 1fr auto auto;
  grid-template-areas: "message close" "action action";
}
.snackbar:where(:has(> .button, > bal-button, > .buttons)):where(:has(> .close, > bal-close)):has(> h2, > strong, > b) {
  grid-template-areas: "heading close" "message message" "action action";
}
.snackbar:where(:has(> bal-icon)):where(:not(:has(> .button, > bal-button, > .buttons))):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: auto 1fr;
  grid-template-areas: "icon message";
}
.snackbar:where(:has(> bal-icon)):where(:not(:has(> .button, > bal-button, > .buttons))):where(:not(:has(> .close, > bal-close))):has(> h2, > strong, > b) {
  grid-template-areas: "icon heading" "icon message";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .button, > bal-button, > .buttons)):where(:not(:has(> .close, > bal-close))) {
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "icon message" ". action";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .button, > bal-button, > .buttons)):where(:not(:has(> .close, > bal-close))):has(> h2, > strong, > b) {
  grid-template-areas: "icon heading" "icon message" ". action";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button, > .buttons))) {
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "icon message close";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .close, > bal-close)):where(:not(:has(> .button, > bal-button, > .buttons))):has(> h2, > strong, > b) {
  grid-template-areas: "icon heading close" ". message message";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .button, > bal-button, > .buttons)):where(:has(> .close, > bal-close)) {
  grid-template-columns: auto 1fr auto auto;
  grid-template-areas: "icon message close" ". action action";
}
.snackbar:where(:has(> bal-icon)):where(:has(> .button, > bal-button, > .buttons)):where(:has(> .close, > bal-close)):has(> h2, > strong, > b) {
  grid-template-areas: "icon heading close" "icon message message" ". action action";
}
.snackbar, .snackbar > span, .snackbar > p {
  font-family: var(--_snackbar-content-family);
  font-size: var(--_snackbar-content-size);
  font-weight: var(--_snackbar-content-weight);
  line-height: var(--_snackbar-content-line-height);
}
.snackbar > span, .snackbar > p {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  margin: 0 !important;
  grid-area: message;
}
.snackbar > strong, .snackbar > b, .snackbar > h2 {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  font-family: var(--_snackbar-heading-family);
  font-weight: var(--_snackbar-heading-weight);
  line-height: var(--_snackbar-heading-line-height);
  font-size: var(--_snackbar-heading-size);
  margin: 0 !important;
  grid-area: heading;
}
.snackbar bal-button,
.snackbar .button {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  --button-mt: 0.5rem;
  grid-area: action;
  align-self: center;
}
.snackbar bal-button-group,
.snackbar .buttons {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  --button-mt: 1rem;
  grid-area: action;
  align-self: center;
}
.snackbar .close,
.snackbar bal-close {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: close;
  align-self: flex-start;
}
.snackbar bal-icon {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: icon;
  align-self: flex-start;
}

/**
  * Variants
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.snackbar.is-info {
  --mod-snackbar-color-text: var(--bal-snackbar-info-text);
  --mod-snackbar-color-border: var(--bal-snackbar-info-border);
  --mod-snackbar-color-background: var(--bal-snackbar-info-background);
  --mod-snackbar-icon: var(--bal-snackbar-info-icon);
}
.snackbar.is-success {
  --mod-snackbar-color-text: var(--bal-snackbar-success-text);
  --mod-snackbar-color-border: var(--bal-snackbar-success-border);
  --mod-snackbar-color-background: var(--bal-snackbar-success-background);
  --mod-snackbar-icon: var(--bal-snackbar-success-icon);
}
.snackbar.is-warning {
  --mod-snackbar-color-text: var(--bal-snackbar-warning-text);
  --mod-snackbar-color-border: var(--bal-snackbar-warning-border);
  --mod-snackbar-color-background: var(--bal-snackbar-warning-background);
  --mod-snackbar-icon: var(--bal-snackbar-warning-icon);
}
.snackbar.is-danger {
  --mod-snackbar-color-text: var(--bal-snackbar-danger-text);
  --mod-snackbar-color-border: var(--bal-snackbar-danger-border);
  --mod-snackbar-color-background: var(--bal-snackbar-danger-background);
  --mod-snackbar-icon: var(--bal-snackbar-danger-icon);
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.notification {
  --_notification-position: var(--notification-position, var(--mod-notification-position, static));
  --_notification-top: var(--notification-top, var(--mod-notification-top));
  --_notification-right: var(--notification-right, var(--mod-notification-right));
  --_notification-bottom: var(--notification-bottom, var(--mod-notification-bottom));
  --_notification-left: var(--notification-left, var(--mod-notification-left));
  position: var(--_notification-position);
  top: var(--_notification-top);
  right: var(--_notification-right);
  bottom: var(--_notification-bottom);
  left: var(--_notification-left);
  --_notification-m: var(--notification-m, var(--mod-notification-m, 0));
  --_notification-my: var(--notification-my, var(--mod-notification-my));
  --_notification-mx: var(--notification-mx, var(--mod-notification-mx));
  --_notification-ml: var(--notification-ml, var(--mod-notification-ml));
  --_notification-mr: var(--notification-mr, var(--mod-notification-mr));
  --_notification-mt: var(--notification-mt, var(--mod-notification-mt));
  --_notification-mb: var(--notification-mb, var(--mod-notification-mb));
  margin: var(--_notification-m);
  margin-inline: var(--_notification-mx);
  margin-block: var(--_notification-my);
  margin-left: var(--_notification-ml);
  margin-right: var(--_notification-mr);
  margin-top: var(--_notification-mt);
  margin-bottom: var(--_notification-mb);
  --_notification-radius: var(--notification-radius, var(--mod-notification-radius, var(--bal-notification-radius-base)));
  --_notification-color-background: var(--notification-color-background, var(--mod-notification-color-background, var(--bal-notification-color-base-background)));
  --_notification-color-border: var(--notification-color-border, var(--mod-notification-color-border, var(--bal-notification-color-base-border)));
  --_notification-color-text: var(--notification-color-text, var(--mod-notification-color-text, var(--bal-notification-color-base-text)));
  --_notification-heading-family: var(--notification-heading-family, var(--mod-notification-heading-family, var(--bal-text-family-heading)));
  --_notification-heading-weight: var(--notification-heading-weight, var(--mod-notification-heading-weight, var(--bal-text-weight-bold)));
  --_notification-heading-size: var(--notification-heading-size, var(--mod-notification-heading-size, var(--bal-text-size-lg-device)));
  --_notification-heading-line-height: var(--notification-heading-line-height, var(--mod-notification-heading-line-height, var(--bal-text-line-height-heading)));
  --_notification-content-family: var(--notification-content-family, var(--mod-notification-content-family, var(--bal-text-family-body)));
  --_notification-content-weight: var(--notification-content-weight, var(--mod-notification-content-weight, inherit));
  --_notification-content-size: var(--notification-content-size, var(--mod-notification-content-size, var(--bal-text-size-base-device)));
  --_notification-content-line-height: var(--notification-content-line-height, var(--mod-notification-content-line-height, var(--bal-text-line-height-body)));
  --_notification-icon: var(--notification-icon, var(--mod-notification-icon, var(--bal-notification-color-base-icon)));
  --_notification-icon-display: var(--notification-icon-display, var(--mod-notification-icon-display, block));
  --_notification-space: var(--notification-space, var(--mod-notification-space, var(--bal-card-space-base-device, 24px)));
  --_notification-space-left: var(--notification-space-left, var(--mod-notification-space-left, var(--bal-card-space-base-device, 24px)));
  --_notification-space-top: var(--notification-space-top, var(--mod-notification-space-top, var(--bal-card-space-base-device, 24px)));
  --_notification-space-right: var(--notification-space-right, var(--mod-notification-space-right, var(--bal-card-space-base-device, 24px)));
  --_notification-space-bottom: var(--notification-space-bottom, var(--mod-notification-space-bottom, var(--bal-card-space-base-device, 24px)));
  --_notification-close-offset: var(--notification-close-offset, var(--mod-notification-close-offset, 2rem));
  --_notification-gap: var(--notification-gap, var(--mod-notification-gap, 0.125rem));
  --_notification-close-position: var(--notification-close-position, var(--mod-notification-close-position, absolute));
  --_notification-close-right: var(--notification-close-right, var(--mod-notification-close-right, var(--_notification-space)));
  --_notification-close-top: var(--notification-close-top, var(--mod-notification-close-top, var(--_notification-space)));
  --_notification-animation-start-opacity: var(--notification-animation-start-opacity, var(--mod-notification-animation-start-opacity, 1));
  --_notification-animation-start-transform: var(--notification-animation-start-transform, var(--mod-notification-animation-start-transform, none));
  --_notification-animation-transition: var(--notification-animation-transition, var(--mod-notification-animation-transition, none));
  --_notification-animation-end-opacity: var(--notification-animation-end-opacity, var(--mod-notification-animation-end-opacity, 1));
  --_notification-animation-end-transform: var(--notification-animation-end-transform, var(--mod-notification-animation-end-transform, none));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.notification {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  flex: 1;
  position: relative;
  hyphens: auto;
  border: var(--bal-border-width-base) solid var(--_notification-color-border);
  border-radius: var(--_notification-radius);
  background: var(--_notification-color-background);
  color: var(--_notification-color-text);
  padding-top: var(--_notification-space-top);
  padding-right: var(--_notification-space-right);
  padding-bottom: var(--_notification-space-bottom);
  padding-left: var(--_notification-space-left);
  display: flex;
  flex-direction: column;
  gap: var(--_notification-gap);
}
.notification:has(> bal-close), .notification:has(> .close) {
  padding-right: var(--_notification-close-offset);
}
.notification bal-close,
.notification .close {
  position: var(--_notification-close-position);
  top: var(--_notification-close-top);
  right: var(--_notification-close-right);
}
.notification bal-button,
.notification a.button,
.notification button.button {
  --button-mt: calc(var(--_notification-space) - var(--_notification-gap));
}
.notification > strong, .notification > b, .notification > h2 {
  font-family: var(--_notification-heading-family);
  font-weight: var(--_notification-heading-weight);
  line-height: var(--_notification-heading-line-height);
  font-size: var(--_notification-heading-size);
  margin: 0 !important;
}
.notification > span, .notification > p {
  font-family: var(--_notification-content-family);
  font-size: var(--_notification-content-size);
  font-weight: var(--_notification-content-weight);
  line-height: var(--_notification-content-line-height);
  margin: 0 !important;
}
.notification::before {
  display: var(--_notification-icon-display);
  background-color: currentColor;
  color: currentColor;
  forced-color-adjust: preserve-parent-color;
  position: absolute;
  height: 1.5rem;
  width: 1.5rem;
  left: 0.825rem;
  top: calc((var(--_notification-space)));
  content: "";
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  mask-image: var(--_notification-icon);
  -webkit-mask-image: var(--_notification-icon);
}

/**
  * Variants
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
/**
 * Toast Variant
 * --------------------------------
 * Define here the styles for the toast variant of the notification component.
 */
.notification.is-toast {
  --mod-notification-radius: var(--bal-notification-radius-alert);
  --mod-notification-space: var(--bal-space-base-device);
  --mod-notification-space-top: var(--bal-space-base-device);
  --mod-notification-space-right: var(--bal-space-base-device);
  --mod-notification-space-bottom: var(--bal-space-base-device);
  --mod-notification-space-left: var(--bal-space-base-device);
  --mod-notification-heading-size: var(--bal-text-size-base-device);
  --mod-notification-content-size: var(--bal-text-size-sm-device);
  --mod-notification-close-position: static;
  --mod-notification-close-top: initial;
  --mod-notification-close-right: initial;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: grid;
  grid-template-columns: 1fr auto auto;
  grid-template-areas: "message action close";
  -moz-column-gap: calc(var(--_notification-gap) * 4);
       column-gap: calc(var(--_notification-gap) * 4);
  row-gap: var(--_notification-gap);
  align-items: center;
  box-shadow: var(--bal-shadow-base);
}
.notification.is-toast:has(> h2, > strong, > b) {
  grid-template-areas: "heading action close" "message action close";
}
.notification.is-toast bal-button,
.notification.is-toast .button {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  --button-mt: 0;
  grid-area: action;
  align-self: center;
}
.notification.is-toast .close,
.notification.is-toast bal-close {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 5;
  grid-area: close;
  align-self: center;
}
.notification.is-toast > strong, .notification.is-toast > b, .notification.is-toast > h2 {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: heading;
}
.notification.is-toast ::slotted {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: message;
}
.notification.is-toast slot, .notification.is-toast > span, .notification.is-toast > p {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: message;
}

/**
  * States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.notification.has-no-icon {
  --mod-notification-icon-display: none;
}
.notification:not(.has-no-icon) {
  --mod-notification-space-left: 3rem;
}

.notification.is-info {
  --mod-notification-color-text: var(--bal-notification-color-info-text);
  --mod-notification-color-border: var(--bal-notification-color-info-border);
  --mod-notification-color-background: var(--bal-notification-color-info-background);
  --mod-notification-icon: var(--bal-notification-color-info-icon);
}
.notification.is-success {
  --mod-notification-color-text: var(--bal-notification-color-success-text);
  --mod-notification-color-border: var(--bal-notification-color-success-border);
  --mod-notification-color-background: var(--bal-notification-color-success-background);
  --mod-notification-icon: var(--bal-notification-color-success-icon);
}
.notification.is-warning {
  --mod-notification-color-text: var(--bal-notification-color-warning-text);
  --mod-notification-color-border: var(--bal-notification-color-warning-border);
  --mod-notification-color-background: var(--bal-notification-color-warning-background);
  --mod-notification-icon: var(--bal-notification-color-warning-icon);
}
.notification.is-danger {
  --mod-notification-color-text: var(--bal-notification-color-danger-text);
  --mod-notification-color-border: var(--bal-notification-color-danger-border);
  --mod-notification-color-background: var(--bal-notification-color-danger-background);
  --mod-notification-icon: var(--bal-notification-color-danger-icon);
}
.notification.is-outline-base {
  --mod-notification-color-text: var(--bal-notification-color-outline-base-text);
  --mod-notification-color-border: var(--bal-notification-color-outline-base-border);
  --mod-notification-color-background: var(--bal-notification-color-outline-base-background);
  --mod-notification-icon: var(--bal-notification-color-outline-base-icon);
}
.notification.is-outline-purple {
  --mod-notification-color-text: var(--bal-notification-color-outline-purple-text);
  --mod-notification-color-border: var(--bal-notification-color-outline-purple-border);
  --mod-notification-color-background: var(--bal-notification-color-outline-purple-background);
  --mod-notification-icon: var(--bal-notification-color-outline-purple-icon);
}
.notification.is-outline-green {
  --mod-notification-color-text: var(--bal-notification-color-outline-green-text);
  --mod-notification-color-border: var(--bal-notification-color-outline-green-border);
  --mod-notification-color-background: var(--bal-notification-color-outline-green-background);
  --mod-notification-icon: var(--bal-notification-color-outline-green-icon);
}
.notification.is-outline-yellow {
  --mod-notification-color-text: var(--bal-notification-color-outline-yellow-text);
  --mod-notification-color-border: var(--bal-notification-color-outline-yellow-border);
  --mod-notification-color-background: var(--bal-notification-color-outline-yellow-background);
  --mod-notification-icon: var(--bal-notification-color-outline-yellow-icon);
}
.notification.is-outline-red {
  --mod-notification-color-text: var(--bal-notification-color-outline-red-text);
  --mod-notification-color-border: var(--bal-notification-color-outline-red-border);
  --mod-notification-color-background: var(--bal-notification-color-outline-red-background);
  --mod-notification-icon: var(--bal-notification-color-outline-red-icon);
}

.notification.is-sm {
  --mod-notification-space: var(--bal-card-space-sm-device);
  --mod-notification-space-top: var(--bal-card-space-sm-device);
  --mod-notification-space-right: var(--bal-card-space-sm-device);
  --mod-notification-space-bottom: var(--bal-card-space-sm-device);
  --mod-notification-space-left: var(--bal-card-space-sm-device);
}
.notification.is-md {
  --mod-notification-space: var(--bal-card-space-md-device);
  --mod-notification-space-top: var(--bal-card-space-md-device);
  --mod-notification-space-right: var(--bal-card-space-md-device);
  --mod-notification-space-bottom: var(--bal-card-space-md-device);
  --mod-notification-space-left: var(--bal-card-space-md-device);
}
.notification.is-lg {
  --mod-notification-space: var(--bal-card-space-lg-device);
  --mod-notification-space-top: var(--bal-card-space-lg-device);
  --mod-notification-space-right: var(--bal-card-space-lg-device);
  --mod-notification-space-bottom: var(--bal-card-space-lg-device);
  --mod-notification-space-left: var(--bal-card-space-lg-device);
}

/**
  * Basic Style
  */
.content > a:-moz-any-link:not(.button) {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  hyphens: auto;
  margin: 0;
  overflow-wrap: break-word;
  font-family: var(--bal-link-family);
  font-weight: var(--bal-link-weight);
  border-radius: var(--bal-radius-base);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  text-decoration-thickness: var(--bal-link-border-width);
  -moz-transition-property: color, background-color, border-color, box-shadow;
  transition-property: color, background-color, border-color, box-shadow;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  outline: none;
}
a.link:not(.button),
a.is-link:not(.button),
.content > a:any-link:not(.button) {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  hyphens: auto;
  margin: 0;
  overflow-wrap: break-word;
  font-family: var(--bal-link-family);
  font-weight: var(--bal-link-weight);
  border-radius: var(--bal-radius-base);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  text-decoration-thickness: var(--bal-link-border-width);
  transition-property: color, background-color, border-color, box-shadow;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  outline: none;
}
.content > a:-moz-any-link:not(.button)::-moz-focus-inner {
  border: 0;
}
a.link:not(.button)::-moz-focus-inner,
a.is-link:not(.button)::-moz-focus-inner,
.content > a:any-link:not(.button)::-moz-focus-inner {
  border: 0;
}
.content > a:-moz-any-link:not(.button) > strong {
  color: currentcolor;
}
a.link:not(.button) > strong,
a.is-link:not(.button) > strong,
.content > a:any-link:not(.button) > strong {
  color: currentcolor;
}
.content > a:-moz-any-link:not(.button):not(.is-inverted) {
  color: var(--bal-link-color-base);
}
a.link:not(.button):not(.is-inverted),
a.is-link:not(.button):not(.is-inverted),
.content > a:any-link:not(.button):not(.is-inverted) {
  color: var(--bal-link-color-base);
}
.content > a:-moz-any-link:not(.button):not(.is-inverted) bal-icon {
  --bal-icon-color: var(--bal-link-color-base);
}
a.link:not(.button):not(.is-inverted) bal-icon,
a.is-link:not(.button):not(.is-inverted) bal-icon,
.content > a:any-link:not(.button):not(.is-inverted) bal-icon {
  --bal-icon-color: var(--bal-link-color-base);
}
@media (hover: hover) and (pointer: fine) {
  .content > a:-moz-any-link:not(.button):not(.is-inverted):hover, .content > a:-moz-any-link:not(.button):not(.is-inverted).is-hovered {
    color: var(--bal-link-color-base-hover);
  }
  a.link:not(.button):not(.is-inverted):hover, a.link:not(.button):not(.is-inverted).is-hovered,
  a.is-link:not(.button):not(.is-inverted):hover,
  a.is-link:not(.button):not(.is-inverted).is-hovered,
  .content > a:any-link:not(.button):not(.is-inverted):hover,
  .content > a:any-link:not(.button):not(.is-inverted).is-hovered {
    color: var(--bal-link-color-base-hover);
  }
  .content > a:-moz-any-link:not(.button):not(.is-inverted):hover bal-icon, .content > a:-moz-any-link:not(.button):not(.is-inverted).is-hovered bal-icon {
    --bal-icon-color: var(--bal-link-color-base-hover);
  }
  a.link:not(.button):not(.is-inverted):hover bal-icon, a.link:not(.button):not(.is-inverted).is-hovered bal-icon,
  a.is-link:not(.button):not(.is-inverted):hover bal-icon,
  a.is-link:not(.button):not(.is-inverted).is-hovered bal-icon,
  .content > a:any-link:not(.button):not(.is-inverted):hover bal-icon,
  .content > a:any-link:not(.button):not(.is-inverted).is-hovered bal-icon {
    --bal-icon-color: var(--bal-link-color-base-hover);
  }
}
.content > a:-moz-any-link:not(.button):not(.is-inverted):active, .content > a:-moz-any-link:not(.button):not(.is-inverted).is-active {
  color: var(--bal-link-color-base-active);
}
a.link:not(.button):not(.is-inverted):active, a.link:not(.button):not(.is-inverted).is-active,
a.is-link:not(.button):not(.is-inverted):active,
a.is-link:not(.button):not(.is-inverted).is-active,
.content > a:any-link:not(.button):not(.is-inverted):active,
.content > a:any-link:not(.button):not(.is-inverted).is-active {
  color: var(--bal-link-color-base-active);
}
.content > a:-moz-any-link:not(.button):not(.is-inverted):active bal-icon, .content > a:-moz-any-link:not(.button):not(.is-inverted).is-active bal-icon {
  --bal-icon-color: var(--bal-link-color-base-active);
}
a.link:not(.button):not(.is-inverted):active bal-icon, a.link:not(.button):not(.is-inverted).is-active bal-icon,
a.is-link:not(.button):not(.is-inverted):active bal-icon,
a.is-link:not(.button):not(.is-inverted).is-active bal-icon,
.content > a:any-link:not(.button):not(.is-inverted):active bal-icon,
.content > a:any-link:not(.button):not(.is-inverted).is-active bal-icon {
  --bal-icon-color: var(--bal-link-color-base-active);
}
@media (hover: hover) and (pointer: fine) {
  .content > a:-moz-any-link:not(.button):not(.is-inverted):focus-visible:not(:active), .content > a:-moz-any-link:not(.button):not(.is-inverted).is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-border) 0 0 0 2px, var(--bal-interaction-focus-color-start) 0 0 0 5px !important;
  }
  a.link:not(.button):not(.is-inverted):focus-visible:not(:active), a.link:not(.button):not(.is-inverted).is-focused:not(:active),
  a.is-link:not(.button):not(.is-inverted):focus-visible:not(:active),
  a.is-link:not(.button):not(.is-inverted).is-focused:not(:active),
  .content > a:any-link:not(.button):not(.is-inverted):focus-visible:not(:active),
  .content > a:any-link:not(.button):not(.is-inverted).is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-border) 0 0 0 2px, var(--bal-interaction-focus-color-start) 0 0 0 5px !important;
  }
}
.content > a:-moz-any-link:not(.button).is-inverted {
  color: var(--bal-link-color-inverted);
}
a.link:not(.button).is-inverted,
a.is-link:not(.button).is-inverted,
.content > a:any-link:not(.button).is-inverted {
  color: var(--bal-link-color-inverted);
}
.content > a:-moz-any-link:not(.button).is-inverted bal-icon {
  --bal-icon-color: var(--bal-link-color-inverted);
}
a.link:not(.button).is-inverted bal-icon,
a.is-link:not(.button).is-inverted bal-icon,
.content > a:any-link:not(.button).is-inverted bal-icon {
  --bal-icon-color: var(--bal-link-color-inverted);
}
@media (hover: hover) and (pointer: fine) {
  .content > a:-moz-any-link:not(.button).is-inverted:hover, .content > a:-moz-any-link:not(.button).is-inverted.is-hovered {
    color: var(--bal-link-color-inverted-hover);
  }
  a.link:not(.button).is-inverted:hover, a.link:not(.button).is-inverted.is-hovered,
  a.is-link:not(.button).is-inverted:hover,
  a.is-link:not(.button).is-inverted.is-hovered,
  .content > a:any-link:not(.button).is-inverted:hover,
  .content > a:any-link:not(.button).is-inverted.is-hovered {
    color: var(--bal-link-color-inverted-hover);
  }
  .content > a:-moz-any-link:not(.button).is-inverted:hover bal-icon, .content > a:-moz-any-link:not(.button).is-inverted.is-hovered bal-icon {
    --bal-icon-color: var(--bal-link-color-inverted-hover);
  }
  a.link:not(.button).is-inverted:hover bal-icon, a.link:not(.button).is-inverted.is-hovered bal-icon,
  a.is-link:not(.button).is-inverted:hover bal-icon,
  a.is-link:not(.button).is-inverted.is-hovered bal-icon,
  .content > a:any-link:not(.button).is-inverted:hover bal-icon,
  .content > a:any-link:not(.button).is-inverted.is-hovered bal-icon {
    --bal-icon-color: var(--bal-link-color-inverted-hover);
  }
}
.content > a:-moz-any-link:not(.button).is-inverted:active, .content > a:-moz-any-link:not(.button).is-inverted.is-active {
  color: var(--bal-link-color-inverted-active);
}
a.link:not(.button).is-inverted:active, a.link:not(.button).is-inverted.is-active,
a.is-link:not(.button).is-inverted:active,
a.is-link:not(.button).is-inverted.is-active,
.content > a:any-link:not(.button).is-inverted:active,
.content > a:any-link:not(.button).is-inverted.is-active {
  color: var(--bal-link-color-inverted-active);
}
.content > a:-moz-any-link:not(.button).is-inverted:active bal-icon, .content > a:-moz-any-link:not(.button).is-inverted.is-active bal-icon {
  --bal-icon-color: var(--bal-link-color-inverted-active);
}
a.link:not(.button).is-inverted:active bal-icon, a.link:not(.button).is-inverted.is-active bal-icon,
a.is-link:not(.button).is-inverted:active bal-icon,
a.is-link:not(.button).is-inverted.is-active bal-icon,
.content > a:any-link:not(.button).is-inverted:active bal-icon,
.content > a:any-link:not(.button).is-inverted.is-active bal-icon {
  --bal-icon-color: var(--bal-link-color-inverted-active);
}
@media (hover: hover) and (pointer: fine) {
  .content > a:-moz-any-link:not(.button).is-inverted:focus-visible:not(:active), .content > a:-moz-any-link:not(.button).is-inverted.is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-inverted-start) 0 0 0 2px, var(--bal-interaction-focus-color-inverted-end) 0 0 0 5px !important;
  }
  a.link:not(.button).is-inverted:focus-visible:not(:active), a.link:not(.button).is-inverted.is-focused:not(:active),
  a.is-link:not(.button).is-inverted:focus-visible:not(:active),
  a.is-link:not(.button).is-inverted.is-focused:not(:active),
  .content > a:any-link:not(.button).is-inverted:focus-visible:not(:active),
  .content > a:any-link:not(.button).is-inverted.is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-inverted-start) 0 0 0 2px, var(--bal-interaction-focus-color-inverted-end) 0 0 0 5px !important;
  }
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.label {
  --_label-position: var(--label-position, var(--mod-label-position, static));
  --_label-top: var(--label-top, var(--mod-label-top));
  --_label-right: var(--label-right, var(--mod-label-right));
  --_label-bottom: var(--label-bottom, var(--mod-label-bottom));
  --_label-left: var(--label-left, var(--mod-label-left));
  position: var(--_label-position);
  top: var(--_label-top);
  right: var(--_label-right);
  bottom: var(--_label-bottom);
  left: var(--_label-left);
  --_label-m: var(--label-m, var(--mod-label-m, 0));
  --_label-my: var(--label-my, var(--mod-label-my));
  --_label-mx: var(--label-mx, var(--mod-label-mx));
  --_label-ml: var(--label-ml, var(--mod-label-ml));
  --_label-mr: var(--label-mr, var(--mod-label-mr));
  --_label-mt: var(--label-mt, var(--mod-label-mt));
  --_label-mb: var(--label-mb, var(--mod-label-mb));
  margin: var(--_label-m);
  margin-inline: var(--_label-mx);
  margin-block: var(--_label-my);
  margin-left: var(--_label-ml);
  margin-right: var(--_label-mr);
  margin-top: var(--_label-mt);
  margin-bottom: var(--_label-mb);
  --_label-color: var(--label-color, var(--mod-label-color, inherit));
  --_label-family: var(--label-family, var(--mod-label-family, var(--bal-label-family)));
  --_label-weight: var(--label-weight, var(--mod-label-weight, var(--bal-label-weight)));
  --_label-line-height: var(--label-line-height, var(--mod-label-line-height, var(--bal-label-line-height)));
  --_label-size: var(--label-size, var(--mod-label-size, var(--bal-label-size-base-device)));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.label {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: block;
  box-sizing: content-box;
  hyphens: auto;
  overflow-wrap: break-word;
  text-wrap: balance;
  min-width: 0;
  color: var(--_label-color);
  font-family: var(--_label-family);
  font-weight: var(--_label-weight);
  font-size: var(--_label-size);
  line-height: var(--_label-line-height);
}

.label.has-no-wrap {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

:host([no-wrap]:not([no-wrap=false])) label {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.label.is-lg {
  --mod-label-family: var(--bal-text-family-heading);
}
.label.is-xl {
  --mod-label-family: var(--bal-text-family-heading);
}
.label.is-2xl {
  --mod-label-family: var(--bal-text-family-heading);
}
.label.is-3xl {
  --mod-label-family: var(--bal-text-family-heading);
}

.label.is-xxx-large {
  --mod-label-size: var(--bal-label-size-3xl-device);
}
.label.is-3xl {
  --mod-label-size: var(--bal-label-size-3xl-device);
}
.label.is-xx-large {
  --mod-label-size: var(--bal-label-size-2xl-device);
}
.label.is-2xl {
  --mod-label-size: var(--bal-label-size-2xl-device);
}
.label.is-x-large {
  --mod-label-size: var(--bal-label-size-xl-device);
}
.label.is-xl {
  --mod-label-size: var(--bal-label-size-xl-device);
}
.label.is-large {
  --mod-label-size: var(--bal-label-size-lg-device);
}
.label.is-lg {
  --mod-label-size: var(--bal-label-size-lg-device);
}
.label.is-normal {
  --mod-label-size: var(--bal-label-size-base-device);
}
.label.is-base {
  --mod-label-size: var(--bal-label-size-base-device);
}
.label.is-small {
  --mod-label-size: var(--bal-label-size-sm-device);
}
.label.is-sm {
  --mod-label-size: var(--bal-label-size-sm-device);
}

.label.is-success {
  --mod-label-color: var(--bal-label-color-success);
}
.label.is-warning {
  --mod-label-color: var(--bal-label-color-warning);
}
.label.is-danger {
  --mod-label-color: var(--bal-label-color-danger);
}
.label.is-hovered {
  --mod-label-color: var(--bal-label-color-base-hover);
}
.label.is-pressed {
  --mod-label-color: var(--bal-label-color-base-active);
}
.label.is-danger.is-hovered {
  --mod-label-color: var(--bal-label-color-danger-hover);
}
.label.is-danger.is-pressed {
  --mod-label-color: var(--bal-label-color-danger-active);
}
.label.is-disabled {
  --mod-label-color: var(--bal-label-color-disabled) !important;
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.heading, .title, .subtitle {
  --_heading-position: var(--heading-position, var(--mod-heading-position, static));
  --_heading-top: var(--heading-top, var(--mod-heading-top));
  --_heading-right: var(--heading-right, var(--mod-heading-right));
  --_heading-bottom: var(--heading-bottom, var(--mod-heading-bottom));
  --_heading-left: var(--heading-left, var(--mod-heading-left));
  position: var(--_heading-position);
  top: var(--_heading-top);
  right: var(--_heading-right);
  bottom: var(--_heading-bottom);
  left: var(--_heading-left);
  --_heading-m: var(--heading-m, var(--mod-heading-m, 0));
  --_heading-my: var(--heading-my, var(--mod-heading-my));
  --_heading-mx: var(--heading-mx, var(--mod-heading-mx));
  --_heading-ml: var(--heading-ml, var(--mod-heading-ml));
  --_heading-mr: var(--heading-mr, var(--mod-heading-mr));
  --_heading-mt: var(--heading-mt, var(--mod-heading-mt));
  --_heading-mb: var(--heading-mb, var(--mod-heading-mb));
  margin: var(--_heading-m);
  margin-inline: var(--_heading-mx);
  margin-block: var(--_heading-my);
  margin-left: var(--_heading-ml);
  margin-right: var(--_heading-mr);
  margin-top: var(--_heading-mt);
  margin-bottom: var(--_heading-mb);
  --_heading-color: var(--heading-color, var(--mod-heading-color, inherit));
  --_heading-family: var(--heading-family, var(--mod-heading-family, var(--bal-heading-family)));
  --_heading-weight: var(--heading-weight, var(--mod-heading-weight, var(--bal-heading-weight)));
  --_heading-line-height: var(--heading-line-height, var(--mod-heading-line-height, var(--bal-heading-line-height)));
  --_heading-font-size: var(--heading-font-size, var(--mod-heading-font-size, var(--bal-heading-1-size-device)));
  --_heading-space: var(--heading-space, var(--mod-heading-space, var(--bal-heading-1-space)));
  --_heading-shadow: var(--heading-shadow, var(--mod-heading-shadow, none));
  --_heading-text-align: var(--heading-text-align, var(--mod-heading-text-align, left));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.heading, .title, .subtitle {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: block;
  box-sizing: content-box;
  hyphens: auto;
  overflow-wrap: break-word;
  text-wrap: balance;
  color: var(--_heading-color);
  font-family: var(--_heading-family);
  font-weight: var(--_heading-weight);
  font-size: var(--_heading-font-size);
  line-height: var(--_heading-line-height);
  text-align: var(--_heading-text-align);
  text-shadow: var(--_heading-shadow);
}
.heading em:not(.text),
.heading span:not(.text), .title em:not(.text),
.title span:not(.text), .subtitle em:not(.text),
.subtitle span:not(.text) {
  font-weight: inherit;
}
.heading b,
.heading strong,
.heading .is-bold, .title b,
.title strong,
.title .is-bold, .subtitle b,
.subtitle strong,
.subtitle .is-bold {
  font-weight: var(--bal-text-weight-bold);
}
.heading.is-bold, .title.is-bold, .subtitle.is-bold {
  font-weight: var(--bal-text-weight-bold);
}
.heading.is-centered, .title.is-centered, .subtitle.is-centered {
  text-align: center;
}
.heading.is-right, .title.is-right, .subtitle.is-right {
  text-align: right;
}
.heading.is-justified, .title.is-justified, .subtitle.is-justified {
  text-align: justify;
}

.heading.has-no-wrap, .title.has-no-wrap, .subtitle.has-no-wrap {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

:host([no-wrap]:not([no-wrap=false])) #heading {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.heading.has-shadow, .title.has-shadow, .subtitle.has-shadow {
  --mod-heading-shadow: var(--bal-heading-shadow);
}

:host([shadow]:not([shadow=false])) {
  --mod-heading-shadow: var(--bal-heading-shadow);
}

.heading.subtitle, .heading.is-subtitle, .title.subtitle, .title.is-subtitle, .subtitle.subtitle, .subtitle.is-subtitle {
  --mod-heading-family: var(--bal-heading-subtitle-family);
  --mod-heading-weight: var(--bal-heading-subtitle-weight);
  --mod-heading-line-height: var(--bal-heading-subtitle-line-height);
}

.heading.is-primary, .title.is-primary, .subtitle.is-primary {
  --mod-heading-color: var(--bal-heading-color-primary);
}

.heading.is-success, .title.is-success, .subtitle.is-success {
  --mod-heading-color: var(--bal-heading-color-success);
}

.heading.is-warning, .title.is-warning, .subtitle.is-warning {
  --mod-heading-color: var(--bal-heading-color-warning);
}

.heading.is-danger, .title.is-danger, .subtitle.is-danger {
  --mod-heading-color: var(--bal-heading-color-danger);
}

.heading.is-white, .title.is-white, .subtitle.is-white {
  --mod-heading-color: var(--bal-heading-color-white);
}

.heading.is-black, .title.is-black, .subtitle.is-black {
  --mod-heading-color: var(--bal-heading-color-black);
}

.heading.is-1, .title.is-1, .subtitle.is-1 {
  --mod-heading-font-size: var(--bal-heading-1-size-device);
  --mod-heading-space: var(--bal-heading-1-space);
}
.heading.is-level-1, .title.is-level-1, .subtitle.is-level-1 {
  --mod-heading-font-size: var(--bal-heading-1-size-device);
  --mod-heading-space: var(--bal-heading-1-space);
}
.heading.is-3xl, .title.is-3xl, .subtitle.is-3xl {
  --mod-heading-font-size: var(--bal-heading-1-size-device);
  --mod-heading-space: var(--bal-heading-1-space);
}
.heading.is-2, .title.is-2, .subtitle.is-2 {
  --mod-heading-font-size: var(--bal-heading-2-size-device);
  --mod-heading-space: var(--bal-heading-2-space);
}
.heading.is-level-2, .title.is-level-2, .subtitle.is-level-2 {
  --mod-heading-font-size: var(--bal-heading-2-size-device);
  --mod-heading-space: var(--bal-heading-2-space);
}
.heading.is-2xl, .title.is-2xl, .subtitle.is-2xl {
  --mod-heading-font-size: var(--bal-heading-2-size-device);
  --mod-heading-space: var(--bal-heading-2-space);
}
.heading.is-3, .title.is-3, .subtitle.is-3 {
  --mod-heading-font-size: var(--bal-heading-3-size-device);
  --mod-heading-space: var(--bal-heading-3-space);
}
.heading.is-level-3, .title.is-level-3, .subtitle.is-level-3 {
  --mod-heading-font-size: var(--bal-heading-3-size-device);
  --mod-heading-space: var(--bal-heading-3-space);
}
.heading.is-xl, .title.is-xl, .subtitle.is-xl {
  --mod-heading-font-size: var(--bal-heading-3-size-device);
  --mod-heading-space: var(--bal-heading-3-space);
}
.heading.is-4, .title.is-4, .subtitle.is-4 {
  --mod-heading-font-size: var(--bal-heading-4-size-device);
  --mod-heading-space: var(--bal-heading-4-space);
}
.heading.is-level-4, .title.is-level-4, .subtitle.is-level-4 {
  --mod-heading-font-size: var(--bal-heading-4-size-device);
  --mod-heading-space: var(--bal-heading-4-space);
}
.heading.is-lg, .title.is-lg, .subtitle.is-lg {
  --mod-heading-font-size: var(--bal-heading-4-size-device);
  --mod-heading-space: var(--bal-heading-4-space);
}
.heading.is-5, .title.is-5, .subtitle.is-5 {
  --mod-heading-font-size: var(--bal-heading-5-size-device);
  --mod-heading-space: var(--bal-heading-5-space);
}
.heading.is-level-5, .title.is-level-5, .subtitle.is-level-5 {
  --mod-heading-font-size: var(--bal-heading-5-size-device);
  --mod-heading-space: var(--bal-heading-5-space);
}
.heading.is-base, .title.is-base, .subtitle.is-base {
  --mod-heading-font-size: var(--bal-heading-5-size-device);
  --mod-heading-space: var(--bal-heading-5-space);
}
.heading.is-display-1, .title.is-display-1, .subtitle.is-display-1 {
  --mod-heading-font-size: var(--bal-heading-display1-size-device);
  --mod-heading-space: var(--bal-heading-display1-space);
}
.heading.is-5xl, .title.is-5xl, .subtitle.is-5xl {
  --mod-heading-font-size: var(--bal-heading-display1-size-device);
  --mod-heading-space: var(--bal-heading-display1-space);
}
.heading.is-display-2, .title.is-display-2, .subtitle.is-display-2 {
  --mod-heading-font-size: var(--bal-heading-display2-size-device);
  --mod-heading-space: var(--bal-heading-display2-space);
}
.heading.is-4xl, .title.is-4xl, .subtitle.is-4xl {
  --mod-heading-font-size: var(--bal-heading-display2-size-device);
  --mod-heading-space: var(--bal-heading-display2-space);
}

h1,
[role=heading][aria-level="1"] {
  --mod-heading-font-size: var(--bal-heading-1-size-device);
  --mod-heading-space: var(--bal-heading-1-space);
}

h2,
[role=heading][aria-level="2"] {
  --mod-heading-font-size: var(--bal-heading-2-size-device);
  --mod-heading-space: var(--bal-heading-2-space);
}

h3,
[role=heading][aria-level="3"] {
  --mod-heading-font-size: var(--bal-heading-3-size-device);
  --mod-heading-space: var(--bal-heading-3-space);
}

h4,
[role=heading][aria-level="4"] {
  --mod-heading-font-size: var(--bal-heading-4-size-device);
  --mod-heading-space: var(--bal-heading-4-space);
}

h5,
[role=heading][aria-level="5"] {
  --mod-heading-font-size: var(--bal-heading-5-size-device);
  --mod-heading-space: var(--bal-heading-5-space);
}

.heading.has-space-all, .title.has-space-all, .subtitle.has-space-all {
  --mod-heading-mt: var(--_heading-space);
  --mod-heading-mb: var(--_heading-space);
}
.heading.has-space-top, .title.has-space-top, .subtitle.has-space-top {
  --mod-heading-mt: var(--_heading-space);
  --mod-heading-mb: 0;
}
.heading.has-space-bottom, .title.has-space-bottom, .subtitle.has-space-bottom {
  --mod-heading-mb: var(--_heading-space);
}
.heading.has-space-none, .title.has-space-none, .subtitle.has-space-none {
  --mod-heading-mb: 0;
  --mod-heading-mt: 0;
}

:host([space=all]) {
  --heading-mt: var(--_heading-space);
  --heading-mb: var(--_heading-space);
}

:host([space=top]) {
  --heading-mt: var(--_heading-space);
  --heading-mb: 0;
}

:host([space=bottom]) {
  --heading-mt: 0;
  --heading-mb: var(--_heading-space);
}

:host([space=none]) {
  --heading-mt: 0;
  --heading-mb: 0;
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
hr, .divider {
  --divider-m: var(--bal-divider-m, 0);
  --divider-my: var(--bal-divider-my);
  --divider-mx: var(--bal-divider-mx);
  --divider-ml: var(--bal-divider-ml);
  --divider-mr: var(--bal-divider-mr);
  --divider-mt: var(--bal-divider-mt);
  --divider-mb: var(--bal-divider-mb);
  --divider-color: var(--bal-divider-color-base);
  --divider-width: var(--bal-divider-width);
  --divider-radius: var(--bal-divider-radius);
  --divider-space: 0;
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
hr, .divider {
  display: block;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: var(--divider-radius);
  height: var(--divider-width);
  background-color: var(--divider-color);
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
hr.is-primary, .divider.is-primary {
  --divider-color: var(--bal-divider-color-primary);
}
hr.is-primary-light, .divider.is-primary-light {
  --divider-color: var(--bal-divider-color-primary-light);
}
hr.is-primary-dark, .divider.is-primary-dark {
  --divider-color: var(--bal-divider-color-primary-dark);
}
hr.is-grey-light, .divider.is-grey-light {
  --divider-color: var(--bal-divider-color-grey-light);
}
hr.is-grey, .divider.is-grey {
  --divider-color: var(--bal-divider-color-grey);
}
hr.is-grey-dark, .divider.is-grey-dark {
  --divider-color: var(--bal-divider-color-grey-dark);
}
hr.is-warning, .divider.is-warning {
  --divider-color: var(--bal-divider-color-warning);
}
hr.is-success, .divider.is-success {
  --divider-color: var(--bal-divider-color-success);
}
hr.is-danger, .divider.is-danger {
  --divider-color: var(--bal-divider-color-danger);
}
hr.is-danger-dark, .divider.is-danger-dark {
  --divider-color: var(--bal-divider-color-danger-dark);
}
hr.is-danger-darker, .divider.is-danger-darker {
  --divider-color: var(--bal-divider-color-danger-darker);
}
hr.is-white, .divider.is-white {
  --divider-color: var(--bal-divider-color-white);
}
hr.is-light-blue, .divider.is-light-blue {
  --divider-color: var(--bal-divider-color-light-blue);
}
hr:not(.is-vertical), hr.is-horizontal, .divider:not(.is-vertical), .divider.is-horizontal {
  flex: 1 0 100%;
  width: 100%;
  min-height: var(--divider-width);
  height: var(--divider-width);
  margin-top: var(--divider-space);
  margin-bottom: var(--divider-space);
}
hr.is-vertical, .divider.is-vertical {
  height: auto;
  flex-shrink: 0;
  align-self: stretch;
  width: var(--divider-width);
  margin-left: var(--divider-space);
  margin-right: var(--divider-space);
}
hr.is-dashed:not(.is-vertical), .divider.is-dashed:not(.is-vertical) {
  background: repeating-linear-gradient(90deg, var(--divider-color) 0, var(--divider-color) 8px, transparent 8px, transparent 16px);
}
hr.is-dashed.is-vertical, .divider.is-dashed.is-vertical {
  background: repeating-linear-gradient(180deg, var(--divider-color) 0, var(--divider-color) 8px, transparent 8px, transparent 16px);
}
hr.has-space-none, .divider.has-space-none {
  --divider-space: var(--bal-space-none-device);
}
hr.has-space-2xs, .divider.has-space-2xs {
  --divider-space: var(--bal-space-2xs-device);
}
hr.has-space-xs, .divider.has-space-xs {
  --divider-space: var(--bal-space-xs-device);
}
hr.has-space-sm, .divider.has-space-sm {
  --divider-space: var(--bal-space-sm-device);
}
hr.has-space-base, .divider.has-space-base {
  --divider-space: var(--bal-space-base-device);
}
hr.has-space-md, .divider.has-space-md {
  --divider-space: var(--bal-space-md-device);
}
hr.has-space-lg, .divider.has-space-lg {
  --divider-space: var(--bal-space-lg-device);
}
hr.has-space-xl, .divider.has-space-xl {
  --divider-space: var(--bal-space-xl-device);
}
hr.has-space-2xl, .divider.has-space-2xl {
  --divider-space: var(--bal-space-2xl-device);
}
hr.has-space-3xl, .divider.has-space-3xl {
  --divider-space: var(--bal-space-3xl-device);
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.close {
  --close-color-background: var(--bal-close-color-background-base);
  --close-color-background-hover: var(--bal-close-color-background-hover);
  --close-color-background-active: var(--bal-close-color-background-active);
  --close-color-icon: var(--bal-close-color-icon-base);
  --close-radius: var(--bal-close-radius);
  --close-size-icon: 12px;
  --close-padding: 0.313rem;
  --close-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath fill-rule='evenodd' d='M1.70711 0.292893C1.31658 -0.0976311 0.683417 -0.0976311 0.292893 0.292893C-0.0976311 0.683417 -0.0976311 1.31658 0.292893 1.70711L5.58579 7L0.292893 12.2929C-0.0976311 12.6834 -0.0976311 13.3166 0.292893 13.7071C0.683417 14.0976 1.31658 14.0976 1.70711 13.7071L7 8.41421L12.2929 13.7071C12.6834 14.0976 13.3166 14.0976 13.7071 13.7071C14.0976 13.3166 14.0976 12.6834 13.7071 12.2929L8.41421 7L13.7071 1.70711C14.0976 1.31658 14.0976 0.683417 13.7071 0.292893C13.3166 -0.0976311 12.6834 -0.0976311 12.2929 0.292893L7 5.58579L1.70711 0.292893Z' clip-rule='evenodd'/%3E%3C/svg%3E");
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.close {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  position: relative;
  display: inline-block;
  vertical-align: top;
  border: none;
  background: var(--close-color-background);
  border-radius: var(--close-radius);
  padding: var(--close-padding);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  outline: none;
}
.close::after {
  content: "";
  display: block;
  width: var(--close-size-icon);
  height: var(--close-size-icon);
  -webkit-mask-image: var(--close-icon);
          mask-image: var(--close-icon);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--close-color-icon);
}
@media (hover: hover) and (pointer: fine) {
  .close:hover, .close.is-hovered {
    background: var(--close-color-background-hover);
  }
}
.close:active, .close.is-pressed {
  background: var(--close-color-background-active);
}
@media (hover: hover) and (pointer: fine) {
  .close:focus-visible:not(:active), .close.is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-border) 0 0 0 2px, var(--bal-interaction-focus-color-start) 0 0 0 5px !important;
  }
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.close.is-sm {
  --close-padding: 0.25rem;
  --close-size-icon: 10px;
}
.close.is-md {
  --close-padding: 0.531rem;
  --close-size-icon: 24px;
}
.close.is-inverted {
  --close-color-icon: var(--bal-close-color-icon-inverted);
}
@media (hover: hover) and (pointer: fine) {
  .close.is-inverted:hover, .close.is-inverted.is-hovered {
    --close-color-background-hover: var(--bal-close-color-background-inverted-hover);
  }
}
.close.is-inverted:active, .close.is-inverted.is-pressed {
  --close-color-background-active: var(--bal-close-color-background-inverted-active);
}
.close.is-inverted:focus-visible, .close.is-inverted.is-focused {
  --close-shadow-focus: var(--bal-close-shadow-outline-inverted);
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.card {
  --card-color-background: var(--bal-card-color-base-background);
  --card-color-text: var(--bal-card-color-base-text);
  --card-color-border: var(--bal-card-color-base-border, transparent);
  --card-radius: var(--bal-card-radius-base);
  --card-border-width: var(--bal-border-width-base, 0);
  --card-border-style: var(--bal-border-style-base, dashed);
  --card-shadow: var(--bal-card-shadow-base);
  --card-gap: var(--bal-card-space-base-device);
  --card-padding: calc(var(--bal-card-space-base-device) - var(--card-border-width));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--card-color-text);
  background-color: var(--card-color-background);
  border-radius: var(--card-radius);
  border-color: var(--card-color-border);
  border-width: var(--card-border-width);
  border-style: var(--card-border-style);
  box-shadow: var(--card-shadow);
  gap: var(--card-gap);
  padding: var(--card-padding);
  text-decoration: none;
}
.card picture,
.card picture > img {
  display: block;
  width: 100%;
  max-width: 100%;
  max-inline-size: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  block-size: auto;
  border-radius: var(--card-radius);
}
.card:not(.is-dense):has(picture) {
  padding-top: 0;
}
.card:not(.is-dense) picture {
  margin-top: calc(var(--card-border-width) * -1);
  margin-left: calc(var(--card-gap) * -1);
  width: calc(100% + var(--card-gap) * 2);
  max-width: calc(100% + var(--card-gap) * 2);
  max-inline-size: calc(100% + var(--card-gap) * 2);
}
.card:not(.is-dense) picture,
.card:not(.is-dense) picture > img {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.card > .tag:first-child,
.card > bal-tag:first-child {
  --bal-tag-position: absolute;
  --bal-tag-top: 0;
  align-self: center;
  transform: translateY(-50%);
}
.card > .tag.is-left:first-child,
.card > bal-tag[position=left]:first-child {
  align-self: flex-start;
}
.card > .tag.is-right:first-child,
.card > bal-tag[position=right]:first-child {
  align-self: flex-end;
}
.card > .badge:first-child,
.card > bal-badge:first-child {
  --bal-badge-position: absolute;
  --bal-badge-top: 0;
  transform: translate(calc(50% + var(--card-gap)), -50%);
  align-self: flex-end;
}
.card .card-header {
  --bal-heavding-line-height: 32px;
  gap: var(--card-gap);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.card .card-header .title,
.card .card-header .subtitle,
.card .card-header .heading {
  margin: 0;
}
.card .card-content bal-heading:not(:last-child),
.card .card-content h1:is(.title, .subtitle, .heading):not(:last-child) {
  --heading-mb: var(--bal-space-xs-device);
}
.card .card-content h1:not(.title, .subtitle, .heading, :last-child) {
  margin-bottom: var(--bal-space-xs-device);
}
.card .card-content h2:is(.title, .subtitle, .heading):not(:last-child) {
  --heading-mb: var(--bal-space-xs-device);
}
.card .card-content h2:not(.title, .subtitle, .heading, :last-child) {
  margin-bottom: var(--bal-space-xs-device);
}
.card .card-content h3:is(.title, .subtitle, .heading):not(:last-child) {
  --heading-mb: var(--bal-space-xs-device);
}
.card .card-content h3:not(.title, .subtitle, .heading, :last-child) {
  margin-bottom: var(--bal-space-xs-device);
}
.card .card-content h4:is(.title, .subtitle, .heading):not(:last-child) {
  --heading-mb: var(--bal-space-xs-device);
}
.card .card-content h4:not(.title, .subtitle, .heading, :last-child) {
  margin-bottom: var(--bal-space-xs-device);
}
.card .card-content h5:is(.title, .subtitle, .heading):not(:last-child) {
  --heading-mb: var(--bal-space-2xs-device);
}
.card .card-content h5:not(.title, .subtitle, .heading, :last-child) {
  margin-bottom: var(--bal-space-2xs-device);
}
.card .card-content bal-text:not(:last-child),
.card .card-content p.text:not(:last-child) {
  --text-mb: var(--bal-space-base-device);
}
.card .card-content p:not(.text, :last-child) {
  margin-bottom: var(--bal-space-base-device);
}
.card .card-content > :is(h1, h2, h3, h4, h5, h6, bal-heading) + p.text,
.card .card-content > :is(h1, h2, h3, h4, h5, h6, bal-heading) + bal-text {
  --text-mt: var(--bal-space-base-device);
}
.card .card-content > :is(h1, h2, h3, h4, h5, h6, bal-heading) + p:not(.text, bal-text) {
  margin-top: var(--bal-space-base-device);
}
.card .card-actions {
  --buttons-align-items: var(--bal-buttons-align-items, center);
  --buttons-justify-content: var(--bal-buttons-justify-content, flex-start);
  display: flex;
  gap: 0.5rem;
  flex-flow: column wrap;
  width: 100%;
}
.card .card-actions:not(:last-child) {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .card .card-actions .button:not(.is-square, .is-circle),
  .card .card-actions bal-button:not(.is-square, .is-circle) {
    flex: 1 1 auto;
  }
}
@media screen and (min-width: 769px) {
  .card .card-actions {
    flex-flow: row wrap;
    align-items: var(--buttons-align-items);
    justify-content: var(--buttons-justify-content);
  }
  .card .card-actions.fit-content {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.card .card-actions.as-row {
  flex-flow: row wrap;
  align-items: var(--buttons-align-items);
  justify-content: var(--buttons-justify-content);
}
.card .card-actions.as-row.is-expanded .button,
.card .card-actions.as-row.is-expanded bal-button {
  flex: 1;
}
.card .card-actions.as-col {
  flex-flow: column wrap;
}
@media screen and (min-width: 769px) {
  .card .card-actions.as-col {
    --buttons-align-items: flex-start;
  }
}
.card .card-actions.is-reverse.as-row {
  flex-flow: row-reverse wrap;
}
.card .card-actions.is-reverse.as-col {
  flex-flow: column-reverse wrap;
}
@media screen and (min-width: 769px) {
  .card .card-actions.is-center:not(.as-col), .card .card-actions.is-centered:not(.as-col) {
    --buttons-justify-content: center;
  }
  .card .card-actions.is-center.as-col, .card .card-actions.is-centered.as-col {
    --buttons-align-items: center;
  }
  .card .card-actions.is-right:not(.as-col) {
    --buttons-justify-content: flex-end;
  }
  .card .card-actions.is-right.as-col {
    --buttons-align-items: flex-end;
  }
}
.card .card-actions.fit-content bal-button {
  --bal-button-width: 100%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .card .card-actions {
    --bal-button-width: 100%;
  }
  .card .card-actions bal-button {
    --bal-button-width: 100%;
    width: 100%;
  }
}
.card.align-center {
  align-items: center;
  --bal-buttons-align-items: center;
  --bal-buttons-justify-content: center;
}
.card.align-right {
  --bal-buttons-align-items: flex-end;
  --bal-buttons-justify-content: flex-end;
}
.card.is-square {
  --card-radius: var(--bal-card-radius-square);
}
.card.is-flat {
  --card-radius: var(--bal-card-radius-flat);
  --card-shadow: var(--bal-card-shadow-flat);
}
.card.is-dense {
  --card-shadow: var(--bal-card-shadow-flat);
  --card-padding: 0;
}
.card.is-outlined {
  --card-shadow: var(--bal-card-shadow-flat);
  --card-border-width: var(--bal-card-outline-width);
  --card-color-border: var(--bal-card-color-base-outline, transparent);
}
.card.is-fullheight {
  height: 100%;
}
.card.is-fullheight .card-content,
.card.is-fullheight .card-content > .stack,
.card.is-fullheight .card-content > .flex,
.card.is-fullheight .card-content > .is-flex {
  height: 100%;
}

a.card,
button.card {
  --bal-heading-color: var(--bal-text-color-primary);
  --bal-text-color: var(--bal-text-color-primary);
  color: var(--bal-text-color-primary);
  text-decoration: none;
  translate: 0 0;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  a.card:hover, a.card.is-hovered,
  button.card:hover,
  button.card.is-hovered {
    --bal-heading-color: var(--bal-text-color-primary-hover);
    --bal-text-color: var(--bal-text-color-primary-hover);
    --card-shadow: var(--bal-card-shadow-hover);
    color: var(--bal-text-color-primary-hover);
    background: color-mix(in srgb, var(--card-color-background), var(--bal-color-primary-6) 4%);
  }
}
a.card:active, a.card.is-pressed,
button.card:active,
button.card.is-pressed {
  --bal-heading-color: var(--bal-text-color-primary-active);
  --bal-text-color: var(--bal-text-color-primary-active);
  --card-shadow: var(--bal-card-shadow-hover);
  color: var(--bal-text-color-primary-active);
  background: color-mix(in srgb, var(--card-color-background), var(--bal-color-primary-6) 6%);
  translate: 0 0.5px;
}
@media (hover: hover) and (pointer: fine) {
  a.card:focus-visible:not(:active), a.card.is-focused:not(:active),
  button.card:focus-visible:not(:active),
  button.card.is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-border) 0 0 0 2px, var(--bal-interaction-focus-color-start) 0 0 0 5px !important;
  }
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.image-teaser picture,
.image-teaser picture > img {
  display: block;
  width: 100%;
  max-width: 100%;
  max-inline-size: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  block-size: auto;
  border-radius: var(--bal-card-radius-base);
}
.image-teaser .card {
  margin-top: calc(var(--card-gap) * -1 * 2);
  margin-left: calc(var(--card-gap));
  margin-right: calc(var(--card-gap));
  max-width: -moz-fit-content;
  max-width: fit-content;
}
@media screen and (min-width: 769px) {
  .image-teaser.is-wide .card {
    width: 75%;
    margin-left: calc(var(--card-gap) * 2);
    margin-right: calc(var(--card-gap));
  }
  .image-teaser.is-wide.is-center .card {
    margin-left: auto;
    margin-right: auto;
  }
  .image-teaser.is-wide.is-right .card {
    margin-left: auto;
    margin-right: calc(var(--card-gap) * 2);
  }
}
@media screen and (min-width: 1024px) {
  .image-teaser.is-wide .card {
    width: 50%;
  }
}

a.image-link,
button.image-link {
  cursor: pointer;
}
a.image-link picture,
button.image-link picture {
  overflow: hidden;
}
a.image-link img,
button.image-link img {
  transition: all 0.4s ease-out;
}
@media (hover: hover) and (pointer: fine) {
  a.image-link img:hover, a.image-link img.is-hovered,
  button.image-link img:hover,
  button.image-link img.is-hovered {
    transform: scale(1.1);
  }
}
a.image-link img:active, a.image-link img.is-pressed,
button.image-link img:active,
button.image-link img.is-pressed {
  transform: scale(1.1);
}

a.image-teaser,
button.image-teaser {
  cursor: pointer;
  --bal-heading-color: var(--bal-text-color-primary);
  --bal-text-color: var(--bal-text-color-primary);
  color: var(--bal-text-color-primary);
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  a.image-teaser:hover, a.image-teaser.is-hovered,
  button.image-teaser:hover,
  button.image-teaser.is-hovered {
    --bal-heading-color: var(--bal-text-color-primary-hover);
    --bal-text-color: var(--bal-text-color-primary-hover);
    --card-shadow: var(--bal-card-shadow-hover);
    color: var(--bal-text-color-primary-hover);
    background: color-mix(in srgb, var(--card-color-background), var(--bal-color-primary-6) 4%);
  }
}

.card.has-space-sm {
  --card-padding: calc(var(--bal-card-space-sm-device) - var(--card-border-width));
  --card-gap: var(--bal-card-space-sm-device);
}
.card.has-space-md {
  --card-padding: calc(var(--bal-card-space-md-device) - var(--card-border-width));
  --card-gap: var(--bal-card-space-md-device);
}
.card.has-space-lg {
  --card-padding: calc(var(--bal-card-space-lg-device) - var(--card-border-width));
  --card-gap: var(--bal-card-space-lg-device);
}

.card.is-white {
  --card-color-background: var(--bal-card-color-white-background);
  --card-color-text: var(--bal-card-color-white-text);
  --card-color-border: var(--bal-card-color-white-border, transparent);
}
.card.is-white.is-outlined {
  --card-color-border: var(--bal-card-color-white-outline, transparent);
}
.card.is-primary {
  --card-color-background: var(--bal-card-color-primary-background);
  --card-color-text: var(--bal-card-color-primary-text);
  --card-color-border: var(--bal-card-color-primary-border, transparent);
}
.card.is-primary.is-outlined {
  --card-color-border: var(--bal-card-color-primary-outline, transparent);
}
.card.is-primary-light {
  --card-color-background: var(--bal-card-color-primary-light-background);
  --card-color-text: var(--bal-card-color-primary-light-text);
  --card-color-border: var(--bal-card-color-primary-light-border, transparent);
}
.card.is-primary-light.is-outlined {
  --card-color-border: var(--bal-card-color-primary-light-outline, transparent);
}
.card.is-info {
  --card-color-background: var(--bal-card-color-info-background);
  --card-color-text: var(--bal-card-color-info-text);
  --card-color-border: var(--bal-card-color-info-border, transparent);
}
.card.is-info.is-outlined {
  --card-color-border: var(--bal-card-color-info-outline, transparent);
}
.card.is-success {
  --card-color-background: var(--bal-card-color-success-background);
  --card-color-text: var(--bal-card-color-success-text);
  --card-color-border: var(--bal-card-color-success-border, transparent);
}
.card.is-success.is-outlined {
  --card-color-border: var(--bal-card-color-success-outline, transparent);
}
.card.is-warning {
  --card-color-background: var(--bal-card-color-warning-background);
  --card-color-text: var(--bal-card-color-warning-text);
  --card-color-border: var(--bal-card-color-warning-border, transparent);
}
.card.is-warning.is-outlined {
  --card-color-border: var(--bal-card-color-warning-outline, transparent);
}
.card.is-danger {
  --card-color-background: var(--bal-card-color-danger-background);
  --card-color-text: var(--bal-card-color-danger-text);
  --card-color-border: var(--bal-card-color-danger-border, transparent);
}
.card.is-danger.is-outlined {
  --card-color-border: var(--bal-card-color-danger-outline, transparent);
}
.card.is-grey {
  --card-color-background: var(--bal-card-color-grey-background);
  --card-color-text: var(--bal-card-color-grey-text);
  --card-color-border: var(--bal-card-color-grey-border, transparent);
}
.card.is-grey.is-outlined {
  --card-color-border: var(--bal-card-color-grey-outline, transparent);
}
.card.is-grey-light {
  --card-color-background: var(--bal-card-color-grey-light-background);
  --card-color-text: var(--bal-card-color-grey-light-text);
  --card-color-border: var(--bal-card-color-grey-light-border, transparent);
}
.card.is-grey-light.is-outlined {
  --card-color-border: var(--bal-card-color-grey-light-outline, transparent);
}
.card.is-red {
  --card-color-background: var(--bal-card-color-red-background);
  --card-color-text: var(--bal-card-color-red-text);
  --card-color-border: var(--bal-card-color-red-border, transparent);
}
.card.is-red.is-outlined {
  --card-color-border: var(--bal-card-color-red-outline, transparent);
}
.card.is-red-light {
  --card-color-background: var(--bal-card-color-red-light-background);
  --card-color-text: var(--bal-card-color-red-light-text);
  --card-color-border: var(--bal-card-color-red-light-border, transparent);
}
.card.is-red-light.is-outlined {
  --card-color-border: var(--bal-card-color-red-light-outline, transparent);
}
.card.is-red-lighter {
  --card-color-background: var(--bal-card-color-red-lighter-background);
  --card-color-text: var(--bal-card-color-red-lighter-text);
  --card-color-border: var(--bal-card-color-red-lighter-border, transparent);
}
.card.is-red-lighter.is-outlined {
  --card-color-border: var(--bal-card-color-red-lighter-outline, transparent);
}
.card.is-green {
  --card-color-background: var(--bal-card-color-green-background);
  --card-color-text: var(--bal-card-color-green-text);
  --card-color-border: var(--bal-card-color-green-border, transparent);
}
.card.is-green.is-outlined {
  --card-color-border: var(--bal-card-color-green-outline, transparent);
}
.card.is-green-light {
  --card-color-background: var(--bal-card-color-green-light-background);
  --card-color-text: var(--bal-card-color-green-light-text);
  --card-color-border: var(--bal-card-color-green-light-border, transparent);
}
.card.is-green-light.is-outlined {
  --card-color-border: var(--bal-card-color-green-light-outline, transparent);
}
.card.is-green-lighter {
  --card-color-background: var(--bal-card-color-green-lighter-background);
  --card-color-text: var(--bal-card-color-green-lighter-text);
  --card-color-border: var(--bal-card-color-green-lighter-border, transparent);
}
.card.is-green-lighter.is-outlined {
  --card-color-border: var(--bal-card-color-green-lighter-outline, transparent);
}
.card.is-purple {
  --card-color-background: var(--bal-card-color-purple-background);
  --card-color-text: var(--bal-card-color-purple-text);
  --card-color-border: var(--bal-card-color-purple-border, transparent);
}
.card.is-purple.is-outlined {
  --card-color-border: var(--bal-card-color-purple-outline, transparent);
}
.card.is-purple-light {
  --card-color-background: var(--bal-card-color-purple-light-background);
  --card-color-text: var(--bal-card-color-purple-light-text);
  --card-color-border: var(--bal-card-color-purple-light-border, transparent);
}
.card.is-purple-light.is-outlined {
  --card-color-border: var(--bal-card-color-purple-light-outline, transparent);
}
.card.is-purple-lighter {
  --card-color-background: var(--bal-card-color-purple-lighter-background);
  --card-color-text: var(--bal-card-color-purple-lighter-text);
  --card-color-border: var(--bal-card-color-purple-lighter-border, transparent);
}
.card.is-purple-lighter.is-outlined {
  --card-color-border: var(--bal-card-color-purple-lighter-outline, transparent);
}
.card.is-yellow {
  --card-color-background: var(--bal-card-color-yellow-background);
  --card-color-text: var(--bal-card-color-yellow-text);
  --card-color-border: var(--bal-card-color-yellow-border, transparent);
}
.card.is-yellow.is-outlined {
  --card-color-border: var(--bal-card-color-yellow-outline, transparent);
}
.card.is-yellow-light {
  --card-color-background: var(--bal-card-color-yellow-light-background);
  --card-color-text: var(--bal-card-color-yellow-light-text);
  --card-color-border: var(--bal-card-color-yellow-light-border, transparent);
}
.card.is-yellow-light.is-outlined {
  --card-color-border: var(--bal-card-color-yellow-light-outline, transparent);
}
.card.is-yellow-lighter {
  --card-color-background: var(--bal-card-color-yellow-lighter-background);
  --card-color-text: var(--bal-card-color-yellow-lighter-text);
  --card-color-border: var(--bal-card-color-yellow-lighter-border, transparent);
}
.card.is-yellow-lighter.is-outlined {
  --card-color-border: var(--bal-card-color-yellow-lighter-outline, transparent);
}

/**
  * Mixins
  * -------------------------------
  * Define here component specific mixins
  */
/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.button {
  --_button-position: var(--button-position, var(--mod-button-position, static));
  --_button-top: var(--button-top, var(--mod-button-top));
  --_button-right: var(--button-right, var(--mod-button-right));
  --_button-bottom: var(--button-bottom, var(--mod-button-bottom));
  --_button-left: var(--button-left, var(--mod-button-left));
  position: var(--_button-position);
  top: var(--_button-top);
  right: var(--_button-right);
  bottom: var(--_button-bottom);
  left: var(--_button-left);
  --_button-m: var(--button-m, var(--mod-button-m, 0));
  --_button-my: var(--button-my, var(--mod-button-my));
  --_button-mx: var(--button-mx, var(--mod-button-mx));
  --_button-ml: var(--button-ml, var(--mod-button-ml));
  --_button-mr: var(--button-mr, var(--mod-button-mr));
  --_button-mt: var(--button-mt, var(--mod-button-mt));
  --_button-mb: var(--button-mb, var(--mod-button-mb));
  margin: var(--_button-m);
  margin-inline: var(--_button-mx);
  margin-block: var(--_button-my);
  margin-left: var(--_button-ml);
  margin-right: var(--_button-mr);
  margin-top: var(--_button-mt);
  margin-bottom: var(--_button-mb);
  --_button-font-family: var(--button-font-family, var(--mod-button-font-family, var(--bal-button-family)));
  --_button-font-weight: var(--button-font-weight, var(--mod-button-font-weight, var(--bal-button-weight)));
  --_button-font-size: var(--button-font-size, var(--mod-button-font-size, var(--bal-button-size-base)));
  --_button-line-height: var(--button-line-height, var(--mod-button-line-height, var(--bal-button-line-height)));
  --_button-radius: var(--button-radius, var(--mod-button-radius, var(--bal-button-radius-base)));
  --_button-color-text: var(--button-color-text, var(--mod-button-color-text, var(--bal-button-color-primary-base-text)));
  --_button-color-border: var(--button-color-border, var(--mod-button-color-border, var(--bal-button-color-primary-base-border)));
  --_button-color-background: var(--button-color-background, var(--mod-button-color-background, var(--bal-button-color-primary-base-background)));
  --_button-color-text-hover: var(--button-color-text-hover, var(--mod-button-color-text-hover, var(--bal-button-color-primary-hover-text)));
  --_button-color-border-hover: var(--button-color-border-hover, var(--mod-button-color-border-hover, var(--bal-button-color-primary-hover-border)));
  --_button-color-background-hover: var(--button-color-background-hover, var(--mod-button-color-background-hover, var(--bal-button-color-primary-hover-background)));
  --_button-color-text-active: var(--button-color-text-active, var(--mod-button-color-text-active, var(--bal-button-color-primary-active-text)));
  --_button-color-border-active: var(--button-color-border-active, var(--mod-button-color-border-active, var(--bal-button-color-primary-active-border)));
  --_button-color-background-active: var(--button-color-background-active, var(--mod-button-color-background-active, var(--bal-button-color-primary-active-background)));
  --_button-width: var(--button-width, var(--mod-button-width, var(--bal-button-width, fit-content)));
  --_button-border-style: var(--button-border-style, var(--mod-button-border-style, solid));
  --_button-gap: var(--button-gap, var(--mod-button-gap, 0.5rem));
  --_button-min-height: var(--button-min-height, var(--mod-button-min-height, 3rem));
  --_button-min-width: var(--button-min-width, var(--mod-button-min-width, 3rem));
  --_button-padding-inline: var(--button-padding-inline, var(--mod-button-padding-inline, 1.5rem));
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.button {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  position: relative;
  display: inline-flex;
  flex-wrap: nowrap;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  word-break: normal;
  box-shadow: none;
  outline: none;
  box-sizing: border-box;
  text-decoration: none;
  user-select: none;
  touch-action: manipulation;
  transition-property: color, background-color, border-color, box-shadow;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  font-size: var(--_button-font-size);
  font-family: var(--_button-font-family);
  font-weight: var(--_button-font-weight);
  line-height: var(--_button-line-height);
  border-radius: var(--_button-radius);
  border-style: var(--_button-border-style);
  border-width: var(--bal-border-width-base);
  width: var(--_button-width, -moz-fit-content);
  width: var(--_button-width, fit-content);
  min-width: var(--_button-min-width);
  min-height: var(--_button-min-height);
  gap: var(--_button-gap);
  padding-inline: var(--_button-padding-inline);
  background-color: var(--_button-color-background);
  color: var(--_button-color-text);
  border-color: var(--_button-color-border);
}
.button::-moz-focus-inner {
  border: 0;
}
.button bal-icon {
  --icon-color: var(--_button-color-text);
}
.button:focus, .button:active {
  outline: none;
}
@media (hover: hover) and (pointer: fine) {
  .button:focus-visible:not(:active), .button.is-focused:not(:active) {
    box-shadow: var(--bal-interaction-focus-color-border) 0 0 0 2px, var(--bal-interaction-focus-color-start) 0 0 0 5px !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .button:hover, .button.is-hovered {
    background-color: var(--_button-color-background-hover);
    color: var(--_button-color-text-hover);
    border-color: var(--_button-color-border-hover);
  }
}
.button:active, .button.is-pressed {
  background-color: var(--_button-color-background-active);
  color: var(--_button-color-text-active);
  border-color: var(--_button-color-border-active);
  translate: 0 0.5px;
}

.button .badge,
.button bal-badge {
  --badge-position: absolute;
  --badge-top: -0.5rem;
  --badge-right: -0.5rem;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
button.is-primary:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-primary-base-text);
  --mod-button-color-background: var(--bal-button-color-primary-base-background);
  --mod-button-color-border: var(--bal-button-color-primary-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-primary-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-primary-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-primary-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-primary-active-text);
  --mod-button-color-background-active: var(--bal-button-color-primary-active-background);
  --mod-button-color-border-active: var(--bal-button-color-primary-active-border);
}

button.is-secondary:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-secondary-base-text);
  --mod-button-color-background: var(--bal-button-color-secondary-base-background);
  --mod-button-color-border: var(--bal-button-color-secondary-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-secondary-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-secondary-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-secondary-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-secondary-active-text);
  --mod-button-color-background-active: var(--bal-button-color-secondary-active-background);
  --mod-button-color-border-active: var(--bal-button-color-secondary-active-border);
}

button.is-tertiary:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-tertiary-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-active-border);
}

button.is-tertiary-yellow:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-tertiary-yellow-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-yellow-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-yellow-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-yellow-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-yellow-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-yellow-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-yellow-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-yellow-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-yellow-active-border);
}

button.is-tertiary-purple:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-tertiary-purple-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-purple-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-purple-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-purple-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-purple-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-purple-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-purple-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-purple-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-purple-active-border);
}

button.is-tertiary-green:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-tertiary-green-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-green-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-green-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-green-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-green-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-green-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-green-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-green-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-green-active-border);
}

button.is-tertiary-red:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-tertiary-red-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-red-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-red-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-red-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-red-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-red-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-red-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-red-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-red-active-border);
}

button.is-info:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-info-base-text);
  --mod-button-color-background: var(--bal-button-color-info-base-background);
  --mod-button-color-border: var(--bal-button-color-info-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-info-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-info-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-info-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-info-active-text);
  --mod-button-color-background-active: var(--bal-button-color-info-active-background);
  --mod-button-color-border-active: var(--bal-button-color-info-active-border);
}

button.is-success:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-success-base-text);
  --mod-button-color-background: var(--bal-button-color-success-base-background);
  --mod-button-color-border: var(--bal-button-color-success-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-success-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-success-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-success-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-success-active-text);
  --mod-button-color-background-active: var(--bal-button-color-success-active-background);
  --mod-button-color-border-active: var(--bal-button-color-success-active-border);
}

button.is-warning:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-warning-base-text);
  --mod-button-color-background: var(--bal-button-color-warning-base-background);
  --mod-button-color-border: var(--bal-button-color-warning-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-warning-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-warning-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-warning-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-warning-active-text);
  --mod-button-color-background-active: var(--bal-button-color-warning-active-background);
  --mod-button-color-border-active: var(--bal-button-color-warning-active-border);
}

button.is-danger:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-danger-base-text);
  --mod-button-color-background: var(--bal-button-color-danger-base-background);
  --mod-button-color-border: var(--bal-button-color-danger-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-danger-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-danger-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-danger-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-danger-active-text);
  --mod-button-color-background-active: var(--bal-button-color-danger-active-background);
  --mod-button-color-border-active: var(--bal-button-color-danger-active-border);
}

button.is-link:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-link-base-text);
  --mod-button-color-background: var(--bal-button-color-link-base-background);
  --mod-button-color-border: var(--bal-button-color-link-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-link-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-link-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-link-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-link-active-text);
  --mod-button-color-background-active: var(--bal-button-color-link-active-background);
  --mod-button-color-border-active: var(--bal-button-color-link-active-border);
}

button.is-text:not(.is-inverted):not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-text-base-text);
  --mod-button-color-background: var(--bal-button-color-text-base-background);
  --mod-button-color-border: var(--bal-button-color-text-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-text-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-text-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-text-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-text-active-text);
  --mod-button-color-background-active: var(--bal-button-color-text-active-background);
  --mod-button-color-border-active: var(--bal-button-color-text-active-border);
}

button.is-primary.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-tertiary-yellow.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-tertiary-purple.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-tertiary-green.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-tertiary-red.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-info.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-success.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-warning.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-danger.is-inverted:not(.is-dashed) {
  --mod-button-color-text: var(--bal-button-color-inverted-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-active-border);
}

button.is-secondary.is-inverted {
  --mod-button-color-text: var(--bal-button-color-inverted-secondary-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-secondary-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-secondary-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-secondary-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-secondary-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-secondary-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-secondary-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-secondary-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-secondary-active-border);
}

button.is-tertiary.is-inverted {
  --mod-button-color-text: var(--bal-button-color-inverted-tertiary-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-tertiary-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-tertiary-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-tertiary-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-tertiary-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-tertiary-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-tertiary-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-tertiary-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-tertiary-active-border);
}

button.is-text link.is-inverted {
  --mod-button-color-text: var(--bal-button-color-inverted-text link-base-text);
  --mod-button-color-background: var(--bal-button-color-inverted-text link-base-background);
  --mod-button-color-border: var(--bal-button-color-inverted-text link-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-inverted-text link-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-inverted-text link-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-inverted-text link-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-inverted-text link-active-text);
  --mod-button-color-background-active: var(--bal-button-color-inverted-text link-active-background);
  --mod-button-color-border-active: var(--bal-button-color-inverted-text link-active-border);
}

button.is-sm {
  --mod-button-font-size: var(--bal-button-size-sm);
  --mod-button-min-height: 2rem;
  --mod-button-min-width: 2rem;
  --mod-button-padding-inline: 0.75rem;
}

button.is-lg {
  --mod-button-font-size: var(--bal-button-size-lg);
  --mod-button-min-height: 3.5rem;
  --mod-button-min-width: 3.5rem;
  --mod-button-padding-inline: 1.5rem;
}

button.is-flat {
  --mod-button-padding-inline: 0;
  --mod-button-min-height: 1.75rem;
}

button.is-rounded {
  --mod-button-radius: var(--bal-button-radius-rounded);
}

button.is-square:not(.is-sm), button.is-square:not(.is-small) {
  --mod-button-radius: var(--bal-button-radius-base);
  --mod-button-padding-inline: 0;
  --mod-button-gap: 0;
  --mod-button-min-height: 3rem;
  --mod-button-min-width: 3rem;
  --icon-size: 1.5rem;
}
button.is-square.is-sm, button.is-square.is-small {
  --mod-button-radius: var(--bal-button-radius-base);
  --mod-button-padding-inline: 0;
  --mod-button-gap: 0;
  --mod-button-min-height: 2rem;
  --mod-button-min-width: 2rem;
  --icon-size: var(--bal-icon-size-sm);
}

button.is-circle:not(.is-sm), button.is-circle:not(.is-small) {
  --mod-button-radius: var(--bal-button-radius-rounded);
  --mod-button-padding-inline: 0;
  --mod-button-gap: 0;
  --mod-button-min-height: 3rem;
  --mod-button-min-width: 3rem;
  --icon-size: 1.5rem;
}
button.is-circle.is-small, button.is-circle.is-sm {
  --mod-button-radius: var(--bal-button-radius-rounded);
  --mod-button-padding-inline: 0;
  --mod-button-gap: 0;
  --mod-button-min-height: 2rem;
  --mod-button-min-width: 2rem;
  --icon-size: var(--bal-icon-size-sm);
}

.button.is-tertiary-purple.is-dashed {
  --mod-button-border-style: dashed;
  --mod-button-color-text: var(--bal-button-color-tertiary-purple-dashed-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-purple-dashed-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-purple-dashed-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-purple-dashed-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-purple-dashed-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-purple-dashed-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-purple-dashed-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-purple-dashed-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-purple-dashed-active-border);
}
.button.is-tertiary-purple.is-dashed bal-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 1.5rem;
  min-height: 1.5rem;
  border-radius: var(--bal-button-radius-rounded);
  background: var(--_button-color-border);
}

.button.is-tertiary-red.is-dashed {
  --mod-button-border-style: dashed;
  --mod-button-color-text: var(--bal-button-color-tertiary-red-dashed-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-red-dashed-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-red-dashed-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-red-dashed-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-red-dashed-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-red-dashed-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-red-dashed-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-red-dashed-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-red-dashed-active-border);
}
.button.is-tertiary-red.is-dashed bal-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 1.5rem;
  min-height: 1.5rem;
  border-radius: var(--bal-button-radius-rounded);
  background: var(--_button-color-border);
}

.button.is-tertiary-green.is-dashed {
  --mod-button-border-style: dashed;
  --mod-button-color-text: var(--bal-button-color-tertiary-green-dashed-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-green-dashed-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-green-dashed-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-green-dashed-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-green-dashed-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-green-dashed-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-green-dashed-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-green-dashed-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-green-dashed-active-border);
}
.button.is-tertiary-green.is-dashed bal-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 1.5rem;
  min-height: 1.5rem;
  border-radius: var(--bal-button-radius-rounded);
  background: var(--_button-color-border);
}

.button.is-tertiary-yellow.is-dashed {
  --mod-button-border-style: dashed;
  --mod-button-color-text: var(--bal-button-color-tertiary-yellow-dashed-base-text);
  --mod-button-color-background: var(--bal-button-color-tertiary-yellow-dashed-base-background);
  --mod-button-color-border: var(--bal-button-color-tertiary-yellow-dashed-base-border);
  --mod-button-color-text-hover: var(--bal-button-color-tertiary-yellow-dashed-hover-text);
  --mod-button-color-background-hover: var(--bal-button-color-tertiary-yellow-dashed-hover-background);
  --mod-button-color-border-hover: var(--bal-button-color-tertiary-yellow-dashed-hover-border);
  --mod-button-color-text-active: var(--bal-button-color-tertiary-yellow-dashed-active-text);
  --mod-button-color-background-active: var(--bal-button-color-tertiary-yellow-dashed-active-background);
  --mod-button-color-border-active: var(--bal-button-color-tertiary-yellow-dashed-active-border);
}
.button.is-tertiary-yellow.is-dashed bal-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 1.5rem;
  min-height: 1.5rem;
  border-radius: var(--bal-button-radius-rounded);
  background: var(--_button-color-border);
}

fieldset[disabled] .button, fieldset[disabled] .button:hover, fieldset[disabled] .button.is-hovered, fieldset[disabled] .button:active, fieldset[disabled] .button.is-pressed, fieldset[disabled] .button:focus, fieldset[disabled] .button.is-focused,
.button.is-disabled,
.button.is-disabled:hover,
.button.is-disabled.is-hovered,
.button.is-disabled:active,
.button.is-disabled.is-pressed,
.button.is-disabled:focus,
.button.is-disabled.is-focused,
.button.is-inverted.is-disabled,
.button.is-inverted.is-disabled:hover,
.button.is-inverted.is-disabled.is-hovered,
.button.is-inverted.is-disabled:active,
.button.is-inverted.is-disabled.is-pressed,
.button.is-inverted.is-disabled:focus,
.button.is-inverted.is-disabled.is-focused,
.button[disabled],
.button[disabled]:hover,
.button[disabled].is-hovered,
.button[disabled]:active,
.button[disabled].is-pressed,
.button[disabled]:focus,
.button[disabled].is-focused {
  pointer-events: none;
  opacity: 1;
  box-shadow: none;
  text-decoration: none;
  cursor: default;
  translate: 0 0;
  background-color: var(--bal-button-color-disabled-base-background);
  border: var(--bal-button-color-disabled-base-border);
  color: var(--bal-button-color-disabled-base-text);
}
fieldset[disabled] .button > bal-icon, fieldset[disabled] .button:hover > bal-icon, fieldset[disabled] .button.is-hovered > bal-icon, fieldset[disabled] .button:active > bal-icon, fieldset[disabled] .button.is-pressed > bal-icon, fieldset[disabled] .button:focus > bal-icon, fieldset[disabled] .button.is-focused > bal-icon,
.button.is-disabled > bal-icon,
.button.is-disabled:hover > bal-icon,
.button.is-disabled.is-hovered > bal-icon,
.button.is-disabled:active > bal-icon,
.button.is-disabled.is-pressed > bal-icon,
.button.is-disabled:focus > bal-icon,
.button.is-disabled.is-focused > bal-icon,
.button.is-inverted.is-disabled > bal-icon,
.button.is-inverted.is-disabled:hover > bal-icon,
.button.is-inverted.is-disabled.is-hovered > bal-icon,
.button.is-inverted.is-disabled:active > bal-icon,
.button.is-inverted.is-disabled.is-pressed > bal-icon,
.button.is-inverted.is-disabled:focus > bal-icon,
.button.is-inverted.is-disabled.is-focused > bal-icon,
.button[disabled] > bal-icon,
.button[disabled]:hover > bal-icon,
.button[disabled].is-hovered > bal-icon,
.button[disabled]:active > bal-icon,
.button[disabled].is-pressed > bal-icon,
.button[disabled]:focus > bal-icon,
.button[disabled].is-focused > bal-icon {
  --icon-size: var(--bal-button-color-disabled-base-text);
}
fieldset[disabled] .button > bal-spinner, fieldset[disabled] .button:hover > bal-spinner, fieldset[disabled] .button.is-hovered > bal-spinner, fieldset[disabled] .button:active > bal-spinner, fieldset[disabled] .button.is-pressed > bal-spinner, fieldset[disabled] .button:focus > bal-spinner, fieldset[disabled] .button.is-focused > bal-spinner,
.button.is-disabled > bal-spinner,
.button.is-disabled:hover > bal-spinner,
.button.is-disabled.is-hovered > bal-spinner,
.button.is-disabled:active > bal-spinner,
.button.is-disabled.is-pressed > bal-spinner,
.button.is-disabled:focus > bal-spinner,
.button.is-disabled.is-focused > bal-spinner,
.button.is-inverted.is-disabled > bal-spinner,
.button.is-inverted.is-disabled:hover > bal-spinner,
.button.is-inverted.is-disabled.is-hovered > bal-spinner,
.button.is-inverted.is-disabled:active > bal-spinner,
.button.is-inverted.is-disabled.is-pressed > bal-spinner,
.button.is-inverted.is-disabled:focus > bal-spinner,
.button.is-inverted.is-disabled.is-focused > bal-spinner,
.button[disabled] > bal-spinner,
.button[disabled]:hover > bal-spinner,
.button[disabled].is-hovered > bal-spinner,
.button[disabled]:active > bal-spinner,
.button[disabled].is-pressed > bal-spinner,
.button[disabled]:focus > bal-spinner,
.button[disabled].is-focused > bal-spinner {
  --spinner-color: var(--bal-button-color-disabled-base-text);
}
fieldset[disabled] .button > bal-spinner[variation=circle], fieldset[disabled] .button:hover > bal-spinner[variation=circle], fieldset[disabled] .button.is-hovered > bal-spinner[variation=circle], fieldset[disabled] .button:active > bal-spinner[variation=circle], fieldset[disabled] .button.is-pressed > bal-spinner[variation=circle], fieldset[disabled] .button:focus > bal-spinner[variation=circle], fieldset[disabled] .button.is-focused > bal-spinner[variation=circle],
.button.is-disabled > bal-spinner[variation=circle],
.button.is-disabled:hover > bal-spinner[variation=circle],
.button.is-disabled.is-hovered > bal-spinner[variation=circle],
.button.is-disabled:active > bal-spinner[variation=circle],
.button.is-disabled.is-pressed > bal-spinner[variation=circle],
.button.is-disabled:focus > bal-spinner[variation=circle],
.button.is-disabled.is-focused > bal-spinner[variation=circle],
.button.is-inverted.is-disabled > bal-spinner[variation=circle],
.button.is-inverted.is-disabled:hover > bal-spinner[variation=circle],
.button.is-inverted.is-disabled.is-hovered > bal-spinner[variation=circle],
.button.is-inverted.is-disabled:active > bal-spinner[variation=circle],
.button.is-inverted.is-disabled.is-pressed > bal-spinner[variation=circle],
.button.is-inverted.is-disabled:focus > bal-spinner[variation=circle],
.button.is-inverted.is-disabled.is-focused > bal-spinner[variation=circle],
.button[disabled] > bal-spinner[variation=circle],
.button[disabled]:hover > bal-spinner[variation=circle],
.button[disabled].is-hovered > bal-spinner[variation=circle],
.button[disabled]:active > bal-spinner[variation=circle],
.button[disabled].is-pressed > bal-spinner[variation=circle],
.button[disabled]:focus > bal-spinner[variation=circle],
.button[disabled].is-focused > bal-spinner[variation=circle] {
  --spinner-circle-color-border-background: var(--bal-color-grey-4);
  --spinner-circle-color-border-progress: var(--bal-button-color-disabled-base-text);
}

.buttons {
  --buttons-align-items: var(--bal-buttons-align-items, center);
  --buttons-justify-content: var(--bal-buttons-justify-content, flex-start);
  display: flex;
  gap: 0.5rem;
  flex-flow: column wrap;
  width: 100%;
}
.buttons:not(:last-child) {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .buttons .button:not(.is-square, .is-circle),
  .buttons bal-button:not(.is-square, .is-circle) {
    flex: 1 1 auto;
  }
}
@media screen and (min-width: 769px) {
  .buttons {
    flex-flow: row wrap;
    align-items: var(--buttons-align-items);
    justify-content: var(--buttons-justify-content);
  }
  .buttons.fit-content {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.buttons.as-row {
  flex-flow: row wrap;
  align-items: var(--buttons-align-items);
  justify-content: var(--buttons-justify-content);
}
.buttons.as-row.is-expanded .button,
.buttons.as-row.is-expanded bal-button {
  flex: 1;
}
.buttons.as-col {
  flex-flow: column wrap;
}
@media screen and (min-width: 769px) {
  .buttons.as-col {
    --buttons-align-items: flex-start;
  }
}
.buttons.is-reverse.as-row {
  flex-flow: row-reverse wrap;
}
.buttons.is-reverse.as-col {
  flex-flow: column-reverse wrap;
}
@media screen and (min-width: 769px) {
  .buttons.is-center:not(.as-col), .buttons.is-centered:not(.as-col) {
    --buttons-justify-content: center;
  }
  .buttons.is-center.as-col, .buttons.is-centered.as-col {
    --buttons-align-items: center;
  }
  .buttons.is-right:not(.as-col) {
    --buttons-justify-content: flex-end;
  }
  .buttons.is-right.as-col {
    --buttons-align-items: flex-end;
  }
}
.buttons.fit-content bal-button {
  --bal-button-width: 100%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .buttons {
    --bal-button-width: 100%;
  }
  .buttons bal-button {
    --bal-button-width: 100%;
    width: 100%;
  }
}

/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.badge {
  --_badge-m: var(--badge-m, var(--mod-badge-m, 0));
  --_badge-my: var(--badge-my, var(--mod-badge-my));
  --_badge-mx: var(--badge-mx, var(--mod-badge-mx));
  --_badge-ml: var(--badge-ml, var(--mod-badge-ml));
  --_badge-mr: var(--badge-mr, var(--mod-badge-mr));
  --_badge-mt: var(--badge-mt, var(--mod-badge-mt));
  --_badge-mb: var(--badge-mb, var(--mod-badge-mb));
  margin: var(--_badge-m);
  margin-inline: var(--_badge-mx);
  margin-block: var(--_badge-my);
  margin-left: var(--_badge-ml);
  margin-right: var(--_badge-mr);
  margin-top: var(--_badge-mt);
  margin-bottom: var(--_badge-mb);
  --_badge-position: var(--badge-position, var(--mod-badge-position, static));
  --_badge-top: var(--badge-top, var(--mod-badge-top));
  --_badge-right: var(--badge-right, var(--mod-badge-right));
  --_badge-bottom: var(--badge-bottom, var(--mod-badge-bottom));
  --_badge-left: var(--badge-left, var(--mod-badge-left));
  position: var(--_badge-position);
  top: var(--_badge-top);
  right: var(--_badge-right);
  bottom: var(--_badge-bottom);
  left: var(--_badge-left);
  --badge-font-family: var(--bal-badge-text-family);
  --badge-font-weight: var(--bal-badge-text-weight);
  --badge-min-width: var(--bal-badge-size-base);
  --badge-height: var(--bal-badge-size-base);
  --badge-radius: calc(var(--bal-badge-size-base) / 2);
  --badge-color-background: var(--bal-badge-color-base-background);
  --badge-color-text: var(--bal-badge-color-base-text);
  --badge-pulse-color: var(--bal-badge-color-base-background);
  --badge-font-size: 85%;
  --badge-icon-size: 0.875rem;
  --badge-gap: 4px;
  --badge-padding-inline: 4px;
  --badge-padding-block: 4px;
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
.badge {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-flex;
  vertical-align: text-top;
  justify-content: center;
  align-items: center;
  hyphens: auto;
  font-size: var(--badge-font-size);
  white-space: nowrap;
  line-height: 1;
  z-index: 1;
  cursor: inherit;
  min-width: var(--badge-min-width);
  height: var(--badge-height);
  border-radius: var(--badge-radius);
  background: var(--badge-color-background);
  color: var(--badge-color-text);
  font-family: var(--badge-font-family);
  font-weight: var(--badge-font-weight);
  gap: var(--badge-gap);
  padding-inline: var(--badge-padding-inline);
  padding-block: var(--badge-padding-block);
}
.badge > bal-icon {
  --icon-size: var(--badge-icon-size);
}
.badge.has-pulse {
  animation: pulse 2s infinite;
}

/**
  * Variants and States
  * --------------------------------
  * Define here the variants and states like size or colors for the component.
  */
.badge {
  margin: var(--badge-m);
  margin-inline: var(--badge-mx);
  margin-block: var(--badge-my);
  margin-left: var(--badge-ml);
  margin-right: var(--badge-mr);
  margin-top: var(--badge-mt);
  margin-bottom: var(--badge-mb);
  position: var(--badge-position);
  top: var(--badge-top);
  right: var(--badge-right);
  bottom: var(--badge-bottom);
  left: var(--badge-left);
}

.badge.is-red {
  --badge-color-text: var(--bal-badge-color-red-text);
  --badge-color-background: var(--bal-badge-color-red-background);
  --badge-pulse-color: var(--bal-badge-color-red-background);
}
.badge.is-red bal-icon {
  --bal-icon-color: var(--bal-badge-color-red-text);
}
.badge.is-green {
  --badge-color-text: var(--bal-badge-color-green-text);
  --badge-color-background: var(--bal-badge-color-green-background);
  --badge-pulse-color: var(--bal-badge-color-green-background);
}
.badge.is-green bal-icon {
  --bal-icon-color: var(--bal-badge-color-green-text);
}
.badge.is-yellow {
  --badge-color-text: var(--bal-badge-color-yellow-text);
  --badge-color-background: var(--bal-badge-color-yellow-background);
  --badge-pulse-color: var(--bal-badge-color-yellow-background);
}
.badge.is-yellow bal-icon {
  --bal-icon-color: var(--bal-badge-color-yellow-text);
}
.badge.is-purple {
  --badge-color-text: var(--bal-badge-color-purple-text);
  --badge-color-background: var(--bal-badge-color-purple-background);
  --badge-pulse-color: var(--bal-badge-color-purple-background);
}
.badge.is-purple bal-icon {
  --bal-icon-color: var(--bal-badge-color-purple-text);
}
.badge.is-grey {
  --badge-color-text: var(--bal-badge-color-grey-text);
  --badge-color-background: var(--bal-badge-color-grey-background);
  --badge-pulse-color: var(--bal-badge-color-grey-background);
}
.badge.is-grey bal-icon {
  --bal-icon-color: var(--bal-badge-color-grey-text);
}
.badge.is-success {
  --badge-color-text: var(--bal-badge-color-success-text);
  --badge-color-background: var(--bal-badge-color-success-background);
  --badge-pulse-color: var(--bal-badge-color-success-background);
}
.badge.is-success bal-icon {
  --bal-icon-color: var(--bal-badge-color-success-text);
}
.badge.is-warning {
  --badge-color-text: var(--bal-badge-color-warning-text);
  --badge-color-background: var(--bal-badge-color-warning-background);
  --badge-pulse-color: var(--bal-badge-color-warning-background);
}
.badge.is-warning bal-icon {
  --bal-icon-color: var(--bal-badge-color-warning-text);
}
.badge.is-danger {
  --badge-color-text: var(--bal-badge-color-danger-text);
  --badge-color-background: var(--bal-badge-color-danger-background);
  --badge-pulse-color: var(--bal-badge-color-danger-background);
}
.badge.is-danger bal-icon {
  --bal-icon-color: var(--bal-badge-color-danger-text);
}
.badge.is-sm {
  --badge-radius: calc(var(--bal-badge-size-sm) / 2);
  --badge-height: var(--bal-badge-size-sm);
  --badge-min-width: var(--bal-badge-size-sm);
  --badge-padding-inline: 0;
  --badge-padding-block: 0;
  --badge-font-size: 0;
  max-width: var(--bal-badge-size-sm);
  padding: 0;
  overflow: hidden;
}
.badge.is-sm > * {
  display: none;
}
.badge.is-lg {
  --badge-min-width: var(--bal-badge-size-lg);
  --badge-height: var(--bal-badge-size-lg);
  --badge-radius: calc(var(--bal-badge-size-lg) / 2);
  --badge-font-size: 1rem;
  --badge-icon-size: 1.125rem;
}

/**
  * Animations
  * --------------------------------
  * Define here the animations for the component.
  */
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 var(--badge-pulse-color);
  }
  70% {
    box-shadow: 0 0 0 0.5rem transparent;
  }
  100% {
    box-shadow: 0 0 0 0 transparent;
  }
}
/**
 * Variables
 * --------------------------------
 * Define here the css variables for the component to be able to use it in host or non-host mode
 * These variables can be used in the component styles below and later on be overridden in themes.
 */
.accordion {
  /* Marker icons (SVG via mask so we can color with currentColor) */
  --accordion-marker-size: 1rem;
  --accordion-marker-chevron: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2010%2010'%3E%3Cpath%20fill='black'%20d='M5,7.874a1.238,1.238,0,0,1-.879-.364L.206,3.393A.75.75,0,1,1,1.294,2.36L4.819,6.072a.249.249,0,0,0,.362,0L8.706,2.36A.75.75,0,1,1,9.794,3.393L5.9,7.5A1.269,1.269,0,0,1,5,7.874Z'/%3E%3C/svg%3E");
  --accordion-marker-plus: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2014%2014'%3E%3Cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M8%201C8%200.447715%207.55228%200%207%200C6.44772%200%206%200.447715%206%201V6H1C0.447715%206%200%206.44772%200%207C0%207.55228%200.447715%208%201%208H6V13C6%2013.5523%206.44772%2014%207%2014C7.55228%2014%208%2013.5523%208%2013V8H13C13.5523%208%2014%207.55228%2014%207C14%206.44772%2013.5523%206%2013%206H8V1Z'/%3E%3C/svg%3E");
  --accordion-marker-minus: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2014%2014'%3E%3Cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M0%207C0%206.44772%200.447715%206%201%206H13C13.5523%206%2014%206.44772%2014%207C14%207.55228%2013.5523%208%2013%208H1C0.447715%208%200%207.55228%200%207Z'/%3E%3C/svg%3E");
  /* Default marker variant */
  --accordion-marker-icon: var(--accordion-marker-chevron);
}

/**
  * Basic Component Styles
  * --------------------------------
  * Define here the component styles using the mixin to support host and non-host mode for hybrid components.
  */
details.accordion {
  display: block;
  position: relative;
}

details.accordion > summary:not(.button) {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

details.accordion > summary {
  /* Hide the native disclosure triangle */
  list-style: none;
}
details.accordion > summary::-webkit-details-marker {
  display: none;
}
details.accordion > summary::marker {
  content: "";
}

details.accordion {
  /* No marker variant */
}
details.accordion > summary::after {
  content: "";
  flex: 0 0 auto;
  min-width: var(--accordion-marker-size);
  width: 1.5rem;
  height: var(--accordion-marker-size);
  background-color: currentcolor;
  -webkit-mask-image: var(--accordion-marker-icon);
          mask-image: var(--accordion-marker-icon);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  transform-origin: center;
  cursor: pointer;
}
details.accordion.has-marker-plus {
  --accordion-marker-icon: var(--accordion-marker-plus);
}
details.accordion.has-marker-plus-minus {
  --accordion-marker-icon: var(--accordion-marker-plus);
}
details.accordion.has-marker-plus-minus[open] {
  --accordion-marker-icon: var(--accordion-marker-minus);
}
details.accordion[open]:not(.has-marker-plus, .has-marker-plus-minus) > summary::after {
  transform: rotate(180deg);
}
details.accordion.has-marker-plus[open] > summary::after {
  transform: rotate(225deg);
}
details.accordion.has-marker-none > summary::after {
  display: none;
}
details.accordion.has-marker-left > summary::after {
  order: -1;
}
details.accordion.has-marker-left > summary:not(.button) {
  justify-content: flex-start;
}

details.accordion > p,
details.accordion > .has-space {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/**
 * Animation: smooth open/close
 * --------------------------------
 * - Uses ::details-content when supported (modern browsers)
 * - Falls back to animating element siblings after summary
 */
:root {
  interpolate-size: allow-keywords;
}

@media (prefers-reduced-motion: no-preference) {
  details.accordion > summary::after {
    transition: transform 300ms ease;
  }
  @supports selector(::details-content) {
    details::details-content {
      overflow: hidden;
      height: 0;
      /* Enable transitioning of `content-visibility` */
      transition: height 0.3s, content-visibility 0.3s;
      transition-behavior: allow-discrete;
    }
    details[open]::details-content {
      height: auto;
    }
  }
}
/*
 * Visual variant: place summary at the bottom.
 * Uses :has() to reserve space so the summary is visible even when closed.
 */
details.accordion:has(> summary.button.at-end) {
  padding-bottom: 3rem;
}

details.accordion:has(> summary.button.is-small.at-end) {
  padding-bottom: 2rem;
}

details.accordion > summary.button.at-end {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

/* Keep content from being covered by the bottom-positioned summary */
details.accordion:has(> summary.button.at-end) > summary.button.at-end ~ * {
  padding-bottom: 3rem;
}

details.accordion:has(> summary.button.is-small.at-end) > summary.button.is-small.at-end ~ * {
  padding-bottom: 2rem;
}

/* Optional: show different summary text based on open/closed (CSS-only)
 * Markup:
 *   <span class="accordion-label" aria-hidden="true">
 *     <span class="is-closed">…</span>
 *     <span class="is-open">…</span>
 *   </span>
 */
details.accordion > summary .accordion-label > .is-open,
details.accordion > summary > .is-open {
  display: none;
}

details.accordion[open] > summary .accordion-label > .is-closed,
details.accordion[open] > summary > .is-closed {
  display: none;
}

details.accordion[open] > summary .accordion-label > .is-open,
details.accordion[open] > summary > .is-open {
  display: inline;
}
/*# sourceMappingURL=core.css.map */