#js-tool-container-floor-insulation-calculator .fip-app { display: flex; flex-direction: column; gap: 22px; color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .tbcalc-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
#js-tool-container-floor-insulation-calculator .fip-span2 { grid-column: 1 / -1; }
#js-tool-container-floor-insulation-calculator .tbcalc-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
#js-tool-container-floor-insulation-calculator .tb-select { height: 44px; border-radius: var(--radius-sm, 8px); }
#js-tool-container-floor-insulation-calculator .fip-hidden { display: none; }
#js-tool-container-floor-insulation-calculator .fip-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px; align-items: stretch; padding: 22px 24px; border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-lg, 18px); background: linear-gradient(135deg, var(--accent-light, rgba(47,102,255,.1)), rgba(0,0,0,0) 58%); box-shadow: var(--shadow-sm, 0 1px 2px rgba(16,17,22,.05)); }
#js-tool-container-floor-insulation-calculator .fip-hero-main { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
#js-tool-container-floor-insulation-calculator .fip-hero-label { font-size: 0.9rem; font-weight: 600; letter-spacing: 0.02em; color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-hero-row { display: flex; align-items: baseline; gap: 10px; }
#js-tool-container-floor-insulation-calculator .fip-hero-value { font-size: clamp(3rem, 6vw, 3.8rem); font-weight: 700; line-height: 1; letter-spacing: -0.02em; color: var(--text-primary, #12141a); font-variant-numeric: tabular-nums; }
#js-tool-container-floor-insulation-calculator .fip-hero-unit { font-size: 1.25rem; font-weight: 600; color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-hero-delta { font-size: 0.95rem; font-weight: 700; font-variant-numeric: tabular-nums; }
#js-tool-container-floor-insulation-calculator .fip-pos { color: var(--success, #18996b); }
#js-tool-container-floor-insulation-calculator .fip-neg { color: var(--danger, #cf4f42); }
#js-tool-container-floor-insulation-calculator .fip-hero-note { font-size: 0.85rem; line-height: 1.45; color: var(--text-muted, #5a6270); }
#js-tool-container-floor-insulation-calculator .fip-pie { display: flex; flex-direction: column; width: 250px; border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-md, 12px); overflow: hidden; background: var(--bg-secondary, #ffffff); }
#js-tool-container-floor-insulation-calculator .fip-pie-layer { display: flex; align-items: center; min-height: 0; padding: 0 14px; }
#js-tool-container-floor-insulation-calculator .fip-pie-layer span { font-size: 0.8rem; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
#js-tool-container-floor-insulation-calculator .fip-pie-slab-l { background: color-mix(in srgb, var(--text-muted, #5a6270) 14%, transparent); color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-pie-ins-l { background: var(--accent-primary, #2f66ff); color: #ffffff; }
#js-tool-container-floor-insulation-calculator .fip-pie-screed-l { background: color-mix(in srgb, var(--success, #18996b) 16%, transparent); color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .tbcalc-status { border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-left: 4px solid var(--accent-primary, #2f66ff); border-radius: var(--radius-sm, 8px); padding: 11px 15px; font-size: 0.9rem; line-height: 1.45; color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-status-warn { border-left-color: var(--warning, #b57c17); background: var(--warning-light, rgba(181,124,23,.1)); color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .fip-status-danger { border-left-color: var(--danger, #cf4f42); background: var(--danger-light, rgba(207,79,66,.08)); color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .fip-status-ok { border-left-color: var(--success, #18996b); background: var(--success-light, rgba(24,153,107,.1)); color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .fip-block { display: flex; flex-direction: column; gap: 12px; padding: 16px 18px; border: 1px solid var(--border-color, rgba(16,17,22,.09)); border-radius: var(--radius-md, 12px); }
#js-tool-container-floor-insulation-calculator .fip-block-title { font-size: 0.85rem; font-weight: 600; letter-spacing: 0.02em; color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-scale-wrap { position: relative; padding-top: 20px; }
#js-tool-container-floor-insulation-calculator .fip-scale-track { position: relative; display: flex; height: 34px; border-radius: 9px; overflow: visible; border: 1px solid var(--border-color, rgba(16,17,22,.09)); background: var(--bg-tertiary, #f1f2f5); }
#js-tool-container-floor-insulation-calculator .fip-scale-seg { height: 100%; min-width: 0; }
#js-tool-container-floor-insulation-calculator .fip-seg-ground { background: color-mix(in srgb, var(--success, #18996b) 42%, transparent); border-radius: 8px 0 0 8px; }
#js-tool-container-floor-insulation-calculator .fip-seg-slab { background: color-mix(in srgb, var(--text-muted, #5a6270) 30%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-seg-screed { background: color-mix(in srgb, var(--accent-primary, #2f66ff) 45%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-seg-ins { background: var(--accent-primary, #2f66ff); border-radius: 0 8px 8px 0; }
#js-tool-container-floor-insulation-calculator .fip-scale-req { position: absolute; top: -7px; bottom: -7px; width: 0; border-left: 2px dashed var(--danger, #cf4f42); }
#js-tool-container-floor-insulation-calculator .fip-req-label { position: absolute; top: -20px; font-size: 0.75rem; font-weight: 700; white-space: nowrap; color: var(--danger, #cf4f42); transform: translateX(-50%); font-variant-numeric: tabular-nums; }
#js-tool-container-floor-insulation-calculator .fip-legend { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 0.85rem; color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-leg { display: inline-flex; align-items: center; gap: 6px; }
#js-tool-container-floor-insulation-calculator .fip-leg b { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .fip-leg-req b { color: var(--danger, #cf4f42); }
#js-tool-container-floor-insulation-calculator .fip-swatch { display: inline-block; width: 12px; height: 12px; border-radius: 3px; }
#js-tool-container-floor-insulation-calculator .fip-sw-ground { background: color-mix(in srgb, var(--success, #18996b) 42%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-sw-slab { background: color-mix(in srgb, var(--text-muted, #5a6270) 30%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-sw-screed { background: color-mix(in srgb, var(--accent-primary, #2f66ff) 45%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-sw-ins { background: var(--accent-primary, #2f66ff); }
#js-tool-container-floor-insulation-calculator .fip-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: stretch; }
#js-tool-container-floor-insulation-calculator .fip-cols .fip-hidden { display: none; }
#js-tool-container-floor-insulation-calculator .fip-rows { display: grid; gap: 9px; align-content: start; }
#js-tool-container-floor-insulation-calculator .fip-row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 0.92rem; padding-bottom: 8px; border-bottom: 1px solid color-mix(in srgb, var(--border-color, rgba(16,17,22,.09)) 55%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-row:last-child { border-bottom: 0; padding-bottom: 0; }
#js-tool-container-floor-insulation-calculator .fip-row-key { color: var(--text-secondary, #4d5465); }
#js-tool-container-floor-insulation-calculator .fip-row-val { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text-primary, #12141a); text-align: right; }
#js-tool-container-floor-insulation-calculator .fip-bars { display: grid; grid-template-columns: auto auto 1fr; gap: 18px; align-items: end; }
#js-tool-container-floor-insulation-calculator .fip-bar-col { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 76px; }
#js-tool-container-floor-insulation-calculator .fip-bar { width: 52px; border-radius: 8px 8px 3px 3px; min-height: 6px; }
#js-tool-container-floor-insulation-calculator .fip-bar-before { background: color-mix(in srgb, var(--danger, #cf4f42) 55%, transparent); }
#js-tool-container-floor-insulation-calculator .fip-bar-after { background: var(--accent-primary, #2f66ff); }
#js-tool-container-floor-insulation-calculator .fip-bar-val { font-size: 0.85rem; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text-primary, #12141a); }
#js-tool-container-floor-insulation-calculator .fip-bar-val.fip-neg { color: var(--danger, #cf4f42); }
#js-tool-container-floor-insulation-calculator .fip-bar-cap { font-size: 0.72rem; color: var(--text-muted, #5a6270); text-align: center; }
#js-tool-container-floor-insulation-calculator .fip-energy-side { align-self: center; padding-left: 4px; }
#js-tool-container-floor-insulation-calculator .fip-table-wrap { overflow-x: auto; }
#js-tool-container-floor-insulation-calculator .fip-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
#js-tool-container-floor-insulation-calculator .fip-table th { text-align: left; font-weight: 600; color: var(--text-muted, #5a6270); padding: 6px 10px; border-bottom: 1px solid var(--border-color, rgba(16,17,22,.09)); white-space: nowrap; }
#js-tool-container-floor-insulation-calculator .fip-table td { padding: 7px 10px; border-bottom: 1px solid var(--border-color, rgba(16,17,22,.09)); font-variant-numeric: tabular-nums; }
#js-tool-container-floor-insulation-calculator .fip-table td:nth-child(n+2), #js-tool-container-floor-insulation-calculator .fip-table th:nth-child(n+2) { text-align: right; }

