@use "../../wc";
@use "../../form-control";

:host {
  display: block;
  line-height: var(--zn-line-height-dense);
  max-width: var(--zn-container-lg);
}

.form-control {
  position: relative;
  border: none;
  padding: 0;
  margin: 0;
}

.form-control__label {
  padding: 0;
}

.form-control--has-label .form-control__label {
  font-weight: var(--zn-font-weight-bold);
  font-size: var(--zn-font-size-large);
}

.form-control__container {
  --zn-col-basis: 200px;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.form-control-input {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--zn-spacing-medium) var(--zn-spacing-small);

  @include wc.media-query(md) {
    grid-template-columns: repeat(6, 1fr);
  }
}

.form-control-input > ::slotted(*) {
  grid-column: span 6 / span 6;
}

.form-control-input > ::slotted([span="1"]) {
  @include wc.media-query(md) {
    grid-column: span 1 / span 1;
  }
}

.form-control-input > ::slotted([span="2"]) {
  @include wc.media-query(md) {
    grid-column: span 2 / span 2;
  }
}

.form-control-input > ::slotted([span="3"]) {
  @include wc.media-query(md) {
    grid-column: span 3 / span 3;
  }
}

.form-control-input > ::slotted([span="4"]) {
  @include wc.media-query(md) {
    grid-column: span 4 / span 4;
  }
}

.form-control-input > ::slotted([span="5"]) {
  @include wc.media-query(md) {
    grid-column: span 5 / span 5;
  }
}
