.etw-app-tour,
.etw-app-tour * {
  box-sizing: border-box;
}

.etw-app-tour {
  width: min(1180px, calc(100% - 24px)) !important;
  margin: 16px auto 28px !important;
  border-collapse: separate;
  border-spacing: 0;
  font-family: Kanit, Arial, Tahoma, sans-serif;
}

.etw-app-shell {
  display: block;
  padding: 0 !important;
}

.etw-app-main {
  padding: 0 !important;
}

.etw-app-hero {
  display: grid !important;
  grid-template-columns: minmax(280px, 380px) minmax(0, 1fr) minmax(260px, 330px);
  gap: 14px;
  align-items: start;
  margin: 0 0 14px;
}

.etw-app-media {
  order: 1;
  width: 100% !important;
  margin: 0 !important;
  border-radius: 10px;
  overflow: hidden;
  background: #eef3f8;
  box-shadow: 0 14px 42px rgba(15, 38, 70, .12);
}

.etw-app-media img {
  width: 100%;
  display: block;
  border-radius: 10px !important;
}

.etw-app-copy {
  order: 2;
  min-width: 0;
  padding: 18px !important;
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(15, 38, 70, .1);
}

.etw-app-booking-card {
  order: 3;
  position: sticky;
  top: 88px;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px;
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(15, 38, 70, .12);
}

.etw-app-copy h1 {
  margin: 0;
  color: #11203a;
  font-size: clamp(25px, 3vw, 40px);
  line-height: 1.14;
}

.etw-app-copy a {
  color: #126fc7;
}

.etw-app-copy .programdetailtext {
  margin-top: 12px;
  padding: 0 !important;
}

.etw-app-copy .subhead {
  color: #11203a;
  font-weight: 700;
}

.etw-app-copy .program_highlight {
  color: #4f5f75;
  line-height: 1.7;
}

.etw-app-tour .btn {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: auto;
  border: 0;
  border-radius: 8px !important;
  font-weight: 800;
}

.etw-app-booking-card .btn {
  width: 100%;
}

.etw-app-primary-action,
.etw-app-tour .btn_purple {
  color: #fff !important;
  background: #1476c9 !important;
  background-image: none !important;
}

.etw-app-tour .btn_green {
  background: #08a045 !important;
  background-image: none !important;
}

.etw-app-tour .btn_blue {
  color: #126fc7 !important;
  background: #edf6ff !important;
  background-image: none !important;
}

.etw-app-trust {
  display: grid;
  gap: 8px;
  margin: 8px 4px;
}

.etw-app-trust-btn {
  min-height: 48px;
  display: grid;
  grid-template-columns: 28px 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid #d9eadf;
  border-radius: 8px;
  color: #11203a;
  background: #f4fbf7;
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.etw-app-trust-btn:nth-child(2) {
  border-color: #dde8ff;
  background: #f3f7ff;
}

.etw-app-trust-btn .icon {
  width: 21px;
  height: 21px;
  color: #0f6f35;
}

.etw-app-trust-btn:nth-child(2) .icon {
  color: #176ddc;
}

.etw-app-trust-btn span {
  color: #647085;
  font-size: 12px;
  font-weight: 700;
}

.etw-app-trust-btn b {
  color: #0e315f;
  font-size: 13px;
}

.etw-app-eyebrow {
  color: #126fc7;
  font-size: 12px;
  font-weight: 800;
}

.etw-app-hero-badges > .etw-app-eyebrow {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  color: #8a4700;
  background: #fff3dd;
  font-size: 22px;
  font-weight: 900;
}

.etw-app-hero-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.etw-app-grade-badge {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 5px 12px 5px 8px;
  border: 1px solid #dfe7f0;
  border-radius: 999px;
  color: #0e315f;
  background: #fff;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 8px 22px rgba(15, 38, 70, .08);
}

.etw-app-grade-badge img {
  width: 44px;
  height: 32px;
  object-fit: contain;
  flex: 0 0 auto;
}

.etw-app-grade-card {
  width: 100%;
  justify-content: flex-start;
  border-radius: 8px;
  box-shadow: none;
}

.etw-app-pdf-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 18px 0;
  padding: 16px;
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(15, 38, 70, .1);
}

.etw-app-pdf-section h2 {
  margin: 3px 0 0;
  color: #11203a;
  font-size: 22px;
}

