/* Fase 3 — Dashboard. Somente #app em tela; coletor, login, Farol completo e impressão intactos. */
@media screen{
  #app #content .fm-dashboard{gap:14px;min-width:0}
  #app #content .fm-dashboard-head{align-items:center;padding-bottom:12px;border-bottom:1px solid var(--wms-border)}
  #app #content .fm-dashboard-head h2{color:var(--wms-brand-dark);font-size:25px;letter-spacing:-.035em}
  #app #content .fm-dashboard-head p{margin-top:4px;font-size:12px;color:var(--wms-text-secondary)}
  #app #content .fm-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;background:transparent}
  #app #content .fm-kpi.wms-kpi{display:grid;gap:7px;min-height:112px;padding:14px 16px;border:1px solid var(--wms-border);border-radius:var(--wms-radius-lg);box-shadow:var(--wms-shadow-sm)}
  #app #content .fm-kpi.wms-kpi::before{width:3px}
  #app #content .fm-kpi.wms-kpi .fm-kpi-top{color:var(--wms-text-secondary)}
  #app #content .fm-kpi.wms-kpi .wms-kpi__label{margin:0;color:var(--wms-text-secondary);font-size:11px;letter-spacing:.045em}
  #app #content .fm-kpi.wms-kpi .wms-kpi__value{margin:2px 0 0;color:var(--wms-brand-dark);font-size:clamp(26px,2.2vw,33px);font-weight:760;letter-spacing:-.035em;line-height:1}
  #app #content .fm-kpi.wms-kpi .wms-kpi__context{margin:0;color:var(--wms-text-secondary);font-size:11px}
  #app #content .fm-kpi.wms-kpi .fm-kpi-icon{width:30px;height:30px;background:var(--wms-brand-light);color:var(--wms-brand)}
  #app #content .fm-dashboard-grid{grid-template-columns:minmax(260px,.82fr) minmax(0,1.58fr);gap:12px;align-items:start}
  #app #content .fm-dashboard-grid>.fm-panel{padding:16px;border-color:var(--wms-border);border-radius:var(--wms-radius-lg);box-shadow:var(--wms-shadow-sm)}
  #app #content .fm-dashboard-grid>.fm-cross-movement-summary{grid-column:1/-1}
  #app #content .fm-cross-movement-summary{padding:16px;border:1px solid var(--wms-border);border-radius:var(--wms-radius-lg);box-shadow:var(--wms-shadow-sm)}
  #app #content .fm-cross-movement-summary>.fm-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
  #app #content .fm-cross-movement-summary .fm-kpi{min-width:0;min-height:88px;padding:12px}
  #app #content .fm-cross-movement-summary .fm-kpi strong{font-size:24px;font-variant-numeric:tabular-nums}
  #app #content .fm-dashboard-grid>.fm-panel:not(.farol-dashboard){align-self:stretch}
  #app #content .fm-dashboard .fm-panel-head{margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--wms-border)}
  #app #content .fm-dashboard .fm-panel-head h3{font-size:14px;color:var(--wms-brand-dark)}
  #app #content .fm-dashboard .fm-stock-row{grid-template-columns:14px minmax(0,1fr) auto;gap:10px;padding:13px 0;border-bottom-color:var(--wms-border)}
  #app #content .fm-dashboard .fm-stock-dot{width:4px;height:31px;border-radius:2px}
  #app #content .fm-dashboard .fm-stock-dot.exp{background:var(--wms-success)}
  #app #content .fm-dashboard .fm-stock-dot.dtcr{background:var(--wms-warning)}
  #app #content .fm-dashboard .fm-stock-dot.ava{background:var(--wms-danger)}
  #app #content .fm-dashboard .fm-stock-label{color:var(--wms-brand-dark);font-size:13px}
  #app #content .fm-dashboard .fm-stock-label small,#app #content .fm-dashboard .fm-stock-value small{font-size:11px;color:var(--wms-text-secondary)}
  #app #content .fm-dashboard .fm-stock-value{font-size:18px;font-variant-numeric:tabular-nums;color:var(--wms-brand-dark)}
  #app #content .fm-dashboard-grid>.farol-dashboard{gap:10px;border-top:3px solid var(--wms-brand);cursor:pointer;transition:border-color var(--wms-transition),box-shadow var(--wms-transition)}
  #app #content .fm-dashboard-grid>.farol-dashboard:hover{border-color:var(--wms-brand);box-shadow:var(--wms-shadow-md)}
  #app #content .farol-dashboard-head{align-items:center;margin:0!important;padding-bottom:10px}
  #app #content .farol-dashboard-eyebrow{color:var(--wms-brand);font-size:10px;letter-spacing:.09em}
  #app #content .farol-dashboard-head h3{margin:2px 0 0!important;font-size:16px}
  #app #content .farol-dashboard-head button{white-space:nowrap;font-size:10px}
  #app #content .farol-dashboard-chart{position:relative;min-width:0;padding:9px 10px 2px;border:1px solid var(--wms-border);border-radius:var(--wms-radius-sm);background:var(--wms-surface)}
  #app #content .farol-dashboard-chart svg{display:block;width:100%;height:174px;overflow:visible}
  #app #content .farol-chart-legend{justify-content:flex-start;gap:15px;margin-bottom:4px;color:var(--wms-text-secondary);font-size:10px}
  #app #content .farol-chart-legend i{width:10px;height:9px;border-radius:2px}
  #app #content .farol-key-receiving{background:var(--wms-brand)}
  #app #content .farol-key-shipping{background:var(--wms-accent)}
  #app #content .farol-key-occupancy{height:2px!important;background:var(--wms-brand-dark)}
  #app #content .farol-chart-axes{display:flex;justify-content:space-between;gap:12px;color:var(--wms-text-secondary);font-size:9px;font-weight:650}
  #app #content .farol-chart-tick line{stroke:#e5eded;stroke-width:1}
  #app #content .farol-chart-tick text{fill:var(--wms-text-secondary);font-size:9px;font-family:var(--wms-font);font-variant-numeric:tabular-nums}
  #app #content .farol-chart-receiving{fill:var(--wms-brand)}
  #app #content .farol-chart-shipping{fill:var(--wms-accent)}
  #app #content .farol-chart-occupancy path{stroke:var(--wms-brand-dark);stroke-width:1.55;opacity:.78}
  #app #content .farol-chart-occupancy circle{stroke:var(--wms-brand-dark);fill:#fff}
  #app #content .farol-chart-day.is-hovered .farol-chart-bar{opacity:.7}
  #app #content .farol-chart-hit{fill:transparent;cursor:crosshair}
  #app #content .farol-chart-hit:focus-visible{outline:none;fill:rgba(8,109,120,.08)}
  #app #content .farol-chart-tooltip{position:absolute;z-index:2;display:grid;gap:6px;min-width:178px;max-width:min(225px,calc(100% - 16px));padding:10px 12px;border:1px solid var(--wms-border-strong);border-radius:var(--wms-radius-sm);background:#fff;box-shadow:var(--wms-shadow-md);color:var(--wms-text);font-size:11px;line-height:1.3;pointer-events:none}
  #app #content .farol-chart-tooltip[hidden]{display:none}
  #app #content .farol-chart-tooltip>b{font-size:12px;color:var(--wms-brand-dark)}
  #app #content .farol-chart-tooltip>span{display:flex;justify-content:space-between;gap:10px}
  #app #content .farol-chart-tooltip>span strong{white-space:nowrap;font-variant-numeric:tabular-nums}
  #app #content .farol-chart-tooltip>small{color:var(--wms-warning)}
  #app #content .farol-dashboard-note{margin:0;color:var(--wms-text-secondary);font-size:11px}
  #app #content .farol-dashboard-empty{min-height:175px;padding:22px}
  #app #content .farol-dashboard-summary{grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--wms-border)}
  #app #content .farol-dashboard-summary>div{gap:4px;min-width:0;padding:10px 8px;border-right-color:var(--wms-border)}
  #app #content .farol-dashboard-summary span{font-size:10px;color:var(--wms-text-secondary)}
  #app #content .farol-dashboard-summary strong{font-size:16px;color:var(--wms-brand-dark);white-space:nowrap}
  #app #content .farol-dashboard-summary strong small{font-size:10px;font-weight:650;color:var(--wms-text-secondary)}
}
@media screen and (max-width:1180px){#app #content .fm-dashboard-grid{grid-template-columns:1fr}}
@media screen and (max-width:700px){#app #content .fm-kpis{grid-template-columns:1fr 1fr}#app #content .fm-cross-movement-summary>.fm-kpis{grid-template-columns:1fr 1fr}#app #content .farol-dashboard-summary{grid-template-columns:1fr 1fr}#app #content .farol-dashboard-summary>div:nth-child(2){border-right:0}#app #content .farol-dashboard-summary>div:nth-child(-n+2){border-bottom:1px solid var(--wms-border)}#app #content .farol-chart-legend{gap:8px}#app #content .farol-dashboard-chart svg{height:160px}}
@media screen and (max-width:480px){#app #content .fm-kpis{grid-template-columns:1fr}#app #content .farol-dashboard-head{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){#app #content .fm-dashboard-grid>.farol-dashboard{transition:none}}
