/* DocFlow V35 — proporção global, dashboard, cobertura e fornecedores */

/* Base de proporção global */
#content.v35-content{max-width:1560px;width:100%;padding:20px 22px 56px;box-sizing:border-box}
#content .v35-card{min-width:0;overflow:hidden}
#content .v35-card>.card-h{min-height:68px;padding:14px 16px;box-sizing:border-box;align-items:center;flex-wrap:wrap}
#content .v35-card>.card-h>div:first-child{min-width:0;flex:1 1 220px}
#content .v35-card>.card-h h3{font-size:15px;line-height:1.3;margin:0}
#content .v35-card>.card-h p{font-size:12.5px;line-height:1.45;margin-top:3px;white-space:normal}
#content .v35-card>.card-b{padding:16px;min-width:0;box-sizing:border-box}

/* KPI proporcional */
#content .v35-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:stretch}
#content .v35-kpi{min-height:108px;height:100%;padding:14px 15px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-width:0}
#content .v35-kpi .lbl{font-size:11.5px;line-height:1.35;min-height:17px;white-space:normal}
#content .v35-kpi .val{font-size:clamp(23px,2vw,29px);line-height:1.08;margin-top:5px;word-break:break-word}
#content .v35-kpi .sub{font-size:11px;line-height:1.35;margin-top:4px;white-space:normal}
#content .v35-kpi-clickable{cursor:pointer}

/* Grids: elimina colunas desproporcionais do dashboard mantendo responsividade */
#content .v35-balanced-grid{min-width:0;align-items:stretch}
#content .v35-balanced-grid>.card{height:100%;min-width:0}
#content .grid[style*="grid-template-columns:1.6fr 1fr"]{grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr)!important}
#content .grid[style*="grid-template-columns:1.3fr 1fr"]{grid-template-columns:minmax(0,1.2fr) minmax(340px,1fr)!important}

/* Controles */
#content .v35-select,#content select.fld{height:38px;min-height:38px;max-width:100%;font-size:13px}
.v35-chart-tools{display:flex;align-items:center;justify-content:space-between;gap:10px 14px;flex-wrap:wrap;margin-bottom:15px}
.v35-chart-select{width:230px;max-width:100%;flex:0 1 230px}
.v35-legend{display:flex;flex:1 1 380px;justify-content:flex-end;align-items:center;gap:7px;flex-wrap:wrap}
.v35-leg{min-height:34px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:6px;transition:.15s ease}
.v35-leg:hover{background:var(--surface-2)}
.v35-leg.off{opacity:.38;filter:grayscale(.75)}
.v35-leg i{display:block;width:10px;height:10px;border-radius:3px;flex:0 0 10px}
.v35-leg i.colaboradores,.v35-seg.colaboradores{background:#2E90FA}
.v35-leg i.matrizes,.v35-seg.matrizes{background:#7A5AF8}
.v35-leg i.clientes,.v35-seg.clientes{background:#12B76A}
.v35-leg i.fornecedores,.v35-seg.fornecedores{background:#F79009}

/* Gráfico empilhado */
.v35-company-chart{width:100%;min-height:210px;max-height:430px;overflow:auto;padding:2px 4px 4px 0;box-sizing:border-box}
.v35-chart-row{display:grid;grid-template-columns:minmax(88px,135px) minmax(120px,1fr) 38px;gap:10px;align-items:center;min-height:34px;margin:5px 0}
.v35-chart-label{font-size:12px;font-weight:650;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v35-stack{height:25px;border-radius:7px;overflow:hidden;background:var(--surface-2);display:flex;min-width:0}
.v35-seg{height:100%;min-width:3px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;line-height:1;overflow:hidden;transition:width .2s ease}
.v35-seg b{padding:0 3px;text-shadow:0 1px 1px rgba(0,0,0,.15)}
.v35-chart-total{text-align:right;font-weight:700;font-size:12px}

/* Cobertura: exigidos x cadastrados */
.v35-coverage-card .card-b{display:flex!important;align-items:center;justify-content:center;min-height:286px}
.v35-coverage-wrap{width:100%;display:grid;grid-template-columns:minmax(150px,210px) minmax(180px,1fr);gap:26px;align-items:center;cursor:pointer;outline:none}
.v35-coverage-wrap:focus-visible{box-shadow:0 0 0 3px var(--brand-100);border-radius:14px}
.v35-donut{--pct:0;width:min(190px,100%);aspect-ratio:1;border-radius:50%;margin:auto;background:conic-gradient(#12B76A calc(var(--pct)*1%),#E8ECF2 0);display:grid;place-items:center;position:relative}
.v35-donut:after{content:"";width:70%;aspect-ratio:1;border-radius:50%;background:var(--surface);position:absolute;box-shadow:inset 0 0 0 1px var(--border)}
.v35-donut-center{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;line-height:1.1}
.v35-donut-center strong{font-size:30px;letter-spacing:-1px}
.v35-donut-center span{font-size:11px;color:var(--text-3);margin-top:4px}
.v35-coverage-legend{display:grid;gap:10px;min-width:0}
.v35-coverage-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:30px;font-size:12px;color:var(--text-2)}
.v35-coverage-legend i{width:10px;height:10px;border-radius:3px}
.v35-coverage-legend i.registered{background:#12B76A}.v35-coverage-legend i.missing{background:#D92D20}
.v35-coverage-legend b{font-size:14px;color:var(--text)}
.v35-coverage-total{border-top:1px solid var(--border);padding-top:10px!important;grid-template-columns:minmax(0,1fr) auto!important}
.v35-coverage-total b{font-size:17px!important}
.v35-modal-kpis{grid-template-columns:repeat(4,minmax(145px,1fr))!important}

/* Tabelas e nome/foto de colaborador */
#content .v35-table-wrap{width:100%;max-width:100%;overflow:auto}
#content .v35-table{width:100%;table-layout:auto}
#content .v35-table th,#content .v35-table td{padding:10px 12px;line-height:1.35;vertical-align:middle;max-width:360px;overflow-wrap:anywhere}
#content .v35-table th{font-size:11px}
#content .v35-cell-main{justify-content:flex-start!important;text-align:left!important;min-width:0;max-width:100%}
#content .v35-cell-main>div{min-width:0}
#content .v35-cell-main b,#content .v35-cell-main small{white-space:normal;overflow-wrap:anywhere}

@media(max-width:1180px){
  #content .grid[style*="grid-template-columns:1.6fr 1fr"],#content .grid[style*="grid-template-columns:1.3fr 1fr"]{grid-template-columns:1fr!important}
  .v35-coverage-card .card-b{min-height:250px}
  .v35-legend{justify-content:flex-start}
}
@media(max-width:760px){
  #content.v35-content{padding:14px 12px 44px}
  #content .v35-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  #content .v35-kpi{min-height:100px}
  .v35-chart-tools{align-items:stretch}
  .v35-chart-select{width:100%;flex:1 1 100%}
  .v35-legend{flex:1 1 100%;justify-content:flex-start}
  .v35-chart-row{grid-template-columns:78px minmax(100px,1fr) 30px;gap:7px}
  .v35-coverage-wrap{grid-template-columns:1fr;gap:18px}
  .v35-donut{width:160px}
  .v35-coverage-card .card-b{min-height:0}
  .v35-modal-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:480px){
  #content .v35-kpis{grid-template-columns:1fr}
  .v35-leg{font-size:11px;padding:5px 8px}
  .v35-modal-kpis{grid-template-columns:1fr!important}
}