.etw-app-pdf-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.etw-app-download {
  color: #126fc7 !important;
  background: #edf6ff !important;
}

.etw-app-tour-summary {
  margin: 18px 0 0;
  padding: 14px 16px;
  border: 1px solid #dfe7f0;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-size: 14px;
  line-height: 1.65;
}

.etw-app-tour-summary summary {
  color: #11203a;
  cursor: pointer;
}

.etw-app-tour-summary ul {
  margin: 12px 0 0;
  padding-left: 20px;
}

.etw-app-tour-summary li + li {
  margin-top: 6px;
}

.etw-app-tour .showPeriodType_s,
.etw-app-tour #showMonth1 {
  padding: 10px;
  border-radius: 10px;
  background: #fff;
}

.etw-app-tour .div_month2,
.etw-app-tour .div_p_type,
.etw-app-tour .div_reset {
  border-radius: 8px !important;
}

.etw-app-tour [data="tr_gt_dateshow"],
.etw-app-tour .mleftrightauto {
  width: 100% !important;
  max-width: 100%;
  padding: 10px !important;
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
}

.etw-app-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(8, 21, 38, .5);
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.etw-app-page {
  width: min(1180px, calc(100% - 24px));
  margin: 16px auto 34px;
  color: #172235;
  font-family: Kanit, Arial, Tahoma, sans-serif;
}

.etw-app-page,
.etw-app-page * {
  box-sizing: border-box;
}

.etw-app-alert {
  margin-bottom: 12px;
  padding: 12px 14px;
  border: 1px solid #ffe1a8;
  border-radius: 10px;
  color: #6f4a00;
  background: #fff8e8;
  font-weight: 700;
}

.etw-app-hero-full {
  display: grid;
  grid-template-columns: minmax(280px, 430px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.etw-app-hero-media,
.etw-app-hero-copy,
.etw-app-book-card,
.etw-app-section {
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(15, 38, 70, .1);
}

.etw-app-hero-media {
  overflow: hidden;
  background: #eef3f8;
}

.etw-app-hero-media img {
  width: 100%;
  display: block;
}

.etw-app-hero-copy,
.etw-app-book-card,
.etw-app-section {
  padding: 18px;
}

.etw-app-quick-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.etw-app-quick-stats article {
  min-height: 106px;
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 16px 18px;
  border: 1px solid #dfe7f0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(15, 38, 70, .08);
}

.etw-app-quick-stats span {
  color: #526174;
  font-size: 13px;
}

.etw-app-quick-stats strong {
  color: #071f42;
  font-size: 27px;
  line-height: 1.05;
}

.etw-app-quick-stats small {
  color: #526174;
  font-size: 13px;
}

.etw-app-content-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 330px);
  gap: 18px;
  align-items: start;
  margin-top: 18px;
}

.etw-app-main-content {
  min-width: 0;
}

.etw-app-main-content > .etw-app-section:first-child {
  margin-top: 0;
}

.etw-app-hero-copy h1 {
  margin: 4px 0 10px;
  color: #11203a;
  font-size: clamp(25px, 3vw, 42px);
  line-height: 1.5;
}

.etw-app-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 12px;
}

.etw-app-facts span {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid #dfe7f0;
  border-radius: 8px;
  color: #0e315f;
  background: #fff;
  font-size: 14px;
  font-weight: 800;
}

.etw-app-highlight {
  color: #4f5f75;
  line-height: 1.7;
}

.etw-app-hero-actions,
.etw-app-pdf-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.etw-app-btn {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  max-width: 100%;
  padding: 0 16px;
  border: 0;
  border-radius: 8px;
  text-decoration: none !important;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
}

.etw-app-btn-primary {
  color: #fff !important;
  background: #1476c9;
}

.etw-app-btn-line {
  width: 100%;
  color: #fff !important;
  background: #08a045;
}

.etw-app-btn-soft {
  color: #126fc7 !important;
  background: #edf6ff;
}

.etw-app-book-card {
  position: sticky;
  top: 13px;
  min-width: 0;
  display: grid;
  gap: 10px;
  overflow: hidden;
}

.etw-app-book-card .etw-app-btn {
  width: 100%;
}

.etw-app-card-code {
  color: #071f42;
  font-size: 28px;
  line-height: 1.1;
}

.etw-app-card-name {
  color: #526174;
  line-height: 1.45;
}

