/* /Pages/BIM/Details.razor.rz.scp.css */
.details-page[b-nwkm4cjyoe] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 64px);
    width: 100%;
}

.bim-content[b-nwkm4cjyoe] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.detail-management-panel[b-nwkm4cjyoe] {
    flex: 1;
    padding: 24px;
    overflow-y: auto;
}
/* /Pages/BIM/FloorPlan.razor.rz.scp.css */
.bim-page[b-305jx8v4of] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 64px);
    width: 100%;
}

.bim-info-bar[b-305jx8v4of] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 16px;
    background: var(--mud-palette-background);
    border-bottom: 1px solid var(--mud-palette-lines-default);
    font-size: 0.875rem;
    flex-shrink: 0;
}

.bim-info-label[b-305jx8v4of] {
    font-weight: 500;
    color: var(--mud-palette-text-secondary);
}

.bim-info-separator[b-305jx8v4of] {
    color: var(--mud-palette-text-disabled);
    margin: 0 4px;
}

/* Ribbon Styles */
.ribbon-container[b-305jx8v4of] {
    background: var(--mud-palette-background);
    border-bottom: 1px solid var(--mud-palette-lines-default);
    position: relative;
}

.ribbon-tabs[b-305jx8v4of] {
    display: flex;
    background: var(--mud-palette-background-grey);
    border-bottom: 1px solid var(--mud-palette-lines-default);
    align-items: center;
}

.ribbon-tab-list[b-305jx8v4of] {
    display: flex;
    flex: 1;
    overflow-x: auto;
    align-items: center;
    scrollbar-width: none; /* Firefox */
}

.ribbon-tab-list[b-305jx8v4of]::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}

.ribbon-actions[b-305jx8v4of] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    border-left: 1px solid var(--mud-palette-lines-default);
    padding-left: 4px;
}

.ribbon-tab[b-305jx8v4of] {
    padding: 8px 24px;
    background: transparent;
    border: none;
    border-bottom: 3px solid transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: var(--mud-palette-text-primary);
    transition: all 0.2s;
    white-space: nowrap;
}

.ribbon-tab:hover[b-305jx8v4of] {
    background: var(--mud-palette-action-default-hover);
}

.ribbon-tab.active[b-305jx8v4of] {
    background: var(--mud-palette-background);
    border-bottom-color: var(--mud-palette-primary);
}

.ribbon-toggle-btn[b-305jx8v4of] {
    padding: 4px 10px;
    background: transparent;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    color: var(--mud-palette-text-secondary);
    transition: all 0.2s;
}

.ribbon-toggle-btn:hover[b-305jx8v4of] {
    background: var(--mud-palette-action-default-hover);
    color: var(--mud-palette-text-primary);
}

.ribbon-collapse-all-btn[b-305jx8v4of] {
    padding: 4px 10px;
    background: transparent;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    color: var(--mud-palette-text-secondary);
    transition: all 0.2s;
}

.ribbon-collapse-all-btn:hover[b-305jx8v4of] {
    background: var(--mud-palette-action-default-hover);
    color: var(--mud-palette-text-primary);
}

.ribbon-content[b-305jx8v4of] {
    display: flex;
    gap: 20px;
    padding: 12px 20px;
    min-height: 80px;
}

/* Collapsed ribbon: content is hidden until a tab is hovered */
.ribbon-content.ribbon-content-dropdown[b-305jx8v4of] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 200;
    background: var(--mud-palette-background);
    border-bottom: 2px solid var(--mud-palette-primary);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    min-height: unset;
    flex-wrap: wrap;
    visibility: hidden;
}

/* Show dropdown when hovering the tab list (not the action buttons) or the dropdown itself */
.ribbon-tabs:has(.ribbon-tab-list:hover) + .ribbon-content.ribbon-content-dropdown[b-305jx8v4of],
.ribbon-content.ribbon-content-dropdown:hover[b-305jx8v4of] {
    visibility: visible;
}

.ribbon-group[b-305jx8v4of] {
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--mud-palette-lines-default);
    padding-right: 20px;
}

.ribbon-group:last-child[b-305jx8v4of] {
    border-right: none;
}

.ribbon-group-title[b-305jx8v4of] {
    font-size: 11px;
    color: var(--mud-palette-text-secondary);
    margin-bottom: 8px;
    text-transform: uppercase;
}

.ribbon-buttons[b-305jx8v4of] {
    display: flex;
    gap: 8px;
}

.ribbon-button[b-305jx8v4of] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 12px;
    background: var(--mud-palette-surface);
    border: 1px solid var(--mud-palette-lines-default);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
    min-width: 60px;
    color: var(--mud-palette-text-primary);
}

.ribbon-button:hover:not(:disabled)[b-305jx8v4of] {
    background: var(--mud-palette-background-grey);
    border-color: var(--mud-palette-lines-inputs);
}

.ribbon-button:disabled[b-305jx8v4of] {
    opacity: 0.6;
    cursor: not-allowed;
}

.ribbon-button.active-view[b-305jx8v4of] {
    background: var(--mud-palette-primary);
    border-color: var(--mud-palette-primary);
    color: white;
}

.ribbon-button.active-view[b-305jx8v4of]  .ribbon-icon svg {
    fill: white;
    color: white;
}

.ribbon-button.active-view .ribbon-label[b-305jx8v4of] {
    color: white;
}

.ribbon-icon[b-305jx8v4of] {
    margin-bottom: 4px;
}

[b-305jx8v4of] .ribbon-icon svg {
    width: 24px;
    height: 24px;
    fill: var(--mud-palette-text-primary);
    color: var(--mud-palette-text-primary);
}

.ceiling-icon[b-305jx8v4of]  svg {
    color: var(--mud-palette-text-secondary);
}

.window-icon[b-305jx8v4of]  svg {
    color: var(--mud-palette-info);
    width: 26px;
    height: 26px;
}

.ribbon-label[b-305jx8v4of] {
    font-size: 11px;
    text-align: center;
    color: var(--mud-palette-text-primary);
}

/* Content Area */
.bim-content[b-305jx8v4of] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.model-space[b-305jx8v4of] {
    flex: 1;
    background: #2a2a2a; /* intentional dark background for 3D modeling canvas */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.model-placeholder[b-305jx8v4of] {
    text-align: center;
    color: var(--mud-palette-text-disabled);
}

.placeholder-content[b-305jx8v4of] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.placeholder-icon[b-305jx8v4of] {
    font-size: 64px;
}

.placeholder-icon[b-305jx8v4of]  svg {
    width: 64px;
    height: 64px;
    color: var(--mud-palette-text-secondary);
}

.placeholder-content h2[b-305jx8v4of] {
    color: var(--mud-palette-text-secondary);
    margin: 0;
    font-size: 32px;
    letter-spacing: 2px;
}

.placeholder-content p[b-305jx8v4of] {
    color: var(--mud-palette-text-disabled);
    margin: 0;
}

/* Right Sidebar */
.right-sidebar[b-305jx8v4of] {
    width: 300px;
    background: var(--mud-palette-surface);
    border-left: 1px solid var(--mud-palette-lines-default);
    display: flex;
    flex-direction: column;
    min-height: 0; /* Critical for nested flex scrolling */
    transition: width 0.2s ease;
}

.right-sidebar-collapsed[b-305jx8v4of] {
    width: 6px;
    min-width: 6px;
    overflow: hidden;
    border-left: 2px solid var(--mud-palette-primary);
}

/* Expand sidebar to full width when hovered in collapsed state */
.right-sidebar-collapsed:hover[b-305jx8v4of] {
    width: 300px;
}

.properties-panel[b-305jx8v4of] {
    flex: 1;
    border-bottom: 1px solid var(--mud-palette-lines-default);
    display: flex;
    flex-direction: column;
    min-height: 0; /* Critical for nested flex scrolling */
}

.views-panel[b-305jx8v4of] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0; /* Critical for nested flex scrolling */
}

