@use "../abstracts/functions" as fun;
@use "../abstracts/mixins" as mix;
@use "../abstracts/placeholders";
.main {
  display: flex;
  flex-flow: column nowrap;
  height: calc(100% - #{fun.get-var(toolbar-height)});
  @include mix.media("screen") {
    @include mix.dimensions("lg") {
      display: grid;
      grid-template-columns: 5fr 2fr;
    }
    @include mix.dimensions("xl") {
      grid-template-columns: 4fr 1fr;
    }
  }
}
// NoScript extension seems to replace noscript tag with a span.
.main > span,
.instructions,
noscript {
  background: fun.get-var(color-bg);
  padding: fun.get-var(spacing-md);
  text-align: center;
  @include mix.media("screen") {
    @include mix.dimensions("lg") {
      grid-column: 1 / -1;
    }
  }
}
.instructions {
  align-items: center;
  display: flex;
  justify-content: center;
}
.legal-notice {
  height: 100%;
  overflow-y: auto;
  padding: clamp(#{fun.get-var(spacing-md)}, 3vw, #{fun.get-var(spacing-lg)});
  scrollbar-color: fun.get-var(color-primary-light-opacity)
    fun.get-var(color-bg-tertiary);
  width: 100%;
  @include mix.media("screen") {
    @include mix.dimensions("lg") {
      grid-column: 1 / -1;
    }
  }
}
.project-preview {
  background: fun.get-var(color-bg);
  flex: 0 1 100%;
  min-height: 0;
  width: 100%;
  @include mix.media("screen") {
    @include mix.dimensions("lg") {
      height: 100%;
    }
  }
  iframe {
    border: 0;
    height: 100%;
    width: 100%;
  }
}
.project-details {
  background: fun.get-var(color-bg-secondary);
  box-shadow: 0 -1px 2px 0 fun.get-var(color-shadow);
  flex: 1 0 100%;
  overflow-y: auto;
  padding: fun.get-var(spacing-md);
  scrollbar-color: fun.get-var(color-primary-light-opacity)
    fun.get-var(color-bg-tertiary);
  @include mix.media("screen") {
    @include mix.dimensions("lg") {
      font-size: fun.get-var(font-size-md);
    }
  }
  &__description {
    margin-bottom: fun.get-var(spacing-md);
    white-space: pre-wrap;
  }
  .list {
    &--tech {
      padding-left: fun.get-var(spacing-sm);
    }
    &--repos {
      @extend %flex-list;
      gap: fun.get-var(spacing-xs);
    }
    &__link {
      background-repeat: no-repeat;
      background-size: contain;
      box-shadow: 0 0 0 0 fun.get-var(color-shadow);
      display: block;
      height: fun.convert-px(50);
      transition: transform 0.3s ease-in-out 0s,
        box-shadow 0.15s ease-in-out 0.15s;
      width: fun.convert-px(50);
      &--github {
        background: url(#{fun.encode-svg('')});
      }
      &--gitlab {
        background: url(#{fun.encode-svg('')});
      }
      &:hover,
      &:focus {
        box-shadow: fun.convert-px(-1) fun.convert-px(1) fun.convert-px(4)
          fun.convert-px(2) fun.get-var(color-shadow-light);
        transform: scale(1.15);
      }
      &:active {
        opacity: 1;
      }
    }
  }
}