#booking-button-widget {
  display: flex;
  gap: 30px;

  @media (max-width: 768px) {
    flex-direction: column;
  }

  .widget-settings,
  .widget-preview {
    flex: 1;
    flex-basis: 50%;
  }

  .widget-preview {
    background: linear-gradient(
      180deg,
      #e6f3ff 0%,
      rgba(230, 243, 255, 0) 100%
    );
    border-radius: 12px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 45px;
  }

  .preview-header {
    text-align: center;
  }

  .preview-header h4 {
    margin: 0;
    color: #000;
    font-size: 1.15rem;
  }

  .widget-settings {
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  }

  .form-nav {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 15px;
    gap: 15px;
    list-style: none;
    counter-reset: wpp;
    border-bottom: solid 1px #f1f1f1;
  }

  .form-nav li {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3px;
  }

  .form-nav li::before {
    background: #ffd700;
    border-radius: 100%;
    counter-increment: wpp;
    content: counter(wpp);
    line-height: 1;
    width: 1.2rem;
    height: 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #333;
    font-size: 0.7em;
  }

  .form-nav li.active ~ li {
    opacity: 0.7;
    pointer-events: none;
  }

  .form-panels {
    padding: 30px 15px;
  }

  .form-panel:not(.active) {
    display: none;
  }

  .panel-nav {
    display: flex;
    justify-content: space-between;
  }

  .panel-nav [data-next],
  .panel-nav [data-copy-code] {
    margin-left: auto;
    background: #ffd700;
    border-radius: 8px;
    color: #333;
    border-color: #ffd700;
  }

  .panel-nav [data-prev] {
    background: #f5f5f5;
    color: #333;
    border-radius: 8px;
    border: unset;
  }

  .panel-nav [data-next]:hover,
  .panel-nav [data-copy-code]:hover {
    background: #f1cf18;
  }

  .panel-nav [data-prev]:hover {
    background: #bebebe;
  }

  .radio-container {
    display: flex;
    gap: 10px;
  }

  .radio-container input {
    display: none;
  }

  .radio-container label {
    flex: 1;
    text-align: center;
    padding: 7px 10px;
    border: solid 1px #e0e0e0;
    border-radius: 8px;
    cursor: pointer;
  }

  .radio-container input:checked + label {
    background: #f3fafe;
    border-color: #0ea5e9;
  }

  .colors-container {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
  }

  .colors-container .input-container {
    display: flex;
    align-items: center;
    gap: 5px;
    flex: 1;
    justify-content: flex-start;
    flex-basis: 45%;
    flex-grow: 1;
  }

  .colors-container .input-container label {
    margin: 0;
  }

  .colors-container .input-container input {
    padding: 0;
    line-height: 1;
    background: transparent !important;
    border-radius: 100%;
    border: unset !important;
    display: block;
    width: 2rem;
    height: 2rem;
    overflow: hidden;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  .colors-container .input-container input::-webkit-color-swatch {
    border: none;
    border-radius: 100%;
    padding: 0;
  }
  .colors-container .input-container input::-webkit-color-swatch-wrapper {
    border: none;
    border-radius: 100%;
    padding: 0;
  }

  .avatar-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
  }

  .avatar-container img {
    width: 3em;
    height: 3em;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 100%;
  }

  .avatar-container input {
    display: none;
  }

  .avatar-container label {
    margin: 0 !important;
    background: #f5f5f5;
    line-height: 1;
    padding: 8px 10px;
    border-radius: 8px;
    cursor: pointer;
  }

  .avatar-container label:hover {
    background: #dddddd;
  }

  code {
    background: #f5f5f5;
    border-radius: 8px;
    padding: 10px;
    margin-bottom: 30px;
    width: 100%;
    max-width: 100%;
    overflow: auto;
    display: block;
    word-break: break-all;
    max-height: 150px;
  }

  .preview-content {
    width: 100%;
  }

  #preview-area > div {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 15px;
  }

  #preview-area #fhub-booking-chat,
  #preview-area #fhub-booking-floating-button {
    position: relative !important;
    left: unset !important;
    right: unset !important;
    bottom: unset !important;
    margin: auto !important;
    transform: unset !important;
  }
}