.panel-header[b-305jx8v4of] {
    background: var(--mud-palette-surface);
    padding: 12px 16px;
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.panel-content[b-305jx8v4of] {
    padding: 16px;
    overflow-y: auto;
    flex: 1;
    min-height: 0; /* Allows flex scrolling to work */
}

/* Properties Items */
.property-item[b-305jx8v4of] {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.property-item:last-child[b-305jx8v4of] {
    border-bottom: none;
}

.property-label[b-305jx8v4of] {
    font-weight: 500;
    color: var(--mud-palette-text-secondary);
    font-size: 13px;
}

.property-value[b-305jx8v4of] {
    color: var(--mud-palette-text-secondary);
    font-size: 13px;
}

/* View Items - using MudBlazor list items */
.view-item-normal[b-305jx8v4of] {
    cursor: pointer;
}

.view-item-active[b-305jx8v4of] {
    background-color: var(--mud-palette-primary) !important;
    color: white !important;
}

.view-item-active[b-305jx8v4of]  .mud-list-item-text {
    color: white !important;
}

/* Line Style Select Styling */
.line-style-select[b-305jx8v4of] {
    color: var(--mud-palette-text-primary) !important;
}

.line-style-select[b-305jx8v4of]  .mud-input-root {
    color: var(--mud-palette-text-primary) !important;
    background-color: var(--mud-palette-surface) !important;
}

.line-style-select[b-305jx8v4of]  .mud-select-input {
    color: var(--mud-palette-text-primary) !important;
}

/* Property Numeric Field Styling */
.property-numeric-field[b-305jx8v4of] {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

.property-numeric-field[b-305jx8v4of]  .mud-input-root {
    color: var(--mud-palette-text-primary) !important;
    background-color: var(--mud-palette-surface) !important;
    font-size: 13px !important;
}

.property-numeric-field[b-305jx8v4of]  .mud-input {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

.property-numeric-field[b-305jx8v4of]  .mud-input-adornment-text {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

/* Property Select Field Styling */
.property-select-field[b-305jx8v4of] {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

.property-select-field[b-305jx8v4of]  .mud-input-root {
    color: var(--mud-palette-text-primary) !important;
    background-color: var(--mud-palette-surface) !important;
    font-size: 13px !important;
}

.property-select-field[b-305jx8v4of]  .mud-input {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

.property-select-field[b-305jx8v4of]  .mud-select-input {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

/* Property Text Field Styling */
.property-text-field[b-305jx8v4of] {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

.property-text-field[b-305jx8v4of]  .mud-input-root {
    color: var(--mud-palette-text-primary) !important;
    background-color: var(--mud-palette-surface) !important;
    font-size: 13px !important;
}

.property-text-field[b-305jx8v4of]  .mud-input {
    color: var(--mud-palette-text-primary) !important;
    font-size: 13px !important;
}

/* Linear Dimension Tooltip */
.dimension-tooltip[b-305jx8v4of] {
    position: fixed;
    bottom: 20px;
    right: 320px;
    background: var(--mud-palette-primary);
    color: white;
    padding: 12px 20px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    z-index: 1000;
    pointer-events: none;
    animation: slideInUp-b-305jx8v4of 0.3s ease-out;
}

@keyframes slideInUp-b-305jx8v4of {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Trim style preview card styles */
.trim-style-card[b-305jx8v4of] {
    text-align: center;
    padding: 15px;
    border: 2px solid var(--mud-palette-lines-default);
    border-radius: 8px;
    background-color: var(--mud-palette-surface);
    cursor: pointer;
    transition: all 0.2s ease;
}

.trim-style-card:hover[b-305jx8v4of] {
    border-color: var(--mud-palette-primary-lighten);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.trim-style-card-selected[b-305jx8v4of] {
    border-color: var(--mud-palette-primary);
    background-color: var(--mud-palette-primary-lighten);
}

/* Preview diagram styles */
.preview-container[b-305jx8v4of] {
    display: inline-block;
    position: relative;
}

.preview-window[b-305jx8v4of] {
    width: 90px;
    height: 100px;
    background-color: #87ceeb; /* intentional: sky blue represents window glass */
    border: 2px solid #333;
    display: inline-block;
}

.preview-trim-horizontal[b-305jx8v4of] {
    width: 100px;
    height: 8px;
    background-color: #d4a574; /* intentional: tan/wood color represents wood trim */
    position: absolute;
    left: -5px;
}

.preview-trim-vertical[b-305jx8v4of] {
    width: 8px;
    height: 100px;
    background-color: #d4a574; /* intentional: tan/wood color represents wood trim */
    position: absolute;
    top: 0;
}

.preview-trim-top[b-305jx8v4of] {
    top: -10px;
}

.preview-trim-bottom[b-305jx8v4of] {
    bottom: -10px;
}

.preview-trim-left[b-305jx8v4of] {
    left: -10px;
}

.preview-trim-right[b-305jx8v4of] {
    right: -10px;
}

.preview-trim-center[b-305jx8v4of] {
    left: 50%;
    transform: translateX(-50%);
}

/* Right sidebar Guide / Properties tab bar */
.right-sidebar-tabs[b-305jx8v4of] {
    display: flex;
    flex-shrink: 0;
    border-bottom: 1px solid var(--mud-palette-lines-default);
    background: var(--mud-palette-surface);
}

.right-sidebar-tab[b-305jx8v4of] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 7px 4px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--mud-palette-text-secondary);
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
    white-space: nowrap;
}

.right-sidebar-tab:hover[b-305jx8v4of] {
    color: var(--mud-palette-primary);
    background: var(--mud-palette-action-default-hover);
}

.right-sidebar-tab-active[b-305jx8v4of] {
    color: var(--mud-palette-primary);
    border-bottom-color: var(--mud-palette-primary);
    font-weight: 600;
}

.right-sidebar-tab-icon[b-305jx8v4of] {
    font-size: 1rem;
}
/* /Pages/BIM/ReturnSystemDialog.razor.rz.scp.css */
.return-system-dialog-footer[b-ld1roiasu9] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 16px;
    margin-top: 8px;
    border-top: 1px solid #dee2e6;
}
/* /Pages/EnergyModel/EnergyDashboard.razor.rz.scp.css */
/* ============================================================
   Energy Analysis — Dashboard page styles
   EnergyDashboard.razor.css
   ============================================================ */

.db-root[b-4e6m3sldhs] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ── Top-row grid: force all three summary cards to equal height ─ */

[b-4e6m3sldhs] .db-top-grid > .mud-grid-item {
    display: flex !important;
    flex-direction: column;
    min-height: 0;
}

[b-4e6m3sldhs] .db-top-grid > .mud-grid-item > .db-card {
    flex: 1;
}

.db-top-grid[b-4e6m3sldhs] {
    align-items: stretch;
}

/* ── Cards ─────────────────────────────────────────────────── */

.db-card[b-4e6m3sldhs] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

[b-4e6m3sldhs] .db-card > .mud-card-content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.db-card-title[b-4e6m3sldhs] {
    font-weight: 600;
}

.db-card-content[b-4e6m3sldhs] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* ── Project Card ───────────────────────────────────────────── */

.db-project-name[b-4e6m3sldhs] {
    font-weight: 700;
    margin-bottom: 8px;
}

.db-meta-row[b-4e6m3sldhs] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 4px;
}

.db-meta-icon[b-4e6m3sldhs] {
    opacity: 0.6;
    flex-shrink: 0;
}

/* ── Program & Standards ────────────────────────────────────── */

.db-program-active[b-4e6m3sldhs] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
}

.db-program-emoji[b-4e6m3sldhs] {
    font-size: 1.8rem;
    flex-shrink: 0;
}

/* ── Section header ─────────────────────────────────────────── */

.db-section-header[b-4e6m3sldhs] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 10px;
}

.db-section-title[b-4e6m3sldhs] {
    font-weight: 600;
}

/* ── Module Status Cards ────────────────────────────────────── */

.db-module-card[b-4e6m3sldhs] {
    border-left-width: 3px !important;
    border-left-style: solid !important;
}

.db-module-card.db-status--complete[b-4e6m3sldhs]   { border-left-color: #4caf50 !important; }
.db-module-card.db-status--warning[b-4e6m3sldhs]    { border-left-color: #ff9800 !important; }
.db-module-card.db-status--error[b-4e6m3sldhs]      { border-left-color: #f44336 !important; }
.db-module-card.db-status--notstarted[b-4e6m3sldhs] { border-left-color: rgba(128, 128, 128, 0.3) !important; }

.db-module-content[b-4e6m3sldhs] {
    padding-bottom: 0 !important;
}

.db-module-header[b-4e6m3sldhs] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 6px;
}

.db-module-icon[b-4e6m3sldhs] {
    opacity: 0.75;
}

.db-module-status-badge[b-4e6m3sldhs] {
    flex-shrink: 0;
    font-size: 0.7rem;
    width: 16px;
    text-align: center;
    font-weight: 700;
}

.db-module-status--notstarted[b-4e6m3sldhs]  { color: rgba(128, 128, 128, 0.6); }
.db-module-status--complete[b-4e6m3sldhs]    { color: #4caf50; }
.db-module-status--warning[b-4e6m3sldhs]     { color: #ff9800; }
.db-module-status--error[b-4e6m3sldhs]       { color: #f44336; }

.db-module-name[b-4e6m3sldhs] {
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 2px;
}

.db-module-status-text[b-4e6m3sldhs] {
    line-height: 1.3;
}

/* ── Weather & Climate / Last Run ───────────────────────────── */

.db-stat-row[b-4e6m3sldhs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3px 0;
    border-bottom: 1px solid rgba(128, 128, 128, 0.08);
}

.db-stat-row-last[b-4e6m3sldhs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3px 0;
    border-bottom: none;
}

.db-stat-row:last-child[b-4e6m3sldhs] {
    border-bottom: none;
}

.db-stat-label[b-4e6m3sldhs] {
    font-size: 0.8rem;
    color: rgba(128, 128, 128, 0.9);
}

.db-stat-value[b-4e6m3sldhs] {
    font-size: 0.82rem;
    font-weight: 500;
}

.db-stat-highlight[b-4e6m3sldhs] {
    color: #26d9b0;
    font-weight: 600;
}

/* ── Results & Compliance: empty state ─────────────────────── */

.db-last-run-empty[b-4e6m3sldhs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 6px 0;
    text-align: center;
    flex: 1;
    min-height: 92px;
}

.db-last-run-icon[b-4e6m3sldhs] {
    opacity: 0.3;
}

/* ── Run Simulation Section ──────────────────────────────────── */

.db-run-section[b-4e6m3sldhs] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    padding: 8px 0 4px;
    border-top: 1px solid rgba(128, 128, 128, 0.15);
}

.db-run-hint[b-4e6m3sldhs] {
    text-align: right;
}

.db-run-btn[b-4e6m3sldhs] {
    min-width: 180px;
    font-size: 0.95rem;
    font-weight: 600;
}

/* ── Responsive ──────────────────────────────────────────────── */

@media (max-width: 599.98px) {
    .db-root[b-4e6m3sldhs] {
        gap: 12px;
    }

    .db-run-section[b-4e6m3sldhs] {
        align-items: stretch;
    }

    .db-run-btn[b-4e6m3sldhs] {
        min-width: 0;
        width: 100%;
    }

    .db-run-hint[b-4e6m3sldhs] {
        text-align: center;
    }
}
/* /Pages/EnergyModel/EnergyEnvelope.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   EnergyEnvelope.razor.css  —  Envelope Construction Editor styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Root container ─────────────────────────────────────────────────── */
.env-root[b-w8rglm2wfl] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.env-surface-row--tree[b-w8rglm2wfl] {
    margin-left: 58px;
    padding-left: 4px;
}

.env-page-header[b-w8rglm2wfl] {
    padding-bottom: 4px;
}

.env-header-stack[b-w8rglm2wfl] {
    flex-wrap: wrap;
}

/* ── Desktop column scrolling behavior (>= md) ────────────────────────── */
@media (min-width: 960px) {
    .env-main-grid[b-w8rglm2wfl] {
        height: calc(100vh - 280px);
        min-height: 520px;
        overflow: hidden;
    }

    .env-main-grid > .mud-grid-item[b-w8rglm2wfl] {
        height: 100%;
        min-height: 0;
    }

    .env-tree-panel[b-w8rglm2wfl],
    .env-surface-panel[b-w8rglm2wfl],
    .env-detail-panel[b-w8rglm2wfl] {
        height: 100%;
        min-height: 0;
    }

    .env-detail-panel[b-w8rglm2wfl] {
        overflow-y: auto;
    }

    .env-detail-tab-panel[b-w8rglm2wfl] {
        overflow-y: visible;
        flex: initial;
    }
}

/* ── Shared panel styles ─────────────────────────────────────────────── */
.env-panel[b-w8rglm2wfl] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 520px;
    overflow: hidden;
    border-radius: 6px;
}

.env-panel-header[b-w8rglm2wfl] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.env-section-content[b-w8rglm2wfl] {
    padding: 0 16px;
}

.env-header-name-field[b-w8rglm2wfl] {
    flex: 1;
    min-width: 260px;
}

.env-header-nav[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.env-panel-item[b-w8rglm2wfl] {
    min-height: 0;
}

/* ── Tree panel ──────────────────────────────────────────────────────── */
.env-tree-panel[b-w8rglm2wfl] {
    min-height: 520px;
}

.env-tree-list[b-w8rglm2wfl] {
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 4px 0;
}

.env-tree-node[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
}

.env-tree-node:hover[b-w8rglm2wfl] {
    background: rgba(0, 0, 0, 0.04);
}

.env-tree-node--building[b-w8rglm2wfl] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.env-tree-node--zone[b-w8rglm2wfl] {
    padding-left: 14px;
}

.env-tree-node--room[b-w8rglm2wfl] {
    padding-left: 28px;
}

.env-tree-room-block[b-w8rglm2wfl] {
    margin: 3px 8px 6px 10px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 6px;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.01);
}

.env-tree-room-block--active-path[b-w8rglm2wfl] {
    border-color: rgba(var(--mud-palette-primary-rgb), 0.45);
    box-shadow: 0 0 0 1px rgba(var(--mud-palette-primary-rgb), 0.18);
}

.env-tree-room-children[b-w8rglm2wfl] {
    border-top: 1px solid rgba(0, 0, 0, 0.07);
    border-left: 3px solid rgba(var(--mud-palette-primary-rgb), 0.25);
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.env-tree-node--section[b-w8rglm2wfl] {
    padding-left: 20px;
    background: rgba(0, 0, 0, 0.02);
}

.env-tree-node--group[b-w8rglm2wfl] {
    padding-left: 36px;
}

.env-tree-node--room-group[b-w8rglm2wfl] {
    padding-left: 44px;
}

.env-tree-node--ancestor[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.07);
}

.env-tree-expand-btn[b-w8rglm2wfl] {
    flex-shrink: 0;
    margin: -6px -4px;
}

.env-tree-expand-spacer[b-w8rglm2wfl] {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
}

.env-tree-node--selected[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.10) !important;
    border-left: 3px solid var(--mud-palette-primary);
    border-bottom: 2px solid var(--mud-palette-primary);
}

.env-tree-node--selected:hover[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.14) !important;
}

.env-tree-icon[b-w8rglm2wfl] {
    flex-shrink: 0;
    font-size: 1rem;
    opacity: 0.7;
}

.env-tree-label[b-w8rglm2wfl] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.env-node-summary--ok[b-w8rglm2wfl] {
    color: var(--mud-palette-success);
}

.env-node-summary--warn[b-w8rglm2wfl] {
    color: var(--mud-palette-warning);
}

.env-node-summary--error[b-w8rglm2wfl] {
    color: var(--mud-palette-error);
}

.env-node-summary--muted[b-w8rglm2wfl] {
    color: var(--mud-palette-text-secondary);
}

.env-tree-empty[b-w8rglm2wfl] {
    padding: 8px 12px;
    font-style: italic;
}

/* ── Surface list panel ──────────────────────────────────────────────── */
.env-surface-list[b-w8rglm2wfl] {
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 4px 0;
}

.env-group[b-w8rglm2wfl] {
    margin-bottom: 2px;
}

.env-group-header[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    background: rgba(0, 0, 0, 0.04);
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

.env-group-header:hover[b-w8rglm2wfl] {
    background: rgba(0, 0, 0, 0.07);
}

.env-group-add-btn[b-w8rglm2wfl] {
    opacity: 0.6;
    transition: opacity 0.15s;
}

.env-group-header:hover .env-group-add-btn[b-w8rglm2wfl] {
    opacity: 1;
}

.env-group-empty[b-w8rglm2wfl] {
    padding: 6px 12px;
    font-style: italic;
}

.env-window-inputs[b-w8rglm2wfl] {
    padding: 8px 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.env-summary-wrap[b-w8rglm2wfl] {
    flex: 1;
    overflow: auto;
    padding: 8px 12px 12px;
}

.env-summary-table[b-w8rglm2wfl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.env-summary-table th[b-w8rglm2wfl],
.env-summary-table td[b-w8rglm2wfl] {
    padding: 8px 6px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    vertical-align: middle;
    text-align: left;
}

.env-summary-table thead th[b-w8rglm2wfl] {
    background: rgba(0, 0, 0, 0.03);
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.env-summary-table tfoot td[b-w8rglm2wfl] {
    border-top: 1px solid rgba(0, 0, 0, 0.14);
    border-bottom: 0;
    font-weight: 600;
}

.env-summary-row--clickable[b-w8rglm2wfl] {
    cursor: pointer;
    transition: background 0.1s;
}

.env-summary-row--clickable:hover[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
}

.env-summary-row--expanded[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.05);
    font-weight: 500;
}

.env-summary-caret-cell[b-w8rglm2wfl] {
    padding: 2px 4px !important;
    width: 24px;
}

.env-summary-caret[b-w8rglm2wfl] {
    opacity: 0.6;
    font-size: 1rem !important;
    vertical-align: middle;
}

.env-zone-surface-child-row[b-w8rglm2wfl] {
    cursor: pointer;
    background: rgba(0, 0, 0, 0.015);
    transition: background 0.1s;
    font-size: 0.8rem;
}

.env-zone-surface-child-row td[b-w8rglm2wfl] {
    padding: 5px 6px 5px 22px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.env-zone-surface-child-row:hover[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

.env-zone-surface-child-row--active[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12) !important;
}

.env-zone-child-name[b-w8rglm2wfl] {
    display: table-cell;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

.env-zone-child-icon[b-w8rglm2wfl] {
    opacity: 0.4;
    font-size: 0.85rem !important;
    margin-right: 4px;
    vertical-align: middle;
}

.env-zone-child-room[b-w8rglm2wfl] {
    font-size: 0.72rem;
    color: #888;
    margin-left: 6px;
    font-style: italic;
}

.env-zone-group-nav-cell[b-w8rglm2wfl] {
    white-space: nowrap;
    padding: 2px 4px !important;
}

.env-zone-group-nav[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 2px;
}

.env-zone-group-nav-label[b-w8rglm2wfl] {
    font-size: 0.74rem;
    color: #555;
    min-width: 28px;
    text-align: center;
}

.env-summary-metric[b-w8rglm2wfl] {
    color: #777;
    font-size: 0.72rem;
    margin-left: 4px;
}

.env-group-title[b-w8rglm2wfl] {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.7rem;
}

.env-group-count[b-w8rglm2wfl] {
    font-weight: 400;
    color: #888;
    margin-left: 2px;
}

/* Wrapper that indents and groups the expanded child surfaces under their type header */
.env-group-surfaces[b-w8rglm2wfl] {
    margin-left: 14px;
    border-left: 2px solid rgba(0, 0, 0, 0.10);
    background: rgba(0, 0, 0, 0.015);
}

.env-surface-row[b-w8rglm2wfl] {
    display: flex;
    align-items: flex-start;
    padding: 8px 12px 8px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
}

.env-surface-row:hover[b-w8rglm2wfl] {
    background: rgba(0, 0, 0, 0.03);
}

.env-surface-row--active[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
}

.env-surface-row--selected[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.10);
}

.env-row-checkbox[b-w8rglm2wfl] {
    margin-top: -2px;
    flex-shrink: 0;
}

.env-row-body[b-w8rglm2wfl] {
    flex: 1;
    min-width: 0;
    margin-left: 4px;
}

.env-row-name[b-w8rglm2wfl] {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.env-row-meta[b-w8rglm2wfl] {
    display: flex;
    gap: 8px;
    margin-top: 1px;
}

.env-meta-area[b-w8rglm2wfl],
.env-meta-ufactor[b-w8rglm2wfl] {
    font-size: 0.72rem;
    color: #888;
    font-family: monospace;
}

.env-meta-rvalue[b-w8rglm2wfl] {
    font-size: 0.72rem;
    font-family: monospace;
    color: var(--mud-palette-primary);
    font-weight: 600;
}

.env-row-construction[b-w8rglm2wfl] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #666;
    font-size: 0.72rem;
    margin-top: 1px;
}

.env-row-actions[b-w8rglm2wfl] {
    display: flex;
    align-items: flex-start;
    flex-shrink: 0;
    margin-top: -2px;
    gap: 0;
}

.env-row-action-btn[b-w8rglm2wfl] {
    opacity: 0;
    transition: opacity 0.15s;
}

.env-surface-row:hover .env-row-action-btn[b-w8rglm2wfl] {
    opacity: 1;
}

/* Status badges */
.env-status-badge[b-w8rglm2wfl] {
    flex-shrink: 0;
    font-size: 0.7rem;
    width: 16px;
    text-align: center;
    font-weight: 700;
    margin-left: 6px;
    margin-top: 4px;
}

.env-status--ok[b-w8rglm2wfl]         { color: #4caf50; }
.env-status--warning[b-w8rglm2wfl]    { color: #ff9800; }
.env-status--error[b-w8rglm2wfl]      { color: #f44336; }
.env-status--unassigned[b-w8rglm2wfl] { color: rgba(128, 128, 128, 0.6); }

.env-empty-state[b-w8rglm2wfl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

/* ── Construction detail panel ───────────────────────────────────────── */
.env-detail-panel[b-w8rglm2wfl] {
    min-height: 520px;
    overscroll-behavior: contain;
}

.env-no-selection[b-w8rglm2wfl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.env-detail-tabs[b-w8rglm2wfl] {
    flex: 1;
}

.env-detail-tab-panel[b-w8rglm2wfl] {
    padding: 8px;
    overflow-y: auto;
}

.env-unassign-btn[b-w8rglm2wfl] {
    float: right;
    margin-top: -4px;
    margin-right: -8px;
}

/* Effective R-value banner (inline, after "Currently assigned" alert) */
.env-r-banner[b-w8rglm2wfl] {
    padding: 4px 8px;
    border-left: 3px solid var(--mud-palette-primary);
    border-radius: 0 4px 4px 0;
    background: rgba(99, 179, 237, 0.08);
}

.env-r-chip[b-w8rglm2wfl] {
    font-weight: 600;
}

.env-search-box[b-w8rglm2wfl] {
    flex: 1;
    min-width: 180px;
}

.env-type-filter[b-w8rglm2wfl] {
    width: 160px;
    flex-shrink: 0;
}

/* Library list */
.env-library-list[b-w8rglm2wfl] {
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    overflow-y: auto;
    max-height: 340px;
}

.env-library-row[b-w8rglm2wfl] {
    padding: 10px 14px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    cursor: pointer;
    transition: background 0.1s;
}

.env-library-row:last-child[b-w8rglm2wfl] { border-bottom: none; }
.env-library-row:hover[b-w8rglm2wfl] { background: rgba(0, 0, 0, 0.03); }

.env-library-row--selected[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
    border-left: 3px solid var(--mud-palette-primary);
}

.env-lib-row-body[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.env-lib-name-block[b-w8rglm2wfl] {
    flex: 1;
    min-width: 0;
}

.env-lib-metrics[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.env-lib-metric[b-w8rglm2wfl] {
    font-size: 0.75rem;
    font-family: monospace;
    background: rgba(0, 0, 0, 0.06);
    padding: 1px 5px;
    border-radius: 3px;
}

.env-lib-metric--secondary[b-w8rglm2wfl] { color: #888; }

.env-lib-preview[b-w8rglm2wfl] {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dashed rgba(0, 0, 0, 0.12);
}

.env-lib-preview-title[b-w8rglm2wfl] {
    display: block;
    margin-bottom: 4px;
}

.env-lib-layer-row[b-w8rglm2wfl] {
    display: flex;
    gap: 8px;
    padding: 2px 0;
    font-size: 0.75rem;
}

.env-lib-layer-name[b-w8rglm2wfl]  { flex: 1; }
.env-lib-layer-thick[b-w8rglm2wfl] { color: #888; min-width: 40px; }
.env-lib-layer-r[b-w8rglm2wfl]     { font-family: monospace; min-width: 50px; text-align: right; }

.env-lib-total-row[b-w8rglm2wfl] {
    display: flex;
    justify-content: space-between;
    font-size: 0.75rem;
    font-weight: 600;
    margin-top: 4px;
    padding-top: 4px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    font-family: monospace;
}

.env-lib-compliance-row[b-w8rglm2wfl] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px;
}

.env-assign-bar[b-w8rglm2wfl] {
    padding-top: 8px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.env-assign-header[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.env-construction-header[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8px;
    padding: 0 16px;
}

.env-construction-actions[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-right: -8px;
}

.env-construction-metrics[b-w8rglm2wfl] {
    flex-wrap: wrap;
    gap: 12px;
}

/* Layer builder */
.env-layer-header[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.env-layer-order-hint[b-w8rglm2wfl] {
    font-size: 0.72rem;
    font-weight: 400;
    color: #888;
    margin-left: 6px;
}

.env-layer-list[b-w8rglm2wfl] {
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    overflow: hidden;
}

.env-layer-row[b-w8rglm2wfl] {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    gap: 8px;
    background: var(--mud-palette-surface);
}

.env-layer-row:last-child[b-w8rglm2wfl] { border-bottom: none; }

.env-drag-handle[b-w8rglm2wfl] {
    cursor: grab;
    flex-shrink: 0;
    color: #ccc;
}

.env-layer-info[b-w8rglm2wfl] {
    flex: 1;
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 0.8rem;
}

.env-layer-name[b-w8rglm2wfl]  { flex: 1; font-weight: 500; }
.env-layer-thick[b-w8rglm2wfl] { color: #888; font-size: 0.75rem; min-width: 36px; }
.env-layer-r[b-w8rglm2wfl]     { font-family: monospace; font-size: 0.75rem; min-width: 46px; text-align: right; }

.env-layer-actions[b-w8rglm2wfl] {
    display: flex;
    flex-shrink: 0;
}

.env-assembly-summary[b-w8rglm2wfl] {
    padding: 8px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

/* ── UA Summary Panel ────────────────────────────────────────────────── */
.env-ua-panel[b-w8rglm2wfl] {
    border-radius: 6px;
    overflow: hidden;
}

.env-ua-header[b-w8rglm2wfl] {
    padding: 10px 16px;
    cursor: pointer;
    background: rgba(var(--mud-palette-info-rgb), 0.04);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    user-select: none;
}

.env-ua-header:hover[b-w8rglm2wfl] {
    background: rgba(var(--mud-palette-info-rgb), 0.08);
}

.env-ua-path-toggle[b-w8rglm2wfl] {
    align-items: center;
}

.env-ua-body[b-w8rglm2wfl] {
    padding: 12px 16px;
}

.env-ua-table[b-w8rglm2wfl] {
    font-size: 0.82rem;
}

.env-ua-footer[b-w8rglm2wfl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    flex-wrap: wrap;
    gap: 8px;
}

/* ── Create New call-to-action panel ─────────────────────────────────── */
.env-create-new-panel[b-w8rglm2wfl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
    text-align: center;
    min-height: 260px;
}

/* ── Read-only overlay for building-level surfaces ───────────────────── */
.env-detail-readonly[b-w8rglm2wfl] {
    pointer-events: none;
    opacity: 0.55;
}

/* ── Responsive (tablet ≤ 959px) ────────────────────────────────────── */
@media (max-width: 959.98px) {
    .env-panel[b-w8rglm2wfl] {
        min-height: 380px;
    }

    .env-tree-panel[b-w8rglm2wfl] {
        min-height: auto;
    }

    .env-tree-list[b-w8rglm2wfl] {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 4px;
        padding: 6px 8px;
    }

    .env-tree-node[b-w8rglm2wfl] {
        padding: 4px 8px;
        border-bottom: none;
        border-radius: 4px;
        flex-shrink: 0;
    }

    .env-tree-node--zone[b-w8rglm2wfl],
    .env-tree-node--room[b-w8rglm2wfl] {
        padding-left: 8px;
    }

    .env-tree-room-block[b-w8rglm2wfl] {
        margin: 0;
        border: none;
        background: transparent;
        border-radius: 4px;
    }

    .env-tree-room-children[b-w8rglm2wfl] {
        border-top: none;
        border-left: none;
    }

    .env-type-filter[b-w8rglm2wfl] {
        width: 130px;
    }

    .env-library-list[b-w8rglm2wfl] {
        max-height: 260px;
    }
}

/* ── Responsive (phone ≤ 599px) ─────────────────────────────────────── */
@media (max-width: 599.98px) {
    .env-panel[b-w8rglm2wfl] {
        min-height: 320px;
    }

    .env-ua-path-toggle[b-w8rglm2wfl] {
        display: none;
    }

    .env-type-filter[b-w8rglm2wfl] {
        display: none;
    }

    .env-lib-metrics[b-w8rglm2wfl] {
        flex-direction: column;
        align-items: flex-end;
    }

    .env-header-name-field[b-w8rglm2wfl] {
        min-width: 180px;
    }
}
/* /Pages/EnergyModel/EnergyGapAnalysis.razor.rz.scp.css */
/* ── Root ──────────────────────────────────────────────────────────────── */
.ga-root[b-fu6g0fzd6q] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 16px;
    max-width: 1200px;
}

/* ── Page Header ──────────────────────────────────────────────────────── */
.ga-page-header[b-fu6g0fzd6q] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ga-header-stack[b-fu6g0fzd6q] {
    width: 100%;
}

/* ── Summary Cards Grid ──────────────────────────────────────────────── */
.ga-summary-grid[b-fu6g0fzd6q] {
    margin: 0 !important;
}

.ga-summary-card[b-fu6g0fzd6q] {
    border-radius: 8px !important;
    transition: border-color 0.2s;
}

.ga-summary-card.ga-summary--error[b-fu6g0fzd6q] {
    border-color: var(--mud-palette-error) !important;
}

.ga-summary-card.ga-summary--warning[b-fu6g0fzd6q] {
    border-color: var(--mud-palette-warning) !important;
}

.ga-summary-content[b-fu6g0fzd6q] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px !important;
}

.ga-summary-label-block[b-fu6g0fzd6q] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ga-summary-value[b-fu6g0fzd6q] {
    font-size: 1.4rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

/* ── Diagnostics Section ─────────────────────────────────────────────── */
.ga-diagnostics-section[b-fu6g0fzd6q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ga-category-panel[b-fu6g0fzd6q] {
    border-radius: 8px !important;
    overflow: hidden;
}

.ga-diag-table[b-fu6g0fzd6q] {
    width: 100%;
}

.ga-field-name[b-fu6g0fzd6q] {
    font-family: 'Roboto Mono', monospace;
    font-size: 0.75rem !important;
    word-break: break-all;
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 599.98px) {
    .ga-root[b-fu6g0fzd6q] {
        padding: 8px;
        gap: 12px;
    }

    .ga-summary-content[b-fu6g0fzd6q] {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/* ── Input Breakdown Section ─────────────────────────────────────────── */
.ga-input-breakdown[b-fu6g0fzd6q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--mud-palette-divider);
}

.ga-breakdown-table[b-fu6g0fzd6q] {
    width: 100%;
}

.ga-breakdown-table td:first-child[b-fu6g0fzd6q] {
    width: 220px;
    white-space: nowrap;
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    font-family: 'Roboto Mono', monospace;
    padding-right: 16px;
}
/* /Pages/EnergyModel/EnergyInfiltration.razor.rz.scp.css */
/* ── Infiltration page — component-specific styles ──────────────────── */
/* Layout (root, header, grid, tree, panels) uses shared ig-* classes   */
/* defined in wwwroot/css/app.css.                                       */

/* ── Building compact inline row ────────────────────────────────────── */

.ig-building-compact .ig-content-header[b-1lro0s75bw] {
    padding-bottom: 4px;
}

.ig-building-inline[b-1lro0s75bw] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0 16px;
    padding: 0 12px 8px;
}

.ig-building-field[b-1lro0s75bw] {
    display: flex;
    flex-direction: column;
}

.ig-building-label[b-1lro0s75bw] {
    line-height: 1.2;
    margin-bottom: 0;
}

.ig-building-actions[b-1lro0s75bw] {
    display: flex;
    align-items: center;
    padding-bottom: 2px;
}

/* ── Weighted average summary row ────────────────────────────────────── */

.ig-weighted-avg-row[b-1lro0s75bw] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px 8px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.ig-avg-icon[b-1lro0s75bw] {
    flex-shrink: 0;
}

/* ── Entry table ─────────────────────────────────────────────────────── */

.inf-entry-table[b-1lro0s75bw] {
    border-radius: 4px;
    overflow: hidden;
}

/* ── Inline editable fields ──────────────────────────────────────────── */

.inf-inline-field[b-1lro0s75bw] {
    min-width: 72px;
    max-width: 96px;
}

[b-1lro0s75bw] .inf-inline-field .mud-input {
    font-size: 1rem;
}

.inf-shelter-select[b-1lro0s75bw] {
    min-width: 56px;
    max-width: 72px;
}

.inf-unit-select[b-1lro0s75bw] {
    min-width: 120px;
    max-width: 180px;
}

.inf-type-select[b-1lro0s75bw] {
    min-width: 88px;
    max-width: 120px;
}

.inf-target-select[b-1lro0s75bw] {
    min-width: 140px;
    max-width: 220px;
}

.inf-test-type-select[b-1lro0s75bw] {
    min-width: 96px;
    max-width: 140px;
}
/* /Pages/EnergyModel/EnergyMechanical.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   EnergyMechanical.razor.css  —  Space Conditioning module styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Root container ─────────────────────────────────────────────────── */
.sc-root[b-vpcn2mv1tc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.sc-page-header[b-vpcn2mv1tc] {
    padding-bottom: 4px;
}

.sc-header-stack[b-vpcn2mv1tc] {
    flex-wrap: wrap;
}

/* ── Shared panel styles ─────────────────────────────────────────────── */
.sc-panel[b-vpcn2mv1tc] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    border-radius: 6px;
}

.sc-panel-header[b-vpcn2mv1tc] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.sc-panel-item[b-vpcn2mv1tc] {
    min-height: 0;
}

/* ── Tree panel ──────────────────────────────────────────────────────── */
.sc-tree-panel[b-vpcn2mv1tc] {
    min-height: 540px;
}

.sc-tree[b-vpcn2mv1tc] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
    user-select: none;
}

/* ── Tree nodes ──────────────────────────────────────────────────────── */
.sc-node[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
    gap: 4px;
    min-width: 0;
}

.sc-node:hover[b-vpcn2mv1tc] {
    background: rgba(0, 0, 0, 0.04);
}

.sc-node--active[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* Building — root level */
.sc-node--building[b-vpcn2mv1tc] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.sc-node--building:hover[b-vpcn2mv1tc] {
    background: rgba(0, 0, 0, 0.05);
}

.sc-node--building.sc-node--active[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* System — indented one level */
.sc-node--system[b-vpcn2mv1tc] {
    padding-left: 8px;
}

/* Indent spacer for system rows */
.sc-system-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

/* Zone — indented two levels */
.sc-node--zone[b-vpcn2mv1tc] {
    padding-left: 8px;
}

/* Indent spacer for zone rows */
.sc-zone-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

/* Indent spacer for zones inside a distribution group (deeper than zone-indent) */
.sc-group-zone-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 52px;
    flex-shrink: 0;
}

/* Equipment — indented three levels */
.sc-node--equipment[b-vpcn2mv1tc] {
    padding-left: 8px;
}

/* Indent spacer for equipment rows under direct zones (no distribution group) */
.sc-equipment-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 52px;
    flex-shrink: 0;
}

/* Indent spacer for equipment rows under zones that are inside a distribution group */
.sc-zone-equipment-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 68px;
    flex-shrink: 0;
}

/* Indent spacer for zones nested under a middle-tier distributing unit */
.sc-deep-zone-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 84px;
    flex-shrink: 0;
}

/* Indent spacer for children (thermostat / rooms) inside a deep zone */
.sc-zone-child-deep-indent[b-vpcn2mv1tc] {
    display: inline-block;
    width: 100px;
    flex-shrink: 0;
}

.sc-expand-spacer[b-vpcn2mv1tc] {
    display: inline-block;
    width: 28px;
    flex-shrink: 0;
}

/* Tight expand/collapse icon button */
.sc-expand-btn[b-vpcn2mv1tc] {
    flex-shrink: 0;
    margin: -6px -4px -6px -6px;
}

.sc-node-icon[b-vpcn2mv1tc] {
    flex-shrink: 0;
    color: #888;
}

.sc-node-label[b-vpcn2mv1tc] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.85rem;
}

.sc-node-status-icon[b-vpcn2mv1tc] {
    flex-shrink: 0;
    border-radius: 4px;
    padding: 2px;
}

.sc-node-status-icon--conditioned[b-vpcn2mv1tc] {
    color: var(--mud-palette-success);
    background: rgba(var(--mud-palette-success-rgb), 0.12);
}

.sc-node-status-icon--unconditioned[b-vpcn2mv1tc] {
    color: var(--mud-palette-warning-darken);
    background: rgba(var(--mud-palette-warning-rgb), 0.12);
}

.sc-node-status-icon--unset[b-vpcn2mv1tc] {
    color: var(--mud-palette-text-disabled);
    background: rgba(0, 0, 0, 0.08);
}

/* ── Zone error badge ────────────────────────────────────────────────── */
.sc-node-error-badge[b-vpcn2mv1tc] {
    flex-shrink: 0;
    font-size: 0.7rem;
    width: 16px;
    text-align: center;
    font-weight: 700;
    color: var(--mud-palette-error);
}

/* ── Room supplemental-system badge ─────────────────────────────────── */
.sc-room-system-badge[b-vpcn2mv1tc] {
    flex-shrink: 0;
    color: var(--mud-palette-info);
    opacity: 0.8;
}

/* ── Node type badges ────────────────────────────────────────────────── */
.sc-node-badge[b-vpcn2mv1tc] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 1px 5px;
    border-radius: 3px;
    flex-shrink: 0;
}

.sc-badge--building[b-vpcn2mv1tc]      { background: rgba(var(--mud-palette-primary-rgb), 0.12);   color: var(--mud-palette-primary); }
.sc-badge--system[b-vpcn2mv1tc]        { background: rgba(var(--mud-palette-info-rgb), 0.12);      color: var(--mud-palette-info); }
.sc-badge--zone[b-vpcn2mv1tc]          { background: rgba(var(--mud-palette-tertiary-rgb), 0.12);  color: var(--mud-palette-tertiary); font-size: 0.62rem; }
.sc-badge--room[b-vpcn2mv1tc]          { background: rgba(var(--mud-palette-secondary-rgb), 0.10); color: var(--mud-palette-secondary); font-size: 0.60rem; }
.sc-badge--equipment[b-vpcn2mv1tc]     { background: rgba(var(--mud-palette-secondary-rgb), 0.12); color: var(--mud-palette-secondary); font-size: 0.58rem; }
.sc-badge--sys-equipment[b-vpcn2mv1tc] { background: rgba(var(--mud-palette-info-rgb), 0.08);      color: var(--mud-palette-info); font-size: 0.58rem; }
.sc-badge--dist-unit[b-vpcn2mv1tc]     { background: rgba(var(--mud-palette-primary-rgb), 0.08);   color: var(--mud-palette-primary); font-size: 0.58rem; }

.sc-node--room[b-vpcn2mv1tc] {
    opacity: 0.80;
    font-size: 0.82rem;
}
.sc-badge--service-profile[b-vpcn2mv1tc] { background: rgba(var(--mud-palette-warning-rgb), 0.12); color: var(--mud-palette-warning); font-size: 0.58rem; }
.sc-badge--distribution[b-vpcn2mv1tc]  { background: rgba(var(--mud-palette-success-rgb), 0.12);   color: var(--mud-palette-success); font-size: 0.58rem; }

/* ── Tree empty state ────────────────────────────────────────────────── */
.sc-tree-empty[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    color: rgba(0, 0, 0, 0.38);
    font-size: 0.8rem;
    font-style: italic;
}

/* ── System group card ───────────────────────────────────────────────── */
.sc-system-group[b-vpcn2mv1tc] {
    margin: 5px 8px 8px;
    border: 1px solid rgba(0, 0, 0, 0.13);
    border-radius: 6px;
    overflow: hidden;
}

.sc-system-group-header[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 6px 5px 10px;
    background: rgba(var(--mud-palette-info-rgb), 0.09);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 600;
    min-width: 0;
    user-select: none;
}

.sc-system-group-header:hover[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-info-rgb), 0.15);
}

.sc-system-group-header--active[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12);
    box-shadow: inset 0 0 0 1px rgba(var(--mud-palette-primary-rgb), 0.28);
}

.sc-group-header-icon[b-vpcn2mv1tc] {
    flex-shrink: 0;
    color: var(--mud-palette-info);
    font-size: 1rem !important;
}

.sc-group-header-label[b-vpcn2mv1tc] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--mud-palette-text-primary);
}

.sc-group-header-actions[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

/* Remove bottom border from last node inside a group */
.sc-system-group .sc-node:last-child[b-vpcn2mv1tc] {
    border-bottom: none;
}

/* Adjust system-group node indents: nodes are now inside the card frame */
.sc-system-group .sc-node--system[b-vpcn2mv1tc] {
    padding-left: 4px;
}


.sc-detail-panel[b-vpcn2mv1tc] {
    min-height: 540px;
}

.sc-no-selection[b-vpcn2mv1tc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.sc-detail-body[b-vpcn2mv1tc] {
    padding: 16px 20px;
    overflow-y: auto;
    flex: 1;
}

.sc-detail-header[b-vpcn2mv1tc] {
    flex-wrap: wrap;
}

/* Summary cards shown in system list */
.sc-summary-card[b-vpcn2mv1tc] {
    padding: 8px 12px;
    margin-bottom: 6px;
    border-radius: 4px;
}

.sc-summary-card--child[b-vpcn2mv1tc] {
    border-left: 2px solid rgba(var(--mud-palette-secondary-rgb), 0.5);
}

.sc-eq-child-row[b-vpcn2mv1tc] {
    display: flex;
    align-items: flex-start;
    gap: 4px;
    margin-left: 14px;
}

.sc-eq-child-icon[b-vpcn2mv1tc] {
    margin-top: 10px;
    opacity: 0.7;
}

.sc-equipment-relationship[b-vpcn2mv1tc] {
    font-size: 0.68rem;
}

/* Inputs placeholder area */
.sc-inputs-placeholder[b-vpcn2mv1tc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 160px;
    text-align: center;
    padding: 24px;
    border: 1px dashed rgba(0, 0, 0, 0.12);
    border-radius: 6px;
}

/* ── Node action buttons ─────────────────────────────────────────────── */
.sc-node-actions[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-left: auto;
    flex-shrink: 0;
}

/* ── Service profile icons ───────────────────────────────────────────── */
.sc-service-icons[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 2px;
    flex-shrink: 0;
}

.sc-service-icon[b-vpcn2mv1tc] {
    font-size: 1rem !important;
    flex-shrink: 0;
}

.sc-service-icon--heating[b-vpcn2mv1tc]     { color: #ef6c00; }
.sc-service-icon--cooling[b-vpcn2mv1tc]     { color: #1565c0; }
.sc-service-icon--ventilation[b-vpcn2mv1tc] { color: var(--mud-palette-info); }

/* ── Refrigerant group block — vertical dashed left border connecting outdoor to indoor unit ── */
.sc-refrigerant-group-block[b-vpcn2mv1tc] {
    border-left: 1px dashed rgba(21, 101, 192, 0.55);
    margin-left: 12px;
    padding-left: 0;
}

/* ── Refrigerant Lines badge on the primary (outdoor) unit row ─────────── */
.sc-badge--refrigerant-hint[b-vpcn2mv1tc] {
    font-size: 0.6rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgba(21, 101, 192, 0.8);
    background: rgba(21, 101, 192, 0.08);
    border: 1px dashed rgba(21, 101, 192, 0.45);
    border-radius: 4px;
    padding: 1px 5px;
    white-space: nowrap;
    margin-left: auto;
    flex-shrink: 0;
}

/* ── Responsive (tablet ≤ 959px) ────────────────────────────────────── */
@media (max-width: 959.98px) {
    .sc-panel[b-vpcn2mv1tc] {
        min-height: 380px;
    }
}

/* ── Responsive (phone ≤ 599px) ─────────────────────────────────────── */
@media (max-width: 599.98px) {
    .sc-panel[b-vpcn2mv1tc] {
        min-height: 320px;
    }

    .sc-node-badge[b-vpcn2mv1tc] {
        display: none;
    }
}

/* ── New system card (bordered dashed box) ───────────────────────────── */
.sc-system-card[b-vpcn2mv1tc] {
    border: 1px dashed rgba(var(--mud-palette-info-rgb), 0.40);
    border-radius: 6px;
    margin: 4px 8px 8px;
    padding: 0;
    overflow: hidden;
}

.sc-system-card-header[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 5px 8px;
    cursor: pointer;
    border-radius: 6px 6px 0 0;
    background: rgba(var(--mud-palette-info-rgb), 0.08);
    border-bottom: 1px dashed rgba(var(--mud-palette-info-rgb), 0.25);
}

.sc-system-card-header:hover[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-info-rgb), 0.14);
}

.sc-system-card-header--active[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12);
    border-bottom-color: rgba(var(--mud-palette-primary-rgb), 0.25);
}

.sc-system-card-body[b-vpcn2mv1tc] {
    padding: 0 4px 4px 4px;
}

/* ── Head group — dashed sub-box grouping a distributing unit with its zones ── */
.sc-head-group[b-vpcn2mv1tc] {
    margin: 4px 0 2px;
    border: 1px dashed rgba(var(--mud-palette-secondary-rgb), 0.35);
    border-radius: 4px;
    overflow: hidden;
}

.sc-head-group-label[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    background: rgba(var(--mud-palette-secondary-rgb), 0.06);
    border-bottom: 1px dashed rgba(var(--mud-palette-secondary-rgb), 0.20);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--mud-palette-text-secondary);
}

.sc-head-group-icon[b-vpcn2mv1tc] {
    font-size: 0.85rem !important;
    color: var(--mud-palette-secondary);
    flex-shrink: 0;
}

/* ── Right-panel section boxes ───────────────────────────────────────── */
.sc-section-box[b-vpcn2mv1tc] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 4px;
    margin-bottom: 12px;
    padding: 8px 12px;
}

.sc-section-header[b-vpcn2mv1tc] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--mud-palette-text-secondary);
    margin-bottom: 6px;
}

.sc-section-toolbar[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: space-between;
    margin-bottom: 6px;
}

.sc-equipment-row[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.sc-equipment-row:last-child[b-vpcn2mv1tc] {
    border-bottom: none;
}

.sc-equipment-row-name[b-vpcn2mv1tc] {
    font-size: 0.85rem;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sc-equipment-row-text[b-vpcn2mv1tc] {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
}

.sc-equipment-row-model[b-vpcn2mv1tc] {
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
    flex-shrink: 0;
}

.sc-equipment-diagnostic[b-vpcn2mv1tc] {
    flex-shrink: 0;
}

.sc-equipment-diagnostic--error[b-vpcn2mv1tc] {
    color: var(--mud-palette-error);
}

.sc-equipment-diagnostic--warning[b-vpcn2mv1tc] {
    color: var(--mud-palette-warning);
}

.sc-served-by-row[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 0;
    font-size: 0.85rem;
}

/* Unconditioned zone badge */
.sc-badge--unconditioned[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-error-rgb), 0.10);
    color: var(--mud-palette-error);
    font-size: 0.60rem;
}

/* ── Equipment accordion (inline expandable) ─────────────────────────── */
.sc-equipment-accordion-header[b-vpcn2mv1tc] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    cursor: pointer;
    border-radius: 4px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background 0.1s;
}

.sc-equipment-accordion-header:hover[b-vpcn2mv1tc] {
    background: rgba(0, 0, 0, 0.04);
}

.sc-equipment-accordion-header--active[b-vpcn2mv1tc] {
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.sc-equipment-accordion-body[b-vpcn2mv1tc] {
    padding: 12px 12px 8px 12px;
    border: 1px solid rgba(var(--mud-palette-primary-rgb), 0.15);
    border-top: none;
    border-radius: 0 0 4px 4px;
    margin-bottom: 4px;
    background: rgba(var(--mud-palette-primary-rgb), 0.02);
}
/* /Pages/EnergyModel/EnergyPlumbing.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   EnergyPlumbing.razor.css  —  Plumbing module styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Root container ─────────────────────────────────────────────────── */
.pl-root[b-qpakqdapyj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.pl-page-header[b-qpakqdapyj] {
    padding-bottom: 4px;
}

.pl-header-stack[b-qpakqdapyj] {
    flex-wrap: wrap;
}

/* ── Shared panel styles ─────────────────────────────────────────────── */
.pl-panel[b-qpakqdapyj] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    border-radius: 6px;
}

.pl-panel-header[b-qpakqdapyj] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.pl-panel-item[b-qpakqdapyj] {
    min-height: 0;
}

/* ── Tree panel ──────────────────────────────────────────────────────── */
.pl-tree-panel[b-qpakqdapyj] {
    min-height: 540px;
}

.pl-tree[b-qpakqdapyj] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
    user-select: none;
}

/* ── Tree nodes ──────────────────────────────────────────────────────── */
.pl-node[b-qpakqdapyj] {
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
    gap: 4px;
    min-width: 0;
}

.pl-node:hover[b-qpakqdapyj] {
    background: rgba(0, 0, 0, 0.04);
}

.pl-node--active[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* Building — root level */
.pl-node--building[b-qpakqdapyj] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.pl-node--building:hover[b-qpakqdapyj] {
    background: rgba(0, 0, 0, 0.05);
}

.pl-node--building.pl-node--active[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* System — indented one level */
.pl-node--system[b-qpakqdapyj] {
    padding-left: 8px;
}

/* Indent spacer for system rows */
.pl-system-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

/* Equipment / Distribution — indented two levels */
.pl-node--equipment[b-qpakqdapyj],
.pl-node--distribution[b-qpakqdapyj] {
    padding-left: 8px;
}

/* Indent spacer for equipment and distribution rows */
.pl-equipment-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

/* Accessory — indented three levels */
.pl-node--accessory[b-qpakqdapyj] {
    padding-left: 8px;
}

/* Indent spacer for accessory rows */
.pl-accessory-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 52px;
    flex-shrink: 0;
}

.pl-expand-spacer[b-qpakqdapyj] {
    display: inline-block;
    width: 28px;
    flex-shrink: 0;
}

/* Tight expand/collapse icon button */
.pl-expand-btn[b-qpakqdapyj] {
    flex-shrink: 0;
    margin: -6px -4px -6px -6px;
}

.pl-node-icon[b-qpakqdapyj] {
    flex-shrink: 0;
    color: #888;
}

.pl-node-label[b-qpakqdapyj] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.85rem;
}

/* ── Node type badges ────────────────────────────────────────────────── */
.pl-node-badge[b-qpakqdapyj] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 1px 5px;
    border-radius: 3px;
    flex-shrink: 0;
}

.pl-badge--building[b-qpakqdapyj]      { background: rgba(var(--mud-palette-primary-rgb), 0.12);   color: var(--mud-palette-primary); }
.pl-badge--system[b-qpakqdapyj]        { background: rgba(var(--mud-palette-info-rgb), 0.12);      color: var(--mud-palette-info); }
.pl-badge--equipment[b-qpakqdapyj]     { background: rgba(var(--mud-palette-secondary-rgb), 0.12); color: var(--mud-palette-secondary); font-size: 0.58rem; }
.pl-badge--distribution[b-qpakqdapyj]  { background: rgba(var(--mud-palette-success-rgb), 0.12);   color: var(--mud-palette-success); font-size: 0.58rem; }
.pl-badge--accessory[b-qpakqdapyj]     { background: rgba(var(--mud-palette-tertiary-rgb), 0.12);  color: var(--mud-palette-tertiary); font-size: 0.58rem; }
.pl-badge--zone[b-qpakqdapyj]          { background: rgba(var(--mud-palette-warning-rgb), 0.12);   color: var(--mud-palette-warning-darken); }
.pl-badge--room[b-qpakqdapyj]          { background: rgba(var(--mud-palette-secondary-rgb), 0.10); color: var(--mud-palette-secondary); }

/* Zone — indented one level */
.pl-zone-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

/* Room — indented two levels */
.pl-room-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

.pl-node--zone[b-qpakqdapyj] {
    opacity: 0.85;
}

.pl-node--room[b-qpakqdapyj] {
    opacity: 0.75;
    font-size: 0.82rem;
}

/* ── Detail panel ────────────────────────────────────────────────────── */
.pl-detail-panel[b-qpakqdapyj] {
    min-height: 540px;
}

.pl-no-selection[b-qpakqdapyj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.pl-detail-body[b-qpakqdapyj] {
    padding: 16px 20px;
    overflow-y: auto;
    flex: 1;
}

.pl-detail-header[b-qpakqdapyj] {
    flex-wrap: wrap;
}

/* Summary cards shown in system list */
.pl-summary-card[b-qpakqdapyj] {
    padding: 8px 12px;
    margin-bottom: 6px;
    border-radius: 4px;
}

/* Inputs placeholder area */
.pl-inputs-placeholder[b-qpakqdapyj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 160px;
    text-align: center;
    padding: 24px;
    border: 1px dashed rgba(0, 0, 0, 0.12);
    border-radius: 6px;
}

/* ── Node action buttons ─────────────────────────────────────────────── */
.pl-node-actions[b-qpakqdapyj] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-left: auto;
    flex-shrink: 0;
}

.pl-checkbox-box-only-row[b-qpakqdapyj] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

:deep(.pl-checkbox-box-only)[b-qpakqdapyj] {
    width: auto;
    margin: 0;
}

/* ── Responsive (tablet ≤ 959px) ────────────────────────────────────── */
@media (max-width: 959.98px) {
    .pl-panel[b-qpakqdapyj] {
        min-height: 380px;
    }
}

/* ── Responsive (phone ≤ 599px) ─────────────────────────────────────── */
@media (max-width: 599.98px) {
    .pl-panel[b-qpakqdapyj] {
        min-height: 320px;
    }

    .pl-node-badge[b-qpakqdapyj] {
        display: none;
    }
}

/* ── System Card (bordered container) ───────────────────────────────── */
.pl-system-card[b-qpakqdapyj] {
    border: 1px dashed rgba(var(--mud-palette-info-rgb), 0.40);
    border-radius: 6px;
    margin: 4px 0;
    overflow: hidden;
}

.pl-system-card > .pl-node--system[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-info-rgb), 0.08);
    border-bottom: 1px dashed rgba(var(--mud-palette-info-rgb), 0.25);
}

.pl-system-card > .pl-node--system.pl-node--active[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12);
    border-bottom-color: rgba(var(--mud-palette-primary-rgb), 0.25);
}

.pl-system-card > .pl-node--system:hover[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-info-rgb), 0.14);
}

/* Indent spacer for zones nested under a plumbing system */
.pl-zone-under-system-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

/* Indent spacer for rooms under a zone that is under a plumbing system */
.pl-room-under-system-indent[b-qpakqdapyj] {
    display: inline-block;
    width: 52px;
    flex-shrink: 0;
}

/* Section box for zone detail panel (matches space conditioning style) */
.pl-section-box[b-qpakqdapyj] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 4px;
    margin-bottom: 12px;
    padding: 8px 12px;
}

.pl-section-header[b-qpakqdapyj] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--mud-palette-text-secondary);
    margin-bottom: 6px;
}