.etw-app-selected-period {
  width: 100%;
  min-width: 0;
  padding: 11px 12px;
  border-radius: 8px;
  color: #0e315f;
  background: #eaf4ff;
  font-weight: 900;
}

.etw-app-price {
  color: #e42320;
  font-size: 38px;
  line-height: 1;
}

.etw-app-discount,
.etw-app-installment {
  width: 100%;
  min-width: 0;
  padding: 10px;
  border-radius: 8px;
  font-weight: 800;
}

.etw-app-discount {
  color: #a12200;
  background: #fff0e8;
}

.etw-app-installment {
  color: #6f4a00;
  background: #fff8e8;
}

.etw-app-trust-row {
  min-height: 48px;
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: 26px 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid #d9eadf;
  border-radius: 8px;
  color: #11203a;
  background: #f4fbf7;
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.etw-app-trust-row + .etw-app-trust-row {
  border-color: #dde8ff;
  background: #f3f7ff;
}

.etw-app-trust-row span {
  color: #647085;
  font-size: 12px;
  font-weight: 700;
}

.etw-app-trust-row b {
  color: #0e315f;
  font-size: 13px;
}

.etw-app-section {
  margin-top: 14px;
}

.etw-app-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.etw-app-section-head h2 {
  margin: 2px 0 0;
  color: #11203a;
  font-size: 26px;
}

.etw-app-chip,
.etw-app-reset,
.etw-app-deal-button,
.etw-app-month,
.etw-app-status-tab {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #dfe7f0;
  border-radius: 8px;
  color: #11203a;
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
}

.etw-app-chip {
  color: #fff;
  background: #f0783b;
  border-color: #f0783b;
}

.etw-app-reset {
  color: #0f6f35;
  background: #e9f8ef;
  border-color: #e9f8ef;
}

.etw-app-reset:disabled,
.etw-app-reset.is-disabled {
  color: #a8b2c1;
  background: #f1f5f9;
  border-color: #cbd5e1;
  cursor: not-allowed;
  opacity: 0.72;
  box-shadow: none;
  filter: grayscale(1);
}

.etw-app-reset.active {
  /* color: #0f6f35;
  background: #e9f8ef;
  border-color: #e9f8ef; */
  color:#b20000;
  background: #f6dddd;
  border-color: #f6dddd;
  cursor: pointer;
}

.etw-app-deal-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding: 13px 14px;
  border: 1px solid #ffc878;
  border-radius: 8px;
  background: #fffaf1;
}

.etw-app-deal-banner div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.etw-app-deal-banner strong {
  color: #8a4700;
  font-size: 15px;
}

.etw-app-deal-banner span {
  color: #647085;
  font-size: 13px;
}

.etw-app-deal-button {
  flex: 0 0 auto;
  color: #1476c9;
  background: #eaf4ff;
  border-color: #eaf4ff;
}

.etw-app-deal-button.active {
  color: #fff;
  background: #1476c9;
  border-color: #1476c9;
  box-shadow: 0 8px 18px rgba(20, 118, 201, .22);
}

