/* Perfil, clientes e comprovantes: componentes compartilhados do Fluxo. */
.business-page .conteudo { max-width:1120px; }
.business-page .topo strong { font-size:30px; letter-spacing:-.6px; }
.business-page .fluxo-form { max-width:960px; }
.business-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.receipt-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:start; gap:24px; }
.receipt-summary { position:sticky; top:104px; padding:24px; border:1px solid var(--cor-borda); border-radius:12px; background:var(--cor-superficie); color:var(--cor-texto); }
.receipt-summary h2 { font-size:14px; font-weight:500; margin:24px 0 10px; color:var(--cor-texto-suave); }
.receipt-summary > strong { font-size:30px; letter-spacing:-.7px; display:block; margin-bottom:24px; color:var(--cor-primaria-texto); overflow-wrap:anywhere; }
.receipt-summary p { font-size:13px; line-height:1.6; margin-bottom:12px; overflow-wrap:anywhere; }
.receipt-summary small { display:block; border-top:1px solid var(--cor-borda); padding-top:20px; margin-top:20px; font-size:12px; line-height:1.65; color:var(--cor-texto-suave); }
@media(max-width:1150px) { .receipt-editor-layout { grid-template-columns:1fr; } .receipt-summary { display:none; } }
.business-field-grid > .campo { margin:0; }
.business-field-grid > .campo-anexo-perfil,.business-field-grid > .modo-cliente,.business-field-grid > [id^=bloco-cliente],#form-cliente .business-field-grid > .campo:nth-child(-n+2) { grid-column:1/-1; }
.business-field-grid .campos-duplos { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.business-page .campo-anexo { padding:24px; border:1px dashed var(--cor-borda-controle); border-radius:10px; background:var(--cor-superficie); }
.business-page .acoes-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.card-acao { display:grid; grid-template-columns:44px 1fr; gap:9px 18px; align-items:center; text-align:left; border:1px solid var(--cor-borda); border-radius:12px; padding:26px; background:var(--cor-superficie); color:var(--cor-texto); position:relative; min-height:125px; }
.card-acao strong { font-size:18px; }
.card-acao small { grid-column:2; color:var(--cor-texto-suave); font-size:13px; }
.card-acao .acao-icone { grid-row:1/3; color:var(--cor-primaria-texto); }
.card-acao-principal { grid-column:1/-1; background:var(--cor-marca); color:var(--cor-sobre-marca); }
.card-acao-principal small,.card-acao-principal .acao-icone { color:inherit; }
.card-acao:hover { border-color:var(--cor-primaria-texto); }
.card-badge { position:absolute; right:20px; top:20px; background:var(--cor-fundo-suave); color:var(--cor-primaria-texto); border-radius:20px; padding:4px 9px; font-size:12px; }
.busca-container { margin:0 0 16px; }
.campo-busca { width:100%; min-width:0; min-height:44px; padding:12px 14px; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); color:var(--cor-texto); border-radius:8px; font:inherit; }
.tipo-tabs,.modo-cliente { display:flex; gap:8px; flex-wrap:wrap; }
.tipo-tab,.modo-btn,.filtro-status { min-height:44px; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); color:var(--cor-texto-suave); padding:10px 16px; border-radius:8px; font-size:13px; font-weight:600; }
.tipo-tab.ativo,.modo-btn.ativo,.filtro-status.ativo { background:var(--cor-marca); color:var(--cor-sobre-marca); border-color:var(--cor-marca); }
.freq-opcoes { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.freq-opcao { display:flex; flex-direction:column; align-items:flex-start; text-align:left; gap:8px; padding:16px; border:1px solid var(--cor-borda-controle); border-radius:8px; background:var(--cor-superficie); color:var(--cor-texto); }
.freq-opcao.ativo { border:2px solid var(--cor-primaria-texto); padding:15px; background:var(--cor-fundo-suave); }
.freq-opcao small { color:var(--cor-texto-suave); font-size:12px; line-height:1.5; }
.freq-icone,.cliente-icone,.recibo-icone,.cli-sel-icone,.vc-icone,.voucher-status-icone,.cd-icone { display:none; }
.lista-clientes,.lista-recibos,.grupo-mes { border:1px solid var(--cor-borda); border-radius:10px; background:var(--cor-superficie); overflow:hidden; }
.item-cliente,.item-recibo,.item-voucher { display:flex; align-items:center; gap:20px; padding:20px 22px; border-bottom:1px solid var(--cor-borda); color:var(--cor-texto); }
.item-cliente:last-child,.item-recibo:last-child,.item-voucher:last-child { border-bottom:0; }
.item-recibo,.item-voucher { cursor:pointer; }
.item-recibo:hover,.item-voucher:hover { background:var(--cor-fundo-suave); }
.cliente-info,.recibo-info,.voucher-info { flex:1; min-width:0; }
.cliente-nome,.recibo-cliente,.voucher-cliente-nome { font-size:14px; font-weight:650; overflow-wrap:anywhere; line-height:1.6; }
.cliente-detalhes,.recibo-data-pagto,.voucher-meta { font-size:12px; color:var(--cor-texto-suave); line-height:1.6; margin-top:5px; overflow-wrap:anywhere; }
.cliente-acoes { display:flex; gap:8px; }
.cliente-acoes button,.cli-sel-remover { min-height:44px; min-width:44px; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); color:var(--cor-primaria-texto); border-radius:7px; }
.cli-sel-remover { padding:10px 12px; }
.recibo-num-cli { display:flex; gap:14px; align-items:baseline; }
.recibo-num { color:var(--cor-texto-suave); font-size:12px; }
.recibo-valor-mini,.voucher-valor { white-space:nowrap; color:var(--cor-primaria-texto); font-weight:650; font-size:16px; font-variant-numeric:tabular-nums; }
.badge-freq,.badge-status { display:inline-block; padding:3px 7px; margin-left:8px; border-radius:5px; background:var(--cor-fundo-suave); color:var(--cor-primaria-texto); font-size:11px; font-weight:600; }
.badge-status.pago { background:var(--cor-receita-clara); color:var(--cor-receita); }
.badge-status.pendente { background:var(--tom-ambar-bg); color:var(--tom-ambar-forte); }
.autocomplete-wrapper { position:relative; }
.autocomplete-lista { position:absolute; z-index:30; top:100%; left:0; right:0; max-height:260px; overflow:auto; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); border-radius:8px; display:none; }
.autocomplete-item { display:flex; flex-direction:column; text-align:left; gap:5px; padding:14px; border:0; border-bottom:1px solid var(--cor-borda); background:var(--cor-superficie); color:var(--cor-texto); width:100%; min-height:52px; }
.autocomplete-item:hover { background:var(--cor-fundo-suave); }
.autocomplete-item small { color:var(--cor-texto-suave); }
.cliente-selecionado { display:flex; align-items:center; gap:14px; background:var(--cor-fundo-suave); border:1px solid var(--cor-borda); border-radius:8px; padding:15px; }
.cli-sel-info { flex:1; display:flex; flex-direction:column; gap:6px; }
.cli-sel-info small { color:var(--cor-texto-suave); }
.card-recibo-detalhes,.card-voucher-detalhes { background:var(--cor-superficie); border:1px solid var(--cor-borda); border-radius:12px; padding:30px; max-width:960px; }
.recibo-cabecalho-detalhes { display:flex; justify-content:space-between; gap:12px; color:var(--cor-texto-suave); font-size:13px; }
.recibo-valor-destaque,.voucher-valor-destaque { display:flex; flex-direction:column; gap:8px; padding:24px 0; border-bottom:1px solid var(--cor-borda); }
.recibo-valor-destaque strong,.voucher-valor-destaque strong { font-size:38px; color:var(--cor-primaria-texto); letter-spacing:-.8px; }
.recibo-secao { padding:20px 0; border-bottom:1px solid var(--cor-borda); font-size:14px; line-height:1.65; overflow-wrap:anywhere; }
.recibo-secao:last-child { border:0; }
.recibo-secao h4,.recibo-secao > label { font-size:12px; font-weight:600; color:var(--cor-texto-suave); display:block; margin-bottom:8px; }
.recibo-secao p { margin:5px 0; }
.acoes-recibo { display:flex; gap:12px; flex-wrap:wrap; max-width:960px; margin:24px 0; }
.acoes-recibo button { flex:1; min-width:130px; width:auto; min-height:44px; padding:12px 16px; margin:0; border-radius:8px; }
.acoes-recibo .botao-excluir-veiculo { flex:0 1 auto; }
.acoes-titulo { width:100%; font-size:14px; }
.acoes-recibo [id^=btn-status] { background:var(--cor-superficie); color:var(--cor-primaria-texto); border:1px solid var(--cor-borda-controle); font-weight:600; }
.acoes-recibo [id^=btn-status].atual { background:var(--cor-marca); color:var(--cor-sobre-marca); }
.vouchers-resumo { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--cor-borda); border-radius:12px; background:var(--cor-superficie); margin-bottom:24px; padding:24px 0; }
.vouchers-resumo[hidden] { display:none; }
.vc-card { padding:0 24px; border-right:1px solid var(--cor-borda); cursor:pointer; }
.vc-card:last-child { border:0; }
.vc-info { display:flex; flex-direction:column; gap:10px; }
.vc-rotulo,.vc-total { font-size:13px; color:var(--cor-texto-suave); }
.vc-quantidade { font-size:30px; font-weight:650; color:var(--cor-texto); }
.vouchers-filtros { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0; }
.filtros-vouchers { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:20px; }
.grupo-mes { margin-bottom:20px; }
.grupo-mes-cabecalho { display:flex; justify-content:space-between; gap:12px; padding:14px 22px; background:var(--cor-fundo-suave); font-size:13px; font-weight:650; color:var(--cor-texto); }
.card-cliente-deve { display:flex; border-left:3px solid var(--cor-marca); background:var(--cor-fundo-suave); padding:18px 24px; border-radius:8px; margin-bottom:20px; }
.cd-info { display:flex; flex-direction:column; gap:8px; }
.cd-valor { font-size:28px; color:var(--cor-primaria-texto); }
.cd-detalhe { color:var(--cor-texto-suave); }
.botao-relatorio { min-height:44px; border:1px solid var(--cor-borda-controle); border-radius:8px; padding:12px 18px; background:var(--cor-superficie); color:var(--cor-primaria-texto); font-weight:650; }
.voucher-status-banner { display:flex; align-items:center; gap:10px; background:var(--cor-fundo-suave); color:var(--cor-primaria-texto); border-radius:6px; padding:12px 16px; font-size:13px; font-weight:650; }
.voucher-status-banner.pago { background:var(--cor-receita-clara); color:var(--cor-receita); }
.business-dialog .modal-conteudo { max-width:580px; border-radius:12px; border:1px solid var(--cor-borda); padding:30px; }
.business-dialog h3 { font-size:24px; padding-right:32px; color:var(--cor-texto); }
.business-dialog .opcoes-compartilhar { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.business-dialog .opcao-compartilhar { transform:none; box-shadow:none; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); border-radius:8px; padding:18px; gap:8px; }
.business-dialog .comp-icone { display:none; }
.business-dialog .opcao-compartilhar small { font-size:12px; }
.formatos-opcoes { display:flex; gap:14px; }
.checkbox-formato { display:flex; align-items:center; gap:10px; flex:1; border:1px solid var(--cor-borda); border-radius:8px; padding:12px; color:var(--cor-texto); }
.checkbox-formato input { width:20px; height:20px; accent-color:var(--cor-primaria-texto); }
.checkbox-formato small { display:block; font-size:12px; color:var(--cor-texto-suave); margin-top:5px; }
.rel-resumo { background:var(--cor-fundo-suave); padding:16px; border-radius:8px; font-size:13px; }
.rel-resumo-linha,.rel-resumo-total { display:flex; justify-content:space-between; gap:14px; padding:5px 0; }
.rel-resumo-total { border-top:1px solid var(--cor-borda); margin-top:8px; padding-top:12px; }
.business-pdf-brand { position:fixed; left:-10000px; top:0; width:350px; padding:10px; background:white; color:#173b5b; --marca-tamanho:52px; }
.business-pdf-brand .embalo-assinatura { display:block; color:#173b5b; font-size:16px; }
.business-pdf-brand .embalo-marca { color:#173b5b; }
@media(max-width:760px) { .business-field-grid { grid-template-columns:1fr; } .business-page .topo strong { font-size:26px; } .freq-opcoes { grid-template-columns:1fr 1fr; } .business-page .acoes-grid { grid-template-columns:1fr; } .card-acao { padding:22px; } .item-cliente,.item-recibo,.item-voucher { padding:16px; gap:12px; } .recibo-num-cli { display:block; } .recibo-num { display:block; margin-bottom:5px; } .badge-freq,.badge-status { margin:4px 0 0 6px; } .card-recibo-detalhes,.card-voucher-detalhes { padding:22px 18px; } .vouchers-resumo { grid-template-columns:1fr 1fr; gap:24px 0; } .vc-card:nth-child(2) { border:0; } .filtros-vouchers { grid-template-columns:1fr; } .business-dialog .modal-conteudo { padding:24px 20px; } .business-dialog .opcoes-compartilhar { grid-template-columns:1fr; } .recibo-valor-destaque strong,.voucher-valor-destaque strong { font-size:32px; } }

.business-page .botao-mini { min-height:44px; padding:10px 16px; border:1px solid var(--cor-borda-controle); background:var(--cor-superficie); color:var(--cor-primaria-texto); border-radius:8px; }