/* ── Equipment accordion (inline expandable) ─────────────────────────── */
.pl-equipment-accordion-header[b-qpakqdapyj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    cursor: pointer;
    border-radius: 4px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background 0.1s;
}

.pl-equipment-accordion-header:hover[b-qpakqdapyj] {
    background: rgba(0, 0, 0, 0.04);
}

.pl-equipment-accordion-header--active[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.pl-equipment-accordion-body[b-qpakqdapyj] {
    padding: 12px 12px 8px 12px;
    border: 1px solid rgba(var(--mud-palette-primary-rgb), 0.15);
    border-top: none;
    border-radius: 0 0 4px 4px;
    margin-bottom: 4px;
    background: rgba(var(--mud-palette-primary-rgb), 0.02);
}

/* ── Distribution accordion ──────────────────────────────────────────── */
.pl-distribution-accordion-header[b-qpakqdapyj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    cursor: pointer;
    border-radius: 4px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background 0.1s;
}

.pl-distribution-accordion-header:hover[b-qpakqdapyj] {
    background: rgba(0, 0, 0, 0.04);
}

.pl-distribution-accordion-header--active[b-qpakqdapyj] {
    background: rgba(var(--mud-palette-success-rgb), 0.06);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.pl-distribution-accordion-body[b-qpakqdapyj] {
    padding: 12px 12px 8px 12px;
    border: 1px solid rgba(var(--mud-palette-success-rgb), 0.15);
    border-top: none;
    border-radius: 0 0 4px 4px;
    margin-bottom: 4px;
    background: rgba(var(--mud-palette-success-rgb), 0.02);
}
/* /Pages/EnergyModel/EnergyRenewables.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   EnergyRenewables.razor.css  —  Renewables module styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Root container ─────────────────────────────────────────────────── */
.re-root[b-2j8aaobsu8] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.re-page-header[b-2j8aaobsu8] {
    padding-bottom: 4px;
}

.re-header-stack[b-2j8aaobsu8] {
    flex-wrap: wrap;
}

/* ── Shared panel styles ─────────────────────────────────────────────── */
.re-panel[b-2j8aaobsu8] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    border-radius: 6px;
}

.re-panel-header[b-2j8aaobsu8] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.re-panel-item[b-2j8aaobsu8] {
    min-height: 0;
}

/* ── Tree panel ──────────────────────────────────────────────────────── */
.re-tree-panel[b-2j8aaobsu8] {
    min-height: 540px;
}

.re-tree[b-2j8aaobsu8] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
    user-select: none;
}