.etw-app-status-tabs,
.etw-app-months {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.etw-app-status-tabs {
  margin-bottom: 8px;
}

.etw-app-month.is-hidden,
.etw-app-status-tab.is-hidden {
  display: none;
}

.etw-app-month.active,
.etw-app-status-tab.active {
  color: #fff;
  background: #1476c9;
  border-color: #1476c9;
}

.etw-app-status-tab[data-status="available"].active {
  background: #08a045;
  border-color: #08a045;
}

.etw-app-status-tab[data-status="confirm"].active {
  background: #0e315f;
  border-color: #0e315f;
}

.etw-app-status-tab[data-status="wait"].active {
  background: #f0783b;
  border-color: #f0783b;
}

.etw-app-period-list {
  display: grid;
  gap: 10px;
}

.etw-app-period {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 96px;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dfe7f0;
  border-radius: 10px;
  background: #fff;
}

.etw-app-period.is-confirm {
  border-color: #cce9aa;
  background: #fbfff6;
}

.etw-app-date {
  color: #0e315f;
  font-size: 18px;
  font-weight: 900;
}

.etw-app-status {
  width: fit-content;
  display: inline-flex;
  margin-right: 5px;
  margin-top: 6px;
  padding: 4px 9px;
  border-radius: 999px;
  color: #6f4a00;
  background: #fff8e8;
  font-size: 12px;
  font-weight: 800;
}

.etw-app-save-badge {
  width: fit-content;
  display: inline-flex;
  margin-top: 8px;
  padding: 4px 8px;
  border: 1px solid #ff9d55;
  border-radius: 5px;
  color: #d84800;
  background: #fff6ea;
  font-size: 13px;
  font-weight: 900;
}

.etw-app-status.available,
.etw-app-status.confirm {
  color: #0f6f35;
  background: #e9f8ef;
}

.etw-app-status.confirm {
  color: #0e315f;
  background: #edf6ff;
  border:1px solid #bcc7f2;
}

.etw-app-status.full {
  color: #b40000;
  background: #ffecec;
}

.etw-app-tags {
  margin-top: 6px;
  color: #e42320;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.etw-app-period-money {
  display: grid;
  justify-items: end;
  gap: 2px;
}

.etw-app-period-money span {
  color: #8b95a6;
  /* text-decoration: line-through; */
}


.strikethrough, .strikethrough_thin {
    position: relative;
}
.strikethrough:before, .strikethrough_thin:before {
    position: absolute;
    content: "";
    left: -1px;
    top: 50%;
    right: -2px;
    border-top: 3px solid;
    border-color: #f60000;
    opacity:60%;

    -webkit-transform:rotate(-5deg);
    -moz-transform:rotate(-5deg);
    -ms-transform:rotate(-5deg);
    -o-transform:rotate(-5deg);
    transform:rotate(-5deg);
}

.strikethrough_thin:before {
    border-top: 2px solid;
    border-color: #f60000;
}






.etw-app-period-money strong {
  color: #08a045;
  font-size: 24px;
}

.etw-currency {
  margin-right: 4px;
  color: #8b95a6;
  font-size: .78em;
  font-weight: 800;
}

.etw-app-save-badge .etw-currency,
.etw-app-period-money small .etw-currency,
.etw-legacy-save .etw-currency,
.etw-legacy-option-price em .etw-currency {
  color: currentColor;
  font-size: 1em;
}

.etw-app-period-money small {
  width: fit-content;
  padding: 4px 7px;
  border-radius: 5px;
  color: #fff;
  background: #d70808;
  font-weight: 800;
}

.etw-app-book-period {
  min-height: 40px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #fff !important;
  background: #0f8a45;
  text-decoration: none !important;
  font-weight: 800;
}

.etw-app-book-period.wait{
  background: #f0783b;
}
.etw-app-book-period.full {
  background: #dc3545;
}

.etw-app-period.is-hidden {
  display: none;
}

.etw-app-empty {
  padding: 16px;
  border-radius: 10px;
  color: #647085;
  background: #f4f7fb;
  text-align: center;
  font-weight: 800;
}

.etw-app-day-list {
  display: grid;
  gap: 10px;
}

.etw-app-day-card,
.etw-app-day-plain {
  padding: 13px 15px;
  border-radius: 10px;
  color: #11203a;
  background: #f4f7fb;
  line-height: 1.65;
}

.etw-app-day-card strong {
  display: block;
  margin-bottom: 8px;
  color: #1476c9;
}

.etw-app-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.etw-app-mobile-bar {
  display: none;
}

.etw-app-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.etw-app-modal-panel {
  position: relative;
  width: min(1040px, calc(100vw - 28px));
  height: min(88vh, 820px);
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(15, 38, 70, .22);
}

.etw-app-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-right: 42px;
}

.etw-app-modal-head h2 {
  margin: 2px 0 0;
  color: #11203a;
  font-size: 24px;
}

.etw-app-modal-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  color: #11203a;
  background: #edf2f8;
  cursor: pointer;
  font-size: 24px;
  font-weight: 800;
}

.etw-app-modal-frame {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  border: 1px solid #dfe7f0;
  border-radius: 8px;
  overflow: hidden;
  background: #f4f7fb;
}

.etw-app-modal-frame iframe {
  width: 100%;
  height: 100%;
  min-height: 560px;
  border: 0;
  background: #fff;
}

.etw-app-loader {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: grid;
  place-items: center;
  color: #647085;
  background: #fff;
  font-weight: 800;
}

.etw-app-loader.is-hidden {
  display: none;
}

