#js-tool-container-electric-underfloor-heating-calculator .efh-controls-body { display: grid; gap: 16px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 16px; }

#js-tool-container-electric-underfloor-heating-calculator .efh-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 16px; align-items: stretch; }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-main {
  border: 1px solid var(--border-color, rgba(16,17,22,.09));
  border-left: 3px solid var(--accent-primary, #6366F1);
  border-radius: var(--radius-md, 12px);
  padding: 16px 18px 14px;
  background: var(--accent-light, rgba(99,102,241,.1));
  min-height: 118px;
  box-sizing: border-box;
}
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-side {
  border: 1px solid var(--border-color, rgba(16,17,22,.09));
  border-radius: var(--radius-md, 12px);
  padding: 16px 18px 14px;
  background: var(--bg-tertiary, #f1f2f5);
  min-height: 118px;
  box-sizing: border-box;
}
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-label { display: block; font-size: 12px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-muted, #5a6270); margin-bottom: 8px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-row { display: flex; align-items: baseline; gap: 8px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-value { font-size: clamp(30px, 4.6vw, 44px); font-weight: 700; line-height: 1.05; color: var(--text-primary, #12141a); }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-value-sm { font-size: clamp(24px, 3.4vw, 32px); }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-unit { font-size: 15px; color: var(--text-secondary, #4d5465); }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-note { margin: 8px 2px 0; font-size: 13px; color: var(--text-muted, #5a6270); }

#js-tool-container-electric-underfloor-heating-calculator .efh-status { margin-top: 14px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-status.is-ok { color: var(--success, #18996b); }
#js-tool-container-electric-underfloor-heating-calculator .efh-status.is-warn { color: var(--warning, #b57c17); }
#js-tool-container-electric-underfloor-heating-calculator .efh-status.is-danger { color: var(--danger, #cf4f42); }

#js-tool-container-electric-underfloor-heating-calculator .efh-tape { margin-top: 14px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-label { font-size: 12px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-muted, #5a6270); }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-chip { font-size: 13px; font-weight: 700; color: var(--accent-primary, #6366F1); }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-track { position: relative; height: 16px; border-radius: 999px; background: var(--bg-tertiary, #f1f2f5); border: 1px solid var(--border-color, rgba(16,17,22,.09)); }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-norm { position: absolute; top: 1px; bottom: 1px; border-radius: 999px; background: var(--success-light, rgba(24,153,107,.1)); border: 1px solid var(--success, #18996b); }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-pin { position: absolute; top: 50%; transform: translate(-50%, -50%); min-width: 34px; text-align: center; padding: 2px 7px; border-radius: 999px; background: var(--accent-primary, #6366F1); color: var(--bg-secondary, #ffffff); font-size: 11px; font-weight: 700; box-shadow: var(--shadow-sm, 0 1px 2px rgba(0,0,0,.12)); }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-scale { display: flex; justify-content: space-between; align-items: baseline; font-size: 12px; color: var(--text-muted, #5a6270); margin-top: 6px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-tape-scale span { font-size: 11px; opacity: 0.85; }
#js-tool-container-electric-underfloor-heating-calculator .efh-route { display: flex; align-items: stretch; gap: 10px; margin-top: 14px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-node { display: flex; flex-direction: column; gap: 3px; border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-md, 12px); background: var(--bg-tertiary, #f1f2f5); padding: 10px 14px; box-sizing: border-box; }
#js-tool-container-electric-underfloor-heating-calculator .efh-node-label { font-size: 11px; letter-spacing: 0.03em; text-transform: uppercase; color: var(--text-muted, #5a6270); }
#js-tool-container-electric-underfloor-heating-calculator .efh-node-value { font-size: 17px; font-weight: 700; color: var(--text-primary, #12141a); }
#js-tool-container-electric-underfloor-heating-calculator .efh-verdict { align-self: flex-start; margin-top: 2px; padding: 2px 9px; border-radius: 999px; font-size: 11.5px; font-weight: 650; }
#js-tool-container-electric-underfloor-heating-calculator .efh-verdict.is-ok { background: var(--success-light, rgba(24,153,107,.1)); color: var(--success, #18996b); }
#js-tool-container-electric-underfloor-heating-calculator .efh-verdict.is-warn { background: var(--warning-light, rgba(181,124,23,.1)); color: var(--warning, #b57c17); }
#js-tool-container-electric-underfloor-heating-calculator .efh-link { flex: 1 1 24px; align-self: center; height: 2px; min-width: 18px; background: linear-gradient(90deg, var(--border-color, rgba(16,17,22,.09)), var(--accent-primary, #6366F1)); position: relative; }
#js-tool-container-electric-underfloor-heating-calculator .efh-link::after { content: ""; position: absolute; right: -1px; top: 50%; transform: translateY(-50%); border-left: 6px solid var(--accent-primary, #6366F1); border-top: 4px solid transparent; border-bottom: 4px solid transparent; }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-main { background: linear-gradient(135deg, var(--accent-light, rgba(99,102,241,.1)), transparent 72%); }
#js-tool-container-electric-underfloor-heating-calculator .efh-hero-sub { display: block; margin-top: 7px; font-size: 12.5px; color: var(--text-muted, #5a6270); }
#js-tool-container-electric-underfloor-heating-calculator .efh-canvas-wrap { position: relative; aspect-ratio: auto; min-height: 0; height: -moz-fit-content; height: fit-content; width: -moz-fit-content; width: fit-content; max-width: 100%; margin: 0 auto; }
#js-tool-container-electric-underfloor-heating-calculator .tb-canvas-tip { position: absolute; left: 0; top: 0; z-index: 5; max-width: 240px; background: var(--bg-primary, #f4f5f7); border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-sm, 8px); padding: 6px 9px; font-size: 12px; line-height: 1.35; color: var(--text-secondary, #4d5465); box-shadow: var(--shadow-md, 0 4px 14px rgba(0,0,0,.1)); opacity: 0; pointer-events: none; transition: opacity 0.12s ease; }
#js-tool-container-electric-underfloor-heating-calculator .tb-canvas-tip.show { opacity: 1; }
#js-tool-container-electric-underfloor-heating-calculator .tb-canvas-tip strong { color: var(--text-primary, #12141a); }
#js-tool-container-electric-underfloor-heating-calculator .efh-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 14px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-metric { border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-sm, 8px); padding: 10px 12px; box-sizing: border-box; }
#js-tool-container-electric-underfloor-heating-calculator .efh-metric-label { display: block; font-size: 12px; color: var(--text-muted, #5a6270); margin-bottom: 4px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-metric-row { display: flex; align-items: baseline; gap: 6px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-metric-row output { font-size: 19px; font-weight: 650; color: var(--text-primary, #12141a); }
#js-tool-container-electric-underfloor-heating-calculator .efh-metric-unit { font-size: 12px; color: var(--text-secondary, #4d5465); }

#js-tool-container-electric-underfloor-heating-calculator .efh-canvas-wrap { border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-md, 12px); padding: 0; box-sizing: border-box; background: var(--bg-tertiary, #f1f2f5); overflow: hidden; }
#js-tool-container-electric-underfloor-heating-calculator .efh-canvas-wrap canvas { display: block; width: 100%; }
#js-tool-container-electric-underfloor-heating-calculator .efh-legend { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 10px; font-size: 13px; color: var(--text-secondary, #4d5465); }
#js-tool-container-electric-underfloor-heating-calculator .efh-legend-item { display: inline-flex; align-items: center; gap: 8px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-swatch { display: inline-block; width: 18px; height: 10px; border-radius: 3px; box-sizing: border-box; }
#js-tool-container-electric-underfloor-heating-calculator .efh-swatch-cable { background: linear-gradient(90deg, var(--accent-primary, #6366F1) 0 3px, transparent 3px 6px); background-size: 6px 3px; border: none; }
#js-tool-container-electric-underfloor-heating-calculator .efh-swatch-free { border: 1.5px dashed var(--accent-primary, #6366F1); background: var(--accent-light, rgba(99,102,241,.1)); }
#js-tool-container-electric-underfloor-heating-calculator .efh-swatch-furn { background: repeating-linear-gradient(45deg, var(--text-muted, #5a6270) 0 2px, transparent 2px 6px); border: 1px solid var(--border-color, rgba(16,17,22,.09)); }

#js-tool-container-electric-underfloor-heating-calculator .efh-spec-table { width: 100%; border-collapse: collapse; font-size: 14px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-spec-table th { text-align: left; font-weight: 500; color: var(--text-secondary, #4d5465); padding: 9px 12px; border-bottom: 1px solid var(--border-color, rgba(16,17,22,.09)); }
#js-tool-container-electric-underfloor-heating-calculator .efh-spec-table td { text-align: right; padding: 9px 12px; border-bottom: 1px solid var(--border-color, rgba(16,17,22,.09)); color: var(--text-primary, #12141a); font-weight: 600; }
#js-tool-container-electric-underfloor-heating-calculator .efh-spec-table tr:last-child th, #js-tool-container-electric-underfloor-heating-calculator .efh-spec-table tr:last-child td { border-bottom: none; }
#js-tool-container-electric-underfloor-heating-calculator .efh-table-caption { text-align: left; font-size: 12px; color: var(--text-muted, #5a6270); padding: 0 0 8px; }
#js-tool-container-electric-underfloor-heating-calculator .efh-formula-hint { margin: 8px 2px 0; font-size: 13px; color: var(--text-muted, #5a6270); }

@media (max-width: 600px) {
  #js-tool-container-electric-underfloor-heating-calculator .efh-grid-2,
  #js-tool-container-electric-underfloor-heating-calculator .efh-grid-3,
  #js-tool-container-electric-underfloor-heating-calculator .efh-metrics { grid-template-columns: 1fr; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-hero { grid-template-columns: 1fr; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-hero-main { min-height: 96px; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-hero-side { min-height: 0; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-hero-side .efh-hero-row { flex-direction: row; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-spec-table th, #js-tool-container-electric-underfloor-heating-calculator .efh-spec-table td { padding: 8px 8px; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-route { flex-direction: column; }
  #js-tool-container-electric-underfloor-heating-calculator .efh-link { display: none; }
}

@media (max-width: 600px) {
  #js-tool-container-electric-underfloor-heating-calculator .efh-spec-table td:not(.efh-num) { text-align: left; }
}