/* ── Tree nodes ──────────────────────────────────────────────────────── */
.re-node[b-2j8aaobsu8] {
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
    gap: 4px;
    min-width: 0;
}

.re-node:hover[b-2j8aaobsu8] {
    background: rgba(0, 0, 0, 0.04);
}

.re-node--active[b-2j8aaobsu8] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* Building — root level */
.re-node--building[b-2j8aaobsu8] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.re-node--building:hover[b-2j8aaobsu8] {
    background: rgba(0, 0, 0, 0.05);
}

.re-node--building.re-node--active[b-2j8aaobsu8] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* System — indented one level */
.re-node--system[b-2j8aaobsu8] {
    padding-left: 8px;
}

/* Indent spacer for system rows */
.re-system-indent[b-2j8aaobsu8] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

.re-expand-spacer[b-2j8aaobsu8] {
    display: inline-block;
    width: 28px;
    flex-shrink: 0;
}

/* Tight expand/collapse icon button */
.re-expand-btn[b-2j8aaobsu8] {
    flex-shrink: 0;
    margin: -6px -4px -6px -6px;
}

.re-node-icon[b-2j8aaobsu8] {
    flex-shrink: 0;
    color: #888;
}

.re-node-label[b-2j8aaobsu8] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.85rem;
}

/* ── Node type badges ────────────────────────────────────────────────── */
.re-node-badge[b-2j8aaobsu8] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 1px 5px;
    border-radius: 3px;
    flex-shrink: 0;
}

