/* Enerval Verbrauchsausweis Rechner */
.evr-app,
.evr-app * {
  box-sizing: border-box;
}

.evr-app {
  --evr-green: #6AA443;
  --evr-green-dark: #2f641f;
  --evr-bg: #f5f9f2;
  --evr-border: #dbe3ee;
  --evr-red: #b91c1c;
  --evr-text: #111827;
  max-width: 1180px;
  margin: 0 auto;
  padding: 18px;
  border-radius: 18px;
  background: var(--evr-bg);
  color: var(--evr-text);
  font-family: inherit;
  line-height: 1.45;
}

.evr-app h2,
.evr-app h3 {
  margin: 0 0 12px;
  color: var(--evr-green-dark);
  font-weight: 900;
}

.evr-app h2 {
  font-size: 26px;
}

.evr-app h3 {
  font-size: 20px;
}

.evr-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.evr-tab {
  border: 1px solid var(--evr-border);
  background: #fff;
  color: var(--evr-text);
  border-radius: 999px;
  padding: 9px 14px;
  font-weight: 800;
}

.evr-tab.is-active {
  background: var(--evr-green);
  border-color: var(--evr-green);
  color: #fff;
}

.evr-panel {
  display: none;
  border: 1px solid var(--evr-border);
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  margin-bottom: 16px;
}

.evr-panel.is-active {
  display: block;
}

.evr-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 14px;
}

.evr-grid-3 {
  grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.evr-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-weight: 800;
}

.evr-field span {
  font-size: 14px;
}

.evr-input,
.evr-select,
.evr-textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  padding: 9px 11px;
  font: inherit;
  background: #fff;
  color: #111827;
}

.evr-input[readonly] {
  background: #f8fafc;
  color: #334155;
  font-weight: 800;
}

.evr-help {
  margin: 10px 0;
  border: 1px solid #fcd34d;
  background: #fef3c7;
  color: #92400e;
  border-radius: 12px;
  padding: 11px 13px;
  font-size: 14px;
  font-weight: 700;
}

.evr-warning {
  margin: 10px 0;
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #9a3412;
  border-radius: 12px;
  padding: 11px 13px;
  font-size: 14px;
  font-weight: 700;
}

.evr-error {
  margin: 10px 0;
  border: 1px solid #fecaca;
  background: #fef2f2;
  color: #991b1b;
  border-radius: 12px;
  padding: 11px 13px;
  font-size: 14px;
  font-weight: 800;
}

.evr-ok {
  margin: 10px 0;
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
  color: #166534;
  border-radius: 12px;
  padding: 11px 13px;
  font-size: 14px;
  font-weight: 800;
}

.evr-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.evr-btn {
  appearance: none;
  border: 1px solid var(--evr-green);
  background: var(--evr-green);
  color: #fff;
  border-radius: 10px;
  padding: 11px 15px;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.evr-btn.secondary {
  background: #fff;
  color: var(--evr-green-dark);
}

.evr-btn.gray {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #111827;
}

.evr-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(240px, 1fr));
  gap: 14px;
  margin: 14px 0;
}

.evr-choice {
  display: block;
  cursor: pointer;
}

.evr-choice input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.evr-choice-card {
  height: 100%;
  border: 1px solid var(--evr-border);
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 2px 10px rgba(15, 23, 42, .04);
}

.evr-choice input:checked + .evr-choice-card {
  border-color: var(--evr-green);
  box-shadow: 0 0 0 3px rgba(106, 164, 67, .18);
  background: #f7fbf2;
}

.evr-badge {
  display: inline-block;
  background: #eaf5e1;
  color: var(--evr-green-dark);
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 12px;
  font-weight: 900;
}

.evr-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.evr-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0;
  font-size: 14px;
}

.evr-table th,
.evr-table td {
  border-bottom: 1px solid #e5e7eb;
  padding: 9px;
  text-align: left;
  vertical-align: top;
}

.evr-table th {
  background: #f8fafc;
  font-weight: 900;
}

.evr-results {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.evr-result-card {
  border: 1px solid var(--evr-border);
  background: #fff;
  border-radius: 14px;
  padding: 14px;
}

.evr-result-label {
  color: #475569;
  font-size: 13px;
  font-weight: 800;
}

.evr-result-value {
  color: var(--evr-green-dark);
  font-size: 24px;
  font-weight: 900;
  margin-top: 4px;
}

.evr-scale {
  position: relative;
  margin: 18px 0 6px;
  height: 56px;
}

.evr-scale-bar {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  overflow: hidden;
  border-radius: 10px;
  height: 20px;
}

.evr-scale-bar span:nth-child(1) { background:#22c55e; }
.evr-scale-bar span:nth-child(2) { background:#84cc16; }
.evr-scale-bar span:nth-child(3) { background:#bef264; }
.evr-scale-bar span:nth-child(4) { background:#fde047; }
.evr-scale-bar span:nth-child(5) { background:#facc15; }
.evr-scale-bar span:nth-child(6) { background:#fb923c; }
.evr-scale-bar span:nth-child(7) { background:#f97316; }
.evr-scale-bar span:nth-child(8) { background:#ef4444; }
.evr-scale-bar span:nth-child(9) { background:#b91c1c; }

.evr-scale-marker {
  position: absolute;
  top: -4px;
  width: 3px;
  height: 32px;
  background: #111827;
  border-radius: 2px;
}

.evr-scale-labels {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  font-size: 12px;
  color: #475569;
  font-weight: 800;
  margin-top: 5px;
}

.evr-hidden {
  display: none !important;
}

.evr-submit-note {
  font-size: 13px;
  color: #475569;
  margin-top: 8px;
}

@media (max-width: 900px) {
  .evr-grid,
  .evr-grid-3,
  .evr-choice-grid,
  .evr-results {
    grid-template-columns: 1fr;
  }

  .evr-app {
    padding: 12px;
  }
}


.evr-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(240px, 1fr));
  gap: 10px;
  margin: 12px 0 18px;
}

.evr-check {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid var(--evr-border);
  background: #fff;
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 700;
}

.evr-check input {
  margin-top: 4px;
  min-width: 18px;
}

.evr-modernization-details {
  margin-top: 16px;
}

@media (max-width: 900px) {
  .evr-check-grid {
    grid-template-columns: 1fr;
  }
}


/* Kennwertskala 1.0.300 */
.evr-va-scale {
  position: relative;
  margin: 34px 0 18px;
  padding-top: 36px;
}

.evr-va-bar {
  display: grid;
  grid-template-columns: 12% 8% 10% 10% 12% 12% 16% 10% 10%;
  height: 34px;
  overflow: hidden;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .14);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.25);
}

.evr-va-segment {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111827;
  font-weight: 900;
  font-size: 13px;
  border-right: 1px solid rgba(255,255,255,.45);
}

.evr-va-segment:last-child {
  border-right: 0;
  color: #fff;
}

.evr-va-a-plus { background: #1fb65b; }
.evr-va-a { background: #72c950; }
.evr-va-b { background: #b9df4a; }
.evr-va-c { background: #f3e34d; }
.evr-va-d { background: #f4c542; }
.evr-va-e { background: #ee9a38; }
.evr-va-f { background: #e96c33; }
.evr-va-g { background: #dc3d35; color: #fff; }
.evr-va-h { background: #9f1d26; color: #fff; }

.evr-va-marker {
  position: absolute;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  z-index: 3;
}

.evr-va-marker::before {
  content: "";
  position: absolute;
  left: -8px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}

.evr-va-marker span {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  box-shadow: 0 1px 4px rgba(15,23,42,.15);
}

.evr-va-marker-end {
  left: var(--evr-end-pos, 0%);
  top: 3px;
}

.evr-va-marker-end::before {
  top: 20px;
  border-top: 11px solid #111827;
}

.evr-va-marker-end span {
  top: 0;
  background: #111827;
  color: #fff;
}

.evr-va-marker-primary {
  left: var(--evr-primary-pos, 0%);
  top: 68px;
}

.evr-va-marker-primary::before {
  top: -13px;
  border-bottom: 11px solid #6AA443;
}

.evr-va-marker-primary span {
  top: 0;
  background: #6AA443;
  color: #fff;
}

.evr-va-axis {
  display: grid;
  grid-template-columns: 12% 8% 10% 10% 12% 12% 16% 10% 10%;
  margin-top: 6px;
  color: #475569;
  font-size: 11px;
  font-weight: 800;
}

.evr-va-axis span {
  text-align: left;
}

.evr-va-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
  color: #111827;
  font-size: 13px;
  font-weight: 800;
}

.evr-va-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  margin-right: 6px;
  vertical-align: -1px;
}

.evr-va-dot-end {
  background: #111827;
}

.evr-va-dot-primary {
  background: #6AA443;
}

@media (max-width: 760px) {
  .evr-va-segment {
    font-size: 11px;
  }

  .evr-va-marker span {
    font-size: 10px;
  }

  .evr-va-axis {
    font-size: 10px;
  }
}


/* Enerval Stepper Tabs 1.0.300 - keine Pillenoptik */
.evr-tabs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 0 !important;
  margin: 0 0 22px !important;
  padding: 0;
  border: 1px solid #dbe3ee;
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 2px 10px rgba(15, 23, 42, .04);
  counter-reset: evr-step;
}

.evr-tab {
  counter-increment: evr-step;
  position: relative;
  border: 0 !important;
  border-right: 1px solid #e5e7eb !important;
  background: #ffffff !important;
  color: #334155 !important;
  border-radius: 0 !important;
  padding: 16px 16px 16px 52px !important;
  min-height: 72px;
  text-align: left;
  font-weight: 900;
  font-size: 15px;
  line-height: 1.15;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.evr-tab:last-child {
  border-right: 0 !important;
}

.evr-tab::before {
  content: counter(evr-step);
  position: absolute;
  left: 16px;
  top: 50%;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  border-radius: 999px;
  background: #eaf5e1;
  color: #2f641f;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 900;
}

.evr-tab::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4px;
  background: transparent;
}

.evr-tab.is-active {
  background: #f7fbf2 !important;
  color: #2f641f !important;
  box-shadow: inset 0 0 0 2px rgba(106, 164, 67, .18);
}

.evr-tab.is-active::before {
  background: #6AA443;
  color: #ffffff;
}

.evr-tab.is-active::after {
  background: #6AA443;
}

.evr-tab:hover {
  background: #f8fafc !important;
}

@media (max-width: 900px) {
  .evr-tabs {
    grid-template-columns: 1fr !important;
    border-radius: 14px;
  }

  .evr-tab {
    border-right: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    min-height: 58px;
  }

  .evr-tab:last-child {
    border-bottom: 0 !important;
  }
}


/* Verbrauchsrechner Integration 1.0.300 */
body.evr-modal-open {
  overflow: hidden;
}

.evr-calc-open-btn {
  white-space: nowrap;
}

.evr-transfer-ok {
  color: #166534;
  font-weight: 900;
}

.evr-calculator-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

.evr-calculator-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .55);
  backdrop-filter: blur(2px);
}

.evr-calculator-dialog {
  position: relative;
  width: min(1380px, 96vw);
  height: min(920px, 92vh);
  background: #F5F9F2;
  border-radius: 18px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .35);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.evr-calculator-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  background: #ffffff;
  border-bottom: 1px solid #dbe3ee;
  color: #2f641f;
  font-weight: 900;
}

.evr-calculator-close {
  appearance: none;
  width: 38px;
  height: 38px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #f8fafc;
  color: #111827;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.evr-calculator-frame {
  flex: 1;
  width: 100%;
  border: 0;
  background: #F5F9F2;
}

@media (max-width: 760px) {
  .evr-calculator-modal {
    padding: 0;
  }

  .evr-calculator-dialog {
    width: 100vw;
    height: 100vh;
    border-radius: 0;
  }
}


/* Gebäude-Layout wie Vorlage + eckige Felder 1.0.300 */
.evr-app {
  border-radius: 0 !important;
}

.evr-panel {
  border-radius: 0 !important;
}

.evr-building-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 18px;
  align-items: stretch;
}

.evr-building-main {
  background: #ffffff;
  border: 1px solid #b7e1b1;
  border-radius: 0;
  padding: 20px;
}

.evr-building-sidebar {
  display: flex;
  flex-direction: column;
  gap: 36px;
  background: #F5F9F2;
  border-radius: 0;
}

.evr-assistant-card {
  background: #d9ebd7;
  color: #1f5f24;
  padding: 14px 16px;
  border-left: 5px solid #6AA443;
  border-radius: 0;
  font-size: 17px;
  line-height: 1.25;
}

.evr-assistant-note {
  background: #fff0d5;
  color: #925f00;
  padding: 16px;
  border-left: 5px solid #ffc46b;
  border-radius: 0;
  font-size: 17px;
  line-height: 1.32;
  font-weight: 700;
}

.evr-section-title {
  display: inline-block;
  margin: 0 0 22px;
  color: #2f7d32 !important;
  font-size: 18px !important;
  line-height: 1.2;
  font-weight: 900 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-transform: uppercase;
}

.evr-section-title-gap {
  margin-top: 48px;
}

.evr-building-grid {
  display: grid;
  gap: 14px 14px;
  align-items: end;
}

.evr-building-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.evr-field {
  gap: 6px;
}

.evr-field > span {
  color: #111827;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.22;
}

.evr-required {
  color: #dc2626 !important;
}

.evr-input,
.evr-select,
.evr-textarea,
.evr-btn,
.evr-choice-card,
.evr-result-card,
.evr-help,
.evr-warning,
.evr-error,
.evr-ok,
.evr-table th,
.evr-table td,
.evr-check,
.evr-input-addon,
.evr-calculator-dialog,
.evr-calculator-close {
  border-radius: 0 !important;
}

.evr-input,
.evr-select,
.evr-textarea {
  min-height: 48px;
  border: 1px solid #2f7d32 !important;
  background: #ffffff;
  padding: 10px 12px;
}

.evr-input::placeholder,
.evr-textarea::placeholder {
  color: #b6bdc8;
  opacity: 1;
}

.evr-input-addon {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  border: 1px solid #2f7d32;
  background: #ffffff;
  min-height: 48px;
}

.evr-input-addon .evr-input {
  border: 0 !important;
  min-height: 46px;
}

.evr-input-addon span {
  display: flex;
  align-items: center;
  padding: 0 14px;
  border-left: 1px solid #2f7d32;
  color: #2f7d32;
  font-weight: 900;
  background: #f8fafc;
}

@media (max-width: 1100px) {
  .evr-building-layout {
    grid-template-columns: 1fr;
  }

  .evr-building-sidebar {
    display: none;
  }
}

@media (max-width: 900px) {
  .evr-building-grid-3 {
    grid-template-columns: 1fr;
  }
}


/* Verbrauchsrechner Öffnen Fix 1.0.300 */
.evr-calculator-hint {
  color: #475569;
  font-size: 13px;
  font-weight: 700;
  margin-left: auto;
}

.evr-calculator-head strong {
  margin-right: 12px;
}

.evr-calculator-close {
  margin-left: 12px;
}


/* Label-/Schriftgrößen-Fix 1.0.300 */
.evr-app {
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.evr-app,
.evr-app input,
.evr-app select,
.evr-app textarea,
.evr-app button {
  font-family: inherit;
}

.evr-building-main {
  padding: 18px !important;
}

.evr-section-title {
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  margin-bottom: 18px !important;
}

.evr-section-title-gap {
  margin-top: 42px !important;
}

.evr-building-grid {
  gap: 12px 14px !important;
}

.evr-field {
  gap: 5px !important;
}

.evr-field > span,
.evr-field > .evr-label-text,
.evr-label-text {
  display: block;
  position: relative;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 1.22 !important;
  font-weight: 500 !important;
  min-height: auto !important;
  word-break: normal !important;
}

.evr-required {
  color: #dc2626 !important;
  font-weight: 700 !important;
}

.evr-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  margin-left: 1px;
  transform: translateY(-1px);
  border-radius: 50%;
  background: #6b7280;
  color: #ffffff;
  font-size: 10px;
  line-height: 1;
  font-weight: 700;
  font-style: normal;
  cursor: help;
}

.evr-input,
.evr-select,
.evr-textarea {
  min-height: 40px !important;
  height: 40px;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  padding: 8px 10px !important;
}

.evr-input-addon {
  min-height: 40px !important;
}

.evr-input-addon .evr-input {
  min-height: 38px !important;
  height: 38px !important;
}

.evr-input-addon span {
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 0 12px !important;
}

.evr-btn {
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 10px 14px !important;
}

.evr-building-sidebar {
  font-size: 14px !important;
}

.evr-assistant-card,
.evr-assistant-note {
  font-size: 14px !important;
  line-height: 1.32 !important;
  font-weight: 500 !important;
}

.evr-assistant-card strong {
  font-weight: 700 !important;
}

@media (min-width: 901px) {
  .evr-building-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}


/* Breiten-Fix 1.0.300 */
.evr-app {
  width: 100% !important;
  max-width: 1080px !important;
}

.evr-building-layout {
  grid-template-columns: minmax(0, 1fr) 250px !important;
  gap: 14px !important;
}

.evr-building-sidebar {
  width: 250px !important;
  min-width: 250px !important;
  max-width: 250px !important;
}

.evr-assistant-card,
.evr-assistant-note {
  width: 250px !important;
}

@media (max-width: 1100px) {
  .evr-app {
    max-width: 100% !important;
  }

  .evr-building-layout {
    grid-template-columns: 1fr !important;
  }

  .evr-building-sidebar {
    display: none !important;
  }
}


/* Tooltip/Maßnahmen/Schrift-Fix 1.0.300 */
.evr-section-title {
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  margin-bottom: 14px !important;
  letter-spacing: 0 !important;
}

.evr-section-title-gap {
  margin-top: 34px !important;
}

.evr-field > span,
.evr-field > .evr-label-text,
.evr-label-text {
  font-size: 14px !important;
  line-height: 1.22 !important;
  font-weight: 400 !important;
}

.evr-required {
  font-weight: 500 !important;
}

.evr-input,
.evr-select,
.evr-textarea {
  font-size: 14px !important;
  font-weight: 400 !important;
}


.evr-info {
  position: relative;
  z-index: 20;
}

.evr-info::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 9px);
  transform: translateX(-50%);
  width: min(360px, 70vw);
  padding: 10px 12px;
  background: #2f7d32;
  color: #ffffff;
  border: 1px solid #1f5f24;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .18);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 400;
  text-align: left;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.evr-info::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(100% + 3px);
  transform: translateX(-50%);
  border-width: 6px 6px 0 6px;
  border-style: solid;
  border-color: #2f7d32 transparent transparent transparent;
  opacity: 0;
  visibility: hidden;
}

.evr-info:hover::after,
.evr-info:focus::after,
.evr-info:hover::before,
.evr-info:focus::before {
  opacity: 1;
  visibility: visible;
}


/* Modernisierung exakt wie Vorlage 1.0.300 */
.evr-modern-card {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  border-radius: 12px !important;
  padding: 0;
  margin: 10px 0 18px;
  color: #111827;
}

.evr-modern-legend {
  position: relative;
  display: inline-block;
  margin: -15px 0 0 28px;
  padding: 0 8px;
  background: #ffffff;
  color: #2f7d32;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 700;
}

.evr-modern-content {
  padding: 26px 28px 28px;
}

.evr-modern-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0;
}

.evr-modern-field > span {
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 500;
}

.evr-modern-field small {
  color: #111827;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 400;
}

.evr-modern-full {
  width: 100%;
}

.evr-modern-select,
.evr-modern-card .evr-input,
.evr-modern-card .evr-select {
  width: 100%;
  height: 38px !important;
  min-height: 38px !important;
  border: 1px solid #2f7d32 !important;
  background: #ffffff !important;
  border-radius: 4px !important;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  padding: 7px 10px !important;
}

.evr-modern-card .evr-input::placeholder {
  color: #c4c8d0 !important;
  opacity: 1 !important;
}

.evr-modern-checks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 72px;
  margin: 52px 0 48px;
}

.evr-modern-check-col {
  display: grid;
  gap: 13px;
}

.evr-modern-card .evr-check {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 400;
}

.evr-modern-card .evr-check input {
  width: 16px;
  height: 16px;
  min-width: 16px;
  margin: 0;
  appearance: none;
  border: 1px solid #2f7d32;
  border-radius: 3px;
  background: #ffffff;
  cursor: pointer;
}

.evr-modern-card .evr-check input:checked {
  background: #2f7d32;
  box-shadow: inset 0 0 0 3px #ffffff;
}

.evr-modern-card .evr-check span {
  color: #111827;
  font-size: 14px;
  font-weight: 400;
}

.evr-modern-bottom-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: start;
}

@media (max-width: 900px) {
  .evr-modern-content {
    padding: 22px 18px 22px;
  }

  .evr-modern-checks,
  .evr-modern-bottom-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    margin: 32px 0 32px;
  }

  .evr-modern-legend {
    margin-left: 18px;
  }
}



/* Checkout wie Vorlage 1.0.300 */
.evr-checkout-card {
  padding: 6px 0 0;
}

.evr-checkout-grid {
  display: grid;
  gap: 10px 12px;
  margin-bottom: 10px;
}

.evr-checkout-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.evr-checkout-grid-name {
  grid-template-columns: 160px 160px minmax(0, 1fr) minmax(0, 1fr);
}

.evr-checkout-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
}

.evr-checkout-label {
  display: block;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 400;
}

.evr-checkout-field small {
  color: #111827;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 400;
}

.evr-checkout-card .evr-input,
.evr-checkout-card .evr-select,
.evr-checkout-card .evr-textarea {
  width: 100%;
  min-height: 38px !important;
  height: 38px !important;
  border: 1px solid #4ca358 !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  padding: 7px 12px !important;
  box-shadow: none !important;
}

.evr-checkout-card .evr-input::placeholder {
  color: #c5c7cc;
  opacity: 1;
}

.evr-checkout-upload {
  margin: 12px 0 18px;
}

.evr-checkout-field-upload {
  max-width: 520px;
}

.evr-consent-card {
  margin: 26px 0 10px;
  max-width: 1280px;
}

.evr-consent-card h3 {
  margin: 0 0 12px;
  color: #111827;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 400;
}

.evr-consent-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  margin: 0 0 18px;
  color: #111827;
  font-size: 14px;
  line-height: 1.32;
  font-weight: 400;
}

