.hi-ticket-widget-container {
  background-color: var(--widget-background-color, var(--tk-color-white));
  color: var(--widget-primary-text-color);
  padding: var(--widget-padding, var(--tk-spacing-md));

  &.full-height {
    height: 100vh;
  }

  a, button {
    color: var(--widget-primary-text-color, var(--tk-primary));
  }

  .hi-ticket-rows {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 20px;

    .hi-ticket-row {
      display: flex;
      flex-flow: column;
      border: 3px solid var(--widget-primary-color, var(--tk-secondary));
      padding: 10px 20px 20px;
      border-radius: 5px;

      .hi-ticket-description-row {
        font-size: .9em;
      }

      .hi-title-row {
        display: flex;
        justify-content: center;
        align-items: center;

        .hi-ticket-title {
          flex: 1;
          font-weight: bold;

          h3 {
            margin: 10px 0;
          }
        }

        .hi-ticket-availability {
          text-align: right;
          color: var(--widget-primary-text-color);
        }
      }

      .hi-price-tiers-rows {
        .ticketPrice {

          .hi-price-tier-amount {
            span:first-child {
              display: block;
              color: #909090;
              font-size: .85em;
            }
          }
        }
      }

      .hi-ticket-quantity-error {
        color: var(--widget-primary-color, var(--tk-primary));
        background-color: var(--widget-background-color, var(--tk-color-white));
        border: 2px solid var(--widget-primary-color, var(--tk-primary));
        padding: 10px 20px;
        margin: 10px 0;
        border-radius: 5px;
      }

      .hi-price-tier-row {
        margin-bottom: 10px;

        .hi-price-tier {
          .hi-price-tier-label {
            font-weight: bold;
          }

          .hi-price-tier-price {
            .hi-price-tier-price-amount {
              display: flex;
              gap: 5px;

              svg {
                margin-top: 3px;
              }
            }

            .hi-donation-input-wrapper {
              .hi-donation-input {
                color: var(--widget-primary-text-color, var(--tk-primary));
                background-color: var(--widget-background-color, var(--tk-color-white));
                border: 2px solid var(--widget-primary-color, var(--tk-primary));
              }
            }
          }
        }

        .hi-ticket-quantity-selector {
          .button-input {
            input {
              color: var(--widget-primary-text-color, var(--tk-primary));
            }

            button {
              &:disabled {
                border: none;
                opacity: .5;
              }

              background-color: var(--widget-secondary-color, var(--tk-primary));
              color: var(--widget-secondary-text-color, var(--tk-color-white));
            }
          }

          .select-input {
            input {
              background-color: var(--widget-background-color, var(--tk-color-white));
              border: 2px solid var(--widget-primary-color, var(--tk-primary));
              color: var(--widget-primary-text-color, var(--tk-primary));
            }

            svg {
              color: var(--widget-primary-text-color, var(--tk-primary));
            }
          }
        }
      }
    }
  }

  .hi-promo-code-row {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    margin-top: 20px;

    .hi-promo-code-input {
      flex: 1;
      margin-right: 20px;
      background: var(--widget-background-color, var(--tk-color-white));
      border: 2px solid var(--widget-primary-color, var(--tk-primary));
      color: var(--widget-primary-text-color, var(--tk-primary));
    }

    .hi-apply-promo-code-button {
      width: 200px;
      background-color: var(--widget-secondary-color, var(--tk-primary));
      color: var(--widget-secondary-text-color, var(--tk-color-white));
      border: none;
    }

    .hi-promo-code-applied {
      display: flex;
      align-items: center;
    }

    .hi-promo-code-applied-remove-icon-button {
      margin-left: 10px;
    }
  }

  .hi-footer-row {
    display: flex;
    margin-top: 20px;
    flex-direction: column;

    .hi-ticket-page-message {
      margin-bottom: 20px;
      padding: 10px 20px;
      border-radius: 5px;
      background-color: var(--widget-secondary-color, var(--tk-secondary));
    }

    .hi-continue-button {
      background-color: var(--widget-secondary-color, var(--tk-primary));
      color: var(--widget-secondary-text-color, var(--tk-color-white));
    }
  }
}