.re-badge--building[b-2j8aaobsu8]  { background: rgba(var(--mud-palette-primary-rgb), 0.12);   color: var(--mud-palette-primary); }
.re-badge--system[b-2j8aaobsu8]    { background: rgba(var(--mud-palette-info-rgb), 0.12);      color: var(--mud-palette-info); font-size: 0.58rem; }
.re-badge--zone[b-2j8aaobsu8]      { background: rgba(var(--mud-palette-warning-rgb), 0.12);   color: var(--mud-palette-warning-darken); }
.re-badge--room[b-2j8aaobsu8]      { background: rgba(var(--mud-palette-secondary-rgb), 0.10); color: var(--mud-palette-secondary); }
.re-badge--served-zone[b-2j8aaobsu8] { background: rgba(var(--mud-palette-success-rgb), 0.12); color: var(--mud-palette-success); font-size: 0.60rem; }

/* Zone — indented one level */
.re-zone-indent[b-2j8aaobsu8] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

/* Room — indented two levels */
.re-room-indent[b-2j8aaobsu8] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

/* Served zone under a renewable system — indented two levels */
.re-served-zone-indent[b-2j8aaobsu8] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

.re-node--zone[b-2j8aaobsu8] {
    opacity: 0.85;
}

.re-node--room[b-2j8aaobsu8] {
    opacity: 0.75;
    font-size: 0.82rem;
}