.evr-consent-row-master {
  margin-bottom: 16px;
}

.evr-consent-row input[type="checkbox"] {
  width: 22px;
  height: 22px;
  min-width: 22px;
  margin: 0 0 0 4px;
  appearance: none;
  border: 1px solid #4ca358;
  border-radius: 4px;
  background: #ffffff;
  cursor: pointer;
  position: relative;
  top: 1px;
}

.evr-consent-row input[type="checkbox"]:checked {
  background: #4ca358;
  box-shadow: inset 0 0 0 4px #ffffff;
}

.evr-consent-row a {
  color: #335c9e;
  text-decoration: underline;
}

@media (max-width: 900px) {
  .evr-checkout-grid-3,
  .evr-checkout-grid-name {
    grid-template-columns: 1fr;
  }

  .evr-consent-row {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 8px;
  }
}


/* Upload + Tab-Reihenfolge 1.0.300 */
.evr-upload-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 8px;
  align-items: start;
}
.evr-upload-main { min-width: 0; }
.evr-upload-card {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 28px 26px 22px;
}
.evr-upload-legend {
  position: absolute;
  top: -15px;
  left: 18px;
  background: #f5f9f2;
  padding: 0 8px;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 600;
}
.evr-upload-spacer { height: 62px; }
.evr-upload-label {
  display: block;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 400;
  margin-bottom: 10px;
}
.evr-upload-field small {
  display: block;
  margin-top: 8px;
  color: #111827;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 400;
}
.evr-upload-bills-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 18px;
}
.evr-upload-bills-grid > .evr-upload-field:last-child {
  grid-column: 1 / -1;
}
@media (max-width: 900px) {
  .evr-upload-bills-grid {
    grid-template-columns: 1fr;
  }
  .evr-upload-bills-grid > .evr-upload-field:last-child {
    grid-column: auto;
  }
}
.evr-upload-bills-note {
  display: block;
  margin-top: 10px;
  color: #111827;
  font-size: 12px;
  line-height: 1.35;
}
.evr-upload-drop {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  border: 1px dashed #4ca358;
  background: #ffffff;
  overflow: hidden;
}
.evr-upload-drop.has-files {
  justify-content: flex-start;
  align-items: flex-start;
  padding: 8px 10px;
}
.evr-upload-input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
}
.evr-upload-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #c5c7cc;
  font-size: 14px;
  line-height: 1.35;
  text-align: center;
  padding: 0 20px;
}
.evr-upload-filelist {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  position: relative;
  z-index: 1;
}
.evr-upload-file {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid #b7e1b1;
  background: #f5f9f2;
  color: #2f7d32;
  font-size: 12px;
  line-height: 1.25;
}
.evr-upload-photo-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.evr-upload-photo-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 16px;
  align-items: stretch;
}
.evr-upload-photo-row .evr-upload-field {
  margin: 0;
}
.evr-upload-photo-row .evr-upload-drop {
  min-height: 120px;
}
.evr-upload-example-card {
  border: 1px solid #b7e1b1;
  background: #ffffff;
  min-height: 120px;
  display: grid;
  grid-template-rows: 1fr auto;
  overflow: hidden;
}
.evr-upload-example-visual {
  background: linear-gradient(180deg, #edf6ea 0%, #d9ebd7 100%);
  position: relative;
}
.evr-upload-example-caption {
  padding: 10px 12px;
  display: grid;
  gap: 4px;
  background: #f5f9f2;
}
.evr-upload-example-caption strong {
  color: #2f7d32;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
}
.evr-upload-example-caption span {
  color: #111827;
  font-size: 12px;
  line-height: 1.35;
}
.evr-upload-example-house-front .evr-upload-example-visual::before,
.evr-upload-example-house-side .evr-upload-example-visual::before,
.evr-upload-example-heating .evr-upload-example-visual::before {
  content: '';
  position: absolute;
  inset: 10px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.evr-upload-example-house-front .evr-upload-example-visual::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 120'%3E%3Crect width='240' height='120' fill='%23d9ebd7'/%3E%3Crect x='58' y='45' width='124' height='50' rx='2' fill='%23ffffff' stroke='%234ca358' stroke-width='4'/%3E%3Cpolygon points='50,48 120,18 190,48' fill='%2367a744' stroke='%234ca358' stroke-width='4'/%3E%3Crect x='108' y='62' width='24' height='33' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3Crect x='72' y='58' width='22' height='18' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3Crect x='146' y='58' width='22' height='18' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3C/svg%3E");
}
.evr-upload-example-house-side .evr-upload-example-visual::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 120'%3E%3Crect width='240' height='120' fill='%23d9ebd7'/%3E%3Cpolygon points='44,50 98,25 152,50 152,94 44,94' fill='%23ffffff' stroke='%234ca358' stroke-width='4'/%3E%3Cpolygon points='152,50 196,34 196,79 152,94' fill='%23edf6ea' stroke='%234ca358' stroke-width='4'/%3E%3Cpolygon points='98,25 142,10 196,34 152,50' fill='%2367a744' stroke='%234ca358' stroke-width='4'/%3E%3Crect x='68' y='58' width='22' height='16' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3Crect x='98' y='58' width='22' height='16' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3C/svg%3E");
}
.evr-upload-example-heating .evr-upload-example-visual::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 120'%3E%3Crect width='240' height='120' fill='%23d9ebd7'/%3E%3Crect x='50' y='28' width='70' height='64' rx='6' fill='%23ffffff' stroke='%234ca358' stroke-width='4'/%3E%3Crect x='62' y='40' width='24' height='18' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3Ccircle cx='84' cy='76' r='7' fill='%2367a744'/%3E%3Crect x='144' y='18' width='44' height='78' rx='10' fill='%23ffffff' stroke='%234ca358' stroke-width='4'/%3E%3Crect x='155' y='34' width='22' height='26' fill='%23d9ebd7' stroke='%234ca358' stroke-width='3'/%3E%3Crect x='156' y='66' width='20' height='8' rx='2' fill='%2367a744'/%3E%3Ctext x='166' y='88' text-anchor='middle' font-family='Arial' font-size='11' fill='%234ca358'%3ETyp%3C/text%3E%3C/svg%3E");
}
.evr-upload-sidebar {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.evr-upload-sidebar .evr-assistant-card {
  width: 250px !important;
  min-height: auto;
  padding: 12px 14px;
  border-left: 5px solid #f59e0b;
  background: #fef3c7;
  color: #92400e;
  font-size: 14px !important;
  line-height: 1.32 !important;
  font-weight: 500 !important;
}

.evr-upload-sidebar .evr-assistant-card.is-complete {
  border-left-color: #6AA443;
  background: #d9ebd7;
  color: #1f5f24;
  font-weight: 700 !important;
}
@media (max-width: 1100px) {
  .evr-upload-layout { grid-template-columns: 1fr; }
  .evr-upload-sidebar { display: none; }
}
@media (max-width: 900px) {
  .evr-upload-photo-row { grid-template-columns: 1fr; }
}


/* 1.0.300 energetische Maßnahmen Dropdown */
.evr-measures {
  position: relative;
}

.evr-measures-toggle {
  width: 100%;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #2f7d32;
  background: #ffffff;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 400;
  text-align: left;
  cursor: pointer;
}

.evr-measures-summary {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.evr-measures-arrow {
  flex: 0 0 auto;
  color: #111827;
  font-size: 15px;
  line-height: 1;
}

.evr-measures.is-open .evr-measures-arrow {
  transform: rotate(180deg);
}

.evr-measures-panel {
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  z-index: 40;
  border: 1px solid #2f7d32;
  background: #ffffff;
  max-height: 160px;
  overflow-y: auto;
  padding: 6px 0;
}

.evr-measures-option {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 7px 12px;
  color: #111827;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 400;
  cursor: pointer;
}

.evr-measures-option:hover {
  background: #f5f9f2;
}

.evr-measures-option input {
  margin: 2px 0 0;
  width: 16px;
  height: 16px;
  accent-color: #2f7d32;
  flex: 0 0 16px;
}


/* Checkout/Tabs Feinschliff 1.0.300 */
.evr-tabs {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  border-radius: 0 !important;
}

.evr-tab {
  min-height: 44px !important;
  padding: 9px 7px 9px 31px !important;
  font-size: 11px !important;
  line-height: 1.12 !important;
  white-space: nowrap !important;
}

.evr-tab::before {
  left: 8px !important;
  width: 18px !important;
  height: 18px !important;
  font-size: 10px !important;
}

@media (max-width: 900px) {
  .evr-tabs {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    overflow-x: auto;
  }

  .evr-tab {
    border-right: 1px solid #e5e7eb !important;
    border-bottom: 0 !important;
    font-size: 10px !important;
    padding-left: 27px !important;
  }
}

.evr-checkout-title {
  margin: 0 0 14px;
  color: #2f7d32 !important;
  font-size: 17px !important;
  line-height: 1.2;
  font-weight: 600 !important;
}

.evr-checkout-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 1fr);
  gap: 26px;
  align-items: start;
  margin-top: 26px;
}

.evr-consent-card {
  max-width: none !important;
  margin: 0 !important;
}

.evr-consent-card h4,
.evr-service-card h4 {
  margin: 0 0 12px;
  color: #111827;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 500;
}

.evr-consent-row {
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 8px !important;
  margin: 0 0 11px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

.evr-consent-row input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 1px 0 0 0 !important;
  border-radius: 3px !important;
}

.evr-consent-row input[type="checkbox"]:checked {
  box-shadow: inset 0 0 0 3px #ffffff !important;
}

.evr-service-card {
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 18px;
}

.evr-service-note {
  margin: 12px 0 0;
  color: #111827;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 400;
}

@media (max-width: 900px) {
  .evr-checkout-bottom {
    grid-template-columns: 1fr;
  }
}


/* Verbrauchsboxen wie Vorlage 1.0.300 */
.evr-choice-grid-three {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 14px 0 18px !important;
}

.evr-consumption-card {
  min-height: 260px;
  padding: 20px 20px 18px !important;
  border: 1px solid #dbe3ee !important;
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .03);
}

.evr-consumption-card.is-selected {
  border-color: #6AA443 !important;
  box-shadow: 0 0 0 2px rgba(106, 164, 67, .22);
  background: #f7fbf2 !important;
}

.evr-consumption-card h3 {
  margin: 12px 0 8px;
  color: #2f641f !important;
  font-size: 21px;
  line-height: 1.15;
  font-weight: 800;
}

.evr-consumption-card p {
  margin: 0 0 14px;
  color: #111827;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 400;
}

.evr-consumption-card .evr-badge {
  background: #eaf5e1;
  color: #2f641f;
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  padding: 5px 10px;
}

.evr-green-check {
  color: #256d2a !important;
  font-weight: 700 !important;
}

.evr-brown-note {
  color: #8b3a0a !important;
  font-weight: 700 !important;
}

.evr-card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 15px;
  border: 0;
  border-radius: 9px;
  background: #6AA443;
  color: #ffffff;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 700;
  cursor: pointer;
}

.evr-card-btn-disabled {
  background: #aeb9c8 !important;
  cursor: not-allowed;
}

.evr-ki-training {
  margin-top: 12px;
  color: #c94b4b;
  font-size: 14px;
  line-height: 1.32;
  font-weight: 700;
}

.evr-mode-radio {
  display: none !important;
}

@media (max-width: 900px) {
  .evr-choice-grid-three {
    grid-template-columns: 1fr !important;
  }
}


/* Verbrauch Gliederung/Responsive/Readonly 1.0.300 */
.evr-tab {
  font-size: 13px !important;
}

@media (max-width: 900px) {
  .evr-tab {
    font-size: 12px !important;
  }
}

.evr-consumption-section {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 26px 18px 18px;
  margin: 26px 0 18px;
}

.evr-consumption-legend {
  position: absolute;
  top: -14px;
  left: 18px;
  padding: 0 8px;
  background: #ffffff;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
}

.evr-heating-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.evr-heating-table {
  width: 100%;
  table-layout: fixed;
  min-width: 860px;
}

.evr-heating-table th,
.evr-heating-table td {
  font-size: 13px;
  vertical-align: top;
}

.evr-heating-table th:nth-child(1),
.evr-heating-table td:nth-child(1) {
  width: 190px;
}

.evr-heating-table th:nth-child(2),
.evr-heating-table td:nth-child(2) {
  width: 210px;
}

.evr-heating-table th:nth-child(3),
.evr-heating-table td:nth-child(3) {
  width: 150px;
}

.evr-heating-table th:nth-child(4),
.evr-heating-table td:nth-child(4),
.evr-heating-table th:nth-child(5),
.evr-heating-table td:nth-child(5) {
  width: 115px;
}

.evr-heating-table th:nth-child(6),
.evr-heating-table td:nth-child(6) {
  width: 130px;
}

.evr-heating-table th:nth-child(7),
.evr-heating-table td:nth-child(7) {
  width: 60px;
}

