.state-monthly-header{margin-bottom:16px}.state-monthly-header p{max-width:1040px}
.state-monthly-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:12px}
.state-monthly-controls .control-group{min-width:210px}.state-monthly-controls .region{min-width:260px}.state-monthly-controls .action{min-height:40px}
.state-monthly-secondary,.state-monthly-export button{padding:9px 13px;border:1px solid #aeb6bd;border-radius:7px;background:#fff;color:#252a2e;font-weight:700;cursor:pointer}
.state-monthly-secondary:hover,.state-monthly-export button:hover{background:#f2f4f5}.state-monthly-export{display:flex;gap:8px;margin-left:auto}
.state-monthly-status{margin:0 0 12px;padding:10px 13px;border:1px solid #d5dce3;border-radius:8px;background:#f8fafc;color:#475569;font-size:13px}.state-monthly-status.ok{border-color:#b8dec2;background:#f0f9f2;color:#245b30}.state-monthly-status.warn{border-color:#ead8aa;background:#fff9e9;color:#6a4a00}.state-monthly-status.error{border-color:#e8b5b5;background:#fff1f1;color:#8a1f1f}
.state-monthly-info{display:flex;flex-wrap:wrap;gap:8px 18px;padding:10px 14px;margin-bottom:14px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#52606d;font-size:12px}.state-monthly-info strong{color:#172033}
.state-monthly-export-area{background:#fff;padding:2px}.state-monthly-export-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 10px}.state-monthly-export-head h2{margin:0;font-size:19px}.state-monthly-export-head p{margin:2px 0 0;color:#667085;font-size:12px}
.state-monthly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.state-monthly-card{border:1px solid var(--border);border-radius:9px;background:var(--card);box-shadow:var(--shadow);padding:13px;min-width:0}.state-monthly-card.view-hidden{display:none}.state-monthly-grid.single{grid-template-columns:1fr}.state-monthly-grid.single .state-monthly-card{padding:16px}.state-monthly-model-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px}.state-monthly-model-head h3{margin:0;font-size:16px}.state-monthly-model-meta{margin-top:3px;color:#667085;font-size:10.5px;line-height:1.35}.state-monthly-chart-shell{height:330px;position:relative}.state-monthly-grid.single .state-monthly-chart-shell{height:570px}.state-monthly-chart-shell canvas{width:100%!important;height:100%!important}
.state-monthly-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 2px 0;color:#5f6873;font-size:11px}.state-monthly-legend span{display:inline-flex;align-items:center;gap:6px}.sm-swatch{display:inline-block;width:24px;height:0;border-top:2px solid #111}.sm-swatch.obs{border-top-color:#f57c00}.sm-swatch.climate{border-top-color:#b044d6;border-top-style:dashed}.sm-swatch.avg{border-top-color:#111827;border-top-width:3px}.sm-swatch.ctl{border-top-color:#12b76a}.sm-band{display:inline-block;width:24px;height:10px;border:1px solid rgba(80,80,80,.2);background:rgba(120,120,120,.18)}.sm-band.inner{background:rgba(90,90,90,.30)}
.state-monthly-note{margin:12px 0 0;color:#667085;font-size:11.5px;line-height:1.5}
@media(max-width:980px){.state-monthly-grid{grid-template-columns:1fr}.state-monthly-chart-shell{height:320px}.state-monthly-grid.single .state-monthly-chart-shell{height:440px}}
@media(max-width:680px){.state-monthly-controls{align-items:stretch}.state-monthly-controls .control-group{min-width:100%;width:100%}.state-monthly-export{width:100%;margin-left:0}.state-monthly-export button,.state-monthly-secondary{flex:1 1 0}.state-monthly-card{padding:9px}.state-monthly-chart-shell,.state-monthly-grid.single .state-monthly-chart-shell{height:300px}.state-monthly-export-head{align-items:flex-start;flex-direction:column}}