/* Вертикальный ритм внутри зон: гарантированные отступы, не зависящие от темы */
#js-tool-container-floor-insulation-calculator .fip-app > .fip-controls > .tbcalc-section-title,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-outcome > .tbcalc-section-title,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-details > .tbcalc-section-title { margin-bottom: 0; }
#js-tool-container-floor-insulation-calculator .fip-app > .fip-controls > .tbcalc-section-note,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-outcome > .tbcalc-section-note,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-details > .tbcalc-section-note { margin-bottom: 0; }
#js-tool-container-floor-insulation-calculator .fip-app > .fip-controls > * + *,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-outcome > * + *,
#js-tool-container-floor-insulation-calculator .fip-app > .fip-details > * + * { margin-top: 22px; }

@media (max-width: 600px) {
#js-tool-container-floor-insulation-calculator .tbcalc-grid-2 { grid-template-columns: 1fr; }
#js-tool-container-floor-insulation-calculator .fip-cols { grid-template-columns: 1fr; }
#js-tool-container-floor-insulation-calculator .fip-hero { grid-template-columns: 1fr; padding: 18px; }
#js-tool-container-floor-insulation-calculator .fip-pie { width: 100%; }
#js-tool-container-floor-insulation-calculator .fip-bars { grid-template-columns: auto auto; }
#js-tool-container-floor-insulation-calculator .fip-energy-side { grid-column: 1 / -1; }
}
