/* Ajustes finais de linguagem e operação para a rotina da loja. */
.sidebar{overflow:hidden!important}.sidebar nav{max-height:none;overflow:visible;padding-bottom:6px;gap:3px}.sidebar .nav{min-height:32px;padding:6px 13px;font-size:13px;line-height:18px}.sidebar .nav-section{margin:10px 13px 4px;font-size:10px}.sidebar .nav-section-support{margin-top:15px}.side-note{padding:9px 13px;font-size:10px}.header-actions{flex-wrap:wrap}.header-actions .danger{white-space:nowrap}
.price-calculator{max-width:820px}.price-flow{display:grid;gap:16px;max-width:680px;margin:0 auto}.price-step{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fffdfb}.price-step h3{display:flex;align-items:center;gap:9px;margin:0 0 14px;font:600 17px "DM Sans",sans-serif;color:var(--ink)}.price-step h3 span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ead9d0;color:#765144;font-size:12px}.price-two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.price-two-fields+.price-two-fields{margin-top:12px}.price-result{margin:0!important}.price-result-lines{margin-top:10px;border-top:1px solid #e2cec4}.price-result-lines>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 2px;border-bottom:1px solid #e2cec4}.price-result-lines span,.price-result-lines small{display:block}.price-result-lines span{font-size:13px;font-weight:700}.price-result-lines small{margin-top:3px;font-size:11px;font-weight:400;color:var(--muted)}.price-result-lines strong{font-size:17px;white-space:nowrap}.price-result-lines .price-suggested{padding:15px 12px;background:#845d4e;color:#fff;border-radius:9px;border-bottom:0}.price-result-lines .price-suggested small{color:#f8e7dd}.price-result-lines .price-suggested strong{font-size:21px}
.onboarding-actions{display:flex;gap:10px;flex-wrap:wrap}.credit-choice{display:flex;align-items:center;gap:10px;padding:13px 14px;background:#fff8f3;border:1px solid var(--line);border-radius:10px}.credit-choice input{width:auto}.credit-choice b,.credit-choice span{display:block}.credit-choice span{font-size:12px;color:var(--muted)}.credit-choice .notice{margin:0}.purchase-trip-note{margin:0 0 6px}.pl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pl-grid article{padding:16px;border:1px solid var(--line);border-radius:12px;background:#fffdfb}.pl-grid small,.pl-grid b{display:block}.pl-grid b{font-size:19px;margin-top:5px}.pl-grid .pl-profit{background:#f6e9e1}.subtotal-note{font-size:12px;color:var(--muted)}.pl-statement{max-width:760px}.pl-month{max-width:240px;margin:4px 0 16px}.pl-table{max-width:680px}.pl-table th{width:68%;padding:13px 16px;font-size:14px;letter-spacing:0;color:var(--ink);text-transform:none}.pl-table td{padding:13px 16px;text-align:right;font-size:15px;font-weight:700}.pl-table .pl-profit th,.pl-table .pl-profit td{background:#f6e9e1;font-size:17px;font-weight:800}.pl-table .pl-margin th,.pl-table .pl-margin td{border-bottom:0;color:var(--bronze-dark)}.pl-table .pl-negative td{color:var(--red)}.pl-table .pl-positive td{color:var(--green)}.pl-table .pl-loss td{color:var(--red)}.pl-filter-bar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:14px;margin:4px 0 10px;border:1px solid var(--line);border-radius:12px;background:#fffaf7}.pl-filter-bar .field{min-width:170px;flex:1}.pl-actor-filter{display:grid;gap:6px;font-size:12px;font-weight:700;color:#705c53}.pl-actor-filter>div{display:flex;gap:6px}.pl-actor-filter button{padding:9px 12px}.pl-actor-filter .active-filter{background:var(--bronze-dark);border-color:var(--bronze-dark);color:#fff}.pl-filter-summary{margin:0 0 14px;font-size:12px;color:var(--muted)}.pl-filter-summary b{color:var(--ink)}.consignment-actions{display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:max-content}.consignment-actions button{padding:7px 9px;white-space:nowrap;font-size:11px}.consignment-actions .primary{box-shadow:none}
@media(max-width:1100px){.sidebar nav{max-height:none;overflow:visible}.price-flow{grid-template-columns:1fr 1fr}.price-flow .field:first-child{grid-column:1/-1}.pl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.price-two-fields,.pl-grid,.price-result-grid{grid-template-columns:1fr}.sidebar .nav{padding:7px 11px;font-size:12px}.header-actions .danger{width:100%}}

/* Calculadora: etapas compactas à esquerda e resultado sempre visível à direita. */
.price-calculator{max-width:none}
.price-flow{max-width:none;margin:0;grid-template-columns:minmax(360px,42%) minmax(420px,1fr);grid-template-areas:"step-one result" "step-two result" "step-three result";align-items:start}
.price-step:nth-child(1){grid-area:step-one}
.price-step:nth-child(2){grid-area:step-two}
.price-step:nth-child(3){grid-area:step-three}
.price-result{grid-area:result;align-self:stretch}
.price-result-lines{height:100%}
@media(max-width:1100px){
  .price-calculator{max-width:820px}
  .price-flow{max-width:680px;margin:0 auto;grid-template-columns:1fr;grid-template-areas:"step-one" "step-two" "step-three" "result"}
}

/* Devolução ao fornecedor: linha de item, sem cartões concorrentes. */
#modal .supplier-return-form{display:grid;gap:18px}
#modal .supplier-return-form>.field{max-width:460px}
.return-items{border-top:1px solid var(--line);padding-top:16px}
.return-items-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:11px}
.return-items-head b,.return-items-head span{display:block}.return-items-head b{font-size:16px;color:var(--ink)}.return-items-head span{margin-top:2px;font-size:12px;color:var(--muted)}
.return-lines-header,.return-line{display:grid;grid-template-columns:minmax(310px,2.2fr) minmax(88px,.65fr) minmax(130px,.9fr) auto;gap:10px;align-items:end}
.return-lines-header{padding:0 0 7px;color:#9b8378;font-size:10px;font-weight:800;letter-spacing:.7px}
.return-line{padding:11px 0;border-top:1px solid #eee2dc}.return-line .product-picker{min-width:0}.return-line .field-label{font-size:0}.return-line .field-label::after{content:attr(data-availability);font-size:12px}.return-line .product-picker-controls{grid-template-columns:minmax(110px,.8fr) minmax(155px,1.2fr)}
.return-remove{align-self:center;white-space:nowrap;margin:0 0 10px}.return-credit-total{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:13px 14px;border-radius:9px;background:#f4e6df}.return-credit-total span{font-size:13px;font-weight:700;color:#705c53}.return-credit-total b{font-size:19px;color:var(--bronze-dark)}
@media(max-width:700px){.return-lines-header{display:none}.return-line{grid-template-columns:1fr 1fr}.return-line .product-picker{grid-column:1/-1}.return-line .return-remove{justify-self:start;margin:0}.return-items-head{align-items:flex-start;flex-direction:column}.return-credit-total{margin-top:8px}}
@media(max-width:460px){.return-line{grid-template-columns:1fr}.return-line .product-picker-controls{grid-template-columns:1fr}.return-line .return-remove{margin-top:2px}}

/* Consignações: a tabela rola dentro do painel e nunca comprime o menu lateral. */
.shell{min-width:0}.sidebar{flex:0 0 274px;min-width:274px}main{min-width:0}.consignment-table{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.consignment-table table{min-width:1180px}.consignment-table th,.consignment-table td{white-space:nowrap}.consignment-table th:last-child,.consignment-table td:last-child{min-width:300px}@media(max-width:900px){.sidebar{flex-basis:68px;min-width:68px}.consignment-table table{min-width:1080px}}

/* Trocas: duas etapas claras e acerto calculado sem campos concorrentes. */
#modal .exchange-form{display:grid;gap:18px}.exchange-section{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 0;border-top:1px solid var(--line)}.exchange-section:first-child{padding-top:0;border-top:0}.exchange-section-head{grid-column:1/-1}.exchange-section-head b,.exchange-section-head span{display:block}.exchange-section-head b{font-size:16px;color:var(--ink)}.exchange-section-head span{margin-top:2px;font-size:12px;color:var(--muted)}.exchange-original-details{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 0;border-top:1px solid #eee2dc;border-bottom:1px solid #eee2dc;font-size:12px;color:var(--muted)}.exchange-original-details span{display:grid;gap:3px}.exchange-original-details b{color:var(--ink);font-size:13px}.exchange-manual{justify-self:start;align-self:end;margin-bottom:10px}.exchange-financial-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.exchange-financial-summary>div{display:grid;gap:5px;padding:13px;border-right:1px solid var(--line)}.exchange-financial-summary>div:last-child{border-right:0}.exchange-financial-summary span{font-size:12px;color:var(--muted)}.exchange-financial-summary b{font-size:16px;color:var(--ink)}.exchange-financial-summary .exchange-difference.pay{background:#f5e8e1}.exchange-financial-summary .exchange-difference.refund{background:#f9e9e5}.exchange-financial-summary .exchange-difference.refund b{color:var(--red)}@media(max-width:620px){.exchange-section{grid-template-columns:1fr}.exchange-original-details,.exchange-financial-summary{grid-template-columns:1fr}.exchange-original-details span,.exchange-financial-summary>div{border-bottom:1px solid var(--line);border-right:0}.exchange-original-details span:last-child,.exchange-financial-summary>div:last-child{border-bottom:0}.exchange-manual{margin-bottom:0}}

/* Consignações: cada movimento em sua própria coluna para leitura e conferência. */
.consignment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.consignment-summary span{display:grid;gap:3px;padding:11px 13px;border-right:1px solid var(--line)}.consignment-summary span:last-child{border-right:0}.consignment-summary small{font-size:11px;color:var(--muted)}.consignment-summary b{font-size:18px;color:var(--bronze-dark)}.consignment-table table{min-width:0!important;table-layout:fixed}.consignment-table th,.consignment-table td{white-space:normal;overflow-wrap:anywhere}.consignment-table th:nth-child(1){width:9%}.consignment-table th:nth-child(2){width:18%}.consignment-table th:nth-child(3){width:8%}.consignment-table th:nth-child(4){width:8%}.consignment-table th:nth-child(5){width:9%}.consignment-table th:nth-child(6){width:8%}.consignment-table th:nth-child(7){width:9%}.consignment-table th:nth-child(8){width:8%}.consignment-table th:nth-child(9){width:15%}.consignment-entry,.stock-entry{color:var(--green);font-weight:700}.consignment-exit,.stock-exit{color:var(--red);font-weight:700}.consignment-table .consignment-actions{min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:5px}.consignment-table .consignment-actions button{min-width:0;padding:7px 5px;font-size:10px;white-space:nowrap}.consignment-table .consignment-actions .primary{grid-column:1/-1}@media(max-width:760px){.consignment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.consignment-summary span:nth-child(2){border-right:0}.consignment-summary span:nth-child(-n+2){border-bottom:1px solid var(--line)}.consignment-table th:nth-child(3),.consignment-table td:nth-child(3),.consignment-table th:nth-child(4),.consignment-table td:nth-child(4),.consignment-table th:nth-child(5),.consignment-table td:nth-child(5),.consignment-table th:nth-child(6),.consignment-table td:nth-child(6),.consignment-table th:nth-child(9),.consignment-table td:nth-child(9){display:none}.consignment-table th:nth-child(1){width:25%}.consignment-table th:nth-child(2){width:43%}.consignment-table th:nth-child(7){width:16%}.consignment-table th:nth-child(8){width:16%}}
/* Catálogo: todas as especificações em colunas, compactas para caber na página. */
.catalog-table table{min-width:0!important;table-layout:fixed}.catalog-table th,.catalog-table td{white-space:normal;overflow-wrap:anywhere;padding-inline:7px}.catalog-table th{font-size:11px}.catalog-table td{font-size:13px}.catalog-table th:nth-child(1){width:8%}.catalog-table th:nth-child(2){width:12%}.catalog-table th:nth-child(3){width:9%}.catalog-table th:nth-child(4){width:8%}.catalog-table th:nth-child(5){width:7%}.catalog-table th:nth-child(6){width:9%}.catalog-table th:nth-child(7){width:10%}.catalog-table th:nth-child(8){width:9%}.catalog-table th:nth-child(9){width:10%}.catalog-table th:nth-child(10){width:11%}.catalog-table th:nth-child(11){width:7%}.catalog-table td:last-child{white-space:normal}.catalog-table .header-filter{min-width:0;width:100%;padding:7px 3px;font-size:10px}.catalog-table .link{font-size:12px}@media(max-width:760px){.catalog-table th:nth-child(3),.catalog-table td:nth-child(3),.catalog-table th:nth-child(6),.catalog-table td:nth-child(6),.catalog-table th:nth-child(7),.catalog-table td:nth-child(7),.catalog-table th:nth-child(8),.catalog-table td:nth-child(8),.catalog-table th:nth-child(9),.catalog-table td:nth-child(9){display:none}.catalog-table th:nth-child(1){width:18%}.catalog-table th:nth-child(2){width:30%}.catalog-table th:nth-child(4){width:15%}.catalog-table th:nth-child(5){width:13%}.catalog-table th:nth-child(10){width:24%}.catalog-table th:nth-child(11),.catalog-table td:nth-child(11){display:none}}


/* Troca: seleção sem sobreposição; preço e quantidade ocupam linhas previsíveis. */
#modal .exchange-section .product-picker{grid-column:1/-1;min-width:0}#modal .exchange-section .product-picker-controls{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);width:100%}#modal .exchange-section>.field:not(.product-picker){min-width:0}#modal .exchange-section>.field:not(.product-picker) input{width:100%}@media(max-width:460px){#modal .exchange-section .product-picker-controls{grid-template-columns:1fr}}


/* Listas longas: a rolagem fica dentro do painel e mantém títulos, filtros e somas visíveis. */
#app .table-wrap{position:relative;max-block-size:min(62vh,620px);overflow:auto;scrollbar-gutter:stable both-edges}#app .table-wrap>table>thead{position:sticky;inset-block-start:0;z-index:4;background:#fffdfb}#app .table-wrap>table>thead th{background:#fffdfb;box-shadow:inset 0 -1px 0 var(--line)}#app .table-wrap>table>thead .column-subtotals th{background:#f3e5de}@media(max-width:700px){#app .table-wrap{max-block-size:58vh}}


/* Menu completo em uma tela: espaço é reservado para as opções, nunca para rolagem lateral. */
.sidebar{height:100vh;position:sticky;top:0}.sidebar nav{margin-top:clamp(5px,1.2vh,12px);gap:1px}.sidebar .nav{min-height:0;padding:clamp(4px,.72vh,7px) 12px;font-size:14px;line-height:18px}.sidebar .nav-section{margin:clamp(7px,1vh,9px) 12px 3px;font-size:10px}.sidebar .nav-section-support{margin-top:clamp(9px,1.35vh,12px)}.sidebar .side-note{display:none}@media(max-height:700px) and (min-width:901px){.sidebar{padding-top:8px;padding-bottom:8px}.sidebar .brand-name small{display:none}.sidebar nav{margin-top:5px}.sidebar .nav{padding:2px 10px;font-size:12px;line-height:15px}.sidebar .nav-section{margin-top:4px;margin-bottom:1px}.sidebar .nav-section-support{margin-top:5px}}
.report-period{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 14px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fffaf7}.report-period span{margin-right:4px;font-size:12px;font-weight:700;color:var(--muted)}.report-period .secondary{padding:7px 10px;font-size:12px}.report-period .active-filter{background:var(--bronze-dark);border-color:var(--bronze-dark);color:#fff}
.catalog-panel .panel-head{align-items:end}.catalog-search{width:min(330px,100%);margin:0}.catalog-search input{min-width:0}
.data-tools{display:grid;gap:12px}.data-tools>div{padding:14px 0;border-bottom:1px solid var(--line)}.data-tools>div:last-child{border-bottom:0}.data-tools b,.data-tools span{display:block}.data-tools b{font-size:14px;color:var(--ink)}.data-tools span{margin-top:3px;font-size:12px;line-height:1.45;color:var(--muted)}.data-tools p{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 0}.data-tools-danger b{color:var(--red)}
.cash-visual{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(280px,1.2fr);gap:22px;margin:16px 0;padding:17px;border:1px solid var(--line);border-radius:11px;background:#fffaf7}.cash-visual h3{margin:0 0 5px;font:600 18px "Playfair Display";color:var(--ink)}.cash-visual p{margin:0;font-size:12px;line-height:1.45;color:var(--muted)}.cash-visual-bars{display:grid;gap:10px}.cash-visual-row>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:12px}.cash-visual-row b{font-size:13px}.cash-visual-row i{display:block;height:9px;overflow:hidden;border-radius:8px;background:#efe4de}.cash-visual-row em{display:block;height:100%;border-radius:inherit}.cash-visual-row em.cash-in{background:#4a946d}.cash-visual-row em.cash-out{background:#bd665c}@media(max-width:680px){.catalog-panel .panel-head{align-items:stretch}.catalog-search{width:100%}.cash-visual{grid-template-columns:1fr;gap:14px}}

/* Resultado financeiro: explicação ao lado dos números para concentrar a leitura em uma tela. */
.pl-statement{max-width:1120px}.pl-result-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:22px;align-items:start}.pl-result-layout .pl-table{max-width:none;width:100%}.pl-result-layout .result-guidance{margin:0;min-height:100%;line-height:1.45}@media(max-width:800px){.pl-result-layout{grid-template-columns:1fr}.pl-result-layout .result-guidance{order:-1}}


/* Linha de compra: a grade se adapta à largura útil do modal, sem rolagem lateral. */
#modal-content{container-type:inline-size}
#modal .purchase-items,#modal #purchase-items,#modal #trip-items{min-width:0;max-width:100%;overflow:clip}
#modal .production-purchase-line:not(.trip-purchase-line){grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,.72fr) minmax(0,.62fr) minmax(0,1fr)!important;width:100%;min-width:0}
#modal .trip-purchase-line{width:100%;min-width:0}
#modal:has(#trip-items){width:min(1120px,calc(100vw - 32px));max-width:calc(100vw - 32px);overflow-x:hidden}
#modal:has(#trip-items) .fields{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
#modal:has(#trip-items) .fields>*{min-width:0;max-width:100%}
#modal:has(#trip-items) .fields>.full{grid-column:1/-1}
#modal:has(#trip-items) [hidden]{display:none!important}
#modal:has(#trip-items) .credit-choice{align-items:flex-start;text-align:left}
#modal:has(#trip-items) .credit-choice input{flex:none;margin-top:4px}
#modal:has(#trip-items) .panel-head{flex-wrap:wrap}
#modal:has(#trip-items) .trip-purchase-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px}
#modal:has(#trip-items) .trip-purchase-line>*{min-width:0}
#modal:has(#trip-items) input,#modal:has(#trip-items) select{min-width:0;max-width:100%}
#modal:has(#trip-items) .purchase-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));width:100%;min-width:0}
#modal:has(#trip-items) .trip-invoice-summary table{table-layout:fixed;width:100%;min-width:0}
#modal:has(#trip-items) .trip-invoice-summary th,#modal:has(#trip-items) .trip-invoice-summary td{white-space:normal;overflow-wrap:anywhere;padding:10px 6px;font-size:11px}
@media(max-width:650px){#modal:has(#trip-items) .fields,#modal:has(#trip-items) .trip-purchase-line{grid-template-columns:1fr!important}#modal:has(#trip-items) .trip-purchase-line .product-picker{grid-column:1/-1}}
#modal .production-purchase-line>*{min-width:0}
#modal .production-purchase-line .field input,#modal .production-purchase-line .field select{min-width:0;max-width:100%;width:100%}
@container (max-width:980px){
  #modal .production-purchase-line:not(.trip-purchase-line){grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #modal:has(#trip-items) .trip-purchase-line{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #modal:has(#trip-items) .trip-purchase-line .product-picker{grid-column:span 2}
}
@container (max-width:720px){
  #modal .production-purchase-line:not(.trip-purchase-line),#modal:has(#trip-items) .trip-purchase-line{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #modal .purchase-line .product-picker,#modal:has(#trip-items) .trip-purchase-line .product-picker{grid-column:1/-1}
}
@container (max-width:430px){
  #modal .production-purchase-line:not(.trip-purchase-line),#modal:has(#trip-items) .trip-purchase-line{grid-template-columns:1fr!important}
}
/* Relatórios: o período vem uma vez e cada seção responde a uma decisão de gestão. */
.report-center{display:grid;gap:16px}.report-center-period{margin:0!important;align-items:center}.report-center-period label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);font-weight:700}.report-center-period input{width:130px;padding:7px 8px}.report-center-nav{display:flex;gap:8px;flex-wrap:wrap}.report-center-tab{padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:#fffdfb;color:var(--ink);font-weight:800}.report-center-tab:hover{border-color:var(--bronze)}.report-center-tab.active{background:var(--bronze);border-color:var(--bronze);color:white}.report-center-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:25px 28px;border-radius:14px;background:linear-gradient(118deg,#4a302f,#815a4b);color:#fff9f5}.report-center-intro .eyebrow{margin:0;color:#f2c6b4}.report-center-intro h2{margin:4px 0 6px;font:600 28px "Playfair Display"}.report-center-intro p:last-child{margin:0;max-width:680px;color:#f0d9ce;font-size:13px}.report-center-intro .primary{background:#fffaf7;color:var(--bronze-dark);border-color:#fffaf7;white-space:nowrap}.report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fffdfb}.report-summary>div{display:grid;gap:6px;padding:15px;border-right:1px solid var(--line)}.report-summary>div:last-child{border-right:0;background:#f5e8e1}.report-summary span{font-size:11px;color:var(--muted)}.report-summary b{font-size:19px;color:var(--ink)}.report-detail{padding:22px;border:1px solid var(--line);border-radius:14px;background:#fffdfb;box-shadow:var(--shadow)}.report-detail-head{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:16px}.report-detail h3{margin:0;font:600 21px "Playfair Display";color:var(--ink)}.report-detail p{margin:3px 0 0;font-size:12px;color:var(--muted)}.report-dimensions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.report-dimensions .secondary{padding:7px 9px;font-size:11px}.report-ranking{display:grid;gap:11px}.report-rank-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(130px,2.4fr) auto;align-items:center;gap:15px}.report-rank-row b,.report-rank-row small{display:block}.report-rank-row b{font-size:13px;color:var(--ink)}.report-rank-row small{margin-top:3px;font-size:11px;color:var(--muted)}.report-rank-row span{height:12px;border-radius:10px;background:#f0e5df;overflow:hidden}.report-rank-row i{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#c28a70,#8a5b49)}.report-rank-row strong{font-size:13px;color:var(--ink);white-space:nowrap}@media(max-width:900px){.report-center-period{align-items:flex-start}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary>div:nth-child(2){border-right:0}.report-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.report-center-intro{align-items:flex-start;flex-direction:column}.report-detail-head{align-items:flex-start;flex-direction:column}.report-dimensions{justify-content:flex-start}}@media(max-width:640px){.report-center-period{display:grid;grid-template-columns:1fr 1fr}.report-center-period>span{grid-column:1/-1}.report-center-period label{display:grid;gap:3px}.report-center-period input{width:100%}.report-center-nav{display:grid;grid-template-columns:1fr 1fr}.report-center-intro{padding:21px}.report-center-intro h2{font-size:24px}.report-center-intro .primary{width:100%}.report-summary{grid-template-columns:1fr}.report-summary>div{border-right:0;border-bottom:1px solid var(--line)}.report-summary>div:last-child{border-bottom:0}.report-detail{padding:18px}.report-rank-row{grid-template-columns:1fr auto;gap:7px}.report-rank-row span{grid-column:1/-1;grid-row:2}.report-rank-row strong{grid-column:2;grid-row:1}}
/* Rótulo de gestão deve permanecer legível em uma única linha. */
.sidebar .nav[data-view="monthClose"]{white-space:nowrap;font-size:13px;letter-spacing:-.15px}

/* Cores funcionais: cada estado ganha contraste sem alterar a identidade da marca. */
:root{--state-info:#4d7087;--state-info-soft:#edf4f8;--state-attention:#a96f18;--state-attention-soft:#fff4df;--state-good:#317a5d;--state-good-soft:#eaf5ef;--state-risk:#b34b4d;--state-risk-soft:#fbe9e8}
.dashboard-snapshot .snapshot-grid button:nth-child(1){border-top:3px solid var(--state-info);background:var(--state-info-soft)}
.dashboard-snapshot .snapshot-grid button:nth-child(2){border-top:3px solid var(--state-good);background:var(--state-good-soft)}
.dashboard-snapshot .snapshot-grid button:nth-child(3),.dashboard-snapshot .snapshot-grid button:nth-child(4){border-top:3px solid var(--state-attention);background:var(--state-attention-soft)}
.dashboard-snapshot .snapshot-grid button:hover{filter:brightness(.985)}
.attention-count{background:var(--state-attention-soft);color:#82520c}
.morning-clear{background:var(--state-good-soft);color:#27694e}
.morning-alert{border-left:3px solid var(--state-attention)}
.morning-alert.critical{border-left-color:var(--state-risk);background:var(--state-risk-soft)}
.morning-cash-status.safe{color:#27694e}.morning-cash-status.risk{color:var(--state-risk)}
.tag.green{background:var(--state-good-soft);color:#27694e}.tag.orange{background:var(--state-attention-soft);color:#82520c}
.cash-in{color:var(--state-good)}.cash-out{color:var(--state-risk)}
@media(max-width:900px){.dashboard-snapshot .snapshot-grid button:nth-child(2){border-right:0}}
.zero-value{color:var(--ink)!important}
/* Cada indicador mantém sua própria área visual, sem parecer uma tabela contínua. */
.dashboard-snapshot .snapshot-grid{gap:8px;border:0;overflow:visible;background:transparent}
.dashboard-snapshot .snapshot-grid button{border:1px solid var(--line);border-top-width:3px;border-radius:10px}
.dashboard-snapshot .snapshot-grid button:last-child{border-right:1px solid var(--line)}

/* Provas e baixas ocupam a mesma tela quando não há pendências. */
.exceptions-page .toolbar{margin-block:0 14px}
.exceptions-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.exceptions-layout .exception-panel{margin:0;padding:22px;min-block-size:280px;display:flex;flex-direction:column}
.exceptions-layout .exception-panel .panel-head{margin-block-end:14px}
.exception-empty{flex:1;min-block-size:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:22px;border:1px dashed var(--line);border-radius:10px;background:#fffaf7;color:var(--muted);text-align:center}
.exception-empty b{color:var(--ink);font-size:1rem}
.exceptions-layout .table-wrap{max-block-size:calc(100vh - 330px);min-block-size:0}
.exception-table-wrap{overflow-x:hidden!important}
.exception-table{width:100%;min-width:0!important;table-layout:fixed;font-size:12px}
.exception-table th,.exception-table td{min-width:0!important;padding:10px 6px;white-space:normal;overflow-wrap:anywhere}
.exception-table th{font-size:10px;letter-spacing:.55px}
.exception-table .sub{font-size:10px;line-height:1.25;overflow-wrap:anywhere}
.exception-table th:nth-child(1){width:15%}.exception-table th:nth-child(2){width:25%}.exception-table th:nth-child(3){width:8%}.exception-table th:nth-child(4){width:17%}.exception-table th:nth-child(5){width:15%}.exception-table th:nth-child(6){width:20%}
.exception-table .header-filter{width:100%;min-width:0;padding:6px 2px;font-size:10px}
.exception-table .link{font-size:11px;white-space:normal;padding:3px 0}
.exchange-sale-results{display:grid;gap:7px;margin:2px 0 10px}.exchange-search-help,.exchange-search-count,.exchange-search-empty{margin:0;padding:10px 12px;border:1px dashed var(--line);border-radius:9px;background:#fffaf7;color:var(--muted);font-size:12px}.exchange-search-empty{color:var(--red)}.exchange-sale-result{display:grid;gap:3px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fffdfb;color:var(--ink);text-align:left;box-shadow:none}.exchange-sale-result:hover,.exchange-sale-result.selected{border-color:var(--bronze-dark);background:#f7ebe5}.exchange-sale-result-top{display:flex;justify-content:space-between;gap:10px}.exchange-sale-result-top b{font-size:13px}.exchange-sale-result-top em{font-style:normal;font-size:11px;color:var(--muted)}.exchange-sale-result>span:not(.exchange-sale-result-top){font-size:12px;color:#5f4d45}.exchange-sale-result small{font-size:11px;color:var(--muted)}
.exception-panel:nth-child(2) .exception-table th:nth-child(1){width:29%}.exception-panel:nth-child(2) .exception-table th:nth-child(2){width:10%}.exception-panel:nth-child(2) .exception-table th:nth-child(3){width:19%}.exception-panel:nth-child(2) .exception-table th:nth-child(4){width:19%}.exception-panel:nth-child(2) .exception-table th:nth-child(5){width:23%}
@media(max-width:980px){.exceptions-layout{grid-template-columns:1fr}.exceptions-layout .exception-panel{min-block-size:0}.exceptions-layout .table-wrap{max-block-size:52vh}}
/* Resultado mensal: usa o espaço útil da tela sem esconder conteúdo em telas baixas. */
@media (min-width:981px) and (min-height:900px){
  body.compact-result-page main{padding-top:20px;padding-bottom:0}
  body.compact-result-page main>header{margin-bottom:10px}
  body.compact-result-page .pl-statement{padding:15px}
  body.compact-result-page .pl-statement .panel-head{margin-bottom:12px}
  body.compact-result-page .pl-filter-bar{margin-top:0;margin-bottom:6px;padding:9px}
  body.compact-result-page .report-period{margin-bottom:6px}
  body.compact-result-page .pl-filter-summary{margin-bottom:6px}
  body.compact-result-page .pl-table th,body.compact-result-page .pl-table td{padding-top:9px;padding-bottom:9px}
}
/* Totais de tabela não ficam fixos como o cabeçalho inteiro: isso evita linhas esticadas após filtrar. */
#app .table-wrap>table>thead{position:static}
#app .table-wrap>table>thead .column-subtotals th{height:44px;padding:10px;vertical-align:middle;line-height:18px;white-space:nowrap}
/* Parcelas de venda: valores e vencimentos ficam lado a lado, sem esconder a conferência. */
#sale-installments{margin-top:4px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fffaf7}
.installments-head{display:flex;flex-direction:column;gap:3px;margin-bottom:12px;color:var(--muted);font-size:13px}
.installments-head b{color:var(--ink);font-size:15px}
.sale-installment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
#sale-installment-summary{margin:12px 0 0}
@media(max-width:640px){.sale-installment-grid{grid-template-columns:1fr}}

/* Vendas: a grade usa toda a largura disponível e não cria rolagem horizontal. */

/* Tabela de vendas: atributos reunidos para caber integralmente na tela. */
.sales-table.sales-compact{overflow-x:hidden!important}
.sales-compact table{width:100%!important;min-width:0!important;table-layout:fixed!important}
.sales-compact th,.sales-compact td{min-width:0!important;padding:10px 6px!important;white-space:normal!important;overflow-wrap:anywhere;vertical-align:top}
.sales-compact th{font-size:10px!important;letter-spacing:.55px}
.sales-compact .header-filter{width:100%!important;min-width:0!important;max-width:100%;padding:7px 3px!important;font-size:10px!important}
.sales-compact th:nth-child(1){width:10%}
.sales-compact th:nth-child(2){width:27%}
.sales-compact th:nth-child(3){width:16%}
.sales-compact th:nth-child(4){width:7%}
.sales-compact th:nth-child(5){width:11%}
.sales-compact th:nth-child(6){width:12%}
.sales-compact th:nth-child(7){width:10%}
.sales-compact th:nth-child(8){width:7%}
.sales-compact .sub{display:block;margin-top:3px;font-size:10px;line-height:1.35;color:var(--muted)}
.sales-compact .link{font-size:11px;line-height:1.7}
@media(max-width:760px){.sales-compact th,.sales-compact td{padding:8px 4px!important;font-size:11px}.sales-compact th{font-size:9px!important;letter-spacing:.35px}.sales-compact .header-filter{font-size:9px!important;padding:6px 2px!important}.sales-compact .sub{font-size:9px}}

.sales-table{overflow-x:hidden!important}
.sales-table table{width:100%!important;min-width:0!important;table-layout:fixed!important;font-size:12px!important}
.sales-table th,.sales-table td{min-width:0!important;padding:10px 5px!important;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.sales-table th{font-size:10px!important;letter-spacing:.55px}
.sales-table .header-filter{width:100%!important;min-width:0!important;max-width:100%;padding:7px 3px!important;font-size:10px!important}
.sales-table th:nth-child(1){width:7%}.sales-table th:nth-child(2){width:8%}.sales-table th:nth-child(3){width:10%}.sales-table th:nth-child(4){width:8%}.sales-table th:nth-child(5){width:6%}.sales-table th:nth-child(6){width:5%}.sales-table th:nth-child(7){width:7%}.sales-table th:nth-child(8){width:7%}.sales-table th:nth-child(9){width:4%}.sales-table th:nth-child(10){width:7%}.sales-table th:nth-child(11){width:6%}.sales-table th:nth-child(12){width:7%}.sales-table th:nth-child(13){width:7%}.sales-table th:nth-child(14){width:7%}
.sales-table .column-subtotals th{overflow:hidden;text-overflow:clip;font-size:12px!important;line-height:16px;white-space:normal}
.sales-table .link{font-size:11px;line-height:1.35;white-space:normal}
@media(max-width:760px){.sales-table th:nth-child(4),.sales-table td:nth-child(4),.sales-table th:nth-child(5),.sales-table td:nth-child(5),.sales-table th:nth-child(8),.sales-table td:nth-child(8),.sales-table th:nth-child(11),.sales-table td:nth-child(11){display:none}.sales-table th:nth-child(1){width:13%}.sales-table th:nth-child(2){width:15%}.sales-table th:nth-child(3){width:20%}.sales-table th:nth-child(6){width:8%}.sales-table th:nth-child(7){width:14%}.sales-table th:nth-child(9){width:7%}.sales-table th:nth-child(10){width:12%}.sales-table th:nth-child(12),.sales-table th:nth-child(13){width:15%}.sales-table th:nth-child(14),.sales-table td:nth-child(14){display:none}}

.report-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}

/* Compras: especificações ficam reunidas na peça para manter a tabela legível. */
.purchase-wrap{overflow-x:hidden!important}
.purchase-table{width:100%!important;min-width:0!important;table-layout:fixed!important;font-size:12px!important}
.purchase-table th,.purchase-table td{min-width:0!important;padding:10px 6px!important;white-space:normal!important;overflow-wrap:anywhere;vertical-align:top}
.purchase-table th{font-size:10px!important;letter-spacing:.55px}
.purchase-table .header-filter{width:100%!important;min-width:0!important;max-width:100%;padding:7px 3px!important;font-size:10px!important}
.purchase-table th:nth-child(1){width:8%}.purchase-table th:nth-child(2){width:10%}.purchase-table th:nth-child(3){width:20%}.purchase-table th:nth-child(4){width:5%}.purchase-table th:nth-child(5){width:9%}.purchase-table th:nth-child(6){width:9%}.purchase-table th:nth-child(7){width:10%}.purchase-table th:nth-child(8){width:8%}.purchase-table th:nth-child(9){width:8%}.purchase-table th:nth-child(10){width:13%}
.purchase-table .column-subtotals th{font-size:12px!important;line-height:16px;white-space:nowrap!important}
.purchase-table .link{display:block;padding:2px 0;font-size:11px;line-height:1.35;white-space:normal}
@media(max-width:850px){.purchase-table th:nth-child(5),.purchase-table td:nth-child(5),.purchase-table th:nth-child(6),.purchase-table td:nth-child(6),.purchase-table th:nth-child(9),.purchase-table td:nth-child(9){display:none}.purchase-table th:nth-child(1){width:13%}.purchase-table th:nth-child(2){width:15%}.purchase-table th:nth-child(3){width:29%}.purchase-table th:nth-child(4){width:7%}.purchase-table th:nth-child(7){width:14%}.purchase-table th:nth-child(8){width:11%}.purchase-table th:nth-child(10){width:11%}}
.purchase-filter-bar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;margin:0 0 13px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fffaf7}
.purchase-filter-bar label{display:grid;gap:5px;color:#705c53;font-size:10px;font-weight:800;letter-spacing:.45px;text-transform:uppercase}
.purchase-filter-bar .header-filter{margin:0;min-height:38px;font-size:11px!important}
@media(max-width:1050px){.purchase-filter-bar{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.purchase-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* A peça é escolhida por pesquisa; o select interno apenas guarda o item escolhido. */
.product-picker select[hidden]{display:none!important}
.product-picker-results{display:grid;gap:4px;margin-top:5px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fffdfb;box-shadow:0 8px 18px rgba(72,43,34,.12)}
.product-picker-results[hidden]{display:none!important}
.product-picker-option{width:100%;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:500 12px "DM Sans",sans-serif;text-align:left;box-shadow:none}
.product-picker-option:hover{background:#f4e6df}
.product-picker-empty{padding:7px 9px;color:var(--muted);font-size:12px}

/* Compras em desktop: cada atributo da peça permanece em sua própria coluna. */
.purchase-table th:nth-child(1){width:6%}.purchase-table th:nth-child(2){width:8%}.purchase-table th:nth-child(3){width:6%}.purchase-table th:nth-child(4){width:13%}.purchase-table th:nth-child(5){width:7%}.purchase-table th:nth-child(6){width:6%}.purchase-table th:nth-child(7){width:4%}.purchase-table th:nth-child(8){width:4%}.purchase-table th:nth-child(9){width:8%}.purchase-table th:nth-child(10){width:7%}.purchase-table th:nth-child(11){width:9%}.purchase-table th:nth-child(12){width:6%}.purchase-table th:nth-child(13){width:7%}.purchase-table th:nth-child(14){width:9%}
@media(max-width:1250px){.purchase-table th:nth-child(5),.purchase-table td:nth-child(5),.purchase-table th:nth-child(6),.purchase-table td:nth-child(6),.purchase-table th:nth-child(10),.purchase-table td:nth-child(10){display:none}.purchase-table th:nth-child(1){width:8%}.purchase-table th:nth-child(2){width:11%}.purchase-table th:nth-child(3){width:8%}.purchase-table th:nth-child(4){width:16%}.purchase-table th:nth-child(7){width:6%}.purchase-table th:nth-child(8){width:5%}.purchase-table th:nth-child(9){width:11%}.purchase-table th:nth-child(11){width:12%}.purchase-table th:nth-child(12){width:8%}.purchase-table th:nth-child(13){width:8%}.purchase-table th:nth-child(14){width:12%}}
@media(max-width:850px){.purchase-table th:nth-child(3),.purchase-table td:nth-child(3),.purchase-table th:nth-child(7),.purchase-table td:nth-child(7),.purchase-table th:nth-child(9),.purchase-table td:nth-child(9),.purchase-table th:nth-child(13),.purchase-table td:nth-child(13){display:none}.purchase-table th:nth-child(1){width:11%}.purchase-table th:nth-child(2){width:15%}.purchase-table th:nth-child(4){width:24%}.purchase-table th:nth-child(8){width:7%}.purchase-table th:nth-child(11){width:15%}.purchase-table th:nth-child(12){width:12%}.purchase-table th:nth-child(14){width:16%}}

/* Tabelas adaptáveis: nenhum atributo é ocultado ou reunido com outro. */
.table-wrap{max-width:100%;min-width:0;overflow-x:visible!important}
.responsive-data-table{width:100%!important;min-width:0!important;max-width:100%;table-layout:fixed!important}
.responsive-data-table th,.responsive-data-table td{min-width:0!important;white-space:normal!important;overflow-wrap:break-word;word-break:normal}
.responsive-data-table input,.responsive-data-table select{width:100%;min-width:0!important;max-width:100%}
.responsive-data-table.table-fields,.responsive-data-table.table-fields thead,.responsive-data-table.table-fields tbody{display:block!important;width:100%!important}
.responsive-data-table.table-fields tr{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:12px;width:100%!important;padding:16px 12px;border-bottom:1px solid var(--line);align-items:start}
.responsive-data-table.table-fields tbody tr{margin:10px 0;border:1px solid var(--line);border-radius:10px;background:#fffdfb}
.responsive-data-table.table-fields th,.responsive-data-table.table-fields td{display:block!important;width:auto!important;max-width:100%;min-width:0!important;padding:0!important;border:0!important;font-size:13px!important;white-space:normal!important;overflow-wrap:anywhere}
.responsive-data-table.table-fields td::before,.responsive-data-table.table-fields .table-field-totals th:not(:empty)::before{content:attr(data-field-label);display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.4px;margin-bottom:6px}
.responsive-data-table.table-fields .table-field-totals{background:#f6eae3;border-radius:10px}
.responsive-data-table.table-fields .table-field-totals th:empty{display:none!important}
.responsive-data-table.table-fields .table-empty-cell{grid-column:1/-1}
.responsive-data-table.table-fields .table-empty-cell::before{display:none}
.responsive-data-table.table-fields .consignment-actions{display:flex;flex-wrap:wrap;min-width:0}
.panel,.panel-head,.fields,.fields>*{min-width:0;max-width:100%}
.panel-head,.page-tools,.modal-actions{flex-wrap:wrap}
.fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.fields input,.fields select,.fields textarea{max-width:100%;min-width:0}
@media(max-width:600px){.fields{grid-template-columns:1fr}.purchase-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary{max-width:100%}}
.table-wrap.table-fields-wrap{max-height:none!important;overflow:visible!important}
.table-fields thead{position:static!important}
.table-fields .table-field-head th{position:static!important}
.responsive-data-table.table-fields tr[hidden],.responsive-data-table.table-fields td[hidden],.responsive-data-table.table-fields th[hidden]{display:none!important}
/* Catálogo: registros compactos, com os doze campos separados. */
.catalog-panel{padding:24px!important}
.catalog-panel .panel-head{align-items:center;text-align:left;gap:20px;margin-bottom:18px}
.catalog-panel .panel-head h2{font-size:26px;margin:0 0 5px}
.catalog-panel .catalog-search{width:min(360px,100%)}
.catalog-table{height:auto!important;max-height:none!important;overflow:visible!important}
#catalog-table{height:auto!important;min-height:0!important}
#catalog-table tbody,#catalog-table tr,#catalog-table td{height:auto!important;min-height:0!important}
#catalog-table.table-fields tr{grid-template-columns:repeat(auto-fit,minmax(min(118px,100%),1fr));gap:13px 14px;padding:14px!important;align-content:start}
#catalog-table.table-fields .table-field-head{background:#faf3ee;border:1px solid var(--line);border-radius:10px;margin-bottom:14px}
#catalog-table.table-fields tbody tr{margin:0 0 10px;background:white;box-shadow:none}
#catalog-table.table-fields td::before{font-size:10px;line-height:1.3;margin-bottom:4px}
#catalog-table.table-fields td{font-size:13px!important;line-height:1.45}
#catalog-table.table-fields td.item{font-weight:800;color:var(--ink)}
#catalog-table.table-fields .link{display:inline-block;margin:0 8px 0 0;padding:0;font-size:12px}
#catalog-table .table-totals-empty{display:none!important}
#catalog-table tbody::before{display:none!important}
@media(max-width:600px){.catalog-panel{padding:16px!important}#catalog-table.table-fields tr{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-panel .panel-head{align-items:stretch}}
/* Resultado financeiro: espaços proporcionais à janela, sem altura artificial. */
@media(min-width:801px){
 body.compact-result-page main{padding-top:16px;padding-bottom:16px}
 body.compact-result-page main>header{margin-bottom:14px;align-items:center}
 body.compact-result-page main>header h1{font-size:36px;margin:0}
 body.compact-result-page main>header .eyebrow{margin-bottom:6px}
 body.compact-result-page .pl-statement{padding:18px;max-width:none;margin-bottom:0}
 body.compact-result-page .pl-statement .panel-head{gap:12px;margin-bottom:12px}
 body.compact-result-page .pl-statement .panel-head h2{font-size:23px;margin:0 0 4px}
 body.compact-result-page .pl-statement .panel-head .sub{font-size:12px;line-height:1.4;margin:0}
 body.compact-result-page .pl-statement button{padding:9px 12px;font-size:12px;min-height:36px}
 body.compact-result-page .pl-filter-bar{padding:10px;gap:10px;margin:0 0 8px}
 body.compact-result-page .pl-filter-bar .field{min-width:135px}
 body.compact-result-page .pl-filter-bar input,body.compact-result-page .pl-filter-bar select{min-height:36px;padding:8px 10px}
 body.compact-result-page .report-period{padding:8px 10px;margin:0 0 8px;gap:8px}
 body.compact-result-page .pl-filter-summary{margin:0 0 8px}
 body.compact-result-page .pl-table th,body.compact-result-page .pl-table td{padding:9px 12px;font-size:14px}
 body.compact-result-page .pl-result-layout{gap:18px}
 body.compact-result-page .result-guidance{min-height:0;padding:14px;font-size:12px;line-height:1.5}
}
/* Menu inteiro disponível: altura distribuída entre as opções. */
.sidebar{display:flex;flex-direction:column;height:100vh;min-height:0;padding-top:12px;padding-bottom:10px}
.sidebar .brand{flex:none;margin:0;padding-bottom:8px}
.sidebar nav{display:flex;flex-direction:column;flex:1;min-height:0;margin-top:4px;gap:0}
.sidebar .nav{flex:1;min-height:20px;padding:clamp(2px,.45vh,5px) 12px;font-size:13px;line-height:17px;display:flex;align-items:center;white-space:nowrap}
.sidebar .nav-section{flex:none;margin:7px 12px 3px;font-size:9px;line-height:12px}
.sidebar .nav-section-support{margin-top:7px}
@media(max-height:650px){.sidebar .brand{padding-bottom:3px}.sidebar .brand img{max-height:42px;object-fit:contain}.sidebar .nav{font-size:12px;line-height:15px;min-height:18px;padding-block:2px}.sidebar .nav-section{margin-top:4px;margin-bottom:1px;font-size:8px;line-height:10px}}
@media(max-width:900px){.sidebar .nav{font-size:0;justify-content:center;padding-inline:4px}.sidebar .nav span{font-size:17px}.sidebar .nav-section{font-size:0;line-height:0;margin:4px 0}.sidebar .brand-name{display:none}}

/* Compras: cabeçalho e ações se acomodam sem comprimir o título. */
#app .panel:has(.purchase-table)>.panel-head{flex-wrap:wrap;align-items:flex-start;gap:16px}
#app .panel:has(.purchase-table)>.panel-head>div:first-child{flex:1 1 300px}
#app .panel:has(.purchase-table)>.panel-head>div:last-child{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 550px}
/* Pagamento da viagem: controles compactos e parcelas em área inteira. */
#modal:has(#trip-items) .fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start}
#modal:has(#trip-items) .field{align-content:start;grid-auto-rows:min-content}
#modal:has(#trip-items) .field input,#modal:has(#trip-items) .field select{height:46px;min-height:46px;align-self:start}
#modal:has(#trip-items) #trip-installments{grid-column:1/-1!important;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
#modal:has(#trip-items) #trip-installments .installment-help{grid-column:1/-1;margin:0}
#modal:has(#trip-items) #trip-installment-count-field select{height:46px}
@media(max-width:650px){#modal:has(#trip-items) .fields,#modal:has(#trip-items) #trip-installments{grid-template-columns:1fr!important}}
.exception-quantity-total { display:flex; padding:12px 16px; margin:0 0 12px; border-radius:10px; background:#f5e9e2; font-weight:700; color:#79584b; }
/* Compras no computador: linhas compactas com colunas independentes. */
.purchase-table.responsive-data-table:not(.table-fields){table-layout:fixed;width:100%!important;min-width:0!important}
.purchase-table.responsive-data-table:not(.table-fields) th,.purchase-table.responsive-data-table:not(.table-fields) td{padding:11px 5px!important;font-size:11px!important;line-height:1.45;min-width:0!important;white-space:normal!important;overflow-wrap:break-word}
.purchase-table.responsive-data-table:not(.table-fields) .link{font-size:11px;padding:3px 0}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(1){width:7%}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(2){width:8%}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(4){width:9%}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(7){width:4%}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(8){width:3%}
.purchase-table.responsive-data-table:not(.table-fields) th:nth-child(15){width:6%}
.purchase-table.table-fields .table-field-head{display:none!important}
.purchase-table.table-fields tbody tr{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))!important;gap:8px 12px!important;padding:12px!important;margin-bottom:8px!important}
.purchase-table.table-fields td{font-size:12px!important;line-height:1.35!important;padding:0!important}
.purchase-table.table-fields td::before{font-size:9px!important;margin-bottom:3px!important}
.purchase-table.table-fields .table-field-totals{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;padding:12px!important}
@media(max-width:600px){.purchase-table.table-fields tbody tr{grid-template-columns:repeat(3,minmax(0,1fr))!important}.purchase-table.table-fields .table-field-totals{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Todas as listas permanecem em colunas. */
main{max-width:none!important;min-width:0;padding:28px 20px!important}
#app .panel{padding:18px!important}
.exceptions-layout{grid-template-columns:1fr!important}
#app .table-wrap{overflow:visible!important;max-height:none!important;width:100%;min-width:0}
#app table.aligned-columns{display:table!important;table-layout:fixed!important;width:100%!important;min-width:0!important;border-collapse:collapse!important}
#app table.aligned-columns thead{display:table-header-group!important;position:static!important}
#app table.aligned-columns tbody{display:table-row-group!important}
#app table.aligned-columns tr{display:table-row!important;background:transparent;margin:0!important;padding:0!important;border-radius:0!important}
#app table.aligned-columns th,#app table.aligned-columns td{display:table-cell!important;width:auto!important;min-width:0!important;max-width:none!important;padding:10px 5px!important;font-size:12px!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere!important;vertical-align:top!important}
#app table.aligned-columns th{font-size:10px!important;letter-spacing:.3px!important}
#app table.aligned-columns td::before{display:none!important}
#app table.aligned-columns .column-subtotals{background:#f6eae3!important}
#app table.aligned-columns .header-filter{width:100%!important;min-width:0!important;max-width:100%!important;padding:5px 2px!important;font-size:10px!important;height:31px!important}
#app table.aligned-columns button{font-size:11px!important;padding:3px 0!important;background:transparent!important;border:0!important;box-shadow:none!important}
#app table.aligned-columns tr[hidden]{display:none!important}
#app .panel-head{justify-content:space-between!important}
#app .panel-head>div:first-child{flex:1;text-align:left!important}
@media(min-width:901px){.sidebar{width:210px!important;flex-shrink:0}.brand-name{font-size:21px!important}}
#app table.aligned-columns th,#app table.aligned-columns td{overflow-wrap:break-word!important;word-break:normal!important;padding:9px 3px!important}
#app table.aligned-columns td{font-size:11.5px!important}
#app table.aligned-columns .table-totals-empty{display:none!important}
@media(min-width:901px){body .shell>.sidebar{width:244px!important;min-width:244px!important;max-width:244px!important}}

/* Cabeçalhos, filtros e totais acompanham a rolagem vertical. */
#app table.aligned-columns thead{position:sticky!important;top:0;z-index:6;background:#fffaf7}
#app table.aligned-columns thead th{background:#fffaf7}
#app table.aligned-columns .column-subtotals th{background:#f6eae3;font-size:clamp(14px,1.15vw,18px)!important;font-weight:800;letter-spacing:0;line-height:1.35}
.obligation-month-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:12px 0 20px}
.obligation-month-toolbar label{display:flex;align-items:center;gap:8px}
.obligation-month-toolbar input[type=month]{width:180px}
.obligation-month-toolbar input[type=checkbox]{width:auto}
.obligation-month-toolbar span{font-size:12px;color:#8b766b}
.expense-detail-button{margin-left:12px;padding:6px 12px!important}
.expense-detail-table{width:100%;max-height:55vh;overflow-y:auto}
.expense-detail-table table{width:100%;table-layout:fixed}
.expense-detail-table th,.expense-detail-table td{padding:10px 6px;overflow-wrap:anywhere}
.expense-detail-table thead{position:sticky;top:0;background:#fffaf7}
.sum-number{display:block;white-space:nowrap}
.sum-currency{display:block;font-size:11px;line-height:1.15}
.report-center-period input[type="month"]{width:190px!important;min-width:190px}

#app table.aligned-columns button.primary{color:var(--bronze-dark)!important}
#app .consignment-actions{display:flex;flex-direction:column;align-items:flex-start;gap:2px}

/* Impressão: manter período, valores e tabelas, sem controles de navegação. */
@media print {
  @page { size: A4 landscape; margin: 12mm; }
  html,body { background:#fff!important; height:auto!important; min-height:0!important; }
  .shell { display:block!important; min-height:0!important; }
  .sidebar,.header-actions,.report-center-nav,.report-dimensions,main button,dialog { display:none!important; }
  main { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
  main>header { margin:0 0 10px!important; padding-bottom:8px; border-bottom:1px solid #ccc; }
  main>header h1 { font-size:22pt!important; }
  .report-center { gap:12px!important; }
  .report-center-period { display:flex!important; background:#fff!important; padding:8px!important; }
  .report-center-period input { border:0!important; background:none!important; padding:0!important; height:auto!important; min-width:0!important; font-size:10pt!important; }
  .report-center-intro { background:#fff!important; color:#30231f!important; padding:8px 0!important; break-inside:avoid; }
  .report-center-intro p,.report-center-intro .eyebrow { color:#705f57!important; }
  .report-center-intro h2 { font-size:18pt!important; }
  .report-summary { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; break-inside:avoid; }
  .report-summary>div { padding:12px!important; }
  .report-summary b { font-size:15pt!important; }
  .report-detail { box-shadow:none!important; padding:12px!important; break-inside:auto; }
  .report-detail-head { break-after:avoid; }
  .report-rank-row { break-inside:avoid; }
  .table-wrap { overflow:visible!important; max-height:none!important; height:auto!important; }
  table { min-width:0!important; width:100%!important; }
  thead { display:table-header-group!important; }
  th,td { position:static!important; padding:6px!important; font-size:9pt!important; }
  tr { break-inside:avoid; }
  * { print-color-adjust:exact; }
}

/* Acesso ao manual em PDF, sem sair da tela de trabalho. */
.manual-button{display:inline-flex;align-items:center;justify-content:center;font:700 14px "DM Sans",sans-serif;text-decoration:none;border-radius:8px;padding:14px 18px;white-space:nowrap}
.sidebar .manual-nav{display:block;text-decoration:none;color:#decbc4;border-radius:10px;padding:5px 12px;font:600 12.5px "DM Sans",sans-serif;line-height:18px}
.sidebar .manual-nav span{display:inline-block;width:24px;color:inherit}
.sidebar .manual-nav:hover{background:rgba(255,255,255,.1);color:#fff}
.manual-button:focus-visible,.manual-nav:focus-visible{outline:3px solid #b78d71;outline-offset:3px}
@media(max-width:900px) and (min-width:701px){.sidebar .manual-nav{font-size:0;text-align:center;padding:7px 10px}.sidebar .manual-nav span{font-size:18px;width:auto}}
@media(max-width:520px){.header-actions .manual-button{flex:1}}
@media print{.manual-nav{display:none!important}}
