.dashboard-page { max-width:1500px; }
.dashboard-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:3px 0 22px; }
.dashboard-intro h1 { margin:0; color:#183f2b; font:800 30px/1.2 "Manrope",sans-serif; }
.dashboard-intro p:last-child { margin:8px 0 0; color:#6c796e; font-size:13px; }
.dashboard-intro .primary { white-space:nowrap; }
.dashboard-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.dashboard-metrics article { display:grid; gap:6px; padding:15px 17px; border:1px solid #dce8dc; border-radius:10px; background:rgba(255,255,255,.88); box-shadow:0 6px 20px rgba(27,67,39,.05); }
.dashboard-metrics small { color:#6c796e; font-size:11px; font-weight:700; }
.dashboard-metrics strong { color:#245c3a; font:800 22px/1.2 "Manrope",sans-serif; overflow-wrap:anywhere; }
.dashboard-metrics span { color:#839087; font-size:11px; }
.dashboard-page .field-overview-panel { margin-bottom:18px; }
.dashboard-page .dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.dashboard-page .dashboard-grid > .panel { min-width:0; }
.dashboard-page .featured-panel { grid-column:1 / -1; }
.dashboard-page .assistant-panel { min-height:480px; }
.dashboard-page h2 { margin:0; font:750 17px/1.3 "Manrope",sans-serif; }
.dashboard-page #dashboardWeather { min-height:130px; white-space:pre-line; line-height:1.65; }
.dashboard-page .notification-preferences { margin-top:14px; }
.dashboard-page .notification-preferences label { display:flex; align-items:center; gap:8px; }
.dashboard-page .notification-preferences input[type="checkbox"] { width:auto; }
.dashboard-page .chat-window { min-height:270px; max-height:430px; overflow:auto; }
.dashboard-page .chat-form { display:grid; grid-template-columns:minmax(0,1fr) 48px; gap:8px; }
.dashboard-page .chat-form button { border:0; border-radius:9px; background:#277447; color:white; }
.dashboard-page .quick-questions { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; }
.dashboard-page .quick-questions button { padding:7px 9px; border:1px solid #dce8dc; border-radius:8px; background:#f8fbf6; color:#335840; font-size:11px; }
@media(max-width:850px) { .dashboard-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-page .dashboard-grid { grid-template-columns:1fr; } }
@media(max-width:600px) { .dashboard-intro { align-items:stretch; flex-direction:column; } .dashboard-intro .primary { width:100%; } .dashboard-intro h1 { font-size:25px; } }
.dashboard-weather-controls { display:grid; grid-template-columns:auto minmax(120px,1fr) auto minmax(140px,1fr) auto; align-items:center; gap:8px; margin:8px 0 12px; color:#647369; font-size:12px; font-weight:700; }
.dashboard-weather-controls select { min-width:0; width:100%; padding:8px; }
.dashboard-weather-controls a { color:#276a42; font-size:12px; white-space:nowrap; }
.dashboard-weather-status { min-height:20px; margin:8px 0; color:#647369; font-size:12px; line-height:1.5; }
.dashboard-weather-status.is-error { color:#9a4032; }
.dashboard-weather-current { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:10px 0; }
.dashboard-weather-current > div { display:grid; gap:4px; padding:9px; border:1px solid #e0e9df; border-radius:8px; background:#f8fbf6; }
.dashboard-weather-current small { color:#718073; font-size:10px; }
.dashboard-weather-current strong { color:#28593c; font-size:14px; }
.dashboard-weather-current p { grid-column:1/-1; margin:0; color:#77857a; font-size:10px; }
.dashboard-weather-chart { position:relative; height:270px; min-height:220px; padding:10px; border:1px solid #e0e9df; border-radius:8px; background:#fff; }
.dashboard-weather-chart canvas { max-width:100%; }
.dashboard-weather-chart > p { position:absolute; inset:0; display:grid; place-items:center; margin:0; padding:20px; color:#718073; font-size:12px; line-height:1.5; text-align:center; }
.dashboard-weather-chart > p[hidden] { display:none; }
.dashboard-shortcuts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:18px 0; }
.dashboard-shortcuts a { display:grid; gap:5px; min-width:0; padding:13px; border:1px solid #dce8dc; border-radius:8px; background:rgba(255,255,255,.88); color:#28513a; text-decoration:none; }
.dashboard-shortcuts a:hover { border-color:#7da985; background:#f7fbf5; }
.dashboard-shortcuts strong { font-size:12px; }
.dashboard-shortcuts span { color:#718073; font-size:10px; line-height:1.4; }
.dashboard-bottom-summary { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:18px 0; }
.dashboard-bottom-summary article { display:grid; gap:6px; padding:13px; border-top:2px solid #6d9a71; background:#f8fbf6; }
.dashboard-bottom-summary small { color:#718073; font-size:10px; font-weight:700; }
.dashboard-bottom-summary strong { color:#245c3a; font:800 20px/1.2 "Manrope",sans-serif; }
@media(max-width:1000px) { .dashboard-shortcuts { grid-template-columns:repeat(3,minmax(0,1fr)); } .dashboard-weather-controls { grid-template-columns:auto minmax(120px,1fr); } }
@media(max-width:700px) { .dashboard-bottom-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:460px) { .dashboard-weather-controls { grid-template-columns:1fr; } .dashboard-weather-current { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-weather-chart { height:250px; padding:6px; } }
