/* SIGA Américas · coerência UI/UX em telas operacionais.
   Camada global somente de apresentação: preserva dados, eventos e IDs existentes. */
:root{
 --siga-space-1:6px;--siga-space-2:10px;--siga-space-3:14px;--siga-space-4:18px;
 --siga-surface:#fff;--siga-stroke:#dfe7e0;--siga-border-radius:12px;--siga-focus:#669777;
}
#main .page-heading{gap:18px;align-items:start;margin-bottom:18px}
#main .page-heading h1{letter-spacing:-.7px;line-height:1.12}
#main .page-heading p{max-width:720px;line-height:1.55}
#main .heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
#main .table-panel,#main .panel,#main .document-workspace{
 border-color:var(--siga-stroke);box-shadow:0 3px 13px rgba(33,66,44,.035);
}
#main .table-panel .table-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
#main .table-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
#main :where(input,textarea,select,button,summary,a):focus-visible{
 outline:2px solid var(--siga-focus);outline-offset:2px;
}
#main input:disabled,#main select:disabled,#main textarea:disabled{opacity:.7;cursor:not-allowed}
#main .data-table th,#main .finance-planning-table th,#main .execution-sources-table th{
 vertical-align:middle;letter-spacing:.01em;
}
#main .data-table td,#main .finance-planning-table td,#main .execution-sources-table td{vertical-align:middle}
#main .data-table td:first-child,#main .data-table th:first-child{padding-left:16px}
#main .data-table td:last-child,#main .data-table th:last-child{padding-right:16px}
#main .table-scroll{max-width:100%;overscroll-behavior-x:contain}
#main .table-panel .table-head>div:first-child{min-width:0}
#main details>summary{scroll-margin-top:84px}
#main .notice{line-height:1.55}
#main .document-guide,#main .document-workspace{padding:18px 20px}
#main .document-guide-head h2{margin-top:3px}
#main .document-filters{column-gap:12px}
#main .document-record-buttons{gap:6px}
#main .document-record-buttons .table-action{min-height:32px}
#main #finance-plan-current>.finance-panel-heading{padding-top:12px}
#main .finance-month-tabs{padding-bottom:10px}
#main .finance-planning-table td details>summary{white-space:normal}
#main .finance-scenario-alert{line-height:1.65}

