/* =========================
   Verification card
   Figma: Characteristics Container.
   Status verification panel with badge, checklist, nested info box, CTA, timestamp.
========================= */

@use "sass:color";
@use "../kit-deps" as *;

.verification-card {
  display: flex;
  flex-direction: column;
  gap: $space-5;
  width: 100%;
  max-width: 420px;
  padding: $space-6;
  border: $border-width-base $border-style-base $neutral-200;
  border-radius: $radius-xl;
  background-color: $neutral-0;
  color: $neutral-900;

  &--verified {
    background-color: $mint-50;
    border-color: rgba($mint-500, 0.35);

    .verification-card__title {
      color: $mint-900;
    }
  }

  &--warning {
    background-color: $warning-bg;
    border-color: rgba($warning-text, 0.25);

    .verification-card__title {
      color: $warning-text;
    }
  }

  &--danger {
    background-color: rgba($danger-bg, 0.7);
    border-color: rgba($danger-text, 0.25);

    .verification-card__title {
      color: $danger-text;
    }
  }

  &__header {
    display: flex;
    flex-direction: column;
    gap: $space-3;
  }

  &__title {
    margin: 0;
    font-size: $font-size-xl;
    font-weight: $font-weight-bold;
    line-height: $line-height-tight;
    color: inherit;
  }

  &__status {
    display: inline-flex;
    align-items: center;
    gap: $space-2;
    width: fit-content;
    padding: $space-1 $space-3;
    border: $border-width-base $border-style-base $neutral-200;
    border-radius: $radius-full;
    background-color: $neutral-0;
    color: $success-text;
    font-size: $font-size-sm;
    font-weight: $font-weight-semibold;

    .verification-card--warning & {
      color: $warning-text;
      border-color: rgba($warning-text, 0.2);
    }

    .verification-card--danger & {
      color: $danger-text;
      border-color: rgba($danger-text, 0.2);
    }
  }

  &__list {
    display: flex;
    flex-direction: column;
    gap: $space-3;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  &__item {
    display: flex;
    align-items: flex-start;
    gap: $space-3;
    font-size: $font-size-md;
    line-height: $line-height-normal;
    color: $neutral-800;

    .vmk-icon,
    .ph {
      width: 20px;
      height: 20px;
      flex-shrink: 0;
      margin-top: 2px;
      color: $success-text;
    }

    .verification-card--warning & {
      .vmk-icon,
      .ph {
        color: $warning-text;
      }
    }

    .verification-card--danger & {
      color: $neutral-700;

      .vmk-icon,
      .ph {
        color: $danger-text;
      }
    }
  }

  &__body {
    display: flex;
    flex-direction: column;
    gap: $space-4;
    font-size: $font-size-md;
    line-height: $line-height-normal;
    color: $neutral-700;
  }

  &__cta {
    display: flex;
    justify-content: center;
    padding: $space-2 0;
  }

  &__notice {
    display: flex;
    flex-direction: column;
    gap: $space-3;
    padding: $space-5;
    border: $border-width-base $border-style-base $neutral-200;
    border-radius: $radius-lg;
    background-color: $neutral-0;
    color: $neutral-900;

    .verification-card--warning &,
    .verification-card--danger & {
      background-color: rgba($neutral-0, 0.85);
    }
  }

  &__notice-title {
    margin: 0;
    font-size: $font-size-md;
    font-weight: $font-weight-bold;
    line-height: $line-height-tight;
  }

  &__notice-text {
    margin: 0;
    color: $neutral-700;
    font-size: $font-size-md;
    line-height: $line-height-normal;
  }

  &__notice-action {
    display: inline-flex;
    align-items: center;
    gap: $space-2;
    align-self: flex-end;
    margin-top: $space-2;
    padding: $space-2 $space-4;
    border-radius: $radius-full;
    background-color: $neutral-0;
    border: $border-width-base $border-style-base $neutral-200;
    color: $color-secondary;
    font-size: $font-size-md;
    font-weight: $font-weight-semibold;
    text-decoration: none;
    cursor: pointer;
    transition:
      background-color $motion-base $motion-ease,
      border-color $motion-base $motion-ease;

    &:hover {
      background-color: $neutral-50;
      border-color: $neutral-300;
    }
  }

  &__footer {
    display: flex;
    justify-content: flex-end;
    color: $neutral-500;
    font-size: $font-size-sm;
    line-height: $line-height-tight;
  }
}
