/* Dashboard 169: a calm light working surface. Detailed 21Dynamics screens are untouched. */
#dashboardView { --dash-ink:#192d3a; --dash-muted:#5c6e7b; --dash-line:#dde5eb; --dash-teal:#087b70; }
#dashboardView .dashboard-roe-progress,#dashboardView .dashboard-live-card { background:#fff; border:1px solid var(--dash-line); border-radius:18px; box-shadow:0 5px 20px #182e4010; backdrop-filter:none; -webkit-backdrop-filter:none; }
#dashboardView .dashboard-roe-progress { margin:24px 0; }
#dashboardView .eyebrow { font-size:12px; letter-spacing:.12em; color:var(--dash-muted); }
#dashboardView .dashboard-roe-heading { padding:22px 24px 12px; align-items:center; }
#dashboardView .dashboard-roe-heading h2 { font-size:20px; line-height:1.4; color:var(--dash-ink); }
#dashboardView .dashboard-roe-heading p:last-child { font-size:12px; }
#dashboardView .dashboard-roe-scope { color:var(--dash-muted); font-size:12px; border:0; background:#f1f5f8; }
#dashboardView .dashboard-roe-month { padding:8px 24px 24px; border:0; grid-template-columns:minmax(220px,1fr) minmax(180px,1.3fr) minmax(130px,.45fr); gap:24px; }
#dashboardView .dashboard-roe-progress-copy>span { font-size:13px; font-weight:500; margin-bottom:5px; }
#dashboardView .dashboard-roe-progress-copy strong { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px; font-size:16px; }
#dashboardView #dashboardRoeActual { font-size:28px; color:var(--dash-ink); letter-spacing:-.8px; }
#dashboardView .dashboard-roe-progress-copy strong small { font-size:13px; }
#dashboardView .dashboard-roe-track { height:10px; border:0; background:#eaf0f4; box-shadow:none; }
#dashboardView .dashboard-roe-track i { background:var(--dash-teal); box-shadow:none; }
#dashboardView .dashboard-roe-progress-value strong { font-size:26px; color:var(--dash-teal); }
#dashboardView .dashboard-roe-progress-value small { font-size:12px; }
#dashboardView .dashboard-roe-details { border-top:1px solid var(--dash-line); }
#dashboardView .dashboard-roe-details>summary { padding:16px 24px; cursor:pointer; color:var(--dash-ink); font-size:14px; font-weight:650; }
#dashboardView .dashboard-roe-details>summary>span { float:right; color:var(--dash-muted); font-weight:400; font-size:12px; }
#dashboardView .dashboard-roe-worktime { background:#f6f8fa; grid-template-columns:repeat(5,minmax(0,1fr)); }
#dashboardView .dashboard-roe-worktime-title { grid-column:1/-1; padding:16px 24px; border:0; }
#dashboardView .dashboard-roe-worktime-title span { display:block; font-size:12px; }
#dashboardView .dashboard-roe-worktime small,#dashboardView .dashboard-roe-total small { font-size:12px; }
#dashboardView .dashboard-roe-worktime strong,#dashboardView .dashboard-roe-total strong { font-size:14px; }
#dashboardView .dashboard-roe-worktime>span { display:grid; padding:16px 24px; }
#dashboardView .dashboard-roe-total { display:grid; padding:18px 24px; }
#dashboardView .dashboard-roe-total>a { font-size:14px; color:var(--dash-teal); }
#dashboardView .dashboard-roe-mobile-details { display:none; }
#dashboardView #dashboardLiveGrid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr); gap:20px; align-items:stretch; margin:0 0 28px; }
#dashboardView #dashboardEnergyCard { grid-column:1!important; grid-row:1 / span 2; align-self:stretch; display:flex; flex-direction:column; background:#fff!important; color:var(--dash-ink); border-color:var(--dash-line); border-top:3px solid var(--dash-teal); }
#dashboardView #dashboardWeatherCard { grid-column:2; grid-row:1; display:block; }
#dashboardView #dashboardWasteCard { grid-column:2; grid-row:2; display:block; }
#dashboardView #dashboardLiveGrid:has(#dashboardEnergyCard[hidden]) { grid-template-columns:repeat(2,minmax(0,1fr)); }
#dashboardView #dashboardLiveGrid:has(#dashboardEnergyCard[hidden])>.dashboard-live-card { grid-column:auto; grid-row:auto; }
#dashboardView #dashboardLiveGrid:not(:has(#dashboardEnergyCard[hidden])):has(#dashboardWeatherCard[hidden]):has(#dashboardWasteCard[hidden]) { grid-template-columns:1fr; }
#dashboardView #dashboardLiveGrid:not(:has(#dashboardEnergyCard[hidden])):has(#dashboardWeatherCard[hidden]) #dashboardWasteCard { grid-row:1; }
#dashboardView #dashboardLiveGrid:has(#dashboardWeatherCard[hidden]),#dashboardView #dashboardLiveGrid:has(#dashboardWasteCard[hidden]) { grid-auto-rows:auto; }
#dashboardView .dashboard-live-card { min-height:0; }
#dashboardView .dashboard-live-card>header,#dashboardView #dashboardEnergyCard>header { padding:20px 22px 16px; background:transparent; border-bottom:1px solid var(--dash-line); }
#dashboardView .dashboard-live-card h2,#dashboardView #dashboardEnergyCard h2 { font-size:18px; color:var(--dash-ink); }
#dashboardView .dashboard-live-card header small { font-size:12px; color:var(--dash-muted); }
#dashboardView #dashboardEnergyCard small { color:var(--dash-muted); font-size:12px; }
#dashboardView #dashboardEnergyCard .live-state { background:#e6f5ef; color:#087655; border:0; font-size:12px; padding:6px 10px; }
#dashboardView #dashboardEnergyCard .live-state.offline { background:#fff2d7; color:#895a14; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-today { padding:22px; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-total { display:grid; gap:6px; margin:0 0 22px; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-total>span { font-size:14px; color:var(--dash-muted); }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-total>strong { font-size:clamp(28px,2.6vw,38px); line-height:1.15; color:var(--dash-ink); letter-spacing:-1px; }
#dashboardView #dashboardEnergyCard #dashboardDynamicsQuality { font-size:12px; color:#865d17; line-height:1.5; font-weight:500; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-overview { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; margin-bottom:22px; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-overview .dashboard-dynamics-total { flex:1 1 190px; margin:0; min-width:0; }
#dashboardView #dashboardDynamicsBattery { display:flex; align-items:center; gap:10px; flex:0 1 auto; }
#dashboardView #dashboardDynamicsBattery .dashboard-battery-ring { position:relative; width:80px; height:80px; flex:none; }
#dashboardView #dashboardDynamicsBattery svg { display:block; width:100%; height:100%; }
#dashboardView #dashboardDynamicsBattery .dashboard-battery-ring strong { position:absolute; inset:0; display:grid; place-items:center; font-size:19px; color:#63409f; }
#dashboardView #dashboardDynamicsBattery .dashboard-battery-caption { display:grid; gap:3px; }
#dashboardView #dashboardDynamicsBattery .dashboard-battery-caption>span { font-size:14px; font-weight:650; }
#dashboardView #dashboardEnergyCard #dashboardDynamicsOwnQuality { display:block; font-size:12px; color:#865d17; margin-bottom:4px; }
#dashboardView #dashboardEnergyCard #dashboardDynamicsOwnDetail { display:block; line-height:1.5; overflow-wrap:anywhere; }
#dashboardView #dashboardEnergyCard #dashboardDynamicsKpis { gap:20px; grid-template-columns:1fr 1fr; }
#dashboardView #dashboardEnergyCard #dashboardDynamicsKpis dt { font-size:14px; color:var(--dash-muted); }
#dashboardView #dashboardEnergyCard #dashboardDynamicsKpis dd { font-size:24px; line-height:1.35; }
#dashboardView #dashboardEnergyCard .pv strong,#dashboardView #dashboardEnergyCard .pv dd { color:#087b62; }
#dashboardView #dashboardEnergyCard .grid strong,#dashboardView #dashboardEnergyCard .grid dd { color:#216cb1; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-live { padding:18px 0; margin:0 22px; border-color:var(--dash-line); gap:16px; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-live strong { font-size:21px; line-height:1.6; }
#dashboardView #dashboardEnergyCard #energyPvForecastCompact { margin:0 22px 18px; padding:14px 16px; background:#f0f8f6; border:1px solid #cce5de; border-radius:12px; }
#dashboardView #dashboardEnergyCard #energyPvForecastCompact small { color:#087b62; font-size:12px; font-weight:700; }
#dashboardView #dashboardEnergyCard #energyPvForecastCompact strong { color:var(--dash-ink); font-size:16px; }
#dashboardView #dashboardEnergyCard #energyPvForecastCompact span,#dashboardView #dashboardEnergyCard #energyPvForecastCompact p { color:var(--dash-muted); font-size:13px; border-color:#cce5de; }
#dashboardView #dashboardEnergyCard>footer { margin-top:auto; background:#f8fafb; border-color:var(--dash-line); padding:10px 22px; }
#dashboardView #dashboardEnergyCard #energyUpdated { color:var(--dash-muted); font-size:12px; }
#dashboardView #dashboardEnergyCard .dashboard-dynamics-actions summary,#dashboardView #dashboardEnergyCard .dashboard-dynamics-actions label,#dashboardView #dashboardEnergyCard #dashboardDynamicsExport { color:var(--dash-muted); font-size:13px; }
#dashboardView #dashboardEnergyCard>footer button { color:var(--dash-teal); font-size:14px; }
#dashboardView #dashboardEnergyCard #energyMessage { background:#fff5df; color:#865d17; margin:0 22px 18px; }
#dashboardView .dashboard-live-card::after { font-size:12px; right:22px; bottom:15px; color:var(--dash-teal); }
#dashboardView .weather-current { padding:18px 22px 12px; gap:16px; }
#dashboardView .weather-current>strong { font-size:32px; }
#dashboardView .weather-current b { font-size:14px; }
#dashboardView .weather-current small { font-size:12px; }
#dashboardView .weather-risk-compact { margin:0 22px 44px; padding:12px; border-radius:10px; }
#dashboardView .weather-risk-compact small { font-size:12px; }
#dashboardView .weather-risk-compact strong { font-size:13px; line-height:1.5; }
#dashboardView .waste-events { padding:16px 22px 44px; }
#dashboardView .waste-event { padding:12px; gap:12px; }
#dashboardView .waste-event small,#dashboardView .waste-event>b { font-size:12px; }
#dashboardView .waste-event strong { font-size:14px; white-space:normal; line-height:1.45; }
#dashboardView .waste-alert-state { font-size:12px; box-shadow:none; }
#dashboardView :is(summary,button,a):focus-visible { outline:2px solid #087b70; outline-offset:4px; }
#dashboardView [hidden] { display:none!important; }
@media(max-width:1050px) {
 #dashboardView .dashboard-roe-month { grid-template-columns:1fr auto; }
 #dashboardView .dashboard-roe-track { grid-column:1/-1; grid-row:2; }
 #dashboardView .dashboard-roe-worktime { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #dashboardView #dashboardLiveGrid { grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr); gap:16px; }
}
@media(max-width:760px) {
 #dashboardView #dashboardLiveGrid,#dashboardView #dashboardLiveGrid:has(#dashboardEnergyCard[hidden]) { display:flex; flex-direction:column; }
 #dashboardView #dashboardEnergyCard { order:0; }
 #dashboardView #dashboardWeatherCard { order:1; }
 #dashboardView #dashboardWasteCard { order:2; }
 #dashboardView .dashboard-roe-heading { flex-wrap:wrap; padding:18px; gap:10px; }
 #dashboardView .dashboard-roe-heading h2 { font-size:18px; }
 #dashboardView .dashboard-roe-month { padding:4px 18px 20px; gap:16px; }
 #dashboardView #dashboardRoeActual { font-size:24px; }
 #dashboardView .dashboard-roe-details>summary { padding:16px 18px; }
 #dashboardView .dashboard-roe-details>summary>span { display:none; }
 #dashboardView .dashboard-roe-total { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #dashboardView .dashboard-roe-total>a { grid-column:1/-1; white-space:normal; }
 #dashboardView #dashboardEnergyCard .dashboard-dynamics-live { gap:8px; }
 #dashboardView #dashboardEnergyCard .dashboard-dynamics-live strong { font-size:18px; }
}
