.kas-therm-wp {
  max-width: 900px;
  margin: 0 auto;
  font-family: var(--kt-theme-font, inherit) !important;
  color: inherit;
  white-space: normal;
}
.kas-therm-wp * { box-sizing: border-box; font-family: var(--kt-theme-font, inherit) !important; }
.kas-therm-wp .kt-progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 12px 0 16px;
  counter-reset: kt-step;
}
.kas-therm-wp .kt-progress li {
  counter-increment: kt-step;
  padding: 4px 6px 7px;
  border-bottom: 2px solid var(--theme-palette-color-5, #d9dce3);
  opacity: .65;
}
.kas-therm-wp .kt-progress li::before { content: counter(kt-step) '. '; }
.kas-therm-wp .kt-progress li[aria-current="step"] {
  border-bottom-color: var(--theme-palette-color-1, currentColor);
  opacity: 1;
  font-weight: 600;
}
.kas-therm-wp h3 { line-height: 1.35; margin: 0 0 8px; }
.kas-therm-wp h3 { font-size: 1em; font-weight: 600; }
.kas-therm-wp p { margin: 0 0 10px; }
.kas-therm-wp .kt-card {
  padding: 20px;
  margin: 0 0 20px;
  border: 1px solid var(--theme-palette-color-5, #d9dce3);
  border-radius: 5px;
  background: #fff;
}
.kas-therm-wp .kt-room-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.kas-therm-wp .kt-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.kas-therm-wp .kt-choice-grid label { display: block; min-width: 0; }
.kas-therm-wp .kt-choice-grid .kt-select-wrap { margin-top: 6px; }
.kas-therm-wp .kt-room {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 135px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 4px 0;
  border-bottom: 1px solid var(--theme-palette-color-5, #e5e7eb);
}
.kas-therm-wp .kt-room-name { min-width: 0; }
.kas-therm-wp .kt-room-entry {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 20px;
  align-items: center;
  gap: 5px;
  min-width: 0;
}
.kas-therm-wp .kt-room-entry span { white-space: nowrap; }
.kas-therm-wp .kt-extra-rooms { margin-top: 6px; }
.kas-therm-wp .kt-extra-rooms summary { cursor: pointer; padding: 5px 0; }
.kas-therm-wp input,
.kas-therm-wp select {
  min-width: 0;
  width: 100%;
}
.kas-therm-wp .kt-select-wrap { display: block; position: relative; width: 100%; }
.kas-therm-wp .kt-select-wrap::after {
  content: '';
  position: absolute;
  right: 15px;
  top: 50%;
  width: 7px;
  height: 7px;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
.kas-therm-wp .kt-select-wrap select {
  width: 100% !important;
  appearance: none !important;
  background-image: none !important;
  padding-right: 35px !important;
}
.kas-therm-wp .kt-room-entry input[type="number"],
.kas-therm-wp .kt-item-row input[type="number"] {
  display: block !important;
  width: 100% !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 4px 7px !important;
}
.kas-therm-wp button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: var(--theme-button-min-height, 40px);
  padding: 9px 18px !important;
  border: 1px solid var(--theme-button-background-initial-color, #30343b) !important;
  border-radius: var(--theme-button-border-radius, 5px) !important;
  background: var(--theme-button-background-initial-color, #30343b) !important;
  color: var(--theme-button-text-initial-color, #fff) !important;
  font-size: inherit !important;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
}
.kas-therm-wp button:hover { background: var(--theme-button-background-hover-color, #20242a) !important; border-color: var(--theme-button-background-hover-color, #20242a) !important; color: var(--theme-button-text-hover-color, #fff) !important; }
.kas-therm-wp .kt-back-1,
.kas-therm-wp .kt-back-2 { background: transparent !important; color: var(--theme-button-background-initial-color, #30343b) !important; }
.kas-therm-wp .kt-back-1:hover,
.kas-therm-wp .kt-back-2:hover { background: var(--theme-palette-color-5, #e5e7eb) !important; }
.kas-therm-wp button:disabled { opacity: .5; cursor: not-allowed; }
.kas-therm-wp .kt-spacing { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.kas-therm-wp .kt-spacing .kt-select-wrap { width: 120px; max-width: 120px; }
.kas-therm-wp .kt-spacing small { flex-basis: 100%; }
.kas-therm-wp .kt-step[hidden],
.kas-therm-wp .kt-cabinet-fields[hidden],
.kas-therm-wp .kt-form[hidden],
.kas-therm-wp .kt-thank-you[hidden] { display: none !important; }
.kas-therm-wp .kt-thank-you { text-align: center; padding: 32px 20px; }
.kas-therm-wp .kt-thank-you h2 { font-size: 1.35em; margin: 0 0 12px; }
.kas-therm-wp .kt-thank-you p { margin: 0; }
.kas-therm-wp .kt-step .kt-card > label,
.kas-therm-wp .kt-contact label { display: block; margin-bottom: 9px; }
.kas-therm-wp .kt-step .kt-card > label select,
.kas-therm-wp .kt-contact label input { margin-top: 3px; }
.kas-therm-wp .kt-cabinet-optout { display: flex !important; align-items: center; gap: 7px; cursor: pointer; }
.kas-therm-wp .kt-cabinet-optout input { width: auto; margin: 0; }
.kas-therm-wp .kt-collector-status { font-weight: 600; }
.kas-therm-wp .kt-collector-card { border-top: 4px solid var(--theme-palette-color-1, #30343b); }
.kas-therm-wp .kt-needed-ports { color: var(--theme-palette-color-1, #30343b); }
.kas-therm-wp .kt-collector-suggestions { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.kas-therm-wp .kt-collector-suggestions .kt-suggestion { min-height: 34px; padding: 6px 10px !important; background: #fff !important; color: var(--theme-palette-color-1, #30343b) !important; }
.kas-therm-wp .kt-collector-suggestions .kt-suggestion:hover { background: var(--theme-palette-color-5, #e5e7eb) !important; }
.kas-therm-wp .kt-collector-status { padding: 9px 12px; border-radius: 5px; background: #fbe7e7; color: #9f2630; }
.kas-therm-wp .kt-collector-status.kt-matched { background: #e2f4e9; color: #187b43; }
.kas-therm-wp .kt-item-list { min-width: 0; }
.kas-therm-wp .kt-item-head,
.kas-therm-wp .kt-item-row {
  display: grid !important;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 5px 6px;
  border-bottom: 1px solid var(--theme-palette-color-5, #e3e5e9);
}
.kas-therm-wp .kt-item-head { font-weight: 600; }
.kas-therm-wp .kt-item-list-3 .kt-item-head,
.kas-therm-wp .kt-item-list-3 .kt-item-row {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) 78px;
}
.kas-therm-wp .kt-item-list-4 .kt-item-head,
.kas-therm-wp .kt-item-list-4 .kt-item-row {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) 76px 68px;
}
.kas-therm-wp .kt-item-name,
.kas-therm-wp .kt-item-code { min-width: 0; overflow-wrap: anywhere; }
.kas-therm-wp .kt-item-code { opacity: .75; }
.kas-therm-wp .kt-item-quantity { text-align: right; }
.kas-therm-wp .kt-report-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 12px 0 22px; }
.kas-therm-wp .kt-report-metric { display: flex; flex-direction: column; gap: 3px; padding: 10px; border: 1px solid var(--theme-palette-color-5, #e3e5e9); border-radius: 5px; }
.kas-therm-wp .kt-report-metric span { font-size: .85em; opacity: .8; }
.kas-therm-wp .kt-report-rooms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; margin: 12px 0 20px; }
.kas-therm-wp .kt-report-room { display: flex; flex-direction: column; padding: 8px 0; border-bottom: 1px solid var(--theme-palette-color-5, #e3e5e9); }
.kas-therm-wp .kt-report-room span { font-size: .9em; }
.kas-therm-wp .kt-summary { margin: 0 0 10px; padding: 10px 0; border-top: 1px solid var(--theme-palette-color-5, #e3e5e9); }
.kas-therm-wp .kt-contact-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; }
.kas-therm-wp .kt-message { margin: 10px 0; font-weight: 600; }
.kas-therm-wp .kt-message.kt-error { color: #a22b2b; }
.kas-therm-wp .kt-message:empty { display: none; }
.kas-therm-wp .kt-actions { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
@media (max-width: 650px) {
  .kas-therm-wp .kt-room-grid,
  .kas-therm-wp .kt-contact-fields,
  .kas-therm-wp .kt-choice-grid,
  .kas-therm-wp .kt-report-rooms { grid-template-columns: 1fr; }
  .kas-therm-wp .kt-report-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kas-therm-wp .kt-item-head { display: none !important; }
  .kas-therm-wp .kt-item-list-3 .kt-item-row,
  .kas-therm-wp .kt-item-list-4 .kt-item-row {
    grid-template-columns: minmax(0, 1fr) 78px;
    grid-template-rows: auto auto;
  }
  .kas-therm-wp .kt-item-row .kt-item-name { grid-column: 1; grid-row: 1; }
  .kas-therm-wp .kt-item-row .kt-item-code { grid-column: 1; grid-row: 2; font-size: .88em; }
  .kas-therm-wp .kt-item-list-3 .kt-item-quantity { grid-column: 2; grid-row: 1 / span 2; }
  .kas-therm-wp .kt-item-list-4 .kt-item-quantity { grid-column: 2; grid-row: 1; }
  .kas-therm-wp .kt-item-list-4 .kt-item-unit { grid-column: 2; grid-row: 2; text-align: right; font-size: .88em; }
}
@media (max-width: 380px) {
  .kas-therm-wp .kt-room { grid-template-columns: minmax(0, 1fr) 115px; }
}