.evr-heating-table .evr-input,
.evr-heating-table .evr-select {
  width: 100%;
  min-width: 0;
  font-size: 13px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.evr-readonly-field,
.evr-readonly-field:disabled,
.evr-readonly-field[readonly] {
  background: #f8fafc !important;
  color: #475569 !important;
  opacity: 1 !important;
  cursor: not-allowed;
}

.evr-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.evr-summary-grid > div {
  border: 1px solid #dbe3ee;
  background: #f8fafc;
  padding: 10px;
}

.evr-summary-grid strong {
  display: block;
  color: #111827;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
}

.evr-summary-grid span {
  display: block;
  color: #2f7d32;
  font-size: 14px;
  font-weight: 700;
}

@media (max-width: 760px) {
  .evr-heating-table {
    min-width: 0;
    table-layout: auto;
  }

  .evr-heating-table thead {
    display: none;
  }

  .evr-heating-table,
  .evr-heating-table tbody,
  .evr-heating-table tr,
  .evr-heating-table td {
    display: block;
    width: 100% !important;
  }

  .evr-heating-table tr {
    border: 1px solid #dbe3ee;
    padding: 10px;
    margin-bottom: 12px;
    background: #ffffff;
  }

  .evr-heating-table td {
    border: 0 !important;
    padding: 6px 0 !important;
  }

  .evr-heating-table td::before {
    content: attr(data-label);
    display: block;
    color: #475569;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 4px;
  }

  .evr-summary-grid {
    grid-template-columns: 1fr;
  }

  .evr-consumption-section {
    padding-left: 12px;
    padding-right: 12px;
  }
}


/* Verbrauch Feinschliff 1.0.300 */
.evr-choice-card,
.evr-consumption-card,
.evr-card-btn,
.evr-btn,
.evr-card-btn-disabled {
  border-radius: 0 !important;
}

.evr-actions {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center;
  width: 100%;
}

.evr-actions .evr-btn.gray {
  margin-right: auto !important;
}

.evr-actions .evr-btn:not(.gray) {
  margin-left: auto !important;
}

.evr-actions .evr-btn.gray + .evr-btn:not(.gray) {
  margin-left: auto !important;
}

.evr-heating-table th:nth-child(1),
.evr-heating-table td:nth-child(1) {
  width: 200px;
}

.evr-heating-table th:nth-child(2),
.evr-heating-table td:nth-child(2) {
  width: 230px;
}

.evr-heating-table th:nth-child(3),
.evr-heating-table td:nth-child(3) {
  width: 150px;
}

.evr-heating-table th:nth-child(4),
.evr-heating-table td:nth-child(4),
.evr-heating-table th:nth-child(5),
.evr-heating-table td:nth-child(5) {
  width: 125px;
}

.evr-heating-table th:nth-child(6),
.evr-heating-table td:nth-child(6) {
  width: 60px;
}

.evr-heating-table {
  min-width: 830px;
}

/* Energetische Maßnahmen Dropdown stabil */
.evr-measures {
  position: relative;
  z-index: 50;
}

.evr-measures.is-open {
  z-index: 200;
}

.evr-measures-panel {
  z-index: 9999 !important;
}

.evr-measures-toggle {
  border-radius: 0 !important;
}


/* Überschriften/Checkout Feinschliff 1.0.300 */
.evr-panel > h2,
.evr-checkout-title {
  margin: 0 0 14px !important;
  color: #2f7d32 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

.evr-consumption-card h3,
.evr-consumption-card h4 {
  margin: 12px 0 8px !important;
  color: #2f641f !important;
  font-size: 18px !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

.evr-consumption-card p {
  font-size: 14px !important;
  line-height: 1.34 !important;
}

.evr-consent-card h4,
.evr-service-card h4 {
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: #2f7d32 !important;
}


/* Kennwertskala Integration 1.0.300 */
.evr-scale-card {
  margin: 18px 0 20px;
  padding: 16px 14px 8px;
  border: 1px solid #b7e1b1;
  background: #ffffff;
}

.evr-scale-title {
  margin: 0 0 4px;
  color: #2f7d32;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 700;
}

.evr-scale-card .epfk-scale-wrap{
  width:100%;
  height:100%;
  min-height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin:0;
}

.evr-scale-card .epfk-scale {
  width: 760px;
}


/* Ergebnis-Vorlage + Gebäude-Fieldsets 1.0.300 */
.evr-building-main {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.evr-building-section {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 28px 18px 18px;
  margin: 0 0 28px;
}

.evr-building-legend {
  position: absolute;
  top: -14px;
  left: 18px;
  padding: 0 8px;
  background: #ffffff;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
}

.evr-result-indication-card {
  border: 1px solid #2f7d32;
  background: #f5f9f2;
  padding: 0 10px 34px;
}

.evr-result-indication-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.48fr) minmax(480px, 0.72fr);
  gap: 24px;
  align-items: start;
}

.evr-result-form-col,
.evr-result-scale-col {
  position: relative;
  padding-top: 0;
}

.evr-result-legend {
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
  margin: 0 0 4px;
}

.evr-result-form-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0 0 14px;
}

.evr-result-form-field > span {
  color: #111827;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 400;
}

.evr-result-form-field input {
  width: 100%;
  height: 38px;
  border: 1px solid #2f7d32;
  background: #ffffff;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 400;
  padding: 7px 10px;
  border-radius: 4px;
}

.evr-result-addon {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.evr-result-addon input {
  border-right: 0;
  border-radius: 4px 0 0 4px;
}

.evr-result-addon b {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 78px;
  height: 38px;
  padding: 0 10px;
  border: 1px solid #2f7d32;
  background: #f8fafc;
  color: #2f7d32;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 700;
  border-radius: 0 4px 4px 0;
  white-space: nowrap;
}

.evr-result-small-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 8px;
}

.evr-hidden-value {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.evr-result-scale-col {
  padding-top: 0;
}

.evr-result-scale-col .evr-scale-card {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

.evr-result-scale-col .evr-scale-title {
  display: none !important;
}

.evr-result-scale-col .epfk-scale-wrap{
  width:100%;
  height:100%;
  min-height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin:0;
}

.evr-result-scale-col .epfk-scale {
  width: 100%;
  max-width: 760px;
}

.evr-result-hint-box {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  margin-top: 26px;
  padding: 24px 18px 22px;
  border-radius: 10px;
}

.evr-result-hint-legend {
  position: absolute;
  top: -14px;
  left: 18px;
  padding: 0 8px;
  background: #ffffff;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
}

.evr-result-hint-box p {
  margin: 0;
  color: #111827;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
}

@media (max-width: 980px) {
  .evr-result-indication-grid {
    grid-template-columns: 1fr;
  }

  .evr-result-scale-col .epfk-scale {
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  .evr-result-small-grid {
    grid-template-columns: 1fr;
  }

  .evr-result-indication-card {
    padding-left: 8px;
    padding-right: 8px;
  }
}


/* Checkout Rahmenboxen + Titel-CSV + gelbe Hinweisbox 1.0.300 */
.evr-checkout-card {
  padding-top: 0 !important;
}

.evr-checkout-frame {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 28px 18px 18px;
  margin: 0 0 24px;
}

.evr-checkout-legend {
  position: absolute;
  top: -14px;
  left: 18px;
  padding: 0 8px;
  background: #ffffff;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
}

.evr-customer-card {
  width: 100%;
}

.evr-checkout-bottom {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 1fr) !important;
  gap: 26px !important;
  align-items: start !important;
  margin-top: 24px !important;
}

.evr-consent-card,
.evr-service-card,
.evr-order-note-card {
  max-width: none !important;
  margin: 0 !important;
  border: 1px solid #b7e1b1 !important;
  background: #ffffff !important;
  padding: 28px 18px 18px !important;
}

.evr-checkout-side-stack {
  display: grid !important;
  gap: 26px !important;
  align-content: start !important;
}

.evr-order-note-card .evr-textarea {
  min-height: 120px !important;
  height: 120px !important;
  resize: vertical !important;
}

.evr-service-note-yellow {
  margin: 14px 0 0 !important;
  padding: 12px 14px !important;
  border-left: 5px solid #ffc46b !important;
  background: #fff0d5 !important;
  color: #7c4a00 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

@media (max-width: 900px) {
  .evr-checkout-bottom {
    grid-template-columns: 1fr !important;
  }
}


/* Checkout Feinschliff 1.0.300 */
.evr-checkout-grid-name {
  grid-template-columns: 150px 120px minmax(0, 1fr) minmax(0, 1fr) !important;
}

.evr-checkout-grid-name .evr-select,
.evr-checkout-grid-name .evr-input {
  min-width: 0 !important;
}

.evr-checkout-frame .evr-consent-card h4,
.evr-checkout-frame h4 {
  display: none !important;
}

.evr-consent-card,
.evr-service-card,
.evr-order-note-card {
  padding-top: 26px !important;
}

.evr-service-note-yellow {
  background: #fff0d5 !important;
  border-left: 5px solid #ffc46b !important;
  color: #7c4a00 !important;
}

@media (max-width: 900px) {
  .evr-checkout-grid-name {
    grid-template-columns: 1fr !important;
  }
}


/* 1.0.300 Ergebnis-Dreifachboxen + normale Gebäude-Überschriften */
.evr-building-legend {
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.evr-result-layout {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.evr-result-indication-card {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

.evr-result-box {
  position: relative;
  border: 1px solid #b7e1b1;
  background: #f5f9f2;
  padding: 26px 18px 18px;
}

.evr-result-box-form,
.evr-result-box-scale {
  min-height: 100%;
}

.evr-result-box-form .evr-result-form-col,
.evr-result-box-scale .evr-result-scale-col {
  padding-top: 0;
}

.evr-result-legend,
.evr-result-hint-legend {
  position: absolute;
  top: -14px;
  left: 18px;
  padding: 0 8px;
  background: #f5f9f2;
  color: #2f7d32;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
  margin: 0;
}

.evr-result-indication-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.48fr) minmax(420px, 0.68fr);
  gap: 24px;
  align-items: start;
}

.evr-result-scale-col .epfk-scale {
  width: 100%;
  max-width: 690px;
}

.evr-result-hint-box {
  margin-top: 0 !important;
  border-radius: 0 !important;
}

.evr-result-hint-box p {
  margin-top: 8px;
}

@media (max-width: 980px) {
  .evr-result-indication-grid {
    grid-template-columns: 1fr;
  }
  .evr-result-scale-col .epfk-scale {
    max-width: 100%;
  }
}

@media (max-width: 620px) {
  .evr-result-box {
    padding-left: 10px;
    padding-right: 10px;
  }
}


/* 1.0.300 Upload/Ergebnis/Checkout/Gebäude */
.evr-upload-full .evr-upload-drop,
.evr-upload-photo-row .evr-upload-drop {
  min-height: 72px !important;
}

.evr-upload-sidebar {
  gap: 0 !important;
}

.evr-checkout-title {
  margin-bottom: 30px !important;
}

.evr-checkout-card {
  padding-top: 0 !important;
}

.evr-checkout-grid-4 {
  display: grid;
  grid-template-columns: 150px minmax(180px, 1.25fr) minmax(190px, 1fr) minmax(190px, 1fr);
  gap: 10px 12px;
  margin-bottom: 10px;
}

.evr-col-span-2 {
  grid-column: span 2;
}

.evr-col-1 { grid-column: 1; }
.evr-col-2 { grid-column: 2; }
.evr-col-3 { grid-column: 3; }
.evr-col-4 { grid-column: 4; }

@media (max-width: 900px) {
  .evr-checkout-grid-4 {
    grid-template-columns: 1fr !important;
  }
  .evr-col-span-2,
  .evr-col-1,
  .evr-col-2,
  .evr-col-3,
  .evr-col-4 {
    grid-column: auto !important;
  }
}

.evr-result-top-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 26px;
  align-items: start;
}

.evr-result-layout {
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.evr-result-indication-grid {
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}

.evr-result-box-scale .epfk-scale {
  max-width: 560px !important;
}

@media (max-width: 980px) {
  .evr-result-top-grid {
    grid-template-columns: 1fr;
  }
  .evr-result-box-scale .epfk-scale {
    max-width: 100% !important;
  }
}

.evr-building-sidebar {
  gap: 5px !important;
}

.evr-assistant-note {
  margin-top: 0 !important;
}


/* 1.0.300 Checkout: Anrede + Titel = Breite von Anlass der Ausstellung */
.evr-checkout-grid-name {
  gap: 10px 12px !important;
  grid-template-columns:
    calc((100% - 60px) / 6)
    calc((100% - 60px) / 6)
    calc((100% - 24px) / 3)
    calc((100% - 24px) / 3) !important;
}

@media (max-width: 900px) {
  .evr-checkout-grid-name {
    grid-template-columns: 1fr !important;
  }
}


/* 1.0.300 Baujahr Range Fehlermeldung */
.evr-field-error {
  display: none;
  margin-top: 6px;
  color: #b91c1c;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 600;
}

.evr-input-error,
.evr-input-error:focus {
  border-color: #b91c1c !important;
  box-shadow: 0 0 0 1px rgba(185, 28, 28, .18) !important;
}


/* 1.0.300 Verbrauchsausweis-Zulässigkeit Hinweisbox */
.evr-assistant-note.evr-assistant-note-ok {
  background: #d9ebd7 !important;
  color: #1f5f24 !important;
  border-left-color: #6AA443 !important;
  font-weight: 700 !important;
}


/* 1.0.300 Tooltip über Maßnahmen-Dropdown */
.evr-info {
  z-index: 10020 !important;
}

.evr-info::before,
.evr-info::after {
  z-index: 10021 !important;
}


/* 1.0.300 Maßnahmen-Dropdown/Tooltip-Stapelreihenfolge */
.evr-info {
  z-index: auto !important;
}

.evr-info::before,
.evr-info::after {
  z-index: 10021 !important;
}

.evr-measures,
.evr-measures.is-open {
  z-index: 10000 !important;
}

.evr-measures-panel {
  z-index: 10010 !important;
}

/* 1.0.300 Aktive Tooltips über geöffnetem Maßnahmen-Dropdown */
.evr-field {
  position: relative;
}

.evr-info {
  z-index: auto !important;
}

.evr-info::before,
.evr-info::after {
  z-index: 10060 !important;
}

.evr-field:has(.evr-info:hover),
.evr-field:has(.evr-info:focus),
.evr-field:has(.evr-info:focus-visible) {
  z-index: 10055 !important;
}

.evr-field:has(.evr-info:hover) .evr-info,
.evr-field:has(.evr-info:focus) .evr-info,
.evr-field:has(.evr-info:focus-visible) .evr-info {
  z-index: 10060 !important;
}

.evr-measures,
.evr-measures.is-open {
  z-index: 10000 !important;
}

.evr-measures-panel {
  z-index: 10010 !important;
}

/* 1.0.300 Heizungstabelle ohne sichtbaren Energieträger */
.evr-plant-fuel-hidden {
  display: none !important;
}

.evr-heating-table {
  min-width: 760px !important;
}

.evr-heating-table th:nth-child(1),
.evr-heating-table td:nth-child(1) {
  width: 240px !important;
}

.evr-heating-table th:nth-child(2),
.evr-heating-table td:nth-child(2),
.evr-heating-table th:nth-child(3),
.evr-heating-table td:nth-child(3) {
  width: 150px !important;
}

.evr-heating-table th:nth-child(4),
.evr-heating-table td:nth-child(4) {
  width: 180px !important;
}

.evr-heating-table th:nth-child(5),
.evr-heating-table td:nth-child(5) {
  width: 60px !important;
}

/* 1.0.300 Interne Berechnung */
.evr-internal-output {
  margin-top: 14px;
}

.evr-internal-card {
  border: 1px solid #b7e1b1;
  background: #ffffff;
  padding: 18px;
}

.evr-internal-table td:first-child {
  width: 260px;
  font-weight: 800;
  color: #111827;
}

/* 1.0.300 Interne Berechnung Klimafaktoren */
.evr-internal-climate-list {
  margin-top: 8px;
  padding-left: 14px;
  font-size: 13px;
  line-height: 1.45;
  color: #334155;
}

/* 1.0.300 Leerstand-Tabelle und primärer Verbrauchsrechner-CTA */
.evr-vacancy-table th:nth-child(1),
.evr-vacancy-table td:nth-child(1),
.evr-vacancy-table th:nth-child(2),
.evr-vacancy-table td:nth-child(2) {
  width: 24%;
}

.evr-vacancy-table th:nth-child(3),
.evr-vacancy-table td:nth-child(3) {
  width: 18%;
}

.evr-vacancy-table th:nth-child(4),
.evr-vacancy-table td:nth-child(4) {
  width: 28%;
}

.evr-vacancy-section [data-add-vacancy] {
  margin-top: 12px;
}

.evr-calc-open-btn {
  background: var(--evr-green) !important;
  border-color: var(--evr-green) !important;
  color: #ffffff !important;
}


/* 1.0.300 KI-Assistent Integration */
.evr-ai-assistant-modal {
  position: fixed;
  inset: 0;
  z-index: 1000000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

.evr-ai-assistant-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .55);
  backdrop-filter: blur(2px);
}

.evr-ai-assistant-dialog {
  position: relative;
  width: min(980px, 96vw);
  max-height: min(860px, 92vh);
  background: #f5f9f2;
  border-radius: 18px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .35);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.evr-ai-assistant-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: #ffffff;
  border-bottom: 1px solid #dbe3ee;
  color: #2f641f;
  font-weight: 900;
}

.evr-ai-assistant-head span {
  flex: 1 1 auto;
  color: #475569;
  font-size: 13px;
  font-weight: 700;
}

.evr-ai-assistant-close {
  appearance: none;
  width: 38px;
  height: 38px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #f8fafc;
  color: #111827;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.evr-ai-assistant-body {
  overflow: auto;
  padding: 18px;
}

.evr-ai-assistant-mount .enerval-ca-card {
  margin: 0;
}

.evr-ki-card {
  cursor: pointer;
}

.evr-ki-card .evr-card-btn {
  pointer-events: auto;
}

@media (max-width: 760px) {
  .evr-ai-assistant-modal {
    padding: 8px;
  }

  .evr-ai-assistant-dialog {
    width: 100%;
    max-height: 96vh;
    border-radius: 14px;
  }

  .evr-ai-assistant-head {
    align-items: flex-start;
    flex-wrap: wrap;
  }
}

/* 1.0.300 Checkout bedingte Felder */
.evr-checkout-extra-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  margin: 0 0 10px;
}

.evr-checkout-extra-grid .evr-upload-drop {
  min-height: 38px;
  border-style: solid;
}

@media (max-width: 900px) {
  .evr-checkout-extra-grid {
    grid-template-columns: 1fr;
  }
}

/* 1.0.300 KI-Box im Verbrauch sichtbar halten */
.evr-choice-grid.evr-choice-grid-three {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.evr-choice-grid-three .evr-ki-card {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  order: -1;
}

@media (max-width: 900px) {
  .evr-choice-grid.evr-choice-grid-three {
    grid-template-columns: 1fr !important;
  }
}

/* 1.0.300 Checkout Zusatzfelder volle Breite */
.evr-checkout-title {
  margin-bottom: 30px !important;
}

.evr-checkout-extra-grid {
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  margin-bottom: 22px !important;
}

.evr-checkout-extra-grid .evr-checkout-field {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.evr-checkout-extra-grid .evr-input,
.evr-checkout-extra-grid .evr-upload-drop {
  width: 100% !important;
}

/* 1.0.300 Auftragsnummer Gebäude */
.evr-building-order-number {
  margin: 8px 0 0;
  color: #64748b;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 500;
  text-align: left;
}

/* 1.0.300 Checkout Auftraggeber/Rechnungsempfänger */
.evr-invoice-card {
  margin-top: 22px !important;
}

.evr-checkout-radio-field {
  margin-bottom: 16px !important;
}

.evr-radio-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}

.evr-radio-option {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 6px 12px;
  border: 1px solid #2f7d32;
  background: #ffffff;
  color: #111827;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.evr-radio-option input {
  width: 16px;
  height: 16px;
  accent-color: #2f7d32;
}

.evr-invoice-different-fields {
  margin-bottom: 10px;
}

.evr-invoice-company-field {
  grid-column: span 2;
}

@media (max-width: 900px) {
  .evr-invoice-company-field {
    grid-column: auto;
  }
}

/* 1.0.300 Kennwertskala Frontend-Layout */
.evr-result-box-scale .epfk-scale,
.evr-result-scale-col .epfk-scale,
.evr-scale-card .epfk-scale {
  width: 760px !important;
  max-width: 100% !important;
}
.evr-result-box-scale .epfk-info,
.evr-result-scale-col .epfk-info,
.evr-scale-card .epfk-info {
  color: #111827 !important;
}

/* 1.0.300 Deutsche Kalenderfelder für Leerstand */
.evr-date-input {
  color-scheme: light;
}

/* 1.0.300 Ergebnis-Hinweis im Blocksatz */
.evr-result-justified {
  text-align: justify !important;
  text-align-last: left !important;
  hyphens: auto;
}



/* 1.0.300 Hinweise direkt in den Verbrauchsboxen statt gelber Hinweisboxen */
.evr-consumption-note {
  margin: 8px 0 14px;
  color: #111827;
  font-size: 15px;
  line-height: 1.45;
  font-weight:  400;
}


/* 1.0.300 Gebäude-Tab mit grünem Hintergrund wie Ergebnis */
.evr-building-section {
  background: #f5f9f2 !important;
}

.evr-building-legend {
  background: #f5f9f2 !important;
}

.evr-building-section .evr-input,
.evr-building-section .evr-select,
.evr-building-section .evr-textarea,
.evr-building-section .evr-input-addon,
.evr-building-section .evr-input-addon input,
.evr-building-section .evr-input-addon span,
.evr-building-section .evr-select[multiple] {
  background: #ffffff !important;
}


/* 1.0.300 Verbrauch-Tab mit grünem Hintergrund wie Ergebnis */
.evr-panel[data-panel="consumption"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-card,
.evr-panel[data-panel="consumption"] .evr-consumption-section {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-legend,
.evr-panel[data-panel="consumption"] .evr-badge {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] .evr-input,
.evr-panel[data-panel="consumption"] .evr-select,
.evr-panel[data-panel="consumption"] .evr-textarea,
.evr-panel[data-panel="consumption"] .evr-input-addon,
.evr-panel[data-panel="consumption"] .evr-input-addon input,
.evr-panel[data-panel="consumption"] .evr-input-addon span,
.evr-panel[data-panel="consumption"] .evr-heating-table th,
.evr-panel[data-panel="consumption"] .evr-heating-table td,
.evr-panel[data-panel="consumption"] .evr-vacancy-table th,
.evr-panel[data-panel="consumption"] .evr-vacancy-table td,
.evr-panel[data-panel="consumption"] .evr-consumption-summary,
.evr-panel[data-panel="consumption"] .evr-summary-grid > div {
  background: #ffffff !important;
}


/* 1.0.300 Verbrauch-Tab: außen grün, Boxen innen weiß */
.evr-panel[data-panel="consumption"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-card,
.evr-panel[data-panel="consumption"] .evr-consumption-section,
.evr-panel[data-panel="consumption"] .evr-consumption-summary,
.evr-panel[data-panel="consumption"] .evr-summary-grid > div {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-legend {
  background: #ffffff !important;
}


/* 1.0.300 Hinweistexte schwarz und normal */
.evr-consumption-note { color: #111827 !important; font-weight: 400 !important; }


/* 1.0.300 Gebäude + Upload: grüner Hintergrund, weiße Felder */
.evr-panel[data-panel="building"],
.evr-panel[data-panel="upload"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="building"] .evr-building-section,
.evr-panel[data-panel="upload"] .evr-upload-card {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="building"] .evr-building-legend,
.evr-panel[data-panel="upload"] .evr-upload-legend {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="building"] .evr-input,
.evr-panel[data-panel="building"] .evr-select,
.evr-panel[data-panel="building"] .evr-textarea,
.evr-panel[data-panel="building"] .evr-input-addon,
.evr-panel[data-panel="building"] .evr-input-addon input,
.evr-panel[data-panel="building"] .evr-input-addon span,
.evr-panel[data-panel="building"] .evr-select[multiple],
.evr-panel[data-panel="upload"] .evr-upload-drop,
.evr-panel[data-panel="upload"] .evr-upload-file,
.evr-panel[data-panel="upload"] .evr-upload-field small {
  background: #ffffff !important;
}


/* 1.0.300 Modernisierungen: grüner Hintergrund, eckige Box, Überschrift ausblenden */
.evr-panel[data-panel="modernization"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="modernization"] .evr-modern-card {
  background: #f5f9f2 !important;
  border-radius: 0 !important;
}

.evr-panel[data-panel="modernization"] .evr-modern-legend {
  display: none !important;
}

.evr-panel[data-panel="modernization"] .evr-modern-content {
  padding-top: 28px !important;
}


/* 1.0.300 Checkout: grüner Hintergrund wie Ergebnis, Titel ausblenden */
.evr-panel[data-panel="checkout"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-card,
.evr-panel[data-panel="checkout"] .evr-checkout-frame {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-legend {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="checkout"] .evr-input,
.evr-panel[data-panel="checkout"] .evr-select,
.evr-panel[data-panel="checkout"] .evr-textarea,
.evr-panel[data-panel="checkout"] .evr-upload-drop,
.evr-panel[data-panel="checkout"] .evr-upload-file,
.evr-panel[data-panel="checkout"] .evr-radio-pill {
  background: #ffffff !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-title {
  display: none !important;
}


/* 1.0.300 Bearbeitungszeit als Optionsfeld */
.evr-service-radio-field .evr-radio-row {
  gap: 12px !important;
}

.evr-service-radio-field .evr-radio-option {
  min-width: 190px;
}


/* 1.0.300 Checkout Außenrand weiß */
.evr-panel[data-panel="checkout"] {
  border-color: #ffffff !important;
}


/* 1.0.300 Checkout: Bereich um die Boxen weiß */
.evr-panel[data-panel="checkout"] {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-card {
  background: #ffffff !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-frame {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="checkout"] .evr-checkout-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Modernisierungen: Bereich um die Box weiß */
.evr-panel[data-panel="modernization"] {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

.evr-panel[data-panel="modernization"] .evr-modern-card {
  background: #ffffff !important;
}

.evr-panel[data-panel="modernization"] .evr-modern-frame {
  background: #f5f9f2 !important;
}


/* 1.0.300 Upload: Bereich um die Boxen weiß */
.evr-panel[data-panel="upload"] {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

.evr-panel[data-panel="upload"] .evr-upload-main {
  background: #ffffff !important;
}

.evr-panel[data-panel="upload"] .evr-upload-card {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="upload"] .evr-upload-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Modernisierungen: innen grün */
.evr-panel[data-panel="modernization"] .evr-modern-card {
  background: #f5f9f2 !important;
}


/* 1.0.300 Gebäude: außen weiß, innen grün */
.evr-panel[data-panel="building"] {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

.evr-panel[data-panel="building"] .evr-building-main {
  background: #ffffff !important;
}

.evr-panel[data-panel="building"] .evr-building-section,
.evr-panel[data-panel="building"] .evr-building-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Verbrauch-Startbox wie Ergebnis */
.evr-consumption-start-box {
  margin-bottom: 22px;
}

.evr-consumption-start-box .evr-choice-grid-three {
  margin: 0;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-result-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Verbrauch: Umfeld außerhalb der drei Startboxen weiß */
.evr-panel[data-panel="consumption"] {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-result-legend {
  background: #ffffff !important;
}


/* 1.0.300 Modernisierungen: Rand-Label wieder sichtbar */
.evr-panel[data-panel="modernization"] .evr-modern-legend {
  display: inline-block !important;
  background: #f5f9f2 !important;
}


/* 1.0.300 Modernisierungen: Label auf die Linie setzen wie bei Upload */
.evr-panel[data-panel="modernization"] .evr-modern-legend {
  display: inline-block !important;
  position: absolute !important;
  top: -15px !important;
  left: 18px !important;
  margin: 0 !important;
  padding: 0 8px !important;
  background: #f5f9f2 !important;
}


/* 1.0.300 Verbrauch: Außen weiß, Sektionen innen grün */
.evr-panel[data-panel="consumption"] {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-result-legend {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-section,
.evr-panel[data-panel="consumption"] .evr-consumption-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Verbrauch: CTA-Bereich weiß, restlicher manueller Bereich grün */
.evr-panel[data-panel="consumption"] {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-result-legend,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-choice-grid,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-choice-grid-three {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] {
  background: #f5f9f2 !important;
}

.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-section,
.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Tabs: Nummern und Beschriftungen zentriert */
.evr-tab {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-align: center !important;
  padding: 9px 10px !important;
}

.evr-tab::before {
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}

@media (max-width: 900px) {
  .evr-tab {
    padding: 9px 8px !important;
  }
}


/* 1.0.300 Verbrauch: CTA-Umfeld weiß, manueller Bereich grün */
.evr-panel[data-panel="consumption"] {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] .evr-consumption-start-box,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-result-legend,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-choice-grid,
.evr-panel[data-panel="consumption"] .evr-consumption-start-box .evr-choice-grid-three,
.evr-panel[data-panel="consumption"] .evr-actions {
  background: #ffffff !important;
}

.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] {
  background: #f5f9f2 !important;
  padding: 1px 0 1px !important;
}

.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-section,
.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-legend {
  background: #f5f9f2 !important;
}


/* 1.0.300 Modernisierungen: Label-Schriftgröße wie Upload */
.evr-panel[data-panel="modernization"] .evr-modern-legend {
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}


/* 1.0.300 Gebäude: gekühlter Anteil bedingt sichtbar */
.evr-cooling-share-field {
  display: block;
}

.evr-cooling-share-field.evr-hidden {
  display: none !important;
}


/* 1.0.300 Auftragsnummer + Verbrauchs-Badges */
.evr-building-order-number {
  margin: 12px 0 0 -6px;
}

.evr-consumption-card .evr-badge {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  max-width: 100%;
}


/* 1.0.300 Tooltip + CTA Hintergrund auf einheitliches Grün */
.evr-info::after {
  background: #d9ebd7 !important;
  color: #1f5f24 !important;
  border-color: #6AA443 !important;
}

.evr-info::before {
  border-color: #d9ebd7 transparent transparent transparent !important;
}

.evr-btn:not(.secondary):not(.gray),
.evr-card-btn {
  background: #d9ebd7 !important;
  border-color: #6AA443 !important;
  color: #1f5f24 !important;
}

.evr-btn:not(.secondary):not(.gray):hover,
.evr-btn:not(.secondary):not(.gray):focus,
.evr-card-btn:hover,
.evr-card-btn:focus {
  background: #cfe4cc !important;
  color: #1f5f24 !important;
}


/* 1.0.300 Seitenbox: Verbrauchsausweis voraussichtlich nicht zulässig */
.evr-assistant-note.evr-assistant-note-denied {
  background: #fff0d5 !important;
  color: #925f00 !important;
  border-left-color: #ffc46b !important;
  font-weight: 700 !important;
}


/* 1.0.300 KI-Assistent: kein sofortiger Datei-Explorer + größeres Fenster */
.evr-ai-assistant-dialog {
  width: min(1180px, 98vw) !important;
  max-height: 96vh !important;
}

.evr-ai-assistant-body {
  padding: 22px !important;
}


/* 1.0.300 Verbrauch: manuelle Bereichsboxen außen weiß statt grün */
.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] {
  background: #ffffff !important;
  padding: 1px 0 1px !important;
}

.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-section,
.evr-panel[data-panel="consumption"] [data-mode-panel="manual"] .evr-consumption-legend {
  background: #ffffff !important;
}


/* 1.0.300 Heizungstabelle: neues Feld Anlage + Löschen auch bei erster Anlage */
.evr-heating-table {
  min-width: 980px !important;
}

.evr-heating-table th:nth-child(1),
.evr-heating-table td:nth-child(1) {
  width: 230px !important;
}

.evr-heating-table th:nth-child(2),
.evr-heating-table td:nth-child(2) {
  width: 180px !important;
}

.evr-heating-table th:nth-child(3),
.evr-heating-table td:nth-child(3),
.evr-heating-table th:nth-child(4),
.evr-heating-table td:nth-child(4) {
  width: 150px !important;
}

.evr-heating-table th:nth-child(5),
.evr-heating-table td:nth-child(5) {
  width: 190px !important;
}

.evr-heating-table th:nth-child(6),
.evr-heating-table td:nth-child(6) {
  width: 60px !important;
}

.evr-heating-table [data-plant-name] {
  background: #ffffff !important;
}


/* 1.0.300 KI-Auswertung: gleiche Öffnungs-/Modaltechnik wie Verbrauchsrechner */
.evr-ai-assistant-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1000000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
}

.evr-ai-assistant-dialog {
  position: relative !important;
  width: min(1380px, 96vw) !important;
  height: min(920px, 92vh) !important;
  max-height: none !important;
  background: #F5F9F2 !important;
  border-radius: 18px !important;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .35) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

.evr-ai-assistant-head {
  flex: 0 0 auto !important;
  min-height: 58px !important;
  padding: 12px 16px !important;
}

.evr-ai-assistant-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  padding: 18px !important;
  background: #F5F9F2 !important;
}

.evr-ai-assistant-mount {
  min-height: 100% !important;
}

.evr-ai-assistant-mount .enerval-ca-card {
  margin: 0 !important;
  min-height: 100% !important;
}

.evr-ai-assistant-mount .enerval-ca-card.enerval-ca-assistant-mode,
.evr-ai-assistant-mount .enerval-ca-card[data-enerval-ca-mode="assistant"] {
  margin-bottom: 0 !important;
}


/* 1.0.300: KI-Modal darf die Hauptseite/TABs nur bei aktiver Öffnung überlagern */
.evr-ai-assistant-modal.evr-hidden,
.evr-calculator-modal.evr-hidden {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.evr-ai-assistant-modal:not(.evr-hidden) {
  display: flex !important;
}

.evr-ai-assistant-mount {
  width: 100% !important;
}


/* 1.0.300 Heizungstabelle: horizontalen Scrollbalken entfernen */
.evr-heating-table-wrap,
.evr-consumption-section .evr-table-wrap {
  overflow-x: visible !important;
}

.evr-heating-table {
  min-width: 0 !important;
  width: 100% !important;
  table-layout: fixed !important;
}

.evr-heating-table th,
.evr-heating-table td {
  box-sizing: border-box !important;
}

.evr-heating-table th:nth-child(1),
.evr-heating-table td:nth-child(1) {
  width: 23% !important;
}

.evr-heating-table th:nth-child(2),
.evr-heating-table td:nth-child(2) {
  width: 15% !important;
}

.evr-heating-table th:nth-child(3),
.evr-heating-table td:nth-child(3),
.evr-heating-table th:nth-child(4),
.evr-heating-table td:nth-child(4) {
  width: 14% !important;
}

.evr-heating-table th:nth-child(5),
.evr-heating-table td:nth-child(5) {
  width: 24% !important;
}

.evr-heating-table th:nth-child(6),
.evr-heating-table td:nth-child(6) {
  width: 6% !important;
}

.evr-heating-table .evr-input,
.evr-heating-table .evr-btn {
  max-width: 100% !important;
}


/* 1.0.300 Verbrauch-Zusammenfassung: Hinweisbox grün wie Ergebnisbereich */
.evr-summary-alert,
.evr-consumption-summary .evr-summary-alert,
.evr-consumption-section[data-section="summary"] .evr-summary-alert {
  background: #f5f9f2 !important;
  border-color: #a9d8a4 !important;
  color: #111827 !important;
}


/* 1.0.300 Leerstand: Innenhintergrund grün wie Ergebnisbereich */
.evr-vacancy-section,
.evr-consumption-section[data-section="vacancy"],
.evr-section--vacancy {
  background: #f5f9f2 !important;
}


/* 1.0.300 Heizungstabelle: Übernahmestatus unter Gesamtsumme */
.evr-heating-table td[data-label="Gesamtsumme"] .evr-submit-note {
  margin-top: 8px !important;
  text-align: left !important;
  white-space: normal !important;
}


/* 1.0.300 Leerstand: Überschreitung deutlicher markieren */
.evr-vacancy-section [data-vacancy-limit-status] .evr-error {
  margin-top: 16px !important;
  background: #fff0f0 !important;
  border: 1px solid #d93025 !important;
  color: #9b1c1c !important;
  font-weight: 700 !important;
}


/* 1.0.300 Gebäude: Weiter-CTA bis Pflichtfelder vollständig sind deaktivieren */
.evr-btn[disabled],
.evr-btn.is-disabled {
  opacity: .45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}

.evr-required-hint {
  margin-top: 10px;
  color: #9b1c1c;
  font-weight: 700;
  font-size: 14px;
}

.evr-building-actions {
  margin-bottom: 0 !important;
}


/* 1.0.300 Auftragsnummer in den Checkout verschieben */
.evr-invoice-card {
  position: relative !important;
}

.evr-checkout-order-number {
  position: absolute;
  top: 24px;
  right: 28px;
  color: #687991;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.2;
  text-align: right;
  white-space: nowrap;
}

.evr-invoice-card .evr-checkout-radio {
  padding-right: 330px;
}

@media (max-width: 900px) {
  .evr-checkout-order-number {
    position: static;
    margin: 6px 0 18px;
    text-align: left;
    white-space: normal;
  }

  .evr-invoice-card .evr-checkout-radio {
    padding-right: 0;
  }
}


/* 1.0.300 Seitenbox: Nicht-zulässig-Hinweis rosarot */
.evr-assistant-note.evr-assistant-note-denied,
.evr-building-sidebar .evr-assistant-note-denied {
  background: #fde2e2 !important;
  border-left-color: #e25555 !important;
  color: #8f1f1f !important;
}

.evr-assistant-note.evr-assistant-note-denied strong,
.evr-building-sidebar .evr-assistant-note-denied strong {
  color: #8f1f1f !important;
}


/* 1.0.300 KI-Eignungsprüfung vor Upload */
.evr-ai-check-section {
  margin-top: 22px !important;
}

.evr-ai-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.evr-ai-check-question {
  background: #ffffff;
  border: 1px solid #a9d8a4;
  padding: 18px;
}

.evr-ai-check-question h4 {
  margin: 0 0 12px;
  color: #111827;
  font-size: 18px;
  font-weight: 800;
}

.evr-ai-check-options {
  display: grid;
  gap: 9px;
}

.evr-ai-check-option {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 10px;
  align-items: flex-start;
  padding: 10px 11px;
  border: 1px solid #d7e2d4;
  background: #ffffff;
  cursor: pointer;
}

.evr-ai-check-option:hover {
  border-color: #2f7d32;
}

.evr-ai-check-option input {
  margin-top: 3px;
}

.evr-ai-check-option strong {
  display: block;
  color: #111827;
  font-size: 15px;
  line-height: 1.25;
}

.evr-ai-check-option small {
  display: block;
  margin-top: 3px;
  color: #5b6676;
  font-size: 13px;
  line-height: 1.3;
}

.evr-ai-check-result {
  margin-top: 20px;
  padding: 18px 20px;
  border-left: 6px solid #a9d8a4;
  background: #ffffff;
  color: #111827;
  font-size: 16px;
  line-height: 1.45;
}

.evr-ai-check-result strong {
  color: #2b7a2e;
  font-size: 18px;
}

.evr-ai-check-result ul {
  margin: 12px 0 0 18px;
  padding: 0;
}

.evr-ai-check-result li {
  margin: 6px 0;
}

.evr-ai-check-result.is-ok {
  background: #d9ebd7;
  border-left-color: #4aa33b;
}

.evr-ai-check-result.is-warning {
  background: #fff4d8;
  border-left-color: #f4a52c;
}

.evr-ai-check-result.is-warning strong {
  color: #8a5200;
}

.evr-ai-check-result.is-blocked {
  background: #fde2e2;
  border-left-color: #e25555;
  color: #8f1f1f;
}

.evr-ai-check-result.is-blocked strong {
  color: #8f1f1f;
}

.evr-ai-check-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

@media (max-width: 900px) {
  .evr-ai-check-grid {
    grid-template-columns: 1fr;
  }
}


/* 1.0.300 Gekühlter Anteil: sichtbar, aber nur bei Kühlung = Ja aktiv */
.evr-input:disabled,
.evr-input[aria-disabled="true"] {
  background: #f7f8fa !important;
  color: #9ca3af !important;
  cursor: not-allowed !important;
}


/* 1.0.300 Gebäude: CTA aktiv, Pflichtfeldliste erst nach CTA-Klick */
.evr-building-validation {
  margin-top: 16px;
}

.evr-building-validation .evr-error ul {
  margin: 8px 0 0 20px;
  padding: 0;
}

.evr-building-validation .evr-error li {
  margin: 3px 0;
}

.evr-building-actions .evr-btn {
  opacity: 1 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}


/* 1.0.300 Zusammenfassung: Rohverbrauch und klimabereinigter Wert getrennt anzeigen */
.evr-summary-grid small {
  display: block;
  margin-top: 4px;
  color: #687991;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 600;
}


/* 1.0.300 Pflichtfeldliste im rechten Infoblock und nicht fett */
.evr-building-sidebar .evr-building-validation {
  margin-top: 12px !important;
}

.evr-building-sidebar .evr-building-validation .evr-error {
  margin: 0 !important;
  border: 1px solid #fecaca !important;
  border-left: 5px solid #e25555 !important;
  background: #fef2f2 !important;
  color: #991b1b !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

.evr-building-sidebar .evr-building-validation .evr-error p {
  margin: 0 0 8px !important;
  font-weight: 400 !important;
}

.evr-building-sidebar .evr-building-validation .evr-error ul {
  margin: 0 0 0 18px !important;
  padding: 0 !important;
}

.evr-building-sidebar .evr-building-validation .evr-error li {
  margin: 3px 0 !important;
  font-weight: 400 !important;
}


/* 1.0.300 Anmerkungsfeld im Checkout: kompakter, bei Bedarf vergrößerbar */
.evr-order-note-card .evr-textarea {
  min-height: 80px !important;
  height: 80px !important;
  resize: vertical !important;
}


/* 1.0.300 Auftragsnummer: normale Textgröße */
.evr-order-number,
.evr-building-order-number,
.evr-checkout-order-number,
[data-order-number],
[data-order-number-building],
[data-checkout-order-number] {
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}


/* 1.0.300 Upload Gebäudefotos: Foto 1 und 2 nebeneinander, Heizung darunter */
.evr-upload-photo-stack {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: start !important;
}

.evr-upload-photo-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  align-items: start !important;
}

.evr-upload-photo-row .evr-upload-drop {
  min-height: 120px !important;
}

.evr-upload-photo-row .evr-upload-example-card {
  min-height: 0 !important;
}

.evr-upload-photo-row:nth-child(3) {
  grid-column: 1 / -1 !important;
}

.evr-upload-photo-row:nth-child(3) .evr-upload-example-card {
  max-width: 560px;
}

@media (max-width: 1100px) {
  .evr-upload-photo-stack {
    grid-template-columns: 1fr !important;
  }
  .evr-upload-photo-row:nth-child(3) {
    grid-column: auto !important;
  }
}


/* 1.0.300 Upload-Felder kompakter: maximale Höhe 50px */
.evr-panel[data-panel="upload"] .evr-upload-drop,
.evr-panel[data-panel="checkout"] .evr-upload-drop {
  min-height: 50px !important;
  max-height: 50px !important;
}

.evr-panel[data-panel="upload"] .evr-upload-placeholder,
.evr-panel[data-panel="checkout"] .evr-upload-placeholder {
  min-height: 50px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

.evr-panel[data-panel="upload"] .evr-upload-drop.has-files,
.evr-panel[data-panel="checkout"] .evr-upload-drop.has-files {
  padding: 6px 10px !important;
}


/* 1.0.300 Beispielbild-Boxen im Foto-Upload entfernt */
.evr-upload-example-card,
.evr-upload-example-visual,
.evr-upload-example-caption {
  display: none !important;
}

.evr-upload-photo-stack {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: start !important;
}

.evr-upload-photo-row {
  display: block !important;
}

.evr-upload-photo-row:nth-child(3) {
  grid-column: 1 / -1 !important;
}

@media (max-width: 900px) {
  .evr-upload-photo-stack {
    grid-template-columns: 1fr !important;
  }
  .evr-upload-photo-row:nth-child(3) {
    grid-column: auto !important;
  }
}


/* 1.0.300 Responsive Tabs: mobile Variante mit Fortschritts-Strich */
.evr-mobile-stepper {
  display: none;
  margin: 0 0 20px;
  padding: 16px 18px;
  background: #ffffff;
  border: 1px solid #d6dde5;
  border-radius: 22px;
  box-shadow: 0 2px 10px rgba(15, 23, 42, .04);
}

.evr-mobile-stepper-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.evr-mobile-stepper-title {
  color: #111827;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 800;
}

.evr-mobile-stepper-count {
  color: #4b5563;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}

.evr-mobile-stepper-track {
  width: 100%;
  height: 12px;
  background: #e7ebf0;
  border-radius: 999px;
  overflow: hidden;
}

.evr-mobile-stepper-bar {
  display: block;
  height: 100%;
  width: 16.67%;
  background: #26b15f;
  border-radius: 999px;
  transition: width .2s ease;
}

@media (max-width: 900px) {
  .evr-tabs {
    display: none !important;
  }

  .evr-mobile-stepper {
    display: block !important;
  }
}

@media (max-width: 640px) {
  .evr-mobile-stepper {
    padding: 14px 16px;
    border-radius: 20px;
    margin-bottom: 18px;
  }

  .evr-mobile-stepper-title {
    font-size: 16px;
  }

  .evr-mobile-stepper-count {
    font-size: 14px;
  }

  .evr-mobile-stepper-track {
    height: 10px;
  }
}


/* 1.0.300 Responsive Verbrauch: Heizungsanlage und Leerstand sauber mobil */
@media (max-width: 700px) {
  .evr-panel[data-panel="consumption"] .evr-heating-table-wrap,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table-wrap {
    overflow: visible !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    table-layout: auto !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table thead,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table thead {
    display: none !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table tbody,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table tbody {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table tr,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table tr {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 14px !important;
    border: 1px solid #d6dde5 !important;
    background: #ffffff !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table td,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table td {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table td::before,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table td::before {
    display: block !important;
    content: attr(data-label) !important;
    color: #4b5563 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table .evr-input,
  .evr-panel[data-panel="consumption"] .evr-heating-table .evr-select,
  .evr-panel[data-panel="consumption"] .evr-heating-table .evr-btn,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-input,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-select,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-btn {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table .evr-calc-open-btn {
    height: auto !important;
    min-height: 48px !important;
    padding: 10px 12px !important;
    white-space: normal !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-status,
  .evr-panel[data-panel="consumption"] .evr-row-status,
  .evr-panel[data-panel="consumption"] [data-row-status] {
    display: block !important;
    width: 100% !important;
    margin-top: 4px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
  }

  .evr-panel[data-panel="consumption"] .evr-heating-table td:last-child,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table td:last-child {
    max-width: 100% !important;
  }

  .evr-panel[data-panel="consumption"] .evr-remove-row,
  .evr-panel[data-panel="consumption"] .evr-delete-row,
  .evr-panel[data-panel="consumption"] [data-remove-heating],
  .evr-panel[data-panel="consumption"] [data-remove-vacancy] {
    width: 48px !important;
    max-width: 48px !important;
    min-width: 48px !important;
  }

  .evr-panel[data-panel="consumption"] .evr-consumption-card,
  .evr-panel[data-panel="consumption"] .evr-fieldset,
  .evr-panel[data-panel="consumption"] .evr-building-section {
    max-width: 100% !important;
    overflow: visible !important;
  }
}


/* 1.0.300 Ergebnis-Skala responsive: auf Handy nicht mehr abgeschnitten */
@media (max-width: 760px) {
  .evr-panel[data-panel="result"] .evr-result-grid,
  .evr-panel[data-panel="result"] .evr-result-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .evr-panel[data-panel="result"] .evr-result-card,
  .evr-panel[data-panel="result"] .evr-scale-card,
  .evr-panel[data-panel="result"] .evr-fieldset,
  .evr-panel[data-panel="result"] .evr-building-section {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="result"] .evr-energy-scale,
  .evr-panel[data-panel="result"] .evr-scale,
  .evr-panel[data-panel="result"] .evr-kennwert-skala,
  .evr-panel[data-panel="result"] [class*="kennwert"],
  .evr-panel[data-panel="result"] [class*="scale"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="result"] .evr-scale-wrap,
  .evr-panel[data-panel="result"] .evr-energy-scale-wrap,
  .evr-panel[data-panel="result"] .evr-kennwert-skala-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 8px !important;
  }

  .evr-panel[data-panel="result"] svg,
  .evr-panel[data-panel="result"] canvas {
    max-width: 100% !important;
    height: auto !important;
  }

  .evr-panel[data-panel="result"] .evr-scale-label,
  .evr-panel[data-panel="result"] .evr-scale-title,
  .evr-panel[data-panel="result"] .evr-scale-value,
  .evr-panel[data-panel="result"] [class*="scale"] {
    word-break: normal !important;
  }
}

/* Fallback für die integrierte Kennwert-Skala, falls feste Breiten aus dem Modul kommen */
@media (max-width: 760px) {
  .enerval-kennwert-skala,
  .evr-kennwert-skala,
  .kennwert-skala,
  .evr-scale-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    box-sizing: border-box !important;
  }

  .enerval-kennwert-skala-inner,
  .kennwert-skala-inner,
  .evr-scale-inner,
  .evr-scale-bar {
    min-width: 620px !important;
  }
}


/* 1.0.300 Ergebnis-Skala mobil wirklich passend skalieren statt abschneiden */
@media (max-width: 760px) {
  .evr-panel[data-panel="result"] .evr-result-box-scale {
    overflow: visible !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .evr-panel[data-panel="result"] .evr-result-scale-col,
  .evr-panel[data-panel="result"] .evr-scale-card,
  .evr-panel[data-panel="result"] .epfk-scale-wrap{
  width:100%;
  height:100%;
  min-height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin:0;
}

  .evr-panel[data-panel="result"] .epfk-scale {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding-left: 22px !important;
    padding-right: 4px !important;
    font-size: 11px !important;
    --epfk-title-end-font-size: 12px !important;
    --epfk-title-primary-font-size: 12px !important;
    --epfk-value-font-size: 13px !important;
    --epfk-unit-font-size: 11px !important;
    --epfk-arrow-stem-height: 28px !important;
    --epfk-arrow-stem-width: 5px !important;
    --epfk-arrow-head-height: 12px !important;
    --epfk-arrow-head-width: 18px !important;
    --epfk-axis-height: 44px !important;
  }

  .evr-panel[data-panel="result"] .epfk-bar,
  .evr-panel[data-panel="result"] .epfk-gradient,
  .evr-panel[data-panel="result"] .epfk-axis {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="result"] .epfk-seg {
    min-width: 0 !important;
    font-size: 11px !important;
    line-height: 1 !important;
    padding: 0 !important;
  }

  .evr-panel[data-panel="result"] .epfk-axis span {
    font-size: 10px !important;
    transform: translateX(-50%) !important;
    white-space: nowrap !important;
  }

  .evr-panel[data-panel="result"] .epfk-axis span:last-child,
  .evr-panel[data-panel="result"] .epfk-axis span[data-axis-value="250"] {
    transform: translateX(-100%) !important;
  }

  .evr-panel[data-panel="result"] .epfk-info {
    max-width: calc(100% - 28px) !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end,
  .evr-panel[data-panel="result"] .epfk-info-primary {
    left: 22px !important;
    right: auto !important;
    transform: none !important;
  }

  .evr-panel[data-panel="result"] .epfk-measure {
    gap: 6px !important;
    flex-wrap: nowrap !important;
  }

  .evr-panel[data-panel="result"] .epfk-value {
    min-width: 54px !important;
    padding: 7px 8px !important;
  }

  .evr-panel[data-panel="result"] .epfk-unit {
    font-size: 11px !important;
    white-space: nowrap !important;
  }

  .evr-panel[data-panel="result"] .epfk-title {
    font-size: 12px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  .evr-panel[data-panel="result"] .epfk-arrow {
    left: 22px !important;
    transform: translateX(-50%) !important;
  }
}

@media (max-width: 420px) {
  .evr-panel[data-panel="result"] .epfk-scale {
    padding-left: 18px !important;
    --epfk-title-end-font-size: 11px !important;
    --epfk-title-primary-font-size: 11px !important;
    --epfk-value-font-size: 12px !important;
    --epfk-unit-font-size: 10px !important;
  }

  .evr-panel[data-panel="result"] .epfk-seg {
    font-size: 10px !important;
  }

  .evr-panel[data-panel="result"] .epfk-axis span {
    font-size: 9px !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end,
  .evr-panel[data-panel="result"] .epfk-info-primary {
    left: 18px !important;
  }

  .evr-panel[data-panel="result"] .epfk-arrow {
    left: 18px !important;
  }
}


/* 1.0.300 – nur Abschnittslabels weiß, Rand und Flächen bleiben unverändert */
.evr-app .evr-section-title,
.evr-app .evr-building-legend,
.evr-app .evr-consumption-legend,
.evr-app .evr-modern-legend,
.evr-app .evr-upload-legend,
.evr-app .evr-result-legend,
.evr-app .evr-result-hint-legend,
.evr-app .evr-scale-title,
.evr-app .evr-checkout-title,
.evr-app .evr-card-title,
.evr-app .evr-panel-title,
.evr-app .evr-block-title,
.evr-app .evr-fieldset-title,
.evr-app .evr-result-title,
.evr-app .evr-check-title {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
}

/* Wenn das Label Text in einem inneren span/chip nutzt */
.evr-app .evr-section-title > span,
.evr-app .evr-building-legend > span,
.evr-app .evr-consumption-legend > span,
.evr-app .evr-modern-legend > span,
.evr-app .evr-upload-legend > span,
.evr-app .evr-result-legend > span,
.evr-app .evr-result-hint-legend > span,
.evr-app .evr-scale-title > span,
.evr-app .evr-checkout-title > span,
.evr-app .evr-card-title > span,
.evr-app .evr-panel-title > span,
.evr-app .evr-block-title > span,
.evr-app .evr-fieldset-title > span,
.evr-app .evr-result-title > span,
.evr-app .evr-check-title > span {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
}

/* Spezifisch: der große Abschnittstitel oben links soll nur als Textlabel weiß hinterlegt sein. */
.evr-app .evr-section-title {
  display: inline-block;
  width: auto !important;
  padding: 0 8px !important;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* Keine Änderung an Rahmen, Karten oder Panel-Hintergründen. */


/* 1.0.300 – Checkout: Objektadresse in Rechnungsadresse übernehmen */
.evr-app .evr-invoice-card .evr-checkout-radio-field:nth-of-type(2) {
  margin-bottom: 14px !important;
}

.evr-app .evr-invoice-card [data-invoice-object-address] + span {
  white-space: nowrap;
}

.evr-app .evr-checkout-card .evr-input.evr-invoice-object-address-readonly,
.evr-app .evr-checkout-card .evr-input[readonly].evr-invoice-object-address-readonly {
  background: #f7faf7 !important;
  color: #334155 !important;
  cursor: default !important;
}

@media (max-width: 520px) {
  .evr-app .evr-invoice-card [data-invoice-object-address] + span {
    white-space: normal;
  }
}


/* 1.0.300 – CTA-Breite kompakt halten: mindestens 250px, nicht vollbreit */
.evr-app .evr-building-actions,
.evr-app .evr-panel .evr-actions {
  width: 100% !important;
}

.evr-app .evr-building-actions .evr-btn,
.evr-app .evr-actions .evr-btn:not(.gray) {
  width: auto !important;
  max-width: 100% !important;
  min-width: 250px !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

.evr-app .evr-building-actions .evr-btn {
  margin-left: auto !important;
}

@media (max-width: 760px) {
  .evr-app .evr-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  .evr-app .evr-actions .evr-btn:not(.gray),
  .evr-app .evr-building-actions .evr-btn {
    width: auto !important;
    max-width: 100% !important;
    min-width: 250px !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  .evr-app .evr-actions .evr-btn.gray {
    width: auto !important;
    min-width: 0 !important;
  }
}

@media (max-width: 280px) {
  .evr-app .evr-actions .evr-btn,
  .evr-app .evr-actions .evr-btn.gray,
  .evr-app .evr-actions .evr-btn:not(.gray),
  .evr-app .evr-building-actions .evr-btn {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* 1.0.300 – Checkout: kurze Optionsfelder nebeneinander */
.evr-app .evr-invoice-card .evr-invoice-radio-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(250px, 1fr));
  gap: 12px 24px;
  align-items: start;
}

.evr-app .evr-invoice-card .evr-invoice-radio-grid .evr-checkout-radio-field {
  margin-bottom: 0 !important;
}

.evr-app .evr-invoice-card .evr-invoice-radio-grid .evr-radio-row {
  gap: 12px;
}

.evr-app .evr-invoice-card .evr-invoice-object-address-field .evr-checkout-label,
.evr-app .evr-invoice-card .evr-invoice-same-field .evr-checkout-label {
  min-height: 1.4em;
}

@media (max-width: 900px) {
  .evr-app .evr-invoice-card .evr-invoice-radio-grid {
    grid-template-columns: 1fr;
  }
}


/* 1.0.300 – Langer Warmwasser-Tooltip mit Zeilenumbrüchen lesbar anzeigen */
.evr-app .evr-info::after {
  white-space: pre-line !important;
  width: min(560px, 90vw) !important;
}


/* 1.0.300 – Verbrauch: Eingangstext für Auswahl der Erfassungsart */
.evr-app .evr-consumption-start-box .evr-consumption-intro {
  margin: 28px 24px 18px;
  color: #111827;
  font-size: 17px;
  line-height: 1.45;
  font-weight: 500;
}

@media (max-width: 768px) {
  .evr-app .evr-consumption-start-box .evr-consumption-intro {
    margin: 20px 12px 16px;
    font-size: 15px;
  }
}


/* 1.0.300 – Gebäude-Seitenbox: Höhe um 30px reduzieren */
@media (min-width: 1101px) {
  .evr-app .evr-building-sidebar {
    margin-bottom: 30px !important;
  }
}


/* 1.0.300 – Assistentenbox: Schriften nicht fett */
.evr-assistant-card,
.evr-assistant-note,
.evr-building-sidebar .evr-assistant-card,
.evr-building-sidebar .evr-assistant-note {
  font-weight: 400 !important;
}

.evr-assistant-card strong,
.evr-building-sidebar .evr-assistant-card strong {
  font-weight: 400 !important;
}


/* 1.0.300 – Gebäude-Seitenbox: minimal um 2px verlängern */
@media (min-width: 1101px) {
  .evr-app .evr-building-sidebar {
    margin-bottom: 28px !important;
  }
}


/* 1.0.300 – Assistentenbox: Schrift 1pt kleiner */
.evr-app .evr-building-sidebar .evr-assistant-card,
.evr-app .evr-building-sidebar .evr-assistant-note {
  font-size: 13px !important;
}


/* 1.0.300 – Verbrauch: Eingangstext um ca. 2pt kleiner */
.evr-app .evr-consumption-start-box .evr-consumption-intro {
  font-size: 14px !important;
  line-height: 1.45 !important;
}

@media (max-width: 768px) {
  .evr-app .evr-consumption-start-box .evr-consumption-intro {
    font-size: 12px !important;
  }
}


/* 1.0.300 – Verbrauchsrechner: eckig und grün wie Berechnen */
.evr-app .evr-calculator-dialog,
.evr-app .evr-calculator-close,
.evr-calculator-dialog,
.evr-calculator-close {
  border-radius: 0 !important;
}

.evr-app .evr-calculator-close,
.evr-calculator-close {
  border-color: #6AA443 !important;
}

.evr-app .evr-calculator-head,
.evr-calculator-head {
  color: #2f641f !important;
}

/* 1.0.300 – Google-Adresssuche: Vorschlagsliste über Formular anzeigen */
.pac-container {
  z-index: 999999 !important;
  border-radius: 0 !important;
}


/* 1.0.300 – Google-Adresssuche: Autocomplete-Layer stabil über Formular */
.pac-container,
.pac-container .pac-item {
  font-family: inherit !important;
}

.pac-container {
  z-index: 2147483647 !important;
}


/* 1.0.300 – Google-Adresse Testmodus */
.evr-app .evr-google-address-test {
  grid-column: 1 / -1;
  margin: 14px 0 0;
  padding: 12px 14px;
  border: 1px solid #b8d8b5;
  background: #f5fbf3;
  color: #1f5f24;
  font-size: 13px;
  line-height: 1.35;
  border-radius: 0;
}

.evr-app .evr-google-address-test.is-ok {
  border-color: #6AA443;
  background: #eff8ec;
  color: #1f5f24;
}

.evr-app .evr-google-address-test.is-warn {
  border-color: #f1c46a;
  background: #fff8e6;
  color: #7a4d00;
}

.evr-app .evr-google-address-test.is-error {
  border-color: #ef9a9a;
  background: #fff1f1;
  color: #9f1d1d;
}

.evr-app .evr-google-address-test-detail {
  margin-top: 4px;
}


/* 1.0.300 – Frontend-Hilfstexte zur Google-Adresse ausblenden */
.evr-app .evr-google-address-test {
  display: none !important;
}


/* 1.0.300 – Checkout: E-Mail-Zeile wie obere 3 Spalten, Auftragsnummer ausblenden */
.evr-app .evr-checkout-grid-email {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.evr-app .evr-checkout-grid-email .evr-checkout-field,
.evr-app .evr-checkout-grid-email .evr-col-span-2,
.evr-app .evr-checkout-grid-email .evr-col-3,
.evr-app .evr-checkout-grid-email .evr-col-4 {
  grid-column: auto !important;
}

.evr-app .evr-checkout-order-number,
.evr-app [data-checkout-order-number] {
  display: none !important;
}

@media (max-width: 900px) {
  .evr-app .evr-checkout-grid-email {
    grid-template-columns: 1fr !important;
  }
}


/* 1.0.300 – iPhone responsive: Seitenkopf und Rechner-Spalten sauber stapeln */
@media (max-width: 767px) {
  body:has(.evr-app) {
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .entry-content,
  body:has(.evr-app) .site-content,
  body:has(.evr-app) .wp-site-blocks,
  body:has(.evr-app) main {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  /* Gutenberg/Block-Editor: Kopfzeile mit Logo + Überschrift + Zurück-Button */
  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading),
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    text-align: center !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) .wp-block-image,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) .wp-block-image {
    order: 1 !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) img,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) img {
    max-width: min(240px, 82vw) !important;
    height: auto !important;
  }

  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) .wp-block-heading,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) .wp-block-heading,
  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) h1,
  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) h2,
  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) h3,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) h1,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) h2,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) h3 {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    line-height: 1.15 !important;
    font-size: clamp(20px, 6vw, 26px) !important;
  }

  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) .wp-block-buttons,
  body:has(.evr-app) .entry-content > .wp-block-group:has(img):has(.wp-block-heading) .wp-block-button,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) .wp-block-buttons,
  body:has(.evr-app) .wp-site-blocks .wp-block-group:has(img):has(.wp-block-heading) .wp-block-button {
    order: 3 !important;
    margin: 4px auto 0 !important;
    justify-content: center !important;
  }

  /* Gutenberg-Spalten: Rechner und Kopfzeile auf iPhone volle Breite statt Halbspalte */
  body:has(.evr-app) .wp-block-columns:has(.evr-app),
  body:has(.evr-app) .wp-block-columns:has(img):has(.wp-block-heading) {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .wp-block-columns:has(.evr-app) > .wp-block-column,
  body:has(.evr-app) .wp-block-columns:has(img):has(.wp-block-heading) > .wp-block-column {
    flex-basis: 100% !important;
    flex-grow: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
  }

  /* Elementor-Fallback, falls die Seite mit Elementor gebaut ist */
  body:has(.evr-app) .elementor-section:has(.evr-app) > .elementor-container,
  body:has(.evr-app) .elementor-section:has(img):has(.elementor-heading-title) > .elementor-container,
  body:has(.evr-app) .elementor-container:has(.evr-app),
  body:has(.evr-app) .elementor-container:has(img):has(.elementor-heading-title) {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
    text-align: center !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .elementor-section:has(.evr-app) .elementor-column,
  body:has(.evr-app) .elementor-section:has(img):has(.elementor-heading-title) .elementor-column,
  body:has(.evr-app) .elementor-container:has(.evr-app) .elementor-column,
  body:has(.evr-app) .elementor-container:has(img):has(.elementor-heading-title) .elementor-column {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body:has(.evr-app) .elementor-section:has(img):has(.elementor-heading-title) .elementor-widget-image {
    order: 1 !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  body:has(.evr-app) .elementor-section:has(img):has(.elementor-heading-title) .elementor-heading-title {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.15 !important;
    font-size: clamp(20px, 6vw, 26px) !important;
  }

  body:has(.evr-app) .elementor-section:has(img):has(.elementor-heading-title) .elementor-widget-button {
    order: 3 !important;
    margin: 4px auto 0 !important;
  }

  .evr-app {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* 1.0.300 – Info-i global 3px näher ans Label setzen */
.evr-app .evr-info {
  margin-left: 1px !important;
}


/* 1.0.300 – iPad/Tablet: Leerstand-Felder überlappen nicht mehr */
.evr-vacancy-table .evr-input,
.evr-vacancy-table .evr-date-input {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (min-width: 701px) and (max-width: 1100px) {
  .evr-panel[data-panel="consumption"] .evr-vacancy-table-wrap {
    overflow: visible !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    table-layout: auto !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table thead {
    display: none !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table tbody {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table tr {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
    width: 100% !important;
    padding: 14px !important;
    border: 1px solid #d6dde5 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table td {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table td::before {
    display: block !important;
    content: attr(data-label) !important;
    color: #4b5563 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-input,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-select,
  .evr-panel[data-panel="consumption"] .evr-vacancy-table .evr-btn {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="consumption"] .evr-vacancy-table td:last-child {
    grid-column: 2 !important;
    justify-self: end !important;
    align-self: end !important;
    width: 48px !important;
    max-width: 48px !important;
    min-width: 48px !important;
  }

  .evr-panel[data-panel="consumption"] [data-remove-vacancy] {
    width: 48px !important;
    max-width: 48px !important;
    min-width: 48px !important;
  }
}


/* 1.0.300 – Tooltip-Info-i kleiner */
.evr-app .evr-info,
.evr-info {
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  min-height: 12px !important;
  font-size: 8px !important;
  line-height: 12px !important;
  font-weight: 700 !important;
  vertical-align: middle !important;
}


/* 1.0.300 – aus energetischen Maßnahmen übernommene Modernisierungen sperren */
.evr-check.evr-check-locked {
  opacity: 0.85;
  cursor: not-allowed;
}

.evr-check.evr-check-locked input {
  cursor: not-allowed;
}

.evr-check.evr-check-locked span::after {
  content: " automatisch übernommen";
  color: #4b5563;
  font-size: 12px;
  font-weight: 700;
}


/* 1.0.300 – Modernisierungen: Pflichtauswahl bei Ja hervorheben */
.evr-modern-card .evr-check.evr-input-error {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.18) !important;
}


/* 1.0.300 – Gebäude-Tab: weißen Leerraum vor CTA reduzieren */
.evr-panel[data-panel="building"] {
  padding-bottom: 10px !important;
}

.evr-panel[data-panel="building"] .evr-building-layout {
  align-items: start !important;
  margin-bottom: 0 !important;
}

.evr-panel[data-panel="building"] .evr-building-main,
.evr-panel[data-panel="building"] .evr-building-sidebar {
  align-self: start !important;
  margin-bottom: 0 !important;
}

.evr-panel[data-panel="building"] .evr-building-section:last-child {
  margin-bottom: 12px !important;
}

.evr-panel[data-panel="building"] .evr-building-actions {
  margin-top: 8px !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

.evr-panel[data-panel="building"] .evr-building-order-number.evr-hidden + .evr-building-actions {
  margin-top: 8px !important;
}


/* 1.0.300 – Kennwert-Badge auf Ergebnis-Skala wieder kleiner */
.evr-app .evr-panel[data-panel="result"] .epfk-scale .epfk-title {
  font-size: min(var(--epfk-title-end-font-size, 12px), 12px) !important;
  line-height: 1.18 !important;
}

.evr-app .evr-panel[data-panel="result"] .epfk-scale .epfk-info-primary .epfk-title {
  font-size: min(var(--epfk-title-primary-font-size, 12px), 12px) !important;
}

.evr-app .evr-panel[data-panel="result"] .epfk-scale .epfk-value {
  font-size: min(var(--epfk-value-font-size, 13px), 13px) !important;
  min-width: 46px !important;
  height: 24px !important;
  min-height: 24px !important;
  padding: 2px 8px !important;
  line-height: 1.1 !important;
  border-radius: 4px !important;
}

.evr-app .evr-panel[data-panel="result"] .epfk-scale .epfk-unit {
  font-size: min(var(--epfk-unit-font-size, 11px), 11px) !important;
  line-height: 1.1 !important;
}

.evr-app .evr-panel[data-panel="result"] .epfk-scale .epfk-measure {
  gap: 6px !important;
}


/* 1.0.300 – Label-Reihenfolge: Text, Pflichtstern, Info-i */
.evr-app .evr-field > .evr-label-text,
.evr-app .evr-label-text {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.evr-app .evr-label-text .evr-required {
  order: 1 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  flex: 0 0 auto !important;
}

.evr-app .evr-label-text .evr-info {
  order: 2 !important;
  margin-left: 0 !important;
  flex: 0 0 auto !important;
}

@media (max-width: 520px) {
  .evr-app .evr-field > .evr-label-text,
  .evr-app .evr-label-text {
    white-space: normal !important;
    flex-wrap: wrap !important;
  }
}


/* 1.0.300 – Gebäude: Pflichtstern näher an den Labeltext und leicht höher */
.evr-app .evr-panel[data-panel="building"] .evr-label-text .evr-required,
.evr-app [data-panel="building"] .evr-label-text .evr-required {
  margin-left: -5px !important;
  transform: translateY(-3px) !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

/* 1.0.300 Bauantrag / Bauanzeige: automatisch über Baujahr gesteuert */
.evr-select.evr-auto-controlled,
.evr-select.evr-auto-controlled:disabled {
  background: #f7f8fa !important;
  color: #1f2937 !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
}


/* 1.0.300 – Gebäude: Pflichtsternchen 1px höher und 1px nach rechts */
.evr-app .evr-panel[data-panel="building"] .evr-label-text .evr-required,
.evr-app [data-panel="building"] .evr-label-text .evr-required {
  margin-left: -4px !important;
  transform: translateY(-4px) !important;
}


/* EVR 1.0.300 iPhone: Validierungsbox sichtbar + CTA volle Breite */
@media (max-width: 767px) {
  .evr-building-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .evr-building-sidebar {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .evr-building-sidebar .evr-assistant-card,
  .evr-building-sidebar .evr-assistant-note {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
  }

  .evr-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .evr-actions .evr-btn,
  .evr-actions .evr-btn.gray,
  .evr-actions .evr-btn:not(.gray),
  .evr-actions .evr-btn.gray + .evr-btn:not(.gray) {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-content: center !important;
    text-align: center !important;
  }
}
/* EVR 1.0.300 END */


/* EVR 1.0.300 iPhone: grünen Energieassistent-Infoblock mobil ausblenden */
@media (max-width: 767px) {
  .evr-panel[data-panel="building"] .evr-building-sidebar .evr-assistant-card {
    display: none !important;
  }
}
/* EVR 1.0.300 END */


/* EVR 1.0.300 iPhone: Validierungsbox direkt nach Zulässigkeitsprüfung anzeigen */
@media (max-width: 767px) {
  .evr-panel[data-panel="building"] .evr-building-main > .evr-building-sidebar {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    gap: 10px !important;
    background: transparent !important;
  }

  .evr-panel[data-panel="building"] .evr-building-main > .evr-building-sidebar .evr-assistant-note {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}
/* EVR 1.0.300 END */


/* EVR 1.0.300 iPhone: Validierung vor Ortsangaben sauberer Abstand + CTA-Sperre */
@media (max-width: 767px) {
  .evr-panel[data-panel="building"] .evr-building-main > .evr-building-sidebar {
    margin: 2px 0 28px 0 !important;
    gap: 0 !important;
  }

  .evr-panel[data-panel="building"] .evr-building-main > .evr-building-sidebar .evr-assistant-note {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }

  .evr-panel[data-panel="building"] .evr-building-main > .evr-building-sidebar + .evr-building-section {
    margin-top: 20px !important;
  }
}

.evr-app .evr-btn[disabled],
.evr-app .evr-btn.is-disabled,
.evr-app button.evr-btn[aria-disabled="true"] {
  opacity: .45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  filter: grayscale(.15) !important;
}
/* EVR 1.0.300 END */


/* 1.0.300 Verbrauch mobil: Auswahlkarten überspringen und direkt manuelle Eingabe zeigen */
@media (max-width: 768px) {
  .evr-panel[data-panel="consumption"] .evr-consumption-start-box {
    display: none !important;
  }
}

/* EVR 1.0.300 iPhone: komplette Rechnerfläche echte Viewport-Breite, kein seitliches Verschieben */
@media (max-width: 767px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .entry-content,
  body:has(.evr-app) .site-content,
  body:has(.evr-app) .site-main,
  body:has(.evr-app) .wp-site-blocks,
  body:has(.evr-app) main,
  body:has(.evr-app) article,
  body:has(.evr-app) .wp-block-post-content,
  body:has(.evr-app) .is-layout-constrained,
  body:has(.evr-app) .is-layout-flow,
  body:has(.evr-app) .wp-block-group,
  body:has(.evr-app) .wp-block-columns,
  body:has(.evr-app) .wp-block-column {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body:has(.evr-app) .wp-block-columns {
    display: flex !important;
    flex-direction: column !important;
  }

  body:has(.evr-app) .evr-app {
    display: block !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) .evr-panel,
  body:has(.evr-app) .evr-building-layout,
  body:has(.evr-app) .evr-building-main,
  body:has(.evr-app) .evr-building-section,
  body:has(.evr-app) .evr-mobile-stepper,
  body:has(.evr-app) .evr-assistant-note {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  body:has(.evr-app) img,
  body:has(.evr-app) svg,
  body:has(.evr-app) table {
    max-width: 100% !important;
  }
}
/* EVR 1.0.300 END */


/* EVR 1.0.300 iPhone: Abschnittsüberschriften/Legenden nicht abschneiden */
@media (max-width: 767px) {
  body:has(.evr-app) .evr-panel,
  body:has(.evr-app) .evr-building-layout,
  body:has(.evr-app) .evr-building-main,
  body:has(.evr-app) .evr-building-section,
  body:has(.evr-app) .evr-fieldset,
  body:has(.evr-app) .evr-result-indication-card,
  body:has(.evr-app) .evr-consumption-start-box,
  body:has(.evr-app) .evr-consumption-manual,
  body:has(.evr-app) [data-mode-panel="manual"] {
    overflow: visible !important;
  }

  body:has(.evr-app) .evr-building-section {
    padding-top: 34px !important;
    margin-top: 16px !important;
  }

  body:has(.evr-app) .evr-building-legend,
  body:has(.evr-app) .evr-consumption-legend,
  body:has(.evr-app) .evr-modern-legend,
  body:has(.evr-app) .evr-upload-legend,
  body:has(.evr-app) .evr-result-legend,
  body:has(.evr-app) .evr-result-hint-legend {
    z-index: 5 !important;
    white-space: normal !important;
  }
}
/* EVR 1.0.300 END */


/* v1.0.300 HOTFIX: Ergebnis-Skala mobil sauber in den sichtbaren Bereich setzen */
@media (max-width: 767px) {
  .enerval-form,
  .enerval-step,
  .enerval-section,
  .enerval-result,
  .enerval-result-grid,
  .enerval-scale-wrap,
  .enerval-scale-box,
  .enerval-energy-scale,
  .vka-scale,
  .vka-scale-wrap,
  .vka-result-scale {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: visible !important;
  }

  .enerval-result-grid,
  .enerval-result,
  .vka-result-grid {
    display: block !important;
    grid-template-columns: 1fr !important;
  }

  .enerval-energy-scale svg,
  .enerval-scale-box svg,
  .vka-scale svg,
  .vka-result-scale svg,
  svg.enerval-energy-scale,
  svg.vka-scale-svg {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  .enerval-energy-scale *,
  .enerval-scale-box *,
  .vka-scale *,
  .vka-result-scale * {
    box-sizing: border-box !important;
  }

  .enerval-energy-scale,
  .vka-scale,
  .vka-result-scale {
    transform: none !important;
    left: auto !important;
    right: auto !important;
  }

  .enerval-cookie,
  .enerval-cookie-button,
  .cookie-notice,
  .cky-btn-revisit-wrapper,
  #cookie-law-info-bar,
  .cli-bar-container {
    z-index: 10 !important;
  }
}


/* v1.0.300 HOTFIX: Mobile Skalen-Anzeige richtig positionieren
   Vorher wurden Pfeile/Labels mobil fest nach links gesetzt. Jetzt folgen sie wieder dem berechneten Kennwert. */
@media (max-width: 760px) {
  .evr-panel[data-panel="result"] .epfk-arrow-end {
    left: var(--epfk-end-x) !important;
    transform: translateX(-50%) !important;
  }

  .evr-panel[data-panel="result"] .epfk-arrow-primary {
    left: var(--epfk-primary-x) !important;
    transform: translateX(-50%) !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end {
    left: clamp(0px, calc(var(--epfk-end-x) - 22px), calc(100% - 150px)) !important;
    right: auto !important;
    transform: none !important;
    max-width: 150px !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-primary {
    left: clamp(0px, calc(var(--epfk-primary-x) - 22px), calc(100% - 150px)) !important;
    right: auto !important;
    transform: none !important;
    max-width: 150px !important;
  }

  .evr-panel[data-panel="result"] .epfk-value {
    min-width: 52px !important;
  }
}

@media (max-width: 420px) {
  .evr-panel[data-panel="result"] .epfk-arrow-end {
    left: var(--epfk-end-x) !important;
  }

  .evr-panel[data-panel="result"] .epfk-arrow-primary {
    left: var(--epfk-primary-x) !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end {
    left: clamp(0px, calc(var(--epfk-end-x) - 18px), calc(100% - 138px)) !important;
    max-width: 138px !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-primary {
    left: clamp(0px, calc(var(--epfk-primary-x) - 18px), calc(100% - 138px)) !important;
    max-width: 138px !important;
  }
}


/* v1.0.300: Modernisierungen bei Auswahl "Nein" sichtbar deaktivieren */
.evr-modern-card .evr-check.evr-check-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.evr-modern-card .evr-check.evr-check-disabled span {
  cursor: not-allowed;
}

.evr-modern-card .evr-input.evr-input-disabled,
.evr-modern-card .evr-input:disabled {
  background: #f4f7f2;
  color: #7d8793;
  cursor: not-allowed;
}


/* v1.0.300: Energieverbrauchsskala mobil wieder desktopähnlich darstellen.
   Keine übereinander umbrechenden Label-Texte; kompaktere Schrift und einzeilige Werte. */
@media (max-width: 767px) {
  .evr-panel[data-panel="result"] .epfk-scale-card,
  .evr-panel[data-panel="result"] .epfk-scale,
  .evr-panel[data-panel="result"] .epfk-energy-scale {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end,
  .evr-panel[data-panel="result"] .epfk-info-primary {
    width: max-content !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    line-height: 1.15 !important;
    font-size: 14px !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end {
    left: var(--epfk-end-x) !important;
    transform: translateX(-50%) !important;
    text-align: center !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-primary {
    left: var(--epfk-primary-x) !important;
    transform: translateX(-50%) !important;
    text-align: center !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end .epfk-label,
  .evr-panel[data-panel="result"] .epfk-info-primary .epfk-label {
    display: block !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .evr-panel[data-panel="result"] .epfk-value-row,
  .evr-panel[data-panel="result"] .epfk-info-end > div,
  .evr-panel[data-panel="result"] .epfk-info-primary > div {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }

  .evr-panel[data-panel="result"] .epfk-value {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    width: auto !important;
    white-space: nowrap !important;
    font-size: 15px !important;
    line-height: 1 !important;
    padding: 7px 8px !important;
  }

  .evr-panel[data-panel="result"] .epfk-unit {
    display: inline-block !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    line-height: 1 !important;
  }

  .evr-panel[data-panel="result"] .epfk-arrow-end,
  .evr-panel[data-panel="result"] .epfk-arrow-primary {
    transform: translateX(-50%) !important;
  }
}

@media (max-width: 420px) {
  .evr-panel[data-panel="result"] .epfk-info-end,
  .evr-panel[data-panel="result"] .epfk-info-primary {
    font-size: 12px !important;
  }

  .evr-panel[data-panel="result"] .epfk-info-end .epfk-label,
  .evr-panel[data-panel="result"] .epfk-info-primary .epfk-label {
    font-size: 11px !important;
  }

  .evr-panel[data-panel="result"] .epfk-value {
    font-size: 13px !important;
    min-width: 48px !important;
    padding: 6px 7px !important;
  }

  .evr-panel[data-panel="result"] .epfk-unit {
    font-size: 12px !important;
  }
}


/* v1.0.300: Leere gelbe Hinweis-/Warnboxen ausblenden */
.evr-alert:empty,
.evr-notice:empty,
.evr-warning:empty,
.evr-info:empty,
.evr-hint:empty,
.evr-eligibility-notice:empty,
[data-eligibility-notice]:empty,
[data-notice]:empty,
[data-warning]:empty {
  display: none !important;
}

.evr-empty-notice {
  display: none !important;
}


/* v1.0.312: Checkout – Abstand zwischen Optionsfeldern und Rechnungsadresse erhöhen */
.evr-invoice-card .evr-invoice-grid,
.evr-checkout-invoice .evr-invoice-grid,
.evr-billing-card .evr-invoice-grid,
.evr-section-invoice .evr-invoice-grid {
  margin-top: 20px !important;
}

/* Fallback, falls die Adresszeile nicht über evr-invoice-grid läuft */
.evr-invoice-card [data-invoice-street],
.evr-checkout-invoice [data-invoice-street],
.evr-billing-card [data-invoice-street],
.evr-section-invoice [data-invoice-street] {
  margin-top: 20px !important;
}


/* v1.0.313: Checkout – Anmerkungen volle Breite oberhalb Einwilligungen */
.evr-order-note-card-full {
  width: 100% !important;
  margin-bottom: 24px !important;
}

.evr-order-note-card-full .evr-order-note-field {
  width: 100% !important;
}

.evr-order-note-card-full .evr-textarea[data-customer-note],
.evr-order-note-card .evr-textarea[data-customer-note] {
  min-height: 72px !important;
  height: 72px !important;
}


/* v1.0.314: Zahlungsarten in der Bearbeitungszeit-Box */
.evr-payment-box {
  margin-top: 18px;
  padding: 0;
  background: transparent;
  font-family: Arial, sans-serif;
}

.evr-payment-box h4 {
  margin: 0 0 14px;
  font-size: clamp(18px, 2.2vw, 22px);
  font-weight: 800;
  color: #222;
}

.evr-payment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.evr-payment-item {
  min-width: 0;
  height: clamp(46px, 5vw, 58px);
  padding: 6px;
  border: 2px solid #aaa;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.05;
  font-weight: 800;
  font-size: clamp(11px, 1.2vw, 16px);
  color: #222;
  background: #fff;
  box-sizing: border-box;
  overflow-wrap: anywhere;
}

.evr-payment-visa {
  color: #1a1f71;
  font-size: clamp(18px, 2vw, 24px);
  font-style: italic;
}

.evr-payment-mastercard {
  position: relative;
}

.evr-payment-mastercard::before,
.evr-payment-mastercard::after {
  content: "";
  width: clamp(22px, 2.7vw, 32px);
  height: clamp(22px, 2.7vw, 32px);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.evr-payment-mastercard::before {
  background: #eb001b;
  left: calc(50% - clamp(22px, 2.7vw, 30px));
}

.evr-payment-mastercard::after {
  background: #f79e1b;
  right: calc(50% - clamp(22px, 2.7vw, 30px));
}

.evr-payment-amex {
  color: #2e77bb;
  font-size: clamp(9px, 1vw, 13px);
  line-height: 1;
}

.evr-payment-paypal {
  color: #174ea6;
}

.evr-payment-klarna {
  background: #f6aac4;
  color: #111;
}

@media (max-width: 700px) {
  .evr-payment-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 380px) {
  .evr-payment-grid {
    gap: 8px;
  }

  .evr-payment-item {
    height: 48px;
    padding: 5px;
    font-size: 11px;
  }
}


/* v1.0.315: Ergebnis-Skala nutzt dieselben Backend-Werte wie die Vorschau */
.evr-panel[data-panel="result"] .epfk-scale .epfk-arrow-end {
  left: var(--epfk-end-x) !important;
  top: calc(var(--epfk-arrow-top-y, 30px) + var(--epfk-arrow-visual-offset-top-desktop, 0px)) !important;
  transform: translateX(-50%) !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-info-end {
  left: var(--epfk-end-x) !important;
  top: calc(0px + var(--epfk-arrow-visual-offset-top-desktop, 0px) - var(--epfk-text-gap-top-desktop, 0px)) !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  align-items: center !important;
  white-space: nowrap !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-arrow-primary {
  left: var(--epfk-primary-x) !important;
  top: calc(58px + 32px + 28px + var(--epfk-arrow-bottom-y, 38px) + var(--epfk-arrow-visual-offset-bottom-desktop, 0px)) !important;
  transform: translateX(-50%) !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-info-primary {
  left: var(--epfk-primary-x) !important;
  bottom: calc(0px - var(--epfk-arrow-visual-offset-bottom-desktop, 0px) - var(--epfk-text-gap-bottom-desktop, 0px)) !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  align-items: center !important;
  white-space: nowrap !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-title {
  font-size: var(--epfk-title-end-font-size) !important;
  white-space: nowrap !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-info-primary .epfk-title {
  font-size: var(--epfk-title-primary-font-size) !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-value {
  font-size: var(--epfk-value-font-size) !important;
}

.evr-panel[data-panel="result"] .epfk-scale .epfk-unit {
  font-size: var(--epfk-unit-font-size) !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  .evr-panel[data-panel="result"] .epfk-scale .epfk-arrow-end {
    left: var(--epfk-end-x) !important;
    top: calc(var(--epfk-arrow-top-y, 30px) + var(--epfk-arrow-visual-offset-top-responsive, 0px)) !important;
  }

  .evr-panel[data-panel="result"] .epfk-scale .epfk-info-end {
    left: var(--epfk-end-x) !important;
    top: calc(0px + var(--epfk-arrow-visual-offset-top-responsive, 0px) - var(--epfk-text-gap-top-responsive, 0px)) !important;
  }

  .evr-panel[data-panel="result"] .epfk-scale .epfk-arrow-primary {
    left: var(--epfk-primary-x) !important;
    top: calc(58px + 32px + 28px + var(--epfk-arrow-bottom-y, 38px) + var(--epfk-arrow-visual-offset-bottom-responsive, 0px)) !important;
  }

  .evr-panel[data-panel="result"] .epfk-scale .epfk-info-primary {
    left: var(--epfk-primary-x) !important;
    bottom: calc(0px - var(--epfk-arrow-visual-offset-bottom-responsive, 0px) - var(--epfk-text-gap-bottom-responsive, 0px)) !important;
  }
}


/* v1.0.316: Verbrauch-Zusammenfassung 5 Spalten in einer Reihe */
.evr-panel[data-panel="consumption"] .evr-summary-grid,
.evr-consumption-summary .evr-summary-grid,
.evr-summary-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.evr-panel[data-panel="consumption"] .evr-summary-item,
.evr-consumption-summary .evr-summary-item,
.evr-summary-item {
  min-width: 0 !important;
}

@media (max-width: 1024px) {
  .evr-panel[data-panel="consumption"] .evr-summary-grid,
  .evr-consumption-summary .evr-summary-grid,
  .evr-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .evr-panel[data-panel="consumption"] .evr-summary-grid,
  .evr-consumption-summary .evr-summary-grid,
  .evr-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 420px) {
  .evr-panel[data-panel="consumption"] .evr-summary-grid,
  .evr-consumption-summary .evr-summary-grid,
  .evr-summary-grid {
    grid-template-columns: 1fr !important;
  }
}



/* v1.0.317: Zahlungsarten um ca. 20% kleiner */
.evr-payment-grid {
  gap: 8px !important;
}

.evr-payment-item {
  height: clamp(37px, 4vw, 46px) !important;
  padding: 5px !important;
  border-width: 2px !important;
  border-radius: 6px !important;
  font-size: clamp(9px, 0.96vw, 13px) !important;
}

.evr-payment-visa {
  font-size: clamp(14px, 1.6vw, 19px) !important;
}

.evr-payment-amex {
  font-size: clamp(7px, 0.8vw, 10px) !important;
}

.evr-payment-mastercard::before,
.evr-payment-mastercard::after {
  width: clamp(18px, 2.16vw, 26px) !important;
  height: clamp(18px, 2.16vw, 26px) !important;
}

.evr-payment-mastercard::before {
  left: calc(50% - clamp(18px, 2.16vw, 24px)) !important;
}

.evr-payment-mastercard::after {
  right: calc(50% - clamp(18px, 2.16vw, 24px)) !important;
}


/* v1.0.318: Checkout – Einwilligungen und Bearbeitungszeit gleich hoch */
.evr-checkout-bottom {
  align-items: stretch !important;
}

.evr-checkout-bottom > .evr-consent-card,
.evr-checkout-bottom > .evr-checkout-side-stack {
  height: 100% !important;
}

.evr-checkout-bottom > .evr-consent-card,
.evr-checkout-side-stack > .evr-service-card {
  min-height: 100% !important;
}

.evr-checkout-side-stack {
  display: flex !important;
  flex-direction: column !important;
}

.evr-checkout-side-stack > .evr-service-card {
  flex: 1 1 auto !important;
}


/* v1.0.319: Rechnungsadresse – Abstand sauber oberhalb der kompletten Adresszeile */
.evr-checkout-grid-address {
  margin-top: 20px !important;
}

.evr-checkout-grid-address .evr-checkout-label,
.evr-checkout-grid-address input {
  margin-top: 0 !important;
}


/* v1.0.320: Checkout – Einwilligungen und Bearbeitungszeit ca. 50px niedriger */
.evr-checkout-bottom > .evr-consent-card,
.evr-checkout-side-stack > .evr-service-card {
  min-height: calc(100% - 50px) !important;
  padding-bottom: 18px !important;
}

.evr-checkout-bottom {
  align-items: start !important;
}

.evr-checkout-bottom > .evr-consent-card,
.evr-checkout-side-stack > .evr-service-card {
  height: auto !important;
}


/* v1.0.321: Rechnungsadresse – Straße, PLZ und Ort gleich breit und auf einer Höhe */
.evr-checkout-grid-address.evr-checkout-grid-4,
.evr-checkout-grid-address {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  align-items: start !important;
}

.evr-checkout-grid-address .evr-col-span-2,
.evr-checkout-grid-address .evr-col-3,
.evr-checkout-grid-address .evr-col-4 {
  grid-column: auto !important;
  width: 100% !important;
  margin-top: 0 !important;
}

.evr-checkout-grid-address .evr-checkout-label,
.evr-checkout-grid-address .evr-input,
.evr-checkout-grid-address input {
  margin-top: 0 !important;
}

.evr-checkout-grid-address .evr-checkout-field {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

@media (max-width: 767px) {
  .evr-checkout-grid-address.evr-checkout-grid-4,
  .evr-checkout-grid-address {
    grid-template-columns: 1fr !important;
    row-gap: 14px !important;
  }
}


/* v1.0.324: Leerstand – Felder dürfen nicht überlappen */
.evr-vacancy-table {
  table-layout: fixed !important;
  width: 100% !important;
}

.evr-vacancy-table th,
.evr-vacancy-table td {
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.evr-vacancy-table th:nth-child(1),
.evr-vacancy-table td:nth-child(1),
.evr-vacancy-table th:nth-child(2),
.evr-vacancy-table td:nth-child(2) {
  width: 25% !important;
}

.evr-vacancy-table th:nth-child(3),
.evr-vacancy-table td:nth-child(3) {
  width: 17% !important;
}

.evr-vacancy-table th:nth-child(4),
.evr-vacancy-table td:nth-child(4) {
  width: 28% !important;
}

.evr-vacancy-table th:nth-child(5),
.evr-vacancy-table td:nth-child(5) {
  width: 5% !important;
}

.evr-vacancy-table .evr-input,
.evr-vacancy-table input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.evr-vacancy-table .evr-btn {
  width: 100% !important;
  min-width: 42px !important;
  box-sizing: border-box !important;
}

@media (max-width: 900px) {
  .evr-vacancy-table-wrap {
    overflow-x: auto !important;
  }

  .evr-vacancy-table {
    min-width: 760px !important;
  }
}

@media (max-width: 767px) {
  .evr-vacancy-table {
    min-width: 0 !important;
    table-layout: auto !important;
  }

  .evr-vacancy-table tr {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .evr-vacancy-table td,
  .evr-vacancy-table th {
    width: 100% !important;
    overflow: visible !important;
  }

  .evr-vacancy-table td:last-child {
    display: flex !important;
    justify-content: flex-end !important;
  }

  .evr-vacancy-table td:last-child .evr-btn {
    width: auto !important;
    min-width: 48px !important;
  }
}


/* v1.0.325: Warmwasser separat – mehrere Zeilen pro Verbrauchszeitraum */
.evr-warmwater-lines {
  margin-top: 14px !important;
}

.evr-warmwater-table {
  table-layout: fixed !important;
  width: 100% !important;
}

.evr-warmwater-table th,
.evr-warmwater-table td {
  box-sizing: border-box !important;
}

.evr-warmwater-table th:nth-child(1),
.evr-warmwater-table td:nth-child(1),
.evr-warmwater-table th:nth-child(2),
.evr-warmwater-table td:nth-child(2) {
  width: 28% !important;
}

.evr-warmwater-table th:nth-child(3),
.evr-warmwater-table td:nth-child(3) {
  width: 44% !important;
}

.evr-warmwater-table input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  .evr-warmwater-table,
  .evr-warmwater-table tbody,
  .evr-warmwater-table tr,
  .evr-warmwater-table td {
    display: block !important;
    width: 100% !important;
  }

  .evr-warmwater-table thead {
    display: none !important;
  }

  .evr-warmwater-table tr {
    border-bottom: 1px solid #dbe3ee !important;
    padding: 10px 0 !important;
  }

  .evr-warmwater-table td {
    margin-bottom: 10px !important;
  }

  .evr-warmwater-table td::before {
    content: attr(data-label);
    display: block;
    font-weight: 800;
    margin-bottom: 5px;
  }
}


/* v1.0.328: Warmwasser – Auswahl 100% breit, Gesamtfeld erst bei Punkt 3 */
.evr-warmwater-section .evr-warmwater-choice-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

.evr-warmwater-section .evr-warmwater-choice-grid > .evr-field:first-child {
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
}

.evr-warmwater-section .evr-warmwater-choice-grid select,
.evr-warmwater-section .evr-warmwater-choice-grid .evr-select {
  width: 100% !important;
  max-width: 100% !important;
}

.evr-warmwater-total-field {
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
}

.evr-warmwater-lines {
  width: 100% !important;
}



/* v1.0.336: Leerstand – gleicher Textfeld-Kalender wie Verbrauchsrechner */
.evr-text-date-input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  box-sizing: border-box !important;
  padding: 8px 10px !important;
  font-size: 16px !important;
}

.evr-unified-datepicker {
  position: absolute;
  z-index: 99999;
  width: 312px;
  max-width: calc(100vw - 32px);
  background: #fff;
  border: 1px solid #cfd8e3;
  border-radius: 10px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, .18);
  padding: 12px;
}

.evr-unified-datepicker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  color: #276b25;
}

.evr-unified-datepicker-head button {
  width: 38px;
  height: 38px;
  border: 1px solid #d5dfeb;
  border-radius: 10px;
  background: #fff;
  color: #276b25;
  font-size: 24px;
  font-weight: 800;
  cursor: pointer;
}

.evr-unified-datepicker-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 6px;
}

.evr-unified-datepicker-dayname {
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  color: #64748b;
}

.evr-unified-datepicker-day {
  height: 34px;
  border: 1px solid #d5dfeb;
  border-radius: 8px;
  background: #fff;
  color: #276b25;
  font-weight: 800;
  cursor: pointer;
}

.evr-unified-datepicker-day.is-muted {
  color: #94a3b8;
}

.evr-unified-datepicker-day.is-selected {
  background: #63a83d;
  color: #fff;
  border-color: #2d7a2e;
}

.evr-unified-datepicker-note {
  margin-top: 10px;
  font-size: 12px;
  color: #64748b;
}

.evr-vacancy-table {
  table-layout: fixed !important;
}

.evr-vacancy-table input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}






/* v1.0.348: Geführter Verbrauchsdaten-Ablauf */
.evr-guided-hidden {
  display: none !important;
}

.epfk-scale{margin:auto;}

/* v1.0.376: Ergebnis-Skala mobil an Backend-Live-Vorschau angleichen
   Vorher hatte der Rechner auf Mobile eigene Overrides wie --epfk-axis-height: 44px
   und größere Badge-Paddings. Dadurch entstand der große Abstand in der Mitte. */
@media (max-width: 768px) {
  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale,
  .evr-app .evr-panel[data-panel="result"] .evr-result-scale-col,
  .evr-app .evr-panel[data-panel="result"] .evr-scale-card,
  .evr-app .evr-panel[data-panel="result"] .epfk-scale-wrap,
  .evr-app .evr-panel[data-panel="result"] .epfk-scale {
    overflow: visible !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale {
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-bottom: 18px !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-scale-col,
  .evr-app .evr-panel[data-panel="result"] .evr-scale-card,
  .evr-app .evr-panel[data-panel="result"] .epfk-scale-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-scale {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 58px 0 72px 0 !important;
    box-sizing: border-box !important;
    transform: none !important;

    /* Backend-Vorschau-Werte wiederherstellen */
    --epfk-axis-height: 28px !important;
    --epfk-title-end-font-size: 12px !important;
    --epfk-title-primary-font-size: 12px !important;
    --epfk-value-font-size: 13px !important;
    --epfk-unit-font-size: 11px !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-bar,
  .evr-app .evr-panel[data-panel="result"] .epfk-seg {
    height: 32px !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-gradient {
    height: 30px !important;
    margin-top: 0 !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-axis {
    height: var(--epfk-axis-height, 28px) !important;
    margin-top: var(--epfk-axis-margin-top, 5px) !important;
    margin-bottom: var(--epfk-axis-margin-bottom, 5px) !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-axis span {
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-seg {
    font-size: 13px !important;
    line-height: 1 !important;
    padding: 0 !important;
    min-width: 0 !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-seg.is-active {
    font-size: 16px !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-info {
    max-width: none !important;
    width: max-content !important;
    white-space: nowrap !important;
    text-align: center !important;
    align-items: center !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-info-end {
    left: var(--epfk-end-x) !important;
    top: calc(0px + var(--epfk-arrow-visual-offset-top-responsive, 0px) - var(--epfk-text-gap-top-responsive, 0px)) !important;
    right: auto !important;
    transform: translateX(-50%) !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-info-primary {
    left: var(--epfk-primary-x) !important;
    right: auto !important;
    bottom: calc(0px - var(--epfk-arrow-visual-offset-bottom-responsive, 0px) - var(--epfk-text-gap-bottom-responsive, 0px)) !important;
    transform: translateX(-50%) !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-arrow-end {
    left: var(--epfk-end-x) !important;
    top: calc(var(--epfk-arrow-top-y, 30px) + var(--epfk-arrow-visual-offset-top-responsive, 0px)) !important;
    transform: translateX(-50%) !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-arrow-primary {
    left: var(--epfk-primary-x) !important;
    top: calc(58px + 32px + 28px + var(--epfk-arrow-bottom-y, 38px) + var(--epfk-arrow-visual-offset-bottom-responsive, 0px)) !important;
    transform: translateX(-50%) !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-title,
  .evr-app .evr-panel[data-panel="result"] .epfk-info-end .epfk-title,
  .evr-app .evr-panel[data-panel="result"] .epfk-info-primary .epfk-title {
    font-size: 12px !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-value {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 46px !important;
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-unit {
    display: inline-block !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  .evr-app .evr-panel[data-panel="result"] .epfk-measure,
  .evr-app .evr-panel[data-panel="result"] .epfk-info-end > div,
  .evr-app .evr-panel[data-panel="result"] .epfk-info-primary > div {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }
}

@media (max-width: 420px) {
  .evr-app .evr-panel[data-panel="result"] .epfk-axis span {
    font-size: 10px !important;
  }
  .evr-app .evr-panel[data-panel="result"] .epfk-seg {
    font-size: 11px !important;
  }
  .evr-app .evr-panel[data-panel="result"] .epfk-seg.is-active {
    font-size: 13px !important;
  }
}


/* v1.0.379: Energieverbrauchsskala im Ergebnis-Block vertikal zentrieren */
@media (min-width: 981px) {
  .evr-app .evr-panel[data-panel="result"] .evr-result-indication-grid {
    align-items: stretch !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 100% !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale .evr-result-scale-col {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale .evr-scale-card,
  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale .epfk-scale-wrap {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .evr-app .evr-panel[data-panel="result"] .evr-result-box-scale .epfk-scale {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

/* VKA_406_MODE_GRID_DESKTOP_ROW_MOBILE_STACK_START */
@media (min-width: 981px) {
  .vka-mode-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    overflow-x: visible !important;
  }
  .vka-mode-choice {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
  }
}
@media (max-width: 980px) {
  .vka-mode-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    overflow-x: visible !important;
  }
  .vka-mode-choice {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* VKA_406_MODE_GRID_DESKTOP_ROW_MOBILE_STACK_END */


/* VKA_408_MODE_INFO_ICONS_START */
.vka-mode-panel,.vka-mode-grid,.vka-mode-choice{overflow:visible!important}
.vka-mode-choice{position:relative!important;padding-right:38px!important}
.vka-mode-info{position:absolute;top:13px;right:13px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#6b7280;color:#fff;font-size:12px;font-weight:800;line-height:1;cursor:help;z-index:50}
.vka-mode-info::after{content:attr(data-tooltip);display:none;position:absolute;top:26px;width:420px;max-width:calc(100vw - 56px);padding:14px 16px;border:1px solid #6aa84f;background:#dff0d8;color:#1b5e20;font-size:14px;font-weight:500;line-height:1.35;text-align:left;white-space:normal;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:9999}
.vka-mode-info::before{content:'';display:none;position:absolute;top:18px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid #6aa84f;z-index:10000}
.vka-mode-info:hover::after,.vka-mode-info:focus::after,.vka-mode-info:hover::before,.vka-mode-info:focus::before{display:block}
.vka-tip-right::after{left:0;right:auto;transform:none}.vka-tip-right::before{left:1px;right:auto;transform:none}
.vka-tip-center::after{left:50%;right:auto;transform:translateX(-50%)}.vka-tip-center::before{left:50%;right:auto;transform:translateX(-50%)}
.vka-tip-left::after{right:0;left:auto;transform:none}.vka-tip-left::before{right:1px;left:auto;transform:none}
.vka-mixed-fuel-help{display:none!important}
@media (max-width:768px){.vka-mode-info::after{width:min(340px,calc(100vw - 48px));right:0;left:auto;transform:none;font-size:13px}.vka-mode-info::before{right:1px;left:auto;transform:none}.vka-tip-right::after,.vka-tip-center::after,.vka-tip-left::after{right:0;left:auto;transform:none}.vka-tip-right::before,.vka-tip-center::before,.vka-tip-left::before{right:1px;left:auto;transform:none}}
/* VKA_408_MODE_INFO_ICONS_END */

/* 1.0.413 – Info-i oben rechts in der Verbrauchsdaten-Auswahlkarte */
.evr-app .evr-choice-card {
  position: relative;
}
.evr-app .evr-choice-card .evr-choice-card-info {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  margin-left: 0 !important;
  z-index: 40 !important;
}
.evr-app .evr-choice-card .evr-choice-card-info::after {
  left: auto !important;
  right: 0 !important;
  bottom: auto !important;
  top: calc(100% + 10px) !important;
  transform: none !important;
  width: min(420px, 72vw) !important;
}
.evr-app .evr-choice-card .evr-choice-card-info::before {
  left: auto !important;
  right: 6px !important;
  bottom: auto !important;
  top: calc(100% + 4px) !important;
  transform: none !important;
  border-width: 0 6px 6px 6px !important;
  border-color: transparent transparent #2f7d32 transparent !important;
}