.etw-app-pdf-fallback {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #ffe1a8;
  border-radius: 8px;
  color: #6f4a00;
  background: #fff8e8;
  font-size: 13px;
  font-weight: 800;
}

.etw-app-pdf-fallback.is-visible {
  display: flex;
}

@media (max-width: 900px) {
  .etw-app-tour {
    width: min(100% - 16px, 680px) !important;
    margin-top: 8px !important;
  }

  .etw-app-hero {
    grid-template-columns: 1fr;
  }

  .etw-app-media,
  .etw-app-copy,
  .etw-app-booking-card {
    order: initial;
  }

  .etw-app-booking-card {
    position: static;
  }

  .etw-app-pdf-section {
    align-items: flex-start;
    flex-direction: column;
  }

  .etw-app-modal {
    align-items: end;
    padding: 10px 10px calc(10px + env(safe-area-inset-bottom));
  }

  .etw-app-modal-panel {
    width: 100%;
    height: min(92vh, calc(100dvh - 20px));
    padding: 12px;
    border-radius: 12px;
  }

  .etw-app-modal-head {
    gap: 8px;
    padding-right: 44px;
  }

  .etw-app-modal-head h2 {
    font-size: 22px;
  }

  .etw-app-modal-frame iframe {
    min-height: 0;
  }

  .etw-app-pdf-fallback {
    align-items: flex-start;
    flex-direction: column;
  }

  .etw-app-page {
    width: min(100% - 16px, 680px);
    margin-top: 8px;
    padding-bottom: 86px;
  }

  .etw-app-hero-full,
  .etw-app-content-layout,
  .etw-app-period {
    grid-template-columns: 1fr;
  }

  .etw-app-hero-badges > .etw-app-eyebrow {
    min-height: 42px;
    padding: 0 16px;
    font-size: 20px;
  }

  .etw-app-grade-badge {
    min-height: 38px;
    font-size: 13px;
  }

  .etw-app-grade-badge img {
    width: 38px;
    height: 28px;
  }

  .etw-app-book-card {
    display: none;
  }

  .etw-app-quick-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .etw-app-period-money {
    justify-items: start;
  }

  .etw-app-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .etw-app-deal-banner {
    align-items: stretch;
    flex-direction: column;
  }

  .etw-app-deal-button {
    width: 100%;
  }

  .etw-app-mobile-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3000;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 9px 8px calc(9px + env(safe-area-inset-bottom));
    background: rgba(255, 255, 255, .97);
    border-top: 1px solid #dfe7f0;
    box-shadow: 0 -12px 32px rgba(15, 38, 70, .17);
  }

  .etw-app-mobile-bar a,
  .etw-app-mobile-bar button {
    min-height: 56px;
    display: grid;
    place-items: center;
    /* gap: 3px; */
    border: 0;
    border-radius: 8px;
    color: #fff;
    background: #1476c9;
    text-decoration: none !important;
    cursor: pointer;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    line-height: 0;
  }

  .etw-app-mobile-bar small {
    margin-top: -3px;
    color: inherit;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
  }

  .etw-app-mobile-bar .etw-app-mobile-program {
    background: #d70808;
  }

  .etw-app-mobile-bar a:nth-child(2) {
    background: #0e315f;
  }

  .etw-app-mobile-bar a:nth-child(3) {
    background: linear-gradient(135deg, #77c6ff, #2479d9);
  }

  .etw-app-mobile-bar .etw-app-mobile-line {
    background: #08a045;
  }

body.etw-app-modal-open .etw-app-mobile-bar,
  body.etw-app-modal-open .mainfixbottom {
    display: none !important;
  }
}

.etw-legacy-period {
  display: grid;
  gap: 12px;
}

.etw-legacy-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #ffd28a;
  border-radius: 8px;
  background: #fff8ec;
  color: #7c4300;
}

.etw-legacy-note strong,
.etw-legacy-note span {
  display: block;
}

.etw-legacy-note span {
  color: #52657c;
  font-size: 13px;
}

.etw-legacy-groups,
.etw-legacy-list {
  display: grid;
  gap: 10px;
}

.etw-legacy-group,
.etw-legacy-row,
.etw-legacy-option {
  border: 1px solid #d9e4ef;
  border-radius: 8px;
  background: #fff;
}

