.forecast-controls{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px 0;min-width:0}
.forecast-controls select{min-width:0;max-width:100%;flex:1 1 130px;min-height:36px;padding:7px 9px;border:1px solid var(--theme-line,#E4D9C8);border-radius:6px;color:var(--theme-ink,#1C3A57)!important;background:var(--theme-chip,#F5F0E8)!important;font:500 11px Montserrat,sans-serif}
.forecast-status{padding:0 14px;color:var(--theme-muted,#785537);font-size:11px;line-height:1.5}
.forecast-status:empty{display:none}
.forecast-body{padding:12px 14px;min-width:0;color:var(--theme-ink,#1C3A57)}
.forecast-caption{font-size:11px;line-height:1.5;color:var(--theme-muted,#785537);margin:0 0 5px}
.forecast-number{font:500 clamp(21px,2vw,30px)/1.3 Montserrat,sans-serif;color:var(--theme-ink,#1C3A57);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;animation:forecast-enter .35s ease-out}
.forecast-note,.forecast-method p{margin:9px 0;font-size:11px;line-height:1.55;color:var(--theme-muted,#785537);overflow-wrap:anywhere}
.forecast-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}
.forecast-metrics button{display:grid;gap:5px;min-width:0;text-align:left;min-height:64px;padding:9px;border:0;border-radius:6px;background:var(--theme-chip,#F5F0E8)!important;color:var(--theme-ink,#1C3A57)!important;font:inherit}
.forecast-metrics span{font-size:10px;line-height:1.5;overflow-wrap:anywhere;color:var(--theme-muted,#785537)}
.forecast-metrics strong{font:500 22px/1.2 Montserrat,sans-serif;color:var(--theme-ink,#1C3A57);font-variant-numeric:tabular-nums}
.forecast-details>summary{cursor:pointer;color:var(--theme-ink,#1C3A57);font-size:11px;line-height:1.5;padding:8px 0;min-height:32px}
.forecast-method{display:block;padding:0;border:0;max-height:280px;overflow:auto}
.forecast-method button,.forecast-refresh{border:1px solid var(--theme-line,#E4D9C8);border-radius:6px;background:var(--theme-chip,#F5F0E8);color:var(--theme-ink,#1C3A57);font:600 11px/1.5 Montserrat,sans-serif;min-height:36px;padding:7px 10px;white-space:normal;overflow-wrap:anywhere;text-align:left}
.forecast-refresh{margin:0 14px 14px}
.forecast-updated{display:block;margin-top:7px;font-size:10px;line-height:1.5;color:var(--theme-muted,#785537)}
.dashboard-forecast-dialog{padding:20px!important;background:#FBF8F3!important;color:#1C3A57!important;--ink:#1C3A57;--muted:#586979;--navy:#1C3A57;--line:#E4D9C8}
.dashboard-forecast-dialog .dialog-heading{gap:12px;align-items:flex-start}
.dashboard-forecast-dialog h2{font:600 20px/1.4 Montserrat,sans-serif!important;overflow-wrap:anywhere;min-width:0;color:#1C3A57!important}
.dashboard-forecast-dialog .dashboard-stage-records button{color:#1C3A57!important;background:#FBF8F3!important;overflow-wrap:anywhere}
.dashboard-forecast-dialog .dashboard-stage-records small,.forecast-list-status{color:#586979!important}
.forecast-list-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.forecast-list-actions button{min-height:40px;padding:8px 12px;border:1px solid #DCC4A8;border-radius:7px;background:#F5F0E8;color:#1C3A57;font:600 12px Montserrat,sans-serif}
@keyframes forecast-enter{from{transform:translateY(3px)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.forecast-number{animation:none}}
@media(pointer:coarse){.forecast-controls select,.forecast-method button,.forecast-refresh,.forecast-details>summary,.forecast-list-actions button{min-height:44px}}
@media(max-width:420px){.dashboard-forecast-dialog{padding:14px!important}.forecast-body,.forecast-controls{padding-inline:12px}}