.re-node--served-zone[b-2j8aaobsu8] {
    opacity: 0.80;
    cursor: default;
}

.re-checkbox-row[b-2j8aaobsu8] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 2px;
}

:deep(.re-checkbox-icon-only)[b-2j8aaobsu8] {
    width: auto;
    margin: 0;
}

/* ── Empty tree state ────────────────────────────────────────────────── */
.re-tree-empty[b-2j8aaobsu8] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    color: #aaa;
    font-size: 0.8rem;
}

/* ── Detail panel ────────────────────────────────────────────────────── */
.re-detail-panel[b-2j8aaobsu8] {
    min-height: 540px;
}

.re-no-selection[b-2j8aaobsu8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.re-detail-body[b-2j8aaobsu8] {
    padding: 16px 20px;
    overflow-y: auto;
    flex: 1;
}

.re-detail-header[b-2j8aaobsu8] {
    flex-wrap: wrap;
}

/* ── Node action buttons ─────────────────────────────────────────────── */
.re-node-actions[b-2j8aaobsu8] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-left: auto;
    flex-shrink: 0;
}

/* ── Responsive (tablet ≤ 959px) ────────────────────────────────────── */
@media (max-width: 959.98px) {
    .re-panel[b-2j8aaobsu8] {
        min-height: 380px;
    }
}

/* ── Responsive (phone ≤ 599px) ─────────────────────────────────────── */
@media (max-width: 599.98px) {
    .re-panel[b-2j8aaobsu8] {
        min-height: 320px;
    }

    .re-node-badge[b-2j8aaobsu8] {
        display: none;
    }
}


/* ── System Card (bordered container) ───────────────────────────────── */
.re-system-card[b-2j8aaobsu8] {
    border: 1px dashed rgba(var(--mud-palette-info-rgb), 0.40);
    border-radius: 6px;
    margin: 4px 0;
    overflow: hidden;
}

.re-system-card > .re-node--system[b-2j8aaobsu8] {
    background: rgba(var(--mud-palette-info-rgb), 0.08);
    border-bottom: 1px dashed rgba(var(--mud-palette-info-rgb), 0.25);
}

.re-system-card > .re-node--system.re-node--active[b-2j8aaobsu8] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12);
    border-bottom-color: rgba(var(--mud-palette-primary-rgb), 0.25);
}

.re-system-card > .re-node--system:hover[b-2j8aaobsu8] {
    background: rgba(var(--mud-palette-info-rgb), 0.14);
}

/* Section box for zone detail panel (matches space conditioning style) */
.re-section-box[b-2j8aaobsu8] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 4px;
    margin-bottom: 12px;
    padding: 8px 12px;
}

.re-section-header[b-2j8aaobsu8] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--mud-palette-text-secondary);
    margin-bottom: 6px;
}
/* /Pages/EnergyModel/EnergyResults.razor.rz.scp.css */
.er-total-value[b-mom4jhuhxe] {
    font-weight: 700;
}

.er-key-takeaways[b-mom4jhuhxe] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    min-height: 40px;
}

.er-key-takeaways__label[b-mom4jhuhxe] {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    white-space: nowrap;
}

.er-key-takeaways__value[b-mom4jhuhxe] {
    font-weight: 600;
    white-space: nowrap;
}

.results-chart-with-y-axis-label[b-mom4jhuhxe] {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: stretch;
    column-gap: 4px;
}

.results-chart-axis-label[b-mom4jhuhxe] {
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    line-height: 1;
}

.results-chart-axis-label--y[b-mom4jhuhxe] {
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.results-chart-card[b-mom4jhuhxe] {
    height: 100%;
}

.results-chart-list[b-mom4jhuhxe] {
    max-height: 240px;
    overflow-y: auto;
}

.results-chart-list--shared[b-mom4jhuhxe] {
    max-height: 320px;
}

.results-chart-component-card[b-mom4jhuhxe] {
    min-height: 100%;
}

.results-chart-list__swatch[b-mom4jhuhxe] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    flex: 0 0 auto;
}

.results-chart-list__item-row[b-mom4jhuhxe] {
    width: 100%;
}

.results-chart-list--lined .mud-list-item[b-mom4jhuhxe] {
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.results-chart-list--lined .mud-list-item:last-child[b-mom4jhuhxe] {
    border-bottom: none;
}

.results-chart-table[b-mom4jhuhxe] {
    width: 100%;
}

.results-chart-table--lined tbody tr[b-mom4jhuhxe] {
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.results-chart-table--lined tbody tr:last-child[b-mom4jhuhxe] {
    border-bottom: none;
}

.results-chart-table__button[b-mom4jhuhxe] {
    justify-content: flex-start;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    text-transform: none;
}

.results-chart-table__row--selected[b-mom4jhuhxe] {
    background-color: rgba(var(--mud-palette-primary-rgb), 0.08);
}

.results-chart-table__total-row[b-mom4jhuhxe] {
    font-weight: 600;
}

.results-chart-bias-table[b-mom4jhuhxe] {
    width: 100%;
}

.results-chart-donut-svg[b-mom4jhuhxe] {
    width: 100%;
    height: 220px;
}

.results-chart-donut-card .results-chart-donut-svg[b-mom4jhuhxe] {
    height: 340px;
}

.results-chart-donut-slice[b-mom4jhuhxe] {
    stroke: #000;
    stroke-width: 1.5px;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.results-chart-bpi-monthly[b-mom4jhuhxe] {
    width: 100%;
    overflow-x: auto;
}

.results-chart-bpi-monthly__svg[b-mom4jhuhxe] {
    width: 100%;
    min-width: 640px;
    height: 300px;
}

.results-chart-bpi-monthly__grid-line[b-mom4jhuhxe] {
    stroke: rgba(255, 255, 255, 0.14);
    stroke-width: 1px;
    shape-rendering: crispEdges;
}

.results-chart-bpi-monthly__axis-line[b-mom4jhuhxe] {
    stroke: rgba(255, 255, 255, 0.5);
    stroke-width: 1px;
    shape-rendering: crispEdges;
}

.results-chart-bpi-monthly__segment[b-mom4jhuhxe] {
    stroke: #000;
    stroke-width: 1.25px;
    vector-effect: non-scaling-stroke;
}

.results-chart-bpi-monthly__tick-label[b-mom4jhuhxe],
.results-chart-bpi-monthly__month-label[b-mom4jhuhxe],
.results-chart-bpi-monthly__axis-title[b-mom4jhuhxe] {
    fill: var(--mud-palette-text-secondary);
    font-size: 11px;
}

.results-chart-bpi-monthly__tick-label[b-mom4jhuhxe] {
    text-anchor: end;
}

.results-chart-bpi-monthly__month-label[b-mom4jhuhxe] {
    text-anchor: middle;
}

.results-chart-bpi-monthly__axis-title[b-mom4jhuhxe] {
    text-anchor: middle;
}

.rated-home-sankey[b-mom4jhuhxe] {
    width: 100%;
    overflow-x: auto;
}

.rated-home-sankey__svg[b-mom4jhuhxe] {
    width: 100%;
}

.rated-home-sankey__heading[b-mom4jhuhxe] {
    fill: var(--mud-palette-text-secondary);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.rated-home-sankey__heading--left[b-mom4jhuhxe] {
    text-anchor: start;
}

.rated-home-sankey__heading--right[b-mom4jhuhxe] {
    text-anchor: start;
}

.rated-home-sankey__label[b-mom4jhuhxe] {
    fill: var(--mud-palette-text-primary);
    font-size: 13px;
    dominant-baseline: middle;
}

.rated-home-sankey__label--left[b-mom4jhuhxe] {
    text-anchor: end;
}

.rated-home-sankey__label--right[b-mom4jhuhxe] {
    text-anchor: start;
}

.rated-home-sankey__value[b-mom4jhuhxe] {
    fill: var(--mud-palette-text-secondary);
    font-size: 11px;
}

.rated-home-sankey__fuel-types[b-mom4jhuhxe] {
    align-items: center;
}

.rated-home-sankey__fuel-chip[b-mom4jhuhxe] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.rated-home-sankey__fuel-swatch[b-mom4jhuhxe] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
}

.er-bpi-misc-panel[b-mom4jhuhxe] {
    font-size: 0.85rem;
}

.er-bpi-misc-section[b-mom4jhuhxe] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.er-bpi-misc-equation-block[b-mom4jhuhxe] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 4px;
}

.er-bpi-misc-equation[b-mom4jhuhxe] {
    font-family: monospace;
    background: var(--mud-palette-surface);
    border-left: 3px solid var(--mud-palette-primary);
    padding: 6px 12px;
}

.er-bpi-misc-result[b-mom4jhuhxe] {
    font-family: monospace;
    font-weight: 700;
    color: var(--mud-palette-text-primary);
    padding-left: 12px;
}

.er-bpi-misc-value[b-mom4jhuhxe] {
    text-align: right;
    font-weight: 700;
}

.er-dhw-equations[b-mom4jhuhxe] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: var(--mud-palette-surface);
    border-left: 3px solid var(--mud-palette-primary);
    padding: 8px 12px;
}

.er-dhw-equations__group[b-mom4jhuhxe] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.er-dhw-equations__title[b-mom4jhuhxe] {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.er-dhw-equations__list[b-mom4jhuhxe] {
    margin: 0;
    padding-left: 20px;
    font-family: monospace;
    font-size: 0.8rem;
    line-height: 1.6;
}

.er-dhw-equations__list li[b-mom4jhuhxe] {
    margin-bottom: 2px;
}

.er-dhw-definitions[b-mom4jhuhxe] {
    margin-top: 4px;
    padding-left: 18px;
    column-count: 2;
    column-gap: 20px;
    font-size: 0.78rem;
    color: var(--mud-palette-text-secondary);
}

.er-dhw-definitions li[b-mom4jhuhxe] {
    break-inside: avoid;
    margin-bottom: 4px;
}

.er-dhw-calc-group-header td[b-mom4jhuhxe] {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--mud-palette-secondary);
    background: var(--mud-palette-background-grey);
    padding-top: 6px;
    padding-bottom: 4px;
    border-top: 1px solid var(--mud-palette-divider);
}

@media (max-width: 959.98px) {
    .er-dhw-definitions[b-mom4jhuhxe] {
        column-count: 1;
    }
}
/* /Pages/EnergyModel/EnergySimulationControls.razor.rz.scp.css */
/* Wraps a utility dropdown (MudSelect) with its remove icon button in a single row. */
.sc-utility-row[b-zfs4ml7bmp] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.sc-utility-row > :first-child[b-zfs4ml7bmp] {
    flex: 1;
    min-width: 0;
}
/* /Pages/EnergyModel/EnergyThermalZones.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   EnergyThermalZones.razor.css  —  Thermal Zones module styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Root container ─────────────────────────────────────────────────── */
.tz-root[b-obwunk48kp] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.tz-page-header[b-obwunk48kp] {
    padding-bottom: 4px;
}

.tz-header-stack[b-obwunk48kp] {
    flex-wrap: wrap;
}

/* ── Shared panel styles ─────────────────────────────────────────────── */
.tz-panel[b-obwunk48kp] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    border-radius: 6px;
}

.tz-panel-header[b-obwunk48kp] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.tz-panel-item[b-obwunk48kp] {
    min-height: 0;
}

/* ── Tree panel ──────────────────────────────────────────────────────── */
.tz-tree-panel[b-obwunk48kp] {
    min-height: 540px;
}

.tz-tree[b-obwunk48kp] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
    user-select: none;
}

/* ── Tree nodes ──────────────────────────────────────────────────────── */
.tz-node[b-obwunk48kp] {
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
    gap: 4px;
    min-width: 0;
}

.tz-node:hover[b-obwunk48kp] {
    background: rgba(0, 0, 0, 0.04);
}

.tz-node--active[b-obwunk48kp] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* Building — root level, slightly different background */
.tz-node--building[b-obwunk48kp] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.tz-node--building:hover[b-obwunk48kp] {
    background: rgba(0, 0, 0, 0.05);
}

.tz-node--building.tz-node--active[b-obwunk48kp] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

/* Zone — indented one level past system */
.tz-node--zone[b-obwunk48kp] {
    padding-left: 8px;
}

/* Room — indented two levels past system */
.tz-node--room[b-obwunk48kp] {
    padding-left: 8px;
}

/* Indent spacers for zone and room rows */
.tz-zone-indent[b-obwunk48kp] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

.tz-room-indent[b-obwunk48kp] {
    display: inline-block;
    width: 40px;
    flex-shrink: 0;
}

/* Spacer that matches the width of a small MudIconButton (for leaf rows) */
.tz-expand-spacer[b-obwunk48kp] {
    display: inline-block;
    width: 28px;
    flex-shrink: 0;
}

/* Tight expand/collapse icon button */
.tz-expand-btn[b-obwunk48kp] {
    flex-shrink: 0;
    margin: -6px -4px -6px -6px;
}