.etw-legacy-group.is-open {
  border-color: #1476c9;
  background: #f2f8ff;
  box-shadow: 0 8px 22px rgba(20, 118, 201, .14);
}

.etw-legacy-toggle {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 12px 14px;
  border: 0;
  background: transparent;
  color: #092b55;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.etw-legacy-toggle.is-open {
  background: #eaf4ff;
  color: #0e315f;
}

.etw-legacy-toggle strong {
  font-size: 17px;
}

.etw-legacy-toggle small {
  color: #ec6b2f;
  font-weight: 800;
}

.etw-legacy-plus {
  /* width: 28px; */
  height: 28px;
  /* display: grid;
  place-items: center; */
  display: flex;
  align-items: center;
  padding:0 1rem;
  border-radius: 8px;
  background: #e9f3ff;
  color: #1476c9;
  font-size: 22px;
  font-weight: 900;
}

.etw-legacy-sign {
  min-width: 14px;
  display: inline-block;
  text-align: center;
  font-size: 22px;
}

.etw-legacy-toggle.is-open .etw-legacy-plus {
  background: #1476c9;
  color: #fff;
}

.etw-legacy-group > .etw-app-tags {
  margin: 6px 16px 16px;
  padding-left: 0;
}

.etw-legacy-detail {
  display: none;
  padding: 0 12px 12px;
}

.etw-legacy-detail.is-open {
  display: grid;
  gap: 8px;
}

.etw-legacy-loading {
  padding: 14px;
  border-radius: 8px;
  background: #f1f6fb;
  color: #52657c;
  font-weight: 700;
}

.etw-legacy-row,
.etw-legacy-option {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 14px;
  padding: 14px;
}

.etw-legacy-row-main,
.etw-legacy-option-main,
.etw-legacy-row-price,
.etw-legacy-option-price {
  display: grid;
  gap: 5px;
}

.etw-legacy-row-main strong,
.etw-legacy-option-main strong {
  color: #092b55;
  font-size: 17px;
}

.etw-legacy-row-main small,
.etw-legacy-option-main small {
  color: #52657c;
  font-size: 13px;
}

.etw-legacy-row-price,
.etw-legacy-option-price {
  justify-items: end;
}

.etw-legacy-old-price {
  color: #9aa7b5;
  font-weight: 800;
}

.etw-legacy-old-price > span:last-child {
  text-decoration: line-through;
}

.etw-legacy-row-price strong,
.etw-legacy-option-price strong {
  color: #009b3a;
  font-size: 23px;
}

.etw-legacy-row-price small {
  padding: 5px 8px;
  border-radius: 6px;
  background: #d70606;
  color: #fff;
  font-weight: 900;
}

.etw-legacy-option-price em,
.etw-legacy-save {
  width: fit-content;
  padding: 4px 7px;
  border: 1px solid #ff9b51;
  border-radius: 6px;
  color: #d94800;
  background: #fff6ed;
  font-style: normal;
  font-weight: 900;
}

.etw-legacy-action {
  min-width: 86px;
  min-height: 44px;
  display: grid;
  place-items: center;
  padding: 0 14px;
  border: 0;
  border-radius: 8px;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 900;
}

.etw-legacy-action.available {
  background: #079b48;
}

.etw-legacy-action.wait {
  background: #f06f32;
}

.etw-legacy-action.full {
  background: #aab5c2;
}

@media (max-width: 760px) {
  .etw-legacy-note,
  .etw-legacy-row,
  .etw-legacy-option {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .etw-legacy-note {
    display: grid;
  }

  .etw-legacy-toggle {
    grid-template-columns: auto 1fr;
  }

  .etw-legacy-toggle small {
    grid-column: 2;
  }

  .etw-legacy-row-price,
  .etw-legacy-option-price {
    justify-items: start;
  }

  .etw-legacy-action {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .etw-app-modal {
    padding: 8px 8px calc(8px + env(safe-area-inset-bottom));
  }

  .etw-app-modal-panel {
    height: min(90vh, calc(100dvh - 16px));
    padding: 10px;
  }

  .etw-app-modal-head .etw-app-btn {
    min-height: 42px;
    padding: 0 12px;
  }
}

@media (max-width: 520px) {
  .etw-app-quick-stats article {
    min-height: 92px;
    padding: 13px 14px;
  }

  .etw-app-quick-stats strong {
    font-size: 23px;
  }
}
