/* /Pages/Charts.razor.rz.scp.css */
.trends-list[b-fuogur9xc5]{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
/* /Pages/Infrastructure.razor.rz.scp.css */
.infrastructure-page[b-ri3lwdmjhz]{color:var(--text-primary)}.infra-heading[b-ri3lwdmjhz],.infra-drill-heading[b-ri3lwdmjhz]{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem}.infra-heading h1[b-ri3lwdmjhz],.infra-drill-heading h1[b-ri3lwdmjhz]{margin:.2rem 0 .35rem}.infra-heading p[b-ri3lwdmjhz],.infra-drill-heading p[b-ri3lwdmjhz],.infra-panel-heading p[b-ri3lwdmjhz],.gateway-card p[b-ri3lwdmjhz],.gateway-summary p[b-ri3lwdmjhz]{color:var(--text-muted);margin:0}.infra-eyebrow[b-ri3lwdmjhz],.type-tag[b-ri3lwdmjhz]{color:var(--primary-blue);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.infra-metrics[b-ri3lwdmjhz]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.infra-metric[b-ri3lwdmjhz]{display:flex;gap:.8rem;align-items:center;padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}.infra-metric-icon[b-ri3lwdmjhz]{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;color:var(--primary-blue);background:var(--primary-blue-light);font-weight:800}.infra-metric.alert .infra-metric-icon[b-ri3lwdmjhz]{color:var(--accent-rose);background:rgba(239,68,68,.1)}.infra-metric small[b-ri3lwdmjhz],.infra-metric em[b-ri3lwdmjhz]{display:block;color:var(--text-muted);font-size:.72rem;font-style:normal}.infra-metric strong[b-ri3lwdmjhz]{display:block;font-size:1.45rem;line-height:1.2}.infra-panel[b-ri3lwdmjhz]{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);overflow:hidden}.infra-panel-heading[b-ri3lwdmjhz]{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.35rem;border-bottom:1px solid var(--border)}.infra-panel-heading h2[b-ri3lwdmjhz]{margin:0;font-size:1rem}.infra-panel-heading small[b-ri3lwdmjhz]{color:var(--text-muted);font-weight:400}.infra-toolbar[b-ri3lwdmjhz]{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;padding:1rem 1.35rem;border-bottom:1px solid var(--border)}.infra-toolbar input[b-ri3lwdmjhz],.infra-toolbar select[b-ri3lwdmjhz]{min-height:36px;padding:.45rem .7rem;border:1px solid var(--border);border-radius:7px;background:var(--bg-surface);color:var(--text-primary)}.infra-toolbar input[b-ri3lwdmjhz]{flex:1;min-width:220px}.infra-filters[b-ri3lwdmjhz]{display:flex;gap:.35rem;flex-wrap:wrap}.infra-filters button[b-ri3lwdmjhz]{padding:.45rem .7rem;border:1px solid transparent;border-radius:99px;background:transparent;color:var(--text-muted);font-size:.75rem}.infra-filters button.active[b-ri3lwdmjhz],.infra-filters button:hover[b-ri3lwdmjhz]{color:var(--primary-blue);border-color:var(--primary-blue);background:var(--primary-blue-light)}.gateway-grid[b-ri3lwdmjhz]{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:1rem;padding:1.35rem}.gateway-card[b-ri3lwdmjhz]{padding:0;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-primary);overflow:hidden;transition:.18s}.gateway-card:hover[b-ri3lwdmjhz],.sensor-card:hover[b-ri3lwdmjhz]{border-color:var(--primary-blue);transform:translateY(-2px)}.card-top[b-ri3lwdmjhz],.sensor-top[b-ri3lwdmjhz]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1rem 0}.status-badge[b-ri3lwdmjhz]{display:inline-flex;padding:.2rem .55rem;border-radius:99px;font-size:.7rem;font-weight:700}.status-badge.online[b-ri3lwdmjhz]{color:var(--accent-emerald);background:rgba(16,185,129,.12)}.status-badge.offline[b-ri3lwdmjhz]{color:var(--accent-rose);background:rgba(239,68,68,.1)}.device-art[b-ri3lwdmjhz]{display:grid;place-items:center;height:90px;margin:.6rem 1rem 0;border-radius:8px;background:var(--bg-surface);font-size:3rem;color:var(--primary-blue)}.gateway-card h3[b-ri3lwdmjhz]{margin:1rem 1rem .25rem;font-size:1rem}.gateway-card p[b-ri3lwdmjhz]{min-height:2.4rem;margin:0 1rem;font-size:.78rem}.gateway-card dl[b-ri3lwdmjhz]{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem;padding-top:.8rem;border-top:1px solid var(--border)}.gateway-card dt[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.65rem;text-transform:uppercase}.gateway-card dd[b-ri3lwdmjhz]{margin:0;font-size:.78rem}.gateway-card footer[b-ri3lwdmjhz]{display:flex;justify-content:space-between;padding:.8rem 1rem;background:var(--bg-surface);font-size:.75rem;color:var(--text-muted)}.gateway-card footer b[b-ri3lwdmjhz]{color:var(--primary-blue)}.infra-empty[b-ri3lwdmjhz]{text-align:center;padding:3rem;color:var(--text-muted)}.infra-error[b-ri3lwdmjhz]{padding:.75rem 1rem;margin-bottom:1rem;border:1px solid var(--accent-rose);color:var(--accent-rose);border-radius:7px}.drill-nav[b-ri3lwdmjhz]{position:sticky;top:var(--topbar-h);z-index:2;display:flex;justify-content:space-between;align-items:center;padding:.7rem 0;margin-bottom:1.3rem;background:var(--bg-primary,var(--bg-surface));border-bottom:1px solid var(--border)}.back-button[b-ri3lwdmjhz]{min-height:42px;padding:0 .9rem;border:1px solid var(--primary-blue);border-radius:7px;background:transparent;color:var(--primary-blue);font-weight:700}.gateway-summary[b-ri3lwdmjhz]{display:flex;gap:1rem;align-items:center;padding:1rem 1.35rem;margin-bottom:1.3rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}.gateway-summary .device-art[b-ri3lwdmjhz]{width:90px;height:65px;margin:0;font-size:2rem}.gateway-summary h2[b-ri3lwdmjhz]{margin:0 0 .25rem}.sensor-group+.sensor-group[b-ri3lwdmjhz]{border-top:1px solid var(--border)}.sensor-group-heading[b-ri3lwdmjhz]{display:flex;justify-content:space-between;padding:.9rem 1.35rem;background:var(--bg-surface);border-left:3px solid var(--primary-blue)}.sensor-group-heading h3[b-ri3lwdmjhz]{margin:0;font-size:.9rem}.sensor-group-heading span[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.75rem}.sensor-grid[b-ri3lwdmjhz]{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.8rem;padding:1.1rem 1.35rem}.sensor-card[b-ri3lwdmjhz]{padding:0;text-align:left;border:1px solid var(--border);border-radius:9px;background:var(--bg-card);color:var(--text-primary);overflow:hidden;transition:.18s}.sensor-card.offline[b-ri3lwdmjhz]{background:var(--bg-surface)}.slave-label[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.7rem}.sensor-symbol[b-ri3lwdmjhz]{display:grid;place-items:center;width:29px;height:29px;margin:1rem;border-radius:7px;background:var(--primary-blue-light);color:var(--primary-blue)}.sensor-card h4[b-ri3lwdmjhz]{margin:0 1rem .2rem;font-size:.84rem}.sensor-card p[b-ri3lwdmjhz]{margin:0 1rem;color:var(--text-muted);font-size:.72rem}.reading[b-ri3lwdmjhz]{display:flex;gap:.35rem;align-items:baseline;margin:1rem}.reading strong[b-ri3lwdmjhz]{font-size:1.5rem}.reading span[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.75rem}.sensor-updated[b-ri3lwdmjhz],.offline-note[b-ri3lwdmjhz]{margin:0 1rem 1rem;color:var(--text-muted);font-size:.7rem}.offline-note[b-ri3lwdmjhz]{padding:.7rem;border:1px dashed var(--border);border-radius:6px}.sensor-card footer[b-ri3lwdmjhz]{display:block;padding:.65rem 1rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.68rem}.infra-modal-backdrop[b-ri3lwdmjhz]{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:1rem;background:rgba(0,0,0,.45)}.infra-modal[b-ri3lwdmjhz]{position:relative;width:min(620px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);color:var(--text-primary)}.modal-close[b-ri3lwdmjhz]{position:absolute;top:.8rem;right:.8rem;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-muted);font-size:1.3rem}.infra-modal h2[b-ri3lwdmjhz]{margin:.2rem 0}.detail-stats[b-ri3lwdmjhz]{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1.2rem 0}.detail-stats div[b-ri3lwdmjhz]{padding:.8rem;border:1px solid var(--border);border-radius:7px}.detail-stats strong[b-ri3lwdmjhz],.detail-stats span[b-ri3lwdmjhz]{display:block}.detail-stats span[b-ri3lwdmjhz],.detail-meta dt[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.72rem}.detail-meta[b-ri3lwdmjhz]{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.detail-meta div[b-ri3lwdmjhz]{padding:.6rem;border-bottom:1px solid var(--border)}.detail-meta dd[b-ri3lwdmjhz]{margin:.2rem 0 0;font-size:.8rem}.history-bars[b-ri3lwdmjhz]{display:flex;align-items:end;height:90px;gap:3px;padding:.5rem;border-bottom:1px solid var(--border)}.history-bars span[b-ri3lwdmjhz]{flex:1;min-width:2px;background:var(--primary-blue);opacity:.75}@media(max-width:850px){.infra-metrics[b-ri3lwdmjhz]{grid-template-columns:repeat(2,1fr)}.infra-heading[b-ri3lwdmjhz],.infra-drill-heading[b-ri3lwdmjhz]{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.infra-metrics[b-ri3lwdmjhz]{grid-template-columns:1fr}.detail-stats[b-ri3lwdmjhz],.detail-meta[b-ri3lwdmjhz]{grid-template-columns:1fr}.drill-nav[b-ri3lwdmjhz]{align-items:flex-start;gap:.6rem;flex-direction:column}}
.device-art img[b-ri3lwdmjhz]{max-width:100%;max-height:120px;object-fit:contain}.history-table[b-ri3lwdmjhz]{width:100%;border-collapse:collapse;font-size:.78rem}.history-table caption[b-ri3lwdmjhz]{text-align:left;color:var(--text-muted);font-size:.72rem;margin-bottom:.4rem}.history-table th[b-ri3lwdmjhz],.history-table td[b-ri3lwdmjhz]{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--border)}.history-table th[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.7rem;text-transform:uppercase}
.infrastructure-page .connection-card.is-online[b-ri3lwdmjhz],.infrastructure-page .connection-card.is-offline[b-ri3lwdmjhz]{background:var(--bg-card);border-color:var(--border)}
.gateway-grid[b-ri3lwdmjhz],.sensor-grid[b-ri3lwdmjhz]{grid-template-columns:repeat(3,minmax(0,1fr))}
.gateway-card[b-ri3lwdmjhz],.sensor-card[b-ri3lwdmjhz]{min-width:0}
.gateway-card h3[b-ri3lwdmjhz],.sensor-card h4[b-ri3lwdmjhz],.gateway-card p[b-ri3lwdmjhz],.sensor-card p[b-ri3lwdmjhz]{overflow-wrap:anywhere}
.sensor-category[b-ri3lwdmjhz]{display:inline-block;margin:.65rem 1rem 0;padding:.18rem .45rem;border-radius:999px;background:var(--primary-blue-light);color:var(--primary-blue);font-size:.65rem;font-weight:700}
.sensor-symbol[b-ri3lwdmjhz]{width:32px;height:32px}
.sensor-symbol svg[b-ri3lwdmjhz]{width:19px;height:19px}
@media(max-width:1100px){.gateway-grid[b-ri3lwdmjhz],.sensor-grid[b-ri3lwdmjhz]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gateway-grid[b-ri3lwdmjhz],.sensor-grid[b-ri3lwdmjhz]{grid-template-columns:1fr}}
@media(max-width:520px){.gateway-grid[b-ri3lwdmjhz],.sensor-grid[b-ri3lwdmjhz]{grid-template-columns:1fr}}
.sensor-history-heading[b-ri3lwdmjhz]{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.sensor-history-heading span[b-ri3lwdmjhz],.trend-summary[b-ri3lwdmjhz]{color:var(--text-muted);font-size:.72rem}
.sensor-trend[b-ri3lwdmjhz]{display:block;width:100%;height:auto;min-height:190px;padding:.5rem 0;color:var(--primary-blue)}
.trend-axis[b-ri3lwdmjhz]{stroke:var(--border-strong);stroke-width:1}
.trend-line[b-ri3lwdmjhz]{fill:none;stroke:var(--primary-blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.trend-point[b-ri3lwdmjhz]{fill:var(--bg-card);stroke:var(--primary-blue);stroke-width:2}
.trend-label[b-ri3lwdmjhz]{fill:var(--text-muted);font-size:11px}
.history-state.error[b-ri3lwdmjhz]{color:var(--accent-rose)}
.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{height:min(720px,calc(100dvh - 2rem));max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;overflow:hidden}
.sensor-detail-summary[b-ri3lwdmjhz]{flex:0 0 auto}
.sensor-history[b-ri3lwdmjhz]{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.sensor-history h3[b-ri3lwdmjhz]{flex:0 0 auto;margin:.25rem 0 .4rem}
.sensor-history-scroll[b-ri3lwdmjhz]{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--border)}
.sensor-history-scroll .history-table[b-ri3lwdmjhz]{margin-top:.4rem}
.sensor-history-scroll .history-table thead th[b-ri3lwdmjhz]{position:sticky;top:0;background:var(--bg-card);z-index:1}
@media(max-height:700px){.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{height:calc(100dvh - 1rem);max-height:calc(100dvh - 1rem);padding:1rem}}
.infra-modal-backdrop[b-ri3lwdmjhz]{inset:calc(var(--topbar-h) + .5rem) .75rem 1.25rem;z-index:1100}
.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{box-sizing:border-box;height:min(720px,calc(100dvh - var(--topbar-h) - 3.75rem));max-height:calc(100dvh - var(--topbar-h) - 3.75rem)}
.sensor-detail-modal .modal-close[b-ri3lwdmjhz]{z-index:2;background:var(--bg-card)}
@media(max-height:700px){.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{height:calc(100dvh - var(--topbar-h) - 3rem);max-height:calc(100dvh - var(--topbar-h) - 3rem)}}
.infra-modal-backdrop[b-ri3lwdmjhz]{inset:0;padding:1rem;overflow:hidden}
.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{box-sizing:border-box;width:min(720px,100%);height:min(720px,calc(100dvh - 2rem));max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;overflow:hidden;padding:1.25rem}
.sensor-detail-summary[b-ri3lwdmjhz]{flex:0 0 auto;min-width:0}
.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{overflow-y:auto;overscroll-behavior:contain}
.sensor-detail-modal[b-ri3lwdmjhz]  .sensor-trend-shell{flex:0 0 auto}
.sensor-detail-title-row[b-ri3lwdmjhz]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-width:0}
.sensor-detail-title-row>div[b-ri3lwdmjhz]{min-width:0}
.sensor-detail-title-row .modal-close[b-ri3lwdmjhz]{position:sticky;top:0;right:auto;flex:0 0 auto;margin:0;padding:.2rem .55rem;background:var(--bg-card);z-index:2}
.sensor-history[b-ri3lwdmjhz]{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.sensor-history h3[b-ri3lwdmjhz]{flex:0 0 auto;margin:.25rem 0 .4rem}
.sensor-history-scroll[b-ri3lwdmjhz]{flex:1 1 auto;min-height:0;max-height:24rem;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--border)}
.sensor-history-scroll .history-table[b-ri3lwdmjhz]{margin-top:.4rem}
.sensor-history-scroll .history-table thead th[b-ri3lwdmjhz]{position:sticky;top:0;background:var(--bg-card);z-index:1}
.history-state[b-ri3lwdmjhz]{padding:1rem 0;color:var(--text-muted)}
@media(max-width:600px){.infra-modal-backdrop[b-ri3lwdmjhz]{padding:.5rem}.infra-modal.sensor-detail-modal[b-ri3lwdmjhz]{width:100%;height:calc(100dvh - 1rem);max-height:calc(100dvh - 2rem);padding:1rem}.sensor-detail-title-row[b-ri3lwdmjhz]{gap:.5rem}.detail-stats[b-ri3lwdmjhz],.detail-meta[b-ri3lwdmjhz]{grid-template-columns:1fr}}

/* Component-scoped rules load after site.css; keep the isolated controls and
   connectivity cards on the same final theme tokens. */
.infrastructure-page .connection-card.is-online[b-ri3lwdmjhz],
.infrastructure-page .connection-card.is-offline[b-ri3lwdmjhz],
.infrastructure-page .sensor-card.is-online[b-ri3lwdmjhz],
.infrastructure-page .sensor-card.is-offline[b-ri3lwdmjhz] {
    background: var(--bg-card);
    border-color: var(--border);
}
.infrastructure-page .infra-toolbar select[b-ri3lwdmjhz] {
    appearance: none;
    -webkit-appearance: none;
    color-scheme: light;
    background-color: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--border-strong);
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: calc(100% - 15px) 50%, calc(100% - 10px) 50%;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-right: 2.25rem;
}
html[data-theme="dark"] .infrastructure-page .infra-toolbar select[b-ri3lwdmjhz],
body.dark-theme .infrastructure-page .infra-toolbar select[b-ri3lwdmjhz] { color-scheme: dark; }
.infrastructure-page .infra-toolbar select option[b-ri3lwdmjhz] {
    background: var(--bg-card);
    color: var(--text-primary);
}
.infrastructure-page .infra-filters button[b-ri3lwdmjhz],
.infrastructure-page .back-button[b-ri3lwdmjhz] {
    border-color: var(--border-strong);
    color: var(--text-body);
}
.infrastructure-page .infra-filters button.active[b-ri3lwdmjhz],
.infrastructure-page .infra-filters button:hover[b-ri3lwdmjhz],
.infrastructure-page .back-button:hover[b-ri3lwdmjhz] {
    color: var(--primary-blue);
}
.infrastructure-page .detail-stats div[b-ri3lwdmjhz],
.infrastructure-page .detail-meta div[b-ri3lwdmjhz],
.infrastructure-page .history-table th[b-ri3lwdmjhz],
.infrastructure-page .history-table td[b-ri3lwdmjhz] { color: var(--text-primary); }
.infrastructure-page .history-table th[b-ri3lwdmjhz],
.infrastructure-page .history-table td[b-ri3lwdmjhz] { border-color: var(--border); }

.infrastructure-page .sensor-grid[b-ri3lwdmjhz] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.infrastructure-page .sensor-card.connection-card[b-ri3lwdmjhz] {
    display: flex;
    min-height: 260px;
    flex-direction: column;
    padding: 14px 16px;
    border: 1px solid var(--border-strong);
    border-radius: 10px;
    color: var(--text-primary);
    background: var(--bg-card);
    text-align: left;
}
.infrastructure-page .sensor-card.connection-card.is-offline[b-ri3lwdmjhz] {
    border-color: var(--border-strong);
    background: var(--bg-card);
}
.infrastructure-page .sensor-card.connection-card:hover[b-ri3lwdmjhz] {
    border-color: var(--primary-blue);
    background: var(--bg-card-hover);
}
.infrastructure-page .sensor-card .sensor-top[b-ri3lwdmjhz] {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: center;
    padding: 0;
}
.infrastructure-page .sensor-card .sensor-top .slave-label[b-ri3lwdmjhz] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.infrastructure-page .sensor-card .sensor-top .status-badge[b-ri3lwdmjhz] {
    flex: 0 0 auto;
    white-space: nowrap;
}
.infrastructure-page .sensor-card .slave-label[b-ri3lwdmjhz] {
    color: var(--text-muted);
    font-size: .65rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.infrastructure-page .sensor-card .status-badge.online[b-ri3lwdmjhz] {
    color: var(--accent-emerald);
    background: var(--accent-emerald-light);
}
.infrastructure-page .sensor-card .status-badge.offline[b-ri3lwdmjhz] {
    color: var(--accent-rose);
    background: var(--accent-rose-light);
}
.infrastructure-page .sensor-card .sensor-symbol[b-ri3lwdmjhz] {
    width: 29px;
    height: 29px;
    margin: 12px 0 0;
    border-radius: 7px;
    color: var(--primary-blue);
    background: var(--primary-blue-light);
}
.infrastructure-page .sensor-card .sensor-symbol svg[b-ri3lwdmjhz] {
    width: 17px;
    height: 17px;
}
.infrastructure-page .sensor-card h4[b-ri3lwdmjhz] {
    margin: 14px 0 1px;
    color: var(--text-primary);
    font-size: .9rem;
}
.infrastructure-page .sensor-card p[b-ri3lwdmjhz] {
    margin: 0;
    color: var(--text-muted);
    font-size: .73rem;
}
.infrastructure-page .sensor-card .reading[b-ri3lwdmjhz] {
    gap: 4px;
    align-items: baseline;
    margin: 15px 0 0;
}
.infrastructure-page .sensor-card .reading strong[b-ri3lwdmjhz] {
    color: var(--text-primary);
    font-size: 1.55rem;
    letter-spacing: -.035em;
}
.infrastructure-page .sensor-card .reading span[b-ri3lwdmjhz] {
    color: var(--text-muted);
    font-size: .72rem;
}
.infrastructure-page .sensor-sparkline[b-ri3lwdmjhz] {
    width: 100%;
    height: 27px;
    margin: 7px 0 9px;
    overflow: visible;
}
.infrastructure-page .sensor-sparkline polyline[b-ri3lwdmjhz] {
    fill: none;
    stroke: var(--primary-blue);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
    vector-effect: non-scaling-stroke;
}
.infrastructure-page .sensor-card .sensor-updated[b-ri3lwdmjhz],
.infrastructure-page .sensor-card .offline-note[b-ri3lwdmjhz] {
    margin: 0 0 11px;
    color: var(--text-muted);
    font-size: .65rem;
}
.infrastructure-page .sensor-card .offline-note[b-ri3lwdmjhz] {
    padding: 9px 0;
    border: 0;
}
.infrastructure-page .sensor-card footer[b-ri3lwdmjhz] {
    margin-top: auto;
    padding: 9px 0 0;
    border-top: 1px solid var(--border-color);
    color: var(--text-muted);
    font-size: .65rem;
}
@media(max-width:900px) {
    .infrastructure-page .sensor-grid[b-ri3lwdmjhz] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width:650px) {
    .infrastructure-page .sensor-grid[b-ri3lwdmjhz] { grid-template-columns: 1fr; }
}

.infra-add-menu[b-ri3lwdmjhz] {
    position: relative;
    z-index: 4;
}
.infra-add-menu > summary[b-ri3lwdmjhz] {
    list-style: none;
    cursor: pointer;
}
.infra-add-menu > summary[b-ri3lwdmjhz]::-webkit-details-marker {
    display: none;
}
.infra-add-menu > summary:focus-visible[b-ri3lwdmjhz] {
    outline: 2px solid var(--primary-blue);
    outline-offset: 3px;
}
.infra-add-chevron[b-ri3lwdmjhz] {
    display: inline-block;
    transition: transform .18s ease;
}
.infra-add-menu[open] .infra-add-chevron[b-ri3lwdmjhz] {
    transform: rotate(180deg);
}
.infra-add-options[b-ri3lwdmjhz] {
    position: absolute;
    top: calc(100% + .45rem);
    right: 0;
    z-index: 5;
    display: grid;
    gap: .25rem;
    min-width: 250px;
    padding: .45rem;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-card);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .22);
}
.infra-add-option[b-ri3lwdmjhz] {
    display: grid;
    gap: .2rem;
    padding: .7rem .8rem;
    border-radius: 7px;
    color: var(--text-primary);
    text-decoration: none;
}
.infra-add-option:hover[b-ri3lwdmjhz] {
    background: var(--bg-surface);
}
.infra-add-option:focus-visible[b-ri3lwdmjhz] {
    outline: 2px solid var(--primary-blue);
    outline-offset: 2px;
}
.infra-add-option strong[b-ri3lwdmjhz] {
    font-size: .85rem;
}
.infra-add-option span[b-ri3lwdmjhz] {
    color: var(--text-muted);
    font-size: .72rem;
}
.infrastructure-page .status-badge[b-ri3lwdmjhz] {
    flex-shrink: 0;
    white-space: nowrap;
}
@media(max-width:850px) {
    .infra-add-menu[b-ri3lwdmjhz] { align-self: flex-start; }
}
/* /Pages/Reports.razor.rz.scp.css */
.report-workspace[b-buo0wwkei3]{padding:clamp(14px,2vw,26px);margin-bottom:22px;min-width:0;max-width:100%}
.report-mode[b-buo0wwkei3]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.report-mode .chip[b-buo0wwkei3]{min-height:42px;padding:10px 24px}.report-mode .mode-selected[b-buo0wwkei3]{background:var(--primary-blue,#0f766e);color:#fff;border-color:var(--primary-blue,#0f766e)}.report-mode .report-help[b-buo0wwkei3]{flex-basis:100%;margin:0}
.report-steps[b-buo0wwkei3]{display:flex;gap:10px 24px;flex-wrap:wrap;color:var(--text-muted);font-size:.82rem;margin-bottom:22px}
.report-filter-grid[b-buo0wwkei3]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.report-filter-grid label[b-buo0wwkei3]{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:.85rem;font-weight:600;color:var(--text-secondary,var(--text-primary))}
.report-filter-grid input[b-buo0wwkei3],.report-filter-grid select[b-buo0wwkei3]{width:100%;min-width:0;box-sizing:border-box;height:44px}
.report-time-controls[b-buo0wwkei3]{margin-top:20px}.report-presets[b-buo0wwkei3]{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.report-options[b-buo0wwkei3]{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px;border:1px solid var(--border-color,#64748b);border-radius:10px;padding:14px}
.report-options legend[b-buo0wwkei3]{font-size:.85rem}.report-options label[b-buo0wwkei3]{display:flex;align-items:center;gap:8px;overflow-wrap:anywhere;max-width:100%}
.report-run-row[b-buo0wwkei3]{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.report-run-row button[b-buo0wwkei3]{white-space:normal;min-height:42px}
.report-help[b-buo0wwkei3]{font-size:.82rem;color:var(--text-muted);line-height:1.6;overflow-wrap:anywhere;margin:10px 0}
.report-result-header[b-buo0wwkei3]{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.report-result-header h2[b-buo0wwkei3]{font-size:1.25rem;margin:0 0 10px}.report-result-header p[b-buo0wwkei3]{font-size:.85rem;color:var(--text-muted);margin:6px 0;overflow-wrap:anywhere}
.report-export-actions[b-buo0wwkei3]{display:flex;gap:8px;flex-wrap:wrap}.report-pending[b-buo0wwkei3]{padding:12px;background:color-mix(in srgb,var(--accent-amber,#eab308) 12%,transparent);border-radius:8px;margin-top:14px}
.report-sensor[b-buo0wwkei3]{min-width:0;padding:12px 0}.report-sensor h3[b-buo0wwkei3]{font-size:1rem;overflow-wrap:anywhere;line-height:1.6}.report-sensor h3 small[b-buo0wwkei3]{display:block;font-size:.78rem;font-weight:400;color:var(--text-muted)}
.report-data-table[b-buo0wwkei3]{border-collapse:collapse;min-width:100%}.report-data-table th[b-buo0wwkei3],.report-data-table td[b-buo0wwkei3]{min-width:125px;vertical-align:middle;border:1px solid var(--border-color,#475569);text-align:right;white-space:nowrap}.report-data-table th[b-buo0wwkei3]{text-align:center;white-space:normal;overflow-wrap:anywhere}.report-data-table td:first-child[b-buo0wwkei3]{min-width:190px;text-align:left}.report-data-table th small[b-buo0wwkei3]{display:block}.report-quality[b-buo0wwkei3]{display:block;font-size:.68rem;color:var(--accent-amber,#b45309)}
.table-responsive[b-buo0wwkei3]{max-width:100%;overflow-x:auto}.pagination-bar[b-buo0wwkei3]{gap:12px;flex-wrap:wrap}.pagination-bar span[b-buo0wwkei3]{font-size:.8rem}
button:disabled[b-buo0wwkei3],select:disabled[b-buo0wwkei3]{opacity:.55;cursor:not-allowed}
.report-export-button[b-buo0wwkei3]{border:0;border-radius:8px;color:#fff;padding:11px 22px;min-height:44px;font-size:.88rem;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #0002}
.export-excel[b-buo0wwkei3]{background:#15803d}.export-pdf[b-buo0wwkei3]{background:#b91c1c}
.export-excel:hover:not(:disabled)[b-buo0wwkei3]{background:#166534}.export-pdf:hover:not(:disabled)[b-buo0wwkei3]{background:#991b1b}
.report-export-button:focus-visible[b-buo0wwkei3]{outline:3px solid var(--primary-blue,#38bdf8);outline-offset:3px}
@media(max-width:800px){.report-filter-grid[b-buo0wwkei3]{grid-template-columns:minmax(0,1fr)}.report-steps[b-buo0wwkei3]{gap:8px 16px}.report-result-header[b-buo0wwkei3]{display:block}.report-export-actions[b-buo0wwkei3]{margin-top:16px}}

.report-included[b-buo0wwkei3]{display:flex;flex-wrap:wrap;gap:10px 24px;margin:14px 0;font-size:.85rem}.report-included span[b-buo0wwkei3]{overflow-wrap:anywhere}.report-data-table td.report-time[b-buo0wwkei3]{min-width:190px;text-align:left}.report-data-table th[scope=colgroup][b-buo0wwkei3]{background:var(--primary-blue,#0f766e);color:#fff;font-size:1rem;border-inline-start:3px solid var(--border-color,#475569)}
/* /Shared/SensorTrend.razor.rz.scp.css */
.sensor-trend-shell[b-bmdidlzxj4]{background:var(--bg-card,#172236);color:var(--text-primary,#e2e8f0);border:1px solid var(--border-color,#334155);border-radius:14px;padding:18px;min-width:0;width:100%;box-sizing:border-box;overflow:hidden}
.trend-title[b-bmdidlzxj4]{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-bottom:18px}.trend-title h3[b-bmdidlzxj4]{font-size:1rem;margin:0 0 6px;overflow-wrap:anywhere}.trend-title span[b-bmdidlzxj4]{font-size:.75rem;color:var(--text-muted)}
.trend-toolbar[b-bmdidlzxj4],.trend-range-controls[b-bmdidlzxj4],.trend-footer[b-bmdidlzxj4]{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.trend-toolbar[b-bmdidlzxj4]{padding-bottom:15px;border-bottom:1px solid var(--border-color,#334155)}
.trend-pill[b-bmdidlzxj4]{display:flex;align-items:center;gap:8px;background:var(--bg-input,transparent);color:inherit;border:1px solid var(--border-color,#475569);border-radius:6px;min-height:36px;padding:6px 12px;font-size:.76rem;min-width:0;max-width:100%}
select[b-bmdidlzxj4],input[b-bmdidlzxj4]{background:var(--bg-card,#fff);color:var(--text-primary,#e2e8f0);border:1px solid var(--border-color,#475569);border-radius:5px;padding:4px;max-width:100%;min-width:0;font:inherit}.trend-pill select[b-bmdidlzxj4]{border:0;color:var(--primary-blue,#38bdf8);max-width:190px}.trend-range-controls[b-bmdidlzxj4]{padding:14px 0;font-size:.75rem;color:var(--text-muted)}.trend-range-controls label[b-bmdidlzxj4]{display:flex;gap:7px;align-items:center}.trend-range-controls span[b-bmdidlzxj4]{margin-left:auto}
.trend-plot-layout[b-bmdidlzxj4]{display:grid;grid-template-columns:minmax(0,1fr) 155px;gap:16px}.trend-plot[b-bmdidlzxj4]{position:relative;min-width:0;height:330px}.trend-plot canvas[b-bmdidlzxj4]{width:100%;height:100%;display:block}.trend-empty[b-bmdidlzxj4]{position:absolute;inset:40%;width:80%;left:10%;text-align:center;pointer-events:none;color:var(--text-muted);font-size:.85rem}
.trend-legend[b-bmdidlzxj4]{max-height:330px;overflow:auto}[b-bmdidlzxj4] .trend-legend button{width:100%;background:transparent;color:var(--text-primary,#e2e8f0);border:0;border-left:3px solid var(--series-color);padding:6px 8px;margin:8px 0;text-align:left;font-size:.74rem;overflow-wrap:anywhere;cursor:pointer}[b-bmdidlzxj4] .trend-legend strong{display:block;margin-top:5px;font-size:.86rem}[b-bmdidlzxj4] .trend-legend .series-muted{opacity:.4}
.trend-tooltip[b-bmdidlzxj4]{position:absolute;z-index:2;max-width:240px;max-height:230px;overflow:auto;background:var(--bg-card,#172236);color:var(--text-primary);border:1px solid var(--border-color,#475569);border-radius:8px;padding:10px;font-size:.72rem;pointer-events:none;box-shadow:0 4px 18px #0004;overflow-wrap:anywhere}
.trend-footer[b-bmdidlzxj4]{font-size:.72rem;color:var(--text-muted);border-top:1px solid var(--border-color,#334155);padding-top:15px}.trend-footer label[b-bmdidlzxj4]{display:flex;gap:8px;align-items:center}.trend-pan[b-bmdidlzxj4]{flex:1;min-width:180px}.trend-pan input[b-bmdidlzxj4]{flex:1}.trend-help[b-bmdidlzxj4]{font-size:.72rem;color:var(--text-muted);line-height:1.5}.trend-error[b-bmdidlzxj4]{padding:10px;margin-bottom:8px;border-radius:8px;background:#ef44441a;font-size:.8rem}
@media(max-width:720px){.trend-plot-layout[b-bmdidlzxj4]{grid-template-columns:minmax(0,1fr)}.trend-legend[b-bmdidlzxj4]{display:flex;flex-wrap:wrap;gap:10px;max-height:150px}[b-bmdidlzxj4] .trend-legend button{width:auto;max-width:46%;min-width:110px}.trend-plot[b-bmdidlzxj4]{height:260px}.trend-range-controls span[b-bmdidlzxj4]{margin-left:0}.sensor-trend-shell[b-bmdidlzxj4]{padding:12px}}

.trend-plot-layout[b-bmdidlzxj4]{padding:18px 0}.trend-toolbar[b-bmdidlzxj4]{justify-content:space-between}.trend-export[b-bmdidlzxj4]{cursor:pointer}.trend-export:disabled[b-bmdidlzxj4]{opacity:.5;cursor:not-allowed}.trend-footer[b-bmdidlzxj4]{justify-content:space-between}.trend-plot canvas[b-bmdidlzxj4]{cursor:crosshair}.trend-title .status-pill.online[b-bmdidlzxj4]{color:var(--accent-green,#16a34a)}.trend-title .status-pill.offline[b-bmdidlzxj4]{color:var(--accent-red,#ef4444)}