.tz-node-icon[b-obwunk48kp] {
    flex-shrink: 0;
    color: #888;
}

.tz-node-label[b-obwunk48kp] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.85rem;
}

.tz-node-status-icon[b-obwunk48kp] {
    flex-shrink: 0;
    border-radius: 4px;
    padding: 2px;
}

.tz-node-status-icon--conditioned[b-obwunk48kp] {
    color: var(--mud-palette-success);
    background: rgba(var(--mud-palette-success-rgb), 0.12);
}

.tz-node-status-icon--unconditioned[b-obwunk48kp] {
    color: var(--mud-palette-warning-darken);
    background: rgba(var(--mud-palette-warning-rgb), 0.12);
}

.tz-node-status-icon--unset[b-obwunk48kp] {
    color: var(--mud-palette-text-disabled);
    background: rgba(0, 0, 0, 0.08);
}

/* ── Detail panel ────────────────────────────────────────────────────── */
.tz-detail-panel[b-obwunk48kp] {
    min-height: 540px;
}

.tz-no-selection[b-obwunk48kp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.tz-detail-body[b-obwunk48kp] {
    padding: 16px 20px;
    overflow-y: auto;
    flex: 1;
}

.tz-detail-header[b-obwunk48kp] {
    flex-wrap: wrap;
}

/* Summary rows shown in detail views */
.tz-summary-card[b-obwunk48kp] {
    padding: 8px 16px;
    margin-bottom: 0;
    border-radius: 0;
    border-bottom: 1px solid var(--mud-palette-lines-default);
    background: transparent;
}

/* ── Responsive (tablet ≤ 959px) ────────────────────────────────────── */
@media (max-width: 959.98px) {
    .tz-panel[b-obwunk48kp] {
        min-height: 380px;
    }
}

/* ── Responsive (phone ≤ 599px) ─────────────────────────────────────── */
@media (max-width: 599.98px) {
    .tz-panel[b-obwunk48kp] {
        min-height: 320px;
    }
}

/* ── Node action buttons ─────────────────────────────────────────────── */
.tz-node-actions[b-obwunk48kp] {
    display: flex;
    align-items: center;
    gap: 0;
    margin-left: 4px;
    flex-shrink: 0;
}

/* ── Checkbox alignment in detail form ────────────────────────────────── */
.tz-checkbox-row[b-obwunk48kp] {
    display: flex;
    align-items: center;
    padding-top: 8px;
}
/* /Pages/EnergyModel/EnergyVentilation.razor.rz.scp.css */
.vt-root[b-sv8v1ajorz] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 24px;
}

.vt-page-header[b-sv8v1ajorz] {
    padding-bottom: 4px;
}

.vt-header-stack[b-sv8v1ajorz],
.vt-detail-header[b-sv8v1ajorz] {
    flex-wrap: wrap;
}

.vt-panel[b-sv8v1ajorz] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    border-radius: 6px;
}

.vt-panel-header[b-sv8v1ajorz] {
    padding: 12px 16px 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.vt-panel-item[b-sv8v1ajorz] {
    min-height: 0;
}

.vt-tree[b-sv8v1ajorz] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
    user-select: none;
}

.vt-node[b-sv8v1ajorz] {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    padding: 6px 12px 6px 8px;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.1s;
    gap: 4px;
    min-width: 0;
}

.vt-node:hover[b-sv8v1ajorz] {
    background: rgba(0, 0, 0, 0.04);
}

.vt-node--active[b-sv8v1ajorz] {
    background: rgba(var(--mud-palette-primary-rgb), 0.08);
}

.vt-node--building[b-sv8v1ajorz] {
    background: rgba(0, 0, 0, 0.02);
    font-weight: 600;
}

.vt-system-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

.vt-equipment-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

.vt-node-icon[b-sv8v1ajorz] {
    flex-shrink: 0;
    color: #888;
}

.vt-node-label[b-sv8v1ajorz] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.85rem;
}

.vt-node-badge[b-sv8v1ajorz] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 1px 5px;
    border-radius: 3px;
    flex-shrink: 0;
}

.vt-badge--building[b-sv8v1ajorz] { background: rgba(var(--mud-palette-primary-rgb), 0.12); color: var(--mud-palette-primary); }
.vt-badge--system[b-sv8v1ajorz] { background: rgba(var(--mud-palette-info-rgb), 0.12); color: var(--mud-palette-info); }
.vt-badge--equipment[b-sv8v1ajorz] { background: rgba(var(--mud-palette-success-rgb), 0.12); color: var(--mud-palette-success); }
.vt-badge--zone[b-sv8v1ajorz] { background: rgba(var(--mud-palette-warning-rgb), 0.12); color: var(--mud-palette-warning-darken); }
.vt-badge--room[b-sv8v1ajorz] { background: rgba(var(--mud-palette-secondary-rgb), 0.10); color: var(--mud-palette-secondary); }

.vt-zone-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 20px;
    flex-shrink: 0;
}

.vt-room-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

.vt-node--zone[b-sv8v1ajorz] {
    opacity: 0.85;
}

.vt-node--room[b-sv8v1ajorz] {
    opacity: 0.75;
    font-size: 0.82rem;
}

.vt-node-actions[b-sv8v1ajorz] {
    display: flex;
    align-items: center;
    margin-left: auto;
    flex-shrink: 0;
}

.vt-expand-spacer[b-sv8v1ajorz] {
    display: inline-block;
    width: 28px;
    flex-shrink: 0;
}

.vt-expand-btn[b-sv8v1ajorz] {
    flex-shrink: 0;
    margin: -6px -4px -6px -6px;
}

.vt-tree-empty[b-sv8v1ajorz] {
    padding: 10px 14px;
    font-size: 0.85rem;
    color: var(--mud-palette-text-secondary);
    display: flex;
    align-items: center;
    gap: 8px;
}

.vt-no-selection[b-sv8v1ajorz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
    padding: 24px;
}

.vt-detail-body[b-sv8v1ajorz] {
    padding: 16px 20px;
    overflow-y: auto;
    flex: 1;
}

.vt-checkbox-box-only-row[b-sv8v1ajorz] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

:deep(.vt-checkbox-box-only)[b-sv8v1ajorz] {
    width: auto;
    margin: 0;
}

@media (max-width: 599.98px) {
    .vt-node-badge[b-sv8v1ajorz] {
        display: none;
    }
}

/* ── System Card (bordered container) ───────────────────────────────── */
.vt-system-card[b-sv8v1ajorz] {
    border: 1px dashed rgba(var(--mud-palette-info-rgb), 0.40);
    border-radius: 6px;
    margin: 4px 0;
    overflow: hidden;
}

.vt-system-card > .vt-node--system[b-sv8v1ajorz] {
    background: rgba(var(--mud-palette-info-rgb), 0.08);
    border-bottom: 1px dashed rgba(var(--mud-palette-info-rgb), 0.25);
}

.vt-system-card > .vt-node--system.vt-node--active[b-sv8v1ajorz] {
    background: rgba(var(--mud-palette-primary-rgb), 0.12);
    border-bottom-color: rgba(var(--mud-palette-primary-rgb), 0.25);
}

.vt-system-card > .vt-node--system:hover[b-sv8v1ajorz] {
    background: rgba(var(--mud-palette-info-rgb), 0.14);
}

/* Indent spacer for zones nested under a ventilation system */
.vt-zone-under-system-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 36px;
    flex-shrink: 0;
}

/* Indent spacer for rooms under a zone that is under a ventilation system */
.vt-room-under-system-indent[b-sv8v1ajorz] {
    display: inline-block;
    width: 52px;
    flex-shrink: 0;
}

/* Section box for zone detail panel (matches space conditioning style) */
.vt-section-box[b-sv8v1ajorz] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 4px;
    margin-bottom: 12px;
    padding: 8px 12px;
}

.vt-section-header[b-sv8v1ajorz] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--mud-palette-text-secondary);
    margin-bottom: 6px;
}

.vt-summary-card[b-sv8v1ajorz] {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 6px;
    padding: 12px;
}

/* ── Equipment accordion (inline expandable) ─────────────────────────── */
.vt-equipment-accordion-header[b-sv8v1ajorz] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    cursor: pointer;
    border-radius: 4px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background 0.1s;
}

.vt-equipment-accordion-header:hover[b-sv8v1ajorz] {
    background: rgba(0, 0, 0, 0.04);
}

.vt-equipment-accordion-header--active[b-sv8v1ajorz] {
    background: rgba(var(--mud-palette-primary-rgb), 0.06);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.vt-equipment-accordion-body[b-sv8v1ajorz] {
    padding: 12px 12px 8px 12px;
    border: 1px solid rgba(var(--mud-palette-primary-rgb), 0.15);
    border-top: none;
    border-radius: 0 0 4px 4px;
    margin-bottom: 4px;
    background: rgba(var(--mud-palette-primary-rgb), 0.02);
}
/* /Pages/Lots/BulkEditDialogs/BulkEditEnergyDialog.razor.rz.scp.css */
/* Left-positioned vertical tabs filling available space. */
[b-kkdmck35xr] .bulk-edit-energy-tabs {
    width: 100%;
    display: flex;
    flex-direction: row;
    min-height: 400px;
}

[b-kkdmck35xr] .bulk-edit-energy-tabs .mud-tabs-tabbar {
    min-width: 140px;
    width: 140px;
}

[b-kkdmck35xr] .bulk-edit-energy-tabs .mud-tabs-panels {
    flex: 1 1 auto;
    min-width: 0;
    overflow-x: hidden;
}

[b-kkdmck35xr] .bulk-edit-energy-tabs .mud-tab-panel {
    display: block;
    width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}
/* /Pages/Support/Support.razor.rz.scp.css */
.support-field-card[b-nycxdo9r72] {
    border-radius: 8px !important;
}

.support-field-label[b-nycxdo9r72] {
    font-weight: 600;
    letter-spacing: 0.01em;
}
/* /Shared/Components/EnergyScopeTree.razor.rz.scp.css */
.ig-zone-conditioning-icon[b-mqblyd086m] {
    flex-shrink: 0;
    border-radius: 4px;
    padding: 2px;
}

.ig-zone-conditioning-icon--conditioned[b-mqblyd086m] {
    color: var(--mud-palette-success);
    background: rgba(var(--mud-palette-success-rgb), 0.12);
}

.ig-zone-conditioning-icon--unconditioned[b-mqblyd086m] {
    color: var(--mud-palette-warning-darken);
    background: rgba(var(--mud-palette-warning-rgb), 0.12);
}

.ig-zone-conditioning-icon--unset[b-mqblyd086m] {
    color: var(--mud-palette-text-disabled);
    background: rgba(0, 0, 0, 0.08);
}
/* /Shared/Dialogs/Energy/ConstructionEditorDialog.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   ConstructionEditorDialog.razor.css — Construction Editor dialog styles
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Input method toggle ─────────────────────────────────────────────── */
.ced-mode-toggle[b-wllvlmiccu] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ced-mode-label[b-wllvlmiccu] {
    flex-shrink: 0;
    white-space: nowrap;
}

/* ── Layer list (Detailed mode) ──────────────────────────────────────── */
.ced-layer-header[b-wllvlmiccu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.ced-layer-order-hint[b-wllvlmiccu] {
    font-size: 0.72rem;
    font-weight: 400;
    color: #888;
    margin-left: 6px;
}

.ced-layer-list[b-wllvlmiccu] {
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    overflow: hidden;
}

.ced-layer-row[b-wllvlmiccu] {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    gap: 8px;
    background: var(--mud-palette-surface);
}

.ced-layer-row:last-child[b-wllvlmiccu] { border-bottom: none; }

.ced-drag-handle[b-wllvlmiccu] {
    cursor: grab;
    flex-shrink: 0;
    color: #ccc;
}

.ced-layer-info[b-wllvlmiccu] {
    flex: 1;
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 0.8rem;
}

.ced-layer-name[b-wllvlmiccu]  { flex: 1; font-weight: 500; }
.ced-layer-thick[b-wllvlmiccu] { color: #888; font-size: 0.75rem; min-width: 36px; }
.ced-layer-r[b-wllvlmiccu]     { font-family: monospace; font-size: 0.75rem; min-width: 46px; text-align: right; }

.ced-layer-actions[b-wllvlmiccu] {
    display: flex;
    flex-shrink: 0;
}

/* ── Checkbox label row ───────────────────────────────────────────────── */
.ced-checkbox-label[b-wllvlmiccu] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 0.875rem;
}

/* ── Construction Properties section header ──────────────────────────── */
.ced-section-header[b-wllvlmiccu] {
    display: flex;
    align-items: center;
    padding-top: 8px;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    margin-top: 4px;
}
/* /Shared/Dialogs/Energy/ProfileEditorDialog.razor.rz.scp.css */
.pe-preview-bar[b-4jdnbn3ln4] {
    display: flex;
    align-items: flex-end;
    height: 220px;
    gap: 3px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    padding-bottom: 2px;
}

.pe-bar-col[b-4jdnbn3ln4] {
    flex: 1;
    background: #1976d2;
    border-radius: 2px 2px 0 0;
    min-height: 2px;
}
/* /Shared/Layouts/EmptyLayout.razor.rz.scp.css */
/*
    The project needs at least one scoped css file
    to prevent a 404 error on load.
*/
/* /Shared/Layouts/EnergyLayout.razor.rz.scp.css */
/* ============================================================
   Energy Analysis App Shell — Component-scoped styles
   EnergyLayout.razor.css
   ============================================================ */

/* Shell root: fills the available main-content area */
.energy-shell[b-sx41ch91y4] {
    display: flex;
    flex-direction: row;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

/* ── Sidebar ─────────────────────────────────────────────── */

.energy-sidebar[b-sx41ch91y4] {
    width: 220px;
    min-width: 220px;
    display: flex;
    flex-direction: column;
    background-color: rgba(0, 0, 0, 0.08);
    border-right: 1px solid rgba(128, 128, 128, 0.2);
    transition: width 0.2s ease, min-width 0.2s ease;
    overflow: hidden;
    flex-shrink: 0;
}

.energy-sidebar--collapsed[b-sx41ch91y4] {
    width: 56px;
    min-width: 56px;
}

/* Sidebar header row */
.energy-sidebar-header[b-sx41ch91y4] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    padding: 10px 10px 10px 12px;
    border-bottom: 1px solid rgba(128, 128, 128, 0.15);
    flex-shrink: 0;
}

.energy-header-icon[b-sx41ch91y4] {
    color: #26d9b0 !important;
    flex-shrink: 0;
}

.energy-header-title[b-sx41ch91y4] {
    flex: 1;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    font-size: 0.82rem;
    letter-spacing: 0.02em;
}

.energy-collapse-btn[b-sx41ch91y4] {
    margin-left: auto;
    flex-shrink: 0;
}

/* Module Navigation */
.energy-nav[b-sx41ch91y4] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 8px 0;
    gap: 2px;
}

.energy-nav-item[b-sx41ch91y4] {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0 8px;
    margin: 1px 6px;
    border-radius: 6px;
    cursor: pointer;
    text-decoration: none !important;
    color: inherit;
    transition: background-color 0.15s ease;
    min-height: 36px;
}

.energy-nav[b-sx41ch91y4]  .energy-nav-item:hover {
    background-color: rgba(38, 217, 176, 0.08);
    text-decoration: none !important;
}

.energy-nav[b-sx41ch91y4]  .energy-nav-item--active {
    background-color: rgba(38, 217, 176, 0.15) !important;
    color: #26d9b0 !important;
    font-weight: 600;
    border-left: 3px solid #26d9b0 !important;
    padding-left: 5px;
}

.energy-nav[b-sx41ch91y4]  .energy-nav-item--active .energy-nav-icon {
    color: #26d9b0 !important;
}

.energy-nav[b-sx41ch91y4]  .energy-nav-item--active .energy-nav-icon--error {
    color: #f44336 !important;
}

.energy-nav[b-sx41ch91y4]  .energy-nav-item--active .energy-nav-icon--warning {
    color: #ff9800 !important;
}

.energy-nav-item-inner[b-sx41ch91y4] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 6px 0;
}

