@use 'sass:map';
@use 'palette' as palette;
@use 'typography' as typography;

@forward 'vuetify/settings' with (
  // global
  $body-font-family: typography.$font-family,
  $border-radius-root: 8px,
  $heading-font-family: typography.$font-family,
  $typography: (
    'd1': map.get(typography.$display, 'd1'),
    'd2': map.get(typography.$display, 'd2'),
    'd3': map.get(typography.$display, 'd3'),
    'd4': map.get(typography.$display, 'd4'),
    'h1': map.get(typography.$heading, 'h1'),
    'h2': map.get(typography.$heading, 'h2'),
    'h3': map.get(typography.$heading, 'h3'),
    'h4': map.get(typography.$heading, 'h4'),
    'h5': map.get(typography.$heading, 'h5'),
    'h6': map.get(typography.$heading, 'h6'),
    'lead-regular': map.get(typography.$lead, 'regular'),
    'lead-semibold': map.get(typography.$lead, 'semibold'),
    'base-regular': map.get(typography.$base, 'regular'),
    'base-medium': map.get(typography.$base, 'medium'),
    'base-semibold': map.get(typography.$base, 'semibold'),
    'sm-regular': map.get(typography.$sm, 'regular'),
    'sm-medium': map.get(typography.$sm, 'medium'),
    'sm-semibold': map.get(typography.$sm, 'semibold'),
    'xs-regular': map.get(typography.$xs, 'regular'),
    'xs-medium': map.get(typography.$xs, 'medium'),
    'xs-semibold': map.get(typography.$xs, 'semibold'),
    'button': map.get(typography.$sm, 'semibold')
  ),

  // v-btn
  $button-height: 40px,

  // v-card
  $card-title-font-size: map.get(typography.$heading, 'h3', 'size'),
  $card-title-font-weight: map.get(typography.$heading, 'h3', 'weight'),
  $card-title-letter-spacing: map.get(
      typography.$heading,
      'h3',
      'letter-spacing'
    ),
  $card-title-line-height: map.get(typography.$heading, 'h3', 'line-height'),
  // v-divider
  $divider-border-color: map.get(palette.$shark, 200),
  $divider-opacity: 1,

  // v-list-item-title
  $list-item-title-font-size: map.get(typography.$sm, 'semibold', 'size'),
  $list-item-title-font-weight: map.get(typography.$sm, 'semibold', 'weight'),
  $list-item-title-letter-spacing: map.get(
      typography.$sm,
      'semibold',
      'letter-spacing'
    ),
  // v-list-item-subtitle
  $list-item-subtitle-font-size: map.get(typography.$xs, 'regular', 'size'),
  $list-item-subtitle-font-weight: map.get(typography.$xs, 'regular', 'weight'),
  $list-item-subtitle-letter-spacing: map.get(
      typography.$xs,
      'regular',
      'letter-spacing'
    ),
  $list-item-subtitle-opacity: 1,

  // v-snackbar
  $snackbar-background: #ffffffe5,
  $snackbar-border-radius: 12px,

  // v-tab
  $tab-slider-size: 0
);