/* Escala: operação e impressão à frente; detalhes de segurança disponíveis sob demanda. */
#main .daily-coverage-shell{margin:12px 20px 18px;border-radius:14px;background:#fff}
#main .daily-cover-top{align-items:center;padding:17px 18px 12px;gap:18px}
#main .daily-cover-top h2{font-size:20px;line-height:1.25;margin:3px 0 4px}
#main .daily-cover-top p{font-size:11.5px;line-height:1.5}
#main .daily-pdf-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#main .daily-pdf-actions button{min-height:38px;font-size:11.5px;white-space:nowrap}
#main .daily-cover-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:2px 18px 13px}
#main .daily-cover-overview>div{padding:9px 12px;background:#f8faf8;border-color:#e7eee8}
#main .daily-cover-overview strong{font-size:15px;font-weight:740;line-height:1.3;color:#31553e}
#main .daily-cover-overview span{font-size:10.5px}
#main .daily-cover-selects{gap:10px;padding:0 18px 14px}
#main .daily-cover-selects label{font-size:10.5px}
#main .daily-cover-selects select{background:#fff;min-height:41px;font-size:12px}
#main .daily-cover-list{gap:9px;padding:0 18px 17px;align-items:start}
#main .daily-cover-card{border:1px solid #e1e9e3;border-radius:11px;padding:13px 14px 12px;background:#fff;box-shadow:0 2px 6px rgba(33,66,44,.025)}
#main .daily-cover-card-head{align-items:center;margin-bottom:11px}
#main .daily-cover-card-head strong{font-size:12.5px}
#main .daily-cover-card-head small{line-height:1.55}
#main .daily-cover-card .status-chip{font-size:10px;flex-shrink:0;white-space:nowrap}
#main .daily-cover-card .daily-activity-title{font-size:13px;line-height:1.48;font-weight:740;color:#244e33;margin:0 0 11px}
#main .daily-cover-card .daily-place{display:grid;gap:3px;border-left:2px solid #acc5b0;padding-left:9px;margin:0 0 9px}
#main .daily-cover-card .daily-place strong{font-size:10px;color:#708479;font-weight:670}
#main .daily-cover-card .daily-place span{font-size:11.5px;color:#3f624a;line-height:1.5}
#main .daily-plan-details{border-top:1px solid #edf1ed;padding-top:9px;margin-top:9px}
#main .daily-plan-details>summary{color:#557760;font-size:11px;font-weight:680;cursor:pointer;padding:4px 0}
#main .daily-plan-details>p{color:#60766a;font-size:11px;line-height:1.55;margin:7px 0}
#main .daily-cover-actions{grid-template-columns:minmax(140px,1fr) minmax(180px,1.45fr) auto;align-items:end;gap:8px;padding-top:10px;margin-top:12px}
#main .daily-cover-actions label{font-size:10px;line-height:1.3}
#main .daily-cover-actions .daily-reason-wrap[hidden]{display:none!important}
#main .daily-cover-actions select{min-height:36px}
#main .daily-cover-actions textarea{min-height:36px;max-height:120px}
#main .daily-cover-actions>button{min-height:36px;padding:8px 13px;margin:0}
#main .daily-cover-card .status-chip[data-status="impedida"]{color:#976333;background:#fbf1e4;border:1px solid #f0ddc5}
#main .daily-cover-card .status-chip[data-status="remanejada"]{color:#456589;background:#eef3f9;border:1px solid #dce8f4}
#main .daily-coverage-shell>.finance-scenario-alert{margin:0 18px 18px;padding:10px 12px}
@media(max-width:1100px){
 #main .daily-cover-actions{grid-template-columns:1fr 1fr}
 #main .daily-cover-actions>button{grid-column:1/-1;justify-self:start}
}
@media(max-width:860px){
 #main .daily-cover-top{align-items:flex-start;flex-direction:column}
 #main .daily-pdf-actions{justify-content:flex-start}
 #main .daily-cover-list{grid-template-columns:1fr}
}
@media(max-width:620px){
 #main .page-heading{flex-direction:column}
 #main .table-panel .table-head{flex-direction:column;align-items:stretch}
 #main .daily-coverage-shell{margin:10px 12px}
 #main .daily-cover-overview{grid-template-columns:1fr;gap:6px;padding:0 13px 12px}
 #main .daily-cover-overview>div{flex-direction:row;justify-content:space-between;align-items:center}
 #main .daily-cover-list{padding:0 12px 12px}
 #main .daily-cover-top{padding:13px}
 #main .daily-cover-selects{padding:0 13px 13px}
 #main .daily-cover-actions{grid-template-columns:1fr}
 #main .daily-cover-actions>button{grid-column:auto}
 #main .daily-pdf-actions{width:100%}
 #main .daily-pdf-actions button{flex:1;white-space:normal}
 #main .document-guide,#main .document-workspace{padding:14px}
}
@media(prefers-reduced-motion:reduce){#main *{scroll-behavior:auto!important;transition-duration:0ms!important;animation-duration:0ms!important}}


/* A competência já é selecionada nas abas do planejamento: não repetir filtro dentro da escala. */
#main #finance-daily-coverage .daily-cover-selects{grid-template-columns:repeat(2,minmax(0,1fr))}
#main #finance-daily-coverage .daily-cover-selects>label:first-child{display:none}
@media(max-width:620px){
 #main #finance-daily-coverage .daily-cover-selects{grid-template-columns:1fr}
}


/* Frota: a lista contratual fica sempre disponível, mesmo sem placas cadastradas. */
#main .fleet-contract-panel{margin-top:10px}
#main .fleet-contract-header p{max-width:760px;line-height:1.65}
#main .fleet-contract-table td:first-child{min-width:275px}
#main .fleet-contract-table .fleet-add{white-space:normal;min-height:34px;text-align:left}
#main .fleet-empty-state{padding:30px 25px;max-width:800px;margin:auto;text-align:center}
#main .fleet-empty-state p{max-width:590px;margin:9px auto 0;color:#6c806e;font-size:12px;line-height:1.7}


/* Termos: orientação para a lista de veículos ainda sem identificação individual. */
#modal-fields .responsibility-vehicle-helper{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;margin:-6px 0 4px;padding:13px 15px;border:1px solid #dce7df;border-radius:10px;background:#f8faf8}
#modal-fields .responsibility-vehicle-help-copy{flex:1 1 220px;min-width:0}
#modal-fields .responsibility-vehicle-help-copy strong{font-size:12px;color:#315e45}
#modal-fields .responsibility-vehicle-help-copy p{font-size:11px;line-height:1.5;color:#708274;margin:5px 0 0}
#modal-fields .responsibility-vehicle-helper>button{min-height:36px;font-size:11px}
#modal-fields .responsibility-vehicle-quick-form{flex:1 1 100%;padding-top:12px;border-top:1px solid #e1e9e2}
#modal-fields .responsibility-vehicle-quick-form[hidden]{display:none}
#modal-fields .responsibility-vehicle-quick-form>p{font-size:11px;color:#67806b;margin:2px 0 10px;line-height:1.5}
#modal-fields .responsibility-vehicle-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#modal-fields .responsibility-vehicle-quick-grid label{display:grid;gap:5px;font-size:11px;color:#486d56;font-weight:650}
#modal-fields .responsibility-vehicle-quick-grid input{box-sizing:border-box;width:100%;min-height:38px;border:1px solid #d7e2d8;border-radius:8px;padding:7px 9px;background:white;color:#365943;font-size:12px}
#modal-fields .responsibility-vehicle-quick-form .responsibility-vehicle-validation{color:#7a7b65;margin:12px 0 10px}
#modal-fields [data-qv-save]{font-size:11px;min-height:38px}
@media(max-width:650px){#modal-fields .responsibility-vehicle-quick-grid{grid-template-columns:1fr}#modal-fields .responsibility-vehicle-helper{padding:11px}}


/* Referência do contrato vigente sem confundir catálogo com estoque ou entregas. */
#main .ppe-contract-overview{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;padding:16px 20px;margin:0 0 15px;border:1px solid #dfe9e1;border-radius:12px;background:#fff}
#main .ppe-contract-overview>div:first-child{min-width:240px;flex:1 1 300px}
#main .ppe-contract-overview h2{margin:3px 0 4px;font-size:16px;color:#315840}
#main .ppe-contract-overview p{margin:0;line-height:1.55;font-size:11px;color:#738678}
#main .ppe-contract-overview p strong{color:#506756}
#main .ppe-contract-metrics{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:9px;flex:1 1 430px}
#main .ppe-contract-metrics>div{border:1px solid #e4ebe4;border-radius:9px;background:#f6f9f6;padding:9px}
#main .ppe-contract-metrics strong{display:block;font-size:18px;color:#365e43;font-variant-numeric:tabular-nums}
#main .ppe-contract-metrics span{font-size:10px;color:#728779;line-height:1.4}
#main .ppe-contract-overview .ppe-contract-note{flex:1 1 100%;font-size:10.5px;border-top:1px solid #edf1ec;padding-top:10px}
@media(max-width:680px){#main .ppe-contract-overview{padding:13px}#main .ppe-contract-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}}


/* Previsão oficial: ação de atualização separada do estado de erro. */
#main .climate-refresh-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin:8px 0 0}
#main .climate-refresh-toolbar button{font-size:11px;min-height:34px}
#main .climate-refresh-toolbar span{color:#82918a;font-size:10px}
#main .climate-diagnostic{margin:9px 0 0;border-top:1px solid #e6ece8;padding:8px 0 2px}
#main .climate-diagnostic summary{font-size:10.5px;color:#5f7766;cursor:pointer}
#main .climate-diagnostic p{line-height:1.5;font-size:10px;color:#758579;margin:6px 0}


#main .ppe-contract-unit{display:inline-block;color:#4e705a;font-size:11px;font-weight:650;white-space:normal}
#main .catalog-table:has(.ppe-contract-unit) td,#main .catalog-table:has(.ppe-contract-unit) th{vertical-align:middle}


/* Ações consistentes: exportação seletiva CSV / PDF na mesma posição de todas as tabelas. */
#main .export-dropdown{position:relative;display:inline-flex;align-items:center;z-index:8}
#main .export-dropdown .export-options{position:absolute;top:calc(100% + 6px);right:0;z-index:90;min-width:185px;padding:5px;border:1px solid #dae7dc;border-radius:10px;background:#fff;box-shadow:0 10px 25px rgba(28,63,41,.15)}
#main .export-dropdown .export-options[hidden]{display:none!important}
#main .export-options button{display:block;width:100%;border:0;border-radius:7px;background:transparent;color:#365a42;text-align:left;font-size:11.5px;padding:10px;cursor:pointer}
#main .export-options button:hover,#main .export-options button:focus-visible{background:#eef5ef}
#main .export-options button:disabled{opacity:.55;cursor:wait}
/* Conferência na aba de cada grupo, vinculada à exigência contratual original. */
#main .category-quantity-overview{border:1px solid #dfe8df;background:#fff;border-radius:12px;margin:0 0 16px;overflow:hidden}
#main .category-quantity-summary{padding:16px 18px;display:flex;justify-content:space-between;gap:12px 20px;align-items:center;flex-wrap:wrap}
#main .category-quantity-summary>div:first-child{flex:1 1 320px}
#main .category-quantity-summary h2{font-size:17px;line-height:1.25;margin:4px 0;color:#315a40}
#main .category-quantity-summary p{font-size:11px;line-height:1.55;color:#748778;margin:0}
#main .category-quantity-kpis{display:grid;grid-template-columns:repeat(4,minmax(85px,1fr));gap:8px;flex:1 1 420px}
#main .category-quantity-kpis>div{background:#f7f9f7;border:1px solid #e9eeea;padding:10px;border-radius:9px}
#main .category-quantity-kpis strong{font-variant-numeric:tabular-nums;display:block;color:#31543f;font-size:18px}
#main .category-quantity-kpis small{color:#718474;font-size:10px}
#main .category-quantity-context{margin:0 18px 12px;font-size:11px;color:#5d7667}
#main .category-quantity-details{border-top:1px solid #edf1ec;padding:9px 17px}
#main .category-quantity-details>summary{padding:7px 0 10px;font-size:12px;font-weight:690;color:#315c41;cursor:pointer}
#main .category-quantity-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
#main .category-quantity-controls input{max-width:320px;min-width:140px}
#main .category-quantity-controls span{font-size:10px;color:#76887b}
#main .category-quantity-table{width:100%;border-collapse:collapse;font-size:11px}
#main .category-quantity-table th{padding:11px 9px;text-align:left;color:#497359;background:#f0f4f0;border-bottom:1px solid #e0e9e1}
#main .category-quantity-table td{padding:9px;border-bottom:1px solid #edf1ed;vertical-align:middle;color:#47634d}
#main .category-quantity-table td:first-child{min-width:195px}
#main .category-quantity-table td small{display:block;color:#87978b;font-size:9.6px;margin-top:4px}
#main .category-quantity-table input:not([type=checkbox]){width:100%;min-width:88px;max-width:215px;box-sizing:border-box;font-size:11px;padding:8px;border:1px solid #dce5dc;border-radius:7px;background:#fff}
#main .category-quantity-table input[data-quantity-note]{min-width:165px}
#main .category-quantity-table button{min-height:32px;padding:6px 10px;margin-right:5px;white-space:nowrap;font-size:10.5px}
#main .quantity-confirm-label{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:10px;color:#506b58}
#main .quantity-confirm-label input{width:auto}
#main .category-quantity-foot{font-size:10px;line-height:1.5;color:#7c897c;margin:10px 0 3px}
/* Itens de estoque: saldo documental e contagem nunca são a mesma informação. */
#main .stock-stocknote{margin:0 0 14px}
#main .stock-count-cell{display:grid;gap:5px;min-width:140px}
#main .stock-count-cell input{border:1px solid #dce5dd;background:#fff;border-radius:7px;max-width:190px;box-sizing:border-box;min-height:33px;padding:6px 8px;font-size:11px}
#main .stock-count-cell input[data-stock-evidence]{font-size:10px}
/* Alternativa econômica = preço por unidade; sem custo fictício nem OS automática. */
#main .daily-secondary-prices{display:grid;gap:7px;padding:0 0 0 18px;margin:8px 0}
#main .daily-secondary-prices li{font-size:11px;line-height:1.45;color:#416649}
#main .daily-secondary-prices small{display:block;color:#7b8b7b;font-size:10px}
#main .low-resource-panel{margin:18px 0 12px;border:1px solid #dfe8df;border-radius:12px;background:#fff;overflow:hidden}
#main .low-resource-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;padding:17px 18px}
#main .low-resource-heading>div:first-child{flex:1 1 300px}
#main .low-resource-heading h3{font-size:16px;color:#305a3c;margin:4px 0}
#main .low-resource-heading p{font-size:11px;color:#6c8172;line-height:1.6;margin:0;max-width:760px}
#main .low-resource-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex:1 1 440px}
#main .low-resource-kpis>div{padding:10px;background:#f6f8f5;border:1px solid #e6ede4;border-radius:9px}
#main .low-resource-kpis small{display:block;font-size:9.8px;color:#768b7a}
#main .low-resource-kpis strong{display:block;font-size:15px;color:#325741;white-space:nowrap}
#main .low-resource-panel details{border-top:1px solid #edf0e9;padding:9px 18px}
#main .low-resource-panel details>summary{color:#3b6549;font-size:12px;font-weight:690;padding:5px 0;cursor:pointer}
#main .low-resource-warning{font-size:10.5px;color:#7f755c;line-height:1.6;margin:10px 0}
#main .low-resource-table{width:100%;border-collapse:collapse;font-size:11px}
#main .low-resource-table th{text-align:left;background:#f1f6f1;color:#4f735a;padding:10px}
#main .low-resource-table td{padding:10px;border-bottom:1px solid #eef2ed;line-height:1.45}
#main .low-resource-table input{min-width:100px;max-width:150px;width:100%;padding:7px;border:1px solid #dce6dd;border-radius:7px}
#main .low-resource-total{display:flex;justify-content:space-between;gap:12px;padding:13px 4px;color:#335b3d;font-size:12px}
#main .low-resource-total strong{font-variant-numeric:tabular-nums;font-size:16px}
@media(max-width:760px){#main .category-quantity-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}#main .low-resource-kpis{grid-template-columns:1fr}#main .low-resource-total{flex-direction:column}}

/* Inteligência operacional: gráfico proporcional de valores registrados, sem cores gritantes. */
#main .suggest-value-chart{margin:14px 0 0;padding:16px 18px 13px;border:1px solid #e1e9e2;background:#fbfcfa;border-radius:12px;min-width:0}
#main .suggest-chart-scale{display:flex;justify-content:space-between;gap:12px;margin:0 0 15px 40%;font-size:10px;color:#778b7d;font-variant-numeric:tabular-nums}
#main .suggest-chart-rows{display:grid;gap:12px}
#main .suggest-chart-row{display:grid;grid-template-columns:minmax(170px,2fr) minmax(115px,3fr) minmax(125px,1.2fr);align-items:center;gap:12px}
#main .suggest-chart-item{min-width:0;display:grid;gap:3px}
#main .suggest-chart-item strong{font-weight:720;font-size:11.5px;line-height:1.4;color:#365c44;overflow-wrap:anywhere}
#main .suggest-chart-item small{font-size:10px;color:#839185}
#main .suggest-chart-track{height:15px;background:#e6ece5;border-radius:6px;overflow:hidden;position:relative}
#main .suggest-chart-bar{display:block;height:100%;border-radius:6px;background:#91aa99;min-width:2px;transition:width .22s ease-out}
#main .suggest-chart-bar.is-largest{background:#5d8069}
#main .suggest-chart-amount{text-align:right;color:#335a43;font-weight:750;font-size:11.5px;white-space:nowrap;font-variant-numeric:tabular-nums}
#main .suggest-chart-caption{border-top:1px solid #e4ebe4;margin-top:16px;padding-top:11px;font-size:10px;line-height:1.55;color:#748579}
#main .suggest-chart-empty{padding:22px;text-align:center;color:#708574;font-size:12px}
@media(max-width:820px){#main .suggest-chart-scale{margin-left:0}#main .suggest-chart-row{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:6px 10px}#main .suggest-chart-amount{grid-column:2;font-size:11px}}
@media(max-width:500px){#main .suggest-value-chart{padding:12px}#main .suggest-chart-row{grid-template-columns:1fr 1fr}#main .suggest-chart-item{grid-column:1/-1}#main .suggest-chart-scale{font-size:9px;margin-bottom:10px}}
