.as-panel-product {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.65rem;
  background: var(--bs-secondary-bg, #f6f6f6);
  border-radius: var(--bs-border-radius-lg);
}
.as-panel-product__thumb {
  width: 3rem;
  height: 3rem;
  padding: 0.25rem;
  border-radius: var(--bs-border-radius-sm);
  -o-object-fit: contain;
  object-fit: contain;
  background: #fff;
  flex-shrink: 0;
}
.as-panel-product__thumb--empty {
  display: block;
  background: color-mix(in srgb, var(--bs-primary, #00725f) 8%, #fff);
}
.as-panel-product__copy {
  min-width: 0;
  flex: 1 1 auto;
}
.as-panel-product__title {
  margin-bottom: 0;
  font-weight: 600;
}
a.as-panel-product__title {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none;
}
a.as-panel-product__title:hover,
a.as-panel-product__title:focus-visible {
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
.as-product-quote-offcanvas {
  --bs-offcanvas-width:min(100vw, 28rem);
  --bs-offcanvas-bg:#fff;
}
.as-product-quote-offcanvas .offcanvas-header {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.as-product-quote-offcanvas__body .webform-element-markup,
.as-product-quote-offcanvas__body .form-item-intro,
.as-product-quote-offcanvas__body [data-drupal-selector=edit-intro],
.as-product-quote-offcanvas__body .as-product-quote-intro {
  margin-bottom: 1.25rem;
}
.as-product-quote-offcanvas__body .as-product-quote-intro {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.as-product-quote-offcanvas__body .as-product-quote-intro__text {
  margin: 0;
  color: var(--bs-secondary-color, #6c757d);
}
.as-product-quote-offcanvas__body .as-product-quote-form__fields > .form-item {
  margin-bottom: 0;
}
.as-product-quote-offcanvas__body .float-field__control,
.as-product-quote-offcanvas__body .form-control {
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
}
.as-product-quote-offcanvas__body .as-product-quote-form__message textarea,
.as-product-quote-offcanvas__body textarea[name=message] {
  min-height: 10rem;
}
.as-product-quote-offcanvas__body .webform-submission-form .form-actions {
  margin-top: 0.25rem;
}
.as-product-quote-offcanvas__body .webform-submission-form .form-actions .button,
.as-product-quote-offcanvas__body .webform-submission-form .form-actions .form-submit,
.as-product-quote-offcanvas__body .webform-submission-form .form-actions .btn-commerce {
  width: 100%;
}
.as-product-quote-offcanvas__body .webform-confirmation,
.as-product-quote-offcanvas__body .as-product-quote-done {
  padding: 0.5rem 0 0.25rem;
}
.as-product-quote-offcanvas__body .as-legal-acceptance,
.as-product-quote-offcanvas__body .form-item-privacy {
  margin-top: 0.25rem;
}
.as-product-quote-offcanvas__body .messages,
.as-product-quote-offcanvas__body [data-drupal-messages],
.as-product-quote-offcanvas__body .autosolar-messages,
.as-product-quote-offcanvas__body .alert-danger {
  display: none !important;
}
.as-product-quote-done {
  text-align: center;
}
.as-product-quote-done__icon {
  width: 3rem;
  height: 3rem;
  margin: 0 auto 1rem;
  border-radius: 50%;
  background: rgba(var(--bs-success-rgb, 25, 135, 84), 0.12);
  color: var(--bs-success, #198754);
  display: flex;
  align-items: center;
  justify-content: center;
}
.as-product-quote-done__status {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
  color: var(--bs-success, #198754);
}
.as-product-quote-done__status-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.as-product-quote-done__body {
  max-width: 22rem;
  margin-left: auto;
  margin-right: auto;
}
.as-product-quote-done__product {
  margin: 1rem auto 0;
  max-width: 22rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--bs-border-color, #dee2e6);
  border-radius: var(--bs-border-radius-lg);
  background: var(--bs-light, #f8f9fa);
  text-align: left;
}
.as-product-quote-panel__error,
.as-product-quote-panel__loading {
  margin: 0;
}
@media (min-width: 992px) {
  .as-product-quote-offcanvas {
    --bs-offcanvas-width:min(100vw, calc(28rem + 100px));
  }
}
