/* Módulo: dashboard. Substituível junto com index.js. */
.dashboard-head h2{margin:5px 0 4px;color:var(--text-1);font-size:var(--page-title-size);font-weight:750;letter-spacing:-.045em;line-height:1}
.dashboard-head p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55;max-width:680px}
.dashboard-head{display:grid;grid-template-columns:minmax(245px,.55fr) minmax(620px,1.45fr) auto;align-items:end;gap:20px;padding-right:56px;margin-bottom:12px}
.dashboard-title-block{min-width:0;padding-right:18px;border-right:1px solid var(--line)}
.dashboard-primary-controls{min-width:0;display:flex;align-items:end;justify-content:flex-start;gap:7px}
.dashboard-utility-row{display:flex;align-items:center;justify-content:flex-end;gap:5px;padding-bottom:1px}
.saved-dashboards-panel{margin:0 0 9px;padding:8px 0 10px;border-bottom:1px solid var(--line)}
.saved-list{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.saved-item{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text-2);font-size:12px;font-weight:700}
.saved-item svg{width:13px}
.dashboard-period-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}
.dashboard-period-panel{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72)}
.dashboard-charts{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.72fr);gap:10px}
.seller-dashboard-head{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:2px 56px 14px 0;margin-bottom:12px;border-bottom:1px solid var(--line)}
.seller-dashboard-head h2{margin:5px 0 4px;color:var(--text-1);font-size:var(--page-title-size);letter-spacing:-.045em}
.seller-dashboard-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
@media (max-width:1500px){.dashboard-head{grid-template-columns:minmax(225px,.55fr) minmax(540px,1.35fr) auto;gap:15px}.dashboard-primary-controls{gap:6px}.dashboard-utility-row{flex-direction:column;align-items:stretch}.dashboard-utility-row .toolbar-action{justify-content:flex-start}}
@media (max-width:1180px){.dashboard-head{grid-template-columns:230px 1fr}.dashboard-title-block{align-self:stretch;display:grid;align-content:end}.dashboard-primary-controls{justify-content:flex-end}.dashboard-utility-row{grid-column:1/-1;flex-direction:row;justify-content:flex-end;padding-top:2px}.dashboard-period-grid{grid-template-columns:1fr}.dashboard-charts{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.seller-dashboard-head{padding-right:0}.dashboard-head{padding-right:0}.dashboard-head{grid-template-columns:1fr}.dashboard-title-block{padding-right:0;border-right:0}.dashboard-primary-controls{justify-content:flex-start;flex-wrap:wrap;padding-top:9px;border-top:1px solid var(--line)}.dashboard-utility-row{grid-column:auto;justify-content:flex-start}.dashboard-period-grid{grid-template-columns:1fr}.dashboard-charts{grid-template-columns:1fr}}
@media (max-width:600px){.seller-dashboard-head{display:grid;gap:12px}.dashboard-utility-row{width:100%}.dashboard-period-grid{gap:8px}}
.seller-dashboard-head-rich{padding-top:4px;margin-bottom:12px}
@media (max-width:1180px){.seller-dashboard-head-rich{padding-right:0}}
.manager-seller-toolbar{display:grid;grid-template-columns:auto minmax(200px,300px) auto;align-items:end;justify-content:start;gap:7px;margin:0 0 7px;padding:2px 0 6px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
.manager-seller-nav{color:var(--text-1);font-family:inherit}
.manager-seller-nav svg{width:15px}
.manager-seller-select{display:grid;gap:3px}
.manager-seller-select>span{color:var(--text-3);font-size:12px;font-weight:850;letter-spacing:.065em}
.manager-seller-select select{width:100%;height:40px;padding:0 34px 0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text-1);font-size:12px;font-weight:800;outline:0}
.manager-seller-select select:focus{border-color:#8fc2e4;box-shadow:var(--focus)}
.manager-seller-actions{display:flex;align-items:end;gap:6px}
.manager-seller-nav{height:40px;display:inline-flex;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-weight:850}
.manager-seller-nav:hover{border-color:#b9cedd;background:var(--surface-2)}
@media (max-width:1180px){.manager-seller-toolbar{grid-template-columns:auto minmax(210px,1fr) auto}}
@media (max-width:760px){.manager-seller-toolbar{grid-template-columns:1fr}.manager-seller-actions{justify-content:stretch}.manager-seller-nav{flex:1}}
.manager-seller-toolbar select{min-height:40px;font-size:12px}
.manager-seller-nav{min-height:40px}
.manager-seller-select select,.manager-seller-nav{min-height:40px}
.manager-seller-nav{font-size:12px;padding-inline:12px}
@media (max-width:900px){.dashboard-head,.seller-dashboard-head{width:100%;max-width:100%;min-width:0}}

/* V44 — alternância Geral/Individual como controle segmentado (uma única cor de ação principal por tela) */
.dashboard-mode-switch{display:inline-flex;align-items:center;gap:3px;height:46px;padding:4px;border:1px solid var(--line,#dfe6ee);border-radius:12px;background:var(--surface,#fff)}
.dashboard-mode-switch>*{height:100%;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-2,#4a5d72);font-size:13px;font-weight:750;white-space:nowrap}
.dashboard-mode-switch>button:hover{background:var(--surface-2,#f4f7fa);color:var(--text-1,#1b3350)}
.dashboard-mode-switch>.is-active{background:var(--surface-2,#f4f7fa);color:var(--text-1,#1b3350);box-shadow:inset 0 0 0 1px var(--line,#dfe6ee)}
.dashboard-mode-switch svg{width:15px;height:15px}
.dashboard-mode-switch>.is-active svg{color:var(--orange)}

/* ==========================================================================
   V50 — Faturado em destaque nos blocos Mensal e Diário + mapa + menos rolagem
   ========================================================================== */
#appView .period-body{display:grid;grid-template-columns:minmax(210px,.85fr) minmax(0,1.5fr)}
#appView .period-hero{display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px 18px;border-right:1px solid var(--line)}
#appView .period-hero-label{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-secondary);font-size:10.5px;font-weight:600;letter-spacing:.11em;color:var(--text-3);text-transform:uppercase}
#appView .period-hero-label svg{width:15px;height:15px;color:var(--text-1)}
#appView .daily-period .period-hero-label svg{color:var(--orange)}
#appView .period-hero>strong{font-family:var(--font-secondary);font-size:30px;font-weight:500;line-height:1.05;letter-spacing:-.02em;color:var(--text-1);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#appView .period-hero .cmp-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;font-size:12px}
#appView .period-hero-goal{margin-top:auto;padding-top:10px;border-top:1px dashed var(--line)}
#appView .hero-goal-top{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 7px}
#appView .hero-goal-top b{font-family:var(--font-secondary);font-size:18px;font-weight:500;color:var(--text-1);font-variant-numeric:tabular-nums}
#appView .hero-goal-top span{font-size:12px;color:var(--text-3)}
#appView .hero-track{position:relative;height:8px;margin:6px 0 4px;border-radius:99px;background:var(--line)}
#appView .hero-track>span{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--navy)}
#appView .daily-period .hero-track>span{background:var(--orange)}
#appView .hero-track>em{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:2px;background:var(--text-1)}
#appView .hero-goal-text{display:block;font-size:11.5px;color:var(--text-3)}
#appView .period-body .period-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
#appView .period-body .period-metric{min-height:64px;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
#appView .period-body .period-metric:nth-child(2n){border-right:0!important}
#appView .period-body .period-metric:nth-last-child(-n+2){border-bottom:0!important}
#appView .content.has-compare .period-body .period-metric{min-height:66px;padding-top:9px}
/* Gráficos mais baixos e modalidade + mapa lado a lado (menos rolagem) */
#appView .dashboard-charts .chart-panel{min-height:0}
#appView .dashboard-charts .chart-box.large{height:250px}
#appView .dashboard-charts .chart-box{height:230px}
#appView .dashboard-charts-b{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:10px}
#appView .dashboard-charts-b .chart-box.medium{height:236px}
#appView .geo-panel .panel-heading{align-items:flex-end}
#appView .geo-note{font-size:12px;color:var(--text-3)}
#appView .geo-panel .bi-geo{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
#appView .geo-panel .bi-map{max-height:228px}
html[data-theme="dark"] #appView .hero-track>span{background:#7AB8E6}
html[data-theme="dark"] #appView .daily-period .hero-track>span{background:#3B73ED}
@media (max-width:1180px){
  #appView .dashboard-charts-b{grid-template-columns:1fr}
}
@media (max-width:760px){
  #appView .period-body{grid-template-columns:1fr}
  #appView .period-hero{border-right:0;border-bottom:1px solid var(--line)}
  #appView .period-hero>strong{font-size:26px}
}
/* Dashboard do vendedor: evolução na linha inteira; pagamentos e mapa lado a lado */
#appView .sg-charts-v50{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
#appView .sg-charts-v50 .sg-proj-panel{grid-column:1/-1}
#appView .sg-charts-v50 .sg-proj-panel .chart-box.large{height:250px}
#appView .sg-charts-v50 .chart-panel{min-height:0}
#appView .sg-geo{margin:0}
#appView .sg-geo .bi-geo{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
#appView .sg-geo .bi-map{max-height:200px}
@media (max-width:900px){#appView .sg-charts-v50{grid-template-columns:1fr!important}}
@media (max-width:700px){
  #appView :is(.geo-panel,.sg-geo) .bi-geo{grid-template-columns:1fr}
  #appView :is(.geo-panel,.sg-geo) .bi-geo-map{max-width:300px;width:100%;margin:0 auto}
}
/* V51 — Dashboard do vendedor: cursos (com valor médio) e auditoria, como no Início, para ter tudo o que o Início tem e mais */
#appView .sg-row-b{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(300px,1fr);gap:12px;margin-top:12px}
#appView .sg-row-b .bi-audit{grid-template-columns:1fr 1fr}
@media (max-width:1100px){#appView .sg-row-b{grid-template-columns:1fr}}

/* Recorrência dentro do bloco de faturado (mensal e diário) */
#appView .period-recurrence{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:10px;row-gap:2px;margin-top:10px;padding-top:9px;border-top:1px dashed var(--line)}
#appView .period-recurrence>span{display:flex;align-items:center;gap:6px;grid-column:1/-1;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
#appView .period-recurrence>span svg{width:13px;height:13px;color:var(--text-3)}
#appView .period-recurrence strong{font-size:15px;font-weight:600;color:var(--text-2);letter-spacing:-.01em}
#appView .period-recurrence .cmp-line{grid-column:1/-1}

/* Faturado em destaque por cor nos blocos mensal e diário */
#appView .period-hero{box-shadow:inset 3px 0 0 var(--navy)}
#appView .daily-period .period-hero{box-shadow:inset 3px 0 0 var(--orange)}
#appView .monthly-period .period-hero{background:linear-gradient(180deg,rgba(18,41,69,.10),rgba(18,41,69,.03))}
#appView .daily-period .period-hero{background:linear-gradient(180deg,rgba(19,79,208,.13),rgba(19,79,208,.04))}
#appView .monthly-period .period-hero>strong{color:var(--navy)}
#appView .daily-period .period-hero>strong{color:#1040A8}
#appView .monthly-period .period-hero-label{color:var(--navy)}
#appView .daily-period .period-hero-label{color:#1040A8}
html[data-theme="dark"] #appView .period-hero{box-shadow:inset 3px 0 0 #7AB8E6}
html[data-theme="dark"] #appView .daily-period .period-hero{box-shadow:inset 3px 0 0 #447AEE}
html[data-theme="dark"] #appView .monthly-period .period-hero{background:linear-gradient(180deg,rgba(122,184,230,.14),rgba(122,184,230,.04))}
html[data-theme="dark"] #appView .daily-period .period-hero{background:linear-gradient(180deg,rgba(68,122,238,.16),rgba(68,122,238,.04))}
html[data-theme="dark"] #appView .monthly-period .period-hero>strong,html[data-theme="dark"] #appView .monthly-period .period-hero-label{color:#BFE0F7}
html[data-theme="dark"] #appView .daily-period .period-hero>strong,html[data-theme="dark"] #appView .daily-period .period-hero-label{color:#91B1F5}
