/* Balanced overview cards, followed by a full-width field forecast. */
.dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; }
.dashboard-grid > * { min-width:0; }
.plot-row { grid-template-columns:minmax(0,1fr) auto; }
.field-weather { margin-top:20px; padding:24px; }
.field-weather h4 { margin:0 0 8px; font-size:1.15rem; line-height:1.4; }
.field-weather p { margin:8px 0 16px; font-size:1rem; line-height:1.55; color:var(--muted); }
.field-weather-signals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:16px 0; }
.field-weather-signal { display:grid; grid-template-columns:32px minmax(0,1fr); align-items:start; gap:10px; padding:14px; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); }
.field-weather-signal > span { font-size:1.4rem; line-height:1.3; }
.field-weather-signal strong,.field-weather-signal small { display:block; overflow-wrap:anywhere; }
.field-weather-signal strong { font-size:1rem; line-height:1.4; }
.field-weather-signal small { margin-top:4px; font-size:.875rem; line-height:1.5; color:var(--muted); }
.field-weather-signal[data-warning="true"] { border-left:4px solid #b97010; }
.field-weather .secondary-button { display:inline-flex; text-decoration:none; min-height:44px; align-items:center; padding:11px 16px; }
@media(max-width:820px) { .dashboard-grid,.field-weather-signals { grid-template-columns:minmax(0,1fr); } .field-weather { padding:20px; } }
body.view-mobile .dashboard-grid { grid-template-columns:minmax(0,1fr); }
body.view-mobile .field-weather-signals { grid-template-columns:minmax(0,1fr); }