.energy-nav-icon[b-sx41ch91y4] {
    flex-shrink: 0;
    opacity: 0.8;
}

.energy-nav-item-inner[b-sx41ch91y4]  .energy-nav-icon--warning {
    color: #ff9800 !important;
    opacity: 1;
}

.energy-nav-item-inner[b-sx41ch91y4]  .energy-nav-icon--error {
    color: #f44336 !important;
    opacity: 1;
}

.energy-topbar-page-title[b-sx41ch91y4]  .energy-nav-icon--warning {
    color: #ff9800 !important;
    opacity: 1;
}

.energy-topbar-page-title[b-sx41ch91y4]  .energy-nav-icon--error {
    color: #f44336 !important;
    opacity: 1;
}

.energy-nav-label[b-sx41ch91y4] {
    font-size: 0.82rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Status badges */
.energy-status-badge[b-sx41ch91y4] {
    flex-shrink: 0;
    font-size: 0.7rem;
    width: 16px;
    text-align: center;
    font-weight: 700;
}

.energy-status--notstarted[b-sx41ch91y4]  { color: rgba(128, 128, 128, 0.6); }
.energy-status--complete[b-sx41ch91y4]    { color: #4caf50; }
.energy-status--warning[b-sx41ch91y4]     { color: #ff9800; }
.energy-status--error[b-sx41ch91y4]       { color: #f44336; }

/* ── Main Content ─────────────────────────────────────────── */

.energy-main[b-sx41ch91y4] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}

/* Top bar: breadcrumbs + actions */
.energy-topbar[b-sx41ch91y4] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
    padding: 6px 12px;
    border-bottom: 1px solid rgba(128, 128, 128, 0.15);
    flex-shrink: 0;
    flex-wrap: wrap;
}

.energy-topbar-page-title[b-sx41ch91y4] {
    min-width: 0;
}

.energy-topbar-page-title .mud-typography[b-sx41ch91y4] {
    margin: 0;
    line-height: 1.2;
}

.energy-topbar-page-title-text[b-sx41ch91y4] {
    margin-right: 0;
}

.energy-breadcrumbs[b-sx41ch91y4] {
    flex: 1;
    min-width: 0;
}

.energy-run-btn[b-sx41ch91y4] {
    white-space: nowrap;
}

.energy-run-warning-indicator[b-sx41ch91y4] {
    margin: 0 4px;
}

/* ── Mobile issues FAB ─────────────────────────────────────── */

/* Hidden by default on non-phone sizes */
.energy-mobile-issues-fab[b-sx41ch91y4] {
    display: none;
}


.energy-mobile-issues-summary[b-sx41ch91y4] {
    white-space: nowrap;
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-summary-icon--error {
    color: var(--mud-palette-error) !important;
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-summary-icon--warning {
    color: var(--mud-palette-warning) !important;
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-summary-count {
    font-weight: 600;
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-summary-count--error {
    color: var(--mud-palette-error);
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-summary-count--warning {
    color: var(--mud-palette-warning);
}

.energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-button {
    min-width: auto;
    padding: 2px 4px;
}

/* Page body: where @Body renders */
.energy-page-body[b-sx41ch91y4] {
    flex: 1;
    overflow: auto;
    padding: 16px;
}

.energy-page-body[b-sx41ch91y4]  .tz-page-header,
.energy-page-body[b-sx41ch91y4]  .vt-page-header,
.energy-page-body[b-sx41ch91y4]  .ig-page-header,
.energy-page-body[b-sx41ch91y4]  .sc-page-header,
.energy-page-body[b-sx41ch91y4]  .ga-page-header,
.energy-page-body[b-sx41ch91y4]  .env-page-header,
.energy-page-body[b-sx41ch91y4]  .pl-page-header,
.energy-page-body[b-sx41ch91y4]  .re-page-header {
    display: none;
}

/* ── Input Validation Sidebar ──────────────────────────────── */

.energy-issues-sidebar[b-sx41ch91y4] {
    width: 320px;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    border-left: 1px solid rgba(128, 128, 128, 0.2);
    background-color: rgba(0, 0, 0, 0.03);
    transition: width 0.2s ease, min-width 0.2s ease;
    overflow: hidden;
    flex-shrink: 0;
}

.energy-issues-sidebar--collapsed[b-sx41ch91y4] {
    width: 56px;
    min-width: 56px;
}

.energy-issues-sidebar--collapsed .energy-issues-header[b-sx41ch91y4] {
    justify-content: center;
    padding: 10px 4px;
}

.energy-issues-header[b-sx41ch91y4] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 10px 10px 12px;
    border-bottom: 1px solid rgba(128, 128, 128, 0.15);
}

.energy-issues-header-icon1[b-sx41ch91y4] {
    color: #ff9800 !important;
}

/* Collapsed sidebar: vertically stacked badges */
.energy-issues-collapsed-badges[b-sx41ch91y4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
}

.energy-issues-collapsed-badge[b-sx41ch91y4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    cursor: pointer;
    padding: 6px;
    border-radius: 8px;
    transition: background-color 0.15s ease;
}

.energy-issues-collapsed-badge:hover[b-sx41ch91y4] {
    background-color: rgba(128, 128, 128, 0.12);
}

.energy-issues-collapsed-count[b-sx41ch91y4] {
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
}

.energy-issues-collapsed-badge--error .energy-issues-collapsed-count[b-sx41ch91y4] {
    color: var(--mud-palette-error);
}

.energy-issues-collapsed-badge--warning .energy-issues-collapsed-count[b-sx41ch91y4] {
    color: var(--mud-palette-warning);
}

.energy-issues-title[b-sx41ch91y4] {
    flex: 1;
    font-weight: normal;
    white-space: nowrap;
    overflow: hidden;
}

.energy-issues-content[b-sx41ch91y4] {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
}

.energy-issues-list[b-sx41ch91y4] {
    padding-top: 0;
}

.energy-issues-groups[b-sx41ch91y4] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.energy-issues-group[b-sx41ch91y4] {
    padding: 0;
    overflow: hidden;
}

.energy-issues-group-header[b-sx41ch91y4] {
    flex-wrap: wrap;
    margin-bottom: 0;
    padding: 10px 16px;
    background-color: rgba(128, 128, 128, 0.10);
    border-bottom: 1px solid rgba(128, 128, 128, 0.20);
}

.energy-issues-group-title[b-sx41ch91y4] {
    font-weight: 700;
    font-size: 0.875rem;
    letter-spacing: 0.01em;
    margin-right: auto;
}

.energy-issues-group-toggle[b-sx41ch91y4] {
    opacity: 0.6;
    flex-shrink: 0;
}

.energy-issues-item[b-sx41ch91y4] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
    padding: 4px 10px;
}

.energy-issues-item-header[b-sx41ch91y4] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.energy-issues-severity-icon[b-sx41ch91y4] {
    font-size: 14px !important;
    width: 14px !important;
    height: 14px !important;
    flex-shrink: 0;
}

.energy-issues-field[b-sx41ch91y4] {
    font-weight: 600;
    color: var(--mud-palette-text-secondary);
}

/* ── Responsive ───────────────────────────────────────────── */

/* Override MudBlazor's primary-color selection highlight so clicked validation
   errors appear neutral (not green, which implies success). */
.energy-issues-sidebar[b-sx41ch91y4]  .mud-list-item.mud-selected-item {
    background-color: rgba(128, 128, 128, 0.15) !important;
    color: inherit !important;
}

.energy-issues-sidebar[b-sx41ch91y4]  .mud-list-item.mud-selected-item:hover {
    background-color: rgba(128, 128, 128, 0.22) !important;
}

.energy-issues-sidebar[b-sx41ch91y4]  .mud-list-item.mud-selected-item * {
    color: inherit !important;
}

/* ── Simulation Log entries ─────────────────────────────────────────── */

.energy-simlog-container[b-sx41ch91y4] {
    max-height: 600px;
    overflow-y: auto;
    padding: 10px 12px;
    font-family: 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8rem;
    line-height: 1.6;
}

.energy-simlog-entry[b-sx41ch91y4] {
    margin-bottom: 6px;
    padding: 6px 10px;
    border-radius: 2px;
    white-space: pre-wrap;
    word-break: break-word;
    color: var(--mud-palette-text-primary);
    border-left: 3px solid var(--mud-palette-lines-default);
    background: var(--mud-palette-background-grey);
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.energy-simlog-entry-alt[b-sx41ch91y4] {
    background: var(--mud-palette-surface);
}

/* Tablet: collapse sidebar by default */
@media (max-width: 959.98px) {
    .energy-sidebar[b-sx41ch91y4] {
        width: 56px;
        min-width: 56px;
    }

    .energy-sidebar--collapsed[b-sx41ch91y4] {
        width: 56px;
        min-width: 56px;
    }

    .energy-header-title[b-sx41ch91y4],
    .energy-nav-label[b-sx41ch91y4],
    .energy-status-badge[b-sx41ch91y4] {
        display: none;
    }

    .energy-issues-sidebar[b-sx41ch91y4] {
        width: 56px;
        min-width: 56px;
    }

    .energy-issues-sidebar--collapsed[b-sx41ch91y4] {
        width: 56px;
        min-width: 56px;
    }

    .energy-issues-title[b-sx41ch91y4] {
        display: none;
    }
}

/* Phone: hide sidebar entirely, show top nav or icon strip */
@media (max-width: 599.98px) {
    .energy-mobile-issues-fab[b-sx41ch91y4] {
        display: flex;
        align-items: center;
        margin-left: 8px;
    }

    .energy-mobile-issues-fab[b-sx41ch91y4]  .energy-mobile-issues-button {
        margin-left: 0;
    }

    .energy-topbar-page-title[b-sx41ch91y4] {
        margin-right: 12px;
    }

    .energy-topbar-page-title-text[b-sx41ch91y4] {
        padding-right: 10px;
    }

    .energy-shell[b-sx41ch91y4] {
        flex-direction: column;
    }

    .energy-sidebar[b-sx41ch91y4] {
        width: 100%;
        min-width: 0;
        flex-direction: row;
        height: 48px;
        min-height: 48px;
        border-right: none;
        border-bottom: 1px solid rgba(128, 128, 128, 0.2);
        overflow-x: auto;
        overflow-y: hidden;
    }

    .energy-sidebar--collapsed[b-sx41ch91y4] {
        width: 100%;
        height: 48px;
    }

    .energy-sidebar-header[b-sx41ch91y4] {
        display: none;
    }

    .energy-nav[b-sx41ch91y4] {
        flex-direction: row;
        padding: 0;
        gap: 0;
        overflow-x: auto;
        overflow-y: hidden;
    }

    .energy-nav-item[b-sx41ch91y4] {
        margin: 4px 2px;
        padding: 0 4px;
        min-height: 40px;
        border-radius: 4px;
    }

    .energy-nav-item-inner[b-sx41ch91y4] {
        padding: 4px 2px;
    }

    .energy-nav-label[b-sx41ch91y4],
    .energy-status-badge[b-sx41ch91y4] {
        display: none;
    }

    .energy-main[b-sx41ch91y4] {
        flex: 1;
    }

    .energy-page-body[b-sx41ch91y4] {
        padding: 8px;
    }

    .energy-issues-sidebar[b-sx41ch91y4] {
        display: none;
    }
}
/* /Shared/Layouts/NavMenu.razor.rz.scp.css */
.neutral-icon-link[b-963f6jb23b]  .mud-nav-link-icon {
    color: var(--mud-palette-action-default) !important;
}
