@use 'sass:map';
@use '../../styles/settings';
@use '../../styles/tools';

// VCard
$card-append-padding-inline-start: .5rem !default;
$card-background: rgb(var(--v-theme-surface)) !default;
$card-border-color: settings.$border-color-root !default;
$card-border-radius: settings.$border-radius-root !default;
$card-border-style: settings.$border-style-root !default;
$card-border-thin-width: thin !default;
$card-border-width: 0 !default;
$card-color: tools.theme-color('on-surface', var(--v-high-emphasis-opacity)) !default;
$card-disabled-opacity: 0.6 !default;
$card-elevation: 1 !default;
$card-loader-top: 0 !default;
$card-loader-bottom: auto !default;
$card-hover-elevation: 3 !default;
$card-img-flex: 1 1 auto !default;
$card-item-align-items: center !default;
$card-item-padding: .625rem 1rem !default;
$card-overflow-wrap: break-word !default;
$card-padding: 0 !default;
$card-plain-opacity: .62 !default;
$card-positions: absolute fixed !default;
$card-prepend-padding-inline-end: .5rem !default;
$card-transition-duration: 0.28s !default;
$card-transition-property: box-shadow, opacity, background, --v-elevation-overlay !default;
$card-transition-timing-function: settings.$standard-easing !default;

// VCardActions
$card-actions-flex: none !default;
$card-actions-min-height: 52px !default;
$card-actions-padding: .5rem !default;
$button-card-actions-margin: .5rem !default; // deprecated
$card-actions-gap: $button-card-actions-margin !default;

// VCardHeader
$card-header-flex: none !default;

// VCardTitle
$card-title-comfortable-line-height: 1.75rem !default;
$card-title-compact-line-height: 1.55rem !default;
$card-title-flex: none !default;
$card-title-font-size: tools.map-deep-get(settings.$typography, 'title-large', 'size') !default;
$card-title-font-weight: tools.map-deep-get(settings.$typography, 'title-large', 'weight') !default;
$card-title-header-padding: 0 !default;
$card-title-hyphens: auto !default;
$card-title-letter-spacing: tools.map-deep-get(settings.$typography, 'title-large', 'letter-spacing') !default;
$card-title-line-height: tools.map-deep-get(settings.$typography, 'title-large', 'line-height') !default;
$card-title-overflow-wrap: normal !default;
$card-title-overflow: hidden !default;
$card-title-padding: .5rem 1rem !default;
$card-title-text-overflow: ellipsis !default;
$card-title-text-transform: none !default;
$card-title-white-space: nowrap !default;
$card-title-word-break: normal !default;
$card-title-word-wrap: break-word !default;

// VCardSubtitle
$card-subtitle-color: tools.theme-color('on-surface', var(--v-medium-emphasis-opacity)) !default;
$card-subtitle-comfortable-line-height: 1.125rem !default;
$card-subtitle-compact-line-height: 1rem !default;
$card-subtitle-flex: none !default;
$card-subtitle-font-size: tools.map-deep-get(settings.$typography, 'body-medium', 'size') !default;
$card-subtitle-font-weight: tools.map-deep-get(settings.$typography, 'body-medium', 'weight') !default;
$card-subtitle-header-padding: 0 0 .25rem !default;
$card-subtitle-letter-spacing: tools.map-deep-get(settings.$typography, 'body-medium', 'letter-spacing') !default;
$card-subtitle-line-height: tools.map-deep-get(settings.$typography, 'body-medium', 'line-height') !default;
$card-subtitle-opacity: var(--v-card-subtitle-opacity, var(--v-medium-emphasis-opacity)) !default;
$card-subtitle-overflow: hidden !default;
$card-subtitle-padding: 0 1rem !default;
$card-subtitle-text-overflow: ellipsis !default;
$card-subtitle-text-transform: none !default;
$card-subtitle-white-space: nowrap !default;

// VCardText
$card-text-comfortable-line-height: 1.2rem !default;
$card-text-compact-line-height: 1.15rem !default;
$card-text-flex: 1 1 auto !default;
$card-text-font-size: tools.map-deep-get(settings.$typography, 'body-medium', 'size') !default;
$card-text-font-weight: tools.map-deep-get(settings.$typography, 'body-medium', 'weight') !default;
$card-text-opacity: var(--v-card-text-opacity, 1) !default;
$card-text-letter-spacing: tools.map-deep-get(settings.$typography, 'body-medium', 'letter-spacing') !default;
$card-text-line-height: tools.map-deep-get(settings.$typography, 'body-medium', 'line-height') !default;
$card-text-padding: 1rem !default;
$card-text-text-transform: none !default;

// Lists
$card-border: (
  $card-border-color,
  $card-border-style,
  $card-border-width,
  $card-border-thin-width
) !default;

$card-title-densities: () !default;
$card-title-densities: map.merge((
  null: $card-title-line-height,
  'comfortable': $card-title-comfortable-line-height,
  'compact': $card-title-compact-line-height
), $card-title-densities);

$card-subtitle-density-line-height: () !default;
$card-subtitle-density-line-height: map.merge((
  null: $card-subtitle-line-height,
  'comfortable': $card-subtitle-comfortable-line-height,
  'compact': $card-subtitle-compact-line-height
), $card-subtitle-density-line-height);

$card-text-density-line-height: () !default;
$card-text-density-line-height: map.merge((
  null: $card-text-line-height,
  'comfortable': $card-text-comfortable-line-height,
  'compact': $card-text-compact-line-height
), $card-text-density-line-height);

$card-variants: (
  $card-background,
  $card-color,
  $card-elevation,
  $card-plain-opacity,
  'v-card'
) !default;

// Deprecated
$card-avatar-align-self: flex-start !default;
$card-avatar-header-padding: 0 !default;
$card-avatar-padding: .5rem 1rem !default;
$card-title-padding-top: 1rem !default;
$card-text-padding-bottom: 1rem !default;
