    .vamoz_calendar_app {
      --vamoz-navy: #14265a;
      --vamoz-blue: #1267ff;
      --vamoz-border: #e1e7f0;
      --vamoz-green: #25c85a;
      --vamoz-green-soft: #dff8e4;
      --vamoz-orange: #f59e0b;
      --vamoz-orange-soft: #fff2d9;
      --vamoz-red: #f43f46;
      --vamoz-red-soft: #ffe1e4;
      max-width: 680px;
      font-family: Arial, sans-serif;
      color: #111827;
    }

    .vamoz_calendar_app *,
    .vamoz_calendar_app *::before,
    .vamoz_calendar_app *::after {
      box-sizing: border-box;
    }

    .vamoz_calendar_app [hidden] {
      display: none !important;
    }

    .vamoz_calendar_app .vamoz_card {
      width: 100%;
      background: #ffffff;
      border: 1px solid var(--vamoz-border);
      border-radius: 24px;
      padding: 28px;
      box-shadow: 0 16px 45px rgba(15, 23, 42, .08);
    }

    .vamoz_calendar_app h2 {
      margin: 0 0 22px;
      color: var(--vamoz-navy);
      font-size: clamp(34px, 6vw, 54px);
      line-height: 1.05;
      font-weight: 800;
      letter-spacing: -0.035em;
    }

    .vamoz_calendar_app .vamoz_step_calendar h2,
    .vamoz_calendar_app .vamoz_step_form h2 {
      margin-top: 22px;
      margin-bottom: 20px;
      font-size: clamp(28px, 4vw, 38px);
    }

    .vamoz_calendar_app p {
      margin: 0;
    }

    .vamoz_calendar_app button,
    .vamoz_calendar_app a {
      font-family: Arial, sans-serif;
      -webkit-tap-highlight-color: transparent;
    }

    .vamoz_calendar_app .vamoz_search_wrap {
      position: relative;
      z-index: 5;
    }

    .vamoz_calendar_app .vamoz_search_pill,
    .vamoz_calendar_app .vamoz_filter_bar {
      display: grid;
      align-items: center;
      gap: 0;
      background: #ffffff;
      border: 1.5px solid #cfd6df;
      border-radius: 999px;
      padding: 6px;
      box-shadow: 0 10px 26px rgba(15, 23, 42, .05);
    }

    .vamoz_calendar_app .vamoz_search_pill {
      grid-template-columns: 1fr 1px 1fr auto;
    }

    .vamoz_calendar_app .vamoz_filter_bar {
      grid-template-columns: 1fr 1px 1fr;
      max-width: 520px;
      margin: 0 auto;
    }

    .vamoz_calendar_app .vamoz_divider {
      width: 1px;
      height: 42px;
      background: #d7dce3;
    }

    .vamoz_calendar_app .vamoz_pill_segment,
    .vamoz_calendar_app .vamoz_filter_segment {
      all: unset;
      box-sizing: border-box;
      width: 100%;
      min-height: 58px;
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 7px 10px;
      padding: 8px 14px;
      border-radius: 999px;
      cursor: pointer;
      color: var(--vamoz-navy);
      text-align: left;
    }

    .vamoz_calendar_app .vamoz_pill_segment:hover,
    .vamoz_calendar_app .vamoz_filter_segment:hover {
      background: #f6f9fe;
    }

    .vamoz_calendar_app .vamoz_pill_segment span,
    .vamoz_calendar_app .vamoz_filter_segment span {
      grid-column: 1 / 3;
      color: var(--vamoz-navy);
      font-size: 13px;
      line-height: 1.15;
      font-weight: 800;
    }

    .vamoz_calendar_app .vamoz_pill_segment strong,
    .vamoz_calendar_app .vamoz_filter_segment strong {
      color: #111827;
      font-size: 17px;
      line-height: 1.15;
      font-weight: 400;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .vamoz_calendar_app .vamoz_chevron {
      width: 18px;
      height: 18px;
      display: inline-block;
      background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.5 7L9 11.5L13.5 7' stroke='%239aa1ad' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
    }

    .vamoz_calendar_app .vamoz_search_button {
      all: unset;
      box-sizing: border-box;
      min-width: 118px;
      height: 58px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 0 24px;
      border-radius: 999px;
      background: var(--vamoz-navy);
      color: #ffffff;
      font-size: 18px;
      line-height: 1;
      font-weight: 800;
      cursor: pointer;
      box-shadow: 0 8px 18px rgba(20, 38, 90, .18);
    }

    .vamoz_calendar_app .vamoz_search_icon {
      width: 22px;
      height: 22px;
      border: 3px solid #ffffff;
      border-radius: 50%;
      position: relative;
      display: inline-block;
      flex: 0 0 auto;
    }

    .vamoz_calendar_app .vamoz_search_icon::after {
      content: "";
      position: absolute;
      width: 10px;
      height: 3px;
      right: -7px;
      bottom: -4px;
      transform: rotate(45deg);
      border-radius: 4px;
      background: #ffffff;
    }

    .vamoz_calendar_app .vamoz_picker {
      position: absolute;
      top: calc(100% + 10px);
      z-index: 30;
      width: min(360px, 92vw);
      padding: 12px;
      border: 1px solid var(--vamoz-border);
      border-radius: 14px;
      background: #ffffff;
      box-shadow: 0 18px 40px rgba(15, 23, 42, .12);
    }

    .vamoz_calendar_app .vamoz_picker_type {
      left: 0;
    }

    .vamoz_calendar_app .vamoz_picker_people {
      left: 38%;
    }

    .vamoz_calendar_app .vamoz_filter_wrap .vamoz_picker_people {
      left: auto;
      right: 0;
    }

    .vamoz_calendar_app .vamoz_picker h3 {
      margin: 2px 4px 9px;
      color: var(--vamoz-navy);
      font-size: 15px;
      font-weight: 800;
    }

    .vamoz_calendar_app .vamoz_choice_grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 8px;
    }

    .vamoz_calendar_app .vamoz_choice_grid button {
      all: unset;
      box-sizing: border-box;
      min-height: 44px;
      display: grid;
      place-items: center;
      padding: 10px 12px;
      border: 1px solid var(--vamoz-border);
      border-radius: 12px;
      background: #f5f7fb;
      color: var(--vamoz-navy);
      font-size: 14px;
      font-weight: 800;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_choice_grid button.vamoz_active_choice {
      background: var(--vamoz-navy);
      color: #ffffff;
      border-color: var(--vamoz-navy);
    }

    .vamoz_calendar_app .vamoz_counter {
      max-width: 220px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding: 4px 0 2px;
    }

    .vamoz_calendar_app .vamoz_counter button {
      all: unset;
      box-sizing: border-box;
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: #f0f1f3;
      color: #111827;
      font-size: 26px;
      line-height: 1;
      font-weight: 300;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_counter button:hover {
      background: #e8ebef;
    }

    .vamoz_calendar_app .vamoz_counter span {
      min-width: 44px;
      color: #111827;
      text-align: center;
      font-size: 26px;
      line-height: 1;
      font-weight: 700;
    }

    .vamoz_calendar_app .vamoz_error {
      margin: 14px 0 0;
      color: #b91c1c;
      font-weight: 700;
    }

    .vamoz_calendar_app .vamoz_info_grid {
      display: grid;
      gap: 10px;
      margin-top: 22px;
    }

    .vamoz_calendar_app .vamoz_info_card {
      all: unset;
      box-sizing: border-box;
      width: 100%;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 13px;
      padding: 14px;
      border: 1px solid var(--vamoz-border);
      border-radius: 14px;
      background: #ffffff;
      box-shadow: 0 12px 28px rgba(15, 23, 42, .035);
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_info_card:hover {
      background: #f9fbff;
    }

    .vamoz_calendar_app .vamoz_info_card strong {
      display: block;
      margin: 0 0 5px;
      color: var(--vamoz-navy);
      font-size: 16px;
      line-height: 1.25;
      font-weight: 800;
    }

    .vamoz_calendar_app .vamoz_info_card em {
      display: block;
      margin: 0;
      color: #24315c;
      font-size: 14px;
      line-height: 1.45;
      font-style: normal;
    }

    .vamoz_calendar_app .vamoz_info_card small {
      display: inline-block;
      margin-top: 10px;
      color: var(--vamoz-blue);
      font-size: 15px;
      font-weight: 800;
    }

    .vamoz_calendar_app .vamoz_info_card b {
      color: var(--vamoz-blue);
      font-size: 28px;
      line-height: 1;
      font-weight: 400;
    }

    .vamoz_calendar_app .vamoz_line_icon {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      border-radius: 10px;
      background: #edf4ff;
      position: relative;
    }

    .vamoz_calendar_app .vamoz_line_icon::before {
      content: "";
      width: 23px;
      height: 23px;
      display: block;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
    }

    .vamoz_calendar_app .vamoz_icon_people::before {
      background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='10' r='4' stroke='%231267ff' stroke-width='2'/%3E%3Cpath d='M4 22c.8-4 3.4-6 7-6s6.2 2 7 6' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='19' cy='12' r='3' stroke='%231267ff' stroke-width='2' opacity='.75'/%3E%3Cpath d='M17.5 17c2.6.3 4.4 2 5 5' stroke='%231267ff' stroke-width='2' stroke-linecap='round' opacity='.75'/%3E%3C/svg%3E");
    }

    .vamoz_calendar_app .vamoz_icon_group::before {
      background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='9' cy='10' r='3.5' stroke='%231267ff' stroke-width='2'/%3E%3Ccircle cx='19' cy='10' r='3.5' stroke='%231267ff' stroke-width='2'/%3E%3Cpath d='M3.5 22c.7-3.8 2.8-5.8 5.5-5.8S13.8 18.2 14.5 22' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M13.5 22c.7-3.8 2.8-5.8 5.5-5.8s4.8 2 5.5 5.8' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    }

    .vamoz_calendar_app .vamoz_icon_business::before {
      background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 9V7.8C10 6.8 10.8 6 11.8 6H16.2C17.2 6 18 6.8 18 7.8V9' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3Crect x='5' y='9' width='18' height='13' rx='2.5' stroke='%231267ff' stroke-width='2'/%3E%3Cpath d='M5 14H23' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M12 14.5H16' stroke='%231267ff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    }

    .vamoz_calendar_app .vamoz_icon_clock::before {
      background-image: url("data:image/svg+xml,%3Csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='14' cy='14' r='10' stroke='%231267ff' stroke-width='2'/%3E%3Cpath d='M14 8v7l5 3' stroke='%231267ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    }

    .vamoz_calendar_app .vamoz_calendar_header {
      display: grid;
      grid-template-columns: 44px 1fr 44px;
      align-items: center;
      margin-bottom: 20px;
    }

    .vamoz_calendar_app .vamoz_calendar_header button {
      all: unset;
      box-sizing: border-box;
      width: 44px;
      height: 44px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      color: #111827;
      font-size: 46px;
      line-height: 1;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_calendar_header button:hover {
      background: #f1f5f9;
    }

    .vamoz_calendar_app .vamoz_calendar_header h3 {
      margin: 0;
      color: #111827;
      font-size: 24px;
      font-weight: 500;
      text-align: center;
      text-transform: capitalize;
    }

    .vamoz_calendar_app .vamoz_weekdays,
    .vamoz_calendar_app .vamoz_calendar_grid {
      display: grid;
      grid-template-columns: repeat(7, minmax(0, 1fr));
      text-align: center;
    }

    .vamoz_calendar_app .vamoz_weekdays {
      gap: 10px;
      margin-bottom: 12px;
    }

    .vamoz_calendar_app .vamoz_calendar_grid {
      gap: 8px 6px;
    }

    .vamoz_calendar_app .vamoz_weekdays span {
      color: #111827;
      font-size: 16px;
      font-weight: 800;
    }

    .vamoz_calendar_app .vamoz_day {
      all: unset;
      box-sizing: border-box;
      width: 40px;
      height: 40px;
      min-width: 40px;
      min-height: 40px;
      display: grid;
      place-items: center;
      justify-self: center;
      border-radius: 50%;
      background: transparent;
      color: #111827;
      font-family: Arial, sans-serif;
      font-size: 16px;
      font-weight: 800;
      line-height: 1;
      text-align: center;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_day:hover {
      background: #f1f5f9;
    }

    .vamoz_calendar_app .vamoz_day_available,
    .vamoz_calendar_app .vamoz_group_day {
      background: var(--vamoz-green-soft);
    }

    .vamoz_calendar_app .vamoz_day_limited {
      background: var(--vamoz-orange-soft);
    }

    .vamoz_calendar_app .vamoz_day_sold {
      background: var(--vamoz-red-soft);
    }

    .vamoz_calendar_app .vamoz_selected,
    .vamoz_calendar_app .vamoz_selected:hover {
      background: var(--vamoz-navy);
      color: #ffffff;
    }

    .vamoz_calendar_app .vamoz_empty,
    .vamoz_calendar_app .vamoz_disabled_day,
    .vamoz_calendar_app .vamoz_past {
      background: transparent;
      color: #b9bdc7;
      cursor: default;
      pointer-events: none;
    }

    .vamoz_calendar_app .vamoz_legend {
      display: flex;
      justify-content: center;
      gap: 16px;
      flex-wrap: wrap;
      margin-top: 12px;
      color: #111827;
      font-size: 13px;
    }

    .vamoz_calendar_app .vamoz_legend div {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .vamoz_calendar_app .vamoz_dot {
      width: 12px;
      height: 12px;
      display: inline-block;
      border-radius: 50%;
    }

    .vamoz_calendar_app .vamoz_dot_available {
      background: var(--vamoz-green);
    }

    .vamoz_calendar_app .vamoz_dot_limited {
      background: var(--vamoz-orange);
    }

    .vamoz_calendar_app .vamoz_dot_sold {
      background: var(--vamoz-red);
    }

    .vamoz_calendar_app .vamoz_step2_info {
      margin-top: 16px;
    }

    .vamoz_calendar_app .vamoz_future_box {
      background: #f4f9ff;
      border-color: #cfe0ff;
      cursor: default;
    }

    .vamoz_calendar_app .vamoz_future_box button {
      all: unset;
      box-sizing: border-box;
      padding: 12px 18px;
      border: 1px solid #c4d8ff;
      border-radius: 10px;
      background: #ffffff;
      color: var(--vamoz-navy);
      font-size: 14px;
      font-weight: 800;
      cursor: pointer;
      text-align: center;
    }

    .vamoz_calendar_app .vamoz_action_box {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 12px;
      margin-top: 12px;
      padding: 10px;
      border: 1px solid var(--vamoz-border);
      border-radius: 10px;
      background: #ffffff;
    }

    .vamoz_calendar_app .vamoz_action_box p {
      color: #7b8190;
      font-size: 14px;
    }

    .vamoz_calendar_app .vamoz_action_button {
      display: block;
      min-width: 160px;
      padding: 11px 14px;
      border-radius: 10px;
      background: var(--vamoz-navy);
      color: #ffffff;
      text-align: center;
      font-size: 14px;
      font-weight: 800;
      text-decoration: none;
    }

    .vamoz_calendar_app .vamoz_action_button.vamoz_disabled {
      background: #d1d5db;
      pointer-events: none;
    }

    .vamoz_calendar_app .vamoz_back_button {
      all: unset;
      box-sizing: border-box;
      display: inline-flex;
      align-items: center;
      margin: 0 0 22px;
      padding: 9px 12px;
      border-radius: 10px;
      background: #f4f7fb;
      color: var(--vamoz-navy);
      font-size: 14px;
      font-weight: 800;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_form_intro {
      margin: -8px 0 18px;
      color: #24315c;
      font-size: 15px;
      line-height: 1.55;
    }

    .vamoz_calendar_app .vamoz_request_form {
      display: grid;
      gap: 12px;
    }

    .vamoz_calendar_app .vamoz_request_form label {
      display: grid;
      gap: 6px;
      color: #374151;
      font-size: 14px;
      font-weight: 700;
    }

    .vamoz_calendar_app .vamoz_request_form input,
    .vamoz_calendar_app .vamoz_request_form textarea {
      width: 100%;
      padding: 12px;
      border: 1px solid #d1d5db;
      border-radius: 12px;
      font: inherit;
    }

    .vamoz_calendar_app .vamoz_request_form button {
      all: unset;
      box-sizing: border-box;
      width: 100%;
      padding: 14px;
      border-radius: 14px;
      background: var(--vamoz-navy);
      color: #ffffff;
      font-size: 15px;
      font-weight: 800;
      text-align: center;
      cursor: pointer;
    }

    .vamoz_calendar_app .vamoz_form_message {
      margin: 4px 0 0;
      color: #047857;
      font-size: 14px;
    }

    @media (max-width: 640px) {
      .vamoz_calendar_app .vamoz_card {
        padding: 18px;
        border-radius: 18px;
      }

      .vamoz_calendar_app h2 {
        font-size: 34px;
      }

      .vamoz_calendar_app .vamoz_search_pill,
      .vamoz_calendar_app .vamoz_filter_bar {
        grid-template-columns: 1fr 1px 1fr;
        border-radius: 20px;
        padding: 6px;
      }

      .vamoz_calendar_app .vamoz_search_button {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
        height: 50px;
        margin-top: 6px;
      }

      .vamoz_calendar_app .vamoz_divider {
        height: 38px;
      }

      .vamoz_calendar_app .vamoz_pill_segment,
      .vamoz_calendar_app .vamoz_filter_segment {
        min-height: 52px;
        padding: 7px 9px;
      }

      .vamoz_calendar_app .vamoz_pill_segment span,
      .vamoz_calendar_app .vamoz_filter_segment span {
        font-size: 12px;
      }

      .vamoz_calendar_app .vamoz_pill_segment strong,
      .vamoz_calendar_app .vamoz_filter_segment strong {
        font-size: 14px;
      }

      .vamoz_calendar_app .vamoz_picker {
        left: 0 !important;
        right: 0 !important;
        width: 100%;
      }

      .vamoz_calendar_app .vamoz_info_card,
      .vamoz_calendar_app .vamoz_future_box {
        grid-template-columns: auto 1fr;
      }

      .vamoz_calendar_app .vamoz_info_card b {
        display: none;
      }

      .vamoz_calendar_app .vamoz_future_box button {
        grid-column: 1 / -1;
        width: 100%;
      }

      .vamoz_calendar_app .vamoz_calendar_grid {
        gap: 8px 4px;
      }

      .vamoz_calendar_app .vamoz_day {
        width: 34px;
        height: 34px;
        min-width: 34px;
        min-height: 34px;
        font-size: 15px;
      }

      .vamoz_calendar_app .vamoz_legend {
        justify-content: flex-start;
        gap: 12px 18px;
      }

      .vamoz_calendar_app .vamoz_action_box {
        grid-template-columns: 1fr;
      }

      .vamoz_calendar_app .vamoz_action_button {
        min-width: 0;
        width: 100%;
      }
    }
  