:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#26354a;background:#f7f9fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}#app{display:flex;min-height:100vh}.sidebar{width:252px;min-width:252px;background:#111b34;color:#cfd9ee;display:flex;flex-direction:column;padding:26px 14px}.brand{height:72px;display:flex;align-items:center;justify-content:center}.brand img{display:block;width:205px;max-height:69px;object-fit:contain}.sb-caption{text-align:center;color:#97a7c4;font-size:11px;letter-spacing:.09em;text-transform:uppercase;margin:0 0 38px}.sidebar nav{display:grid;gap:6px}.nav-item{border:0;border-radius:11px;padding:13px 14px;text-align:left;background:transparent;color:#cdd6e6;font-size:14px;display:flex;justify-content:space-between;align-items:center}.nav-item:hover:not(:disabled){background:#263653}.nav-item.active{background:#2359ce;color:white;font-weight:650}.nav-item span{font-size:10px;color:#9bacbd}.nav-separator{height:1px;background:#31405b;margin:17px 10px}.side-footer{margin-top:auto;font-size:12px;line-height:1.8;color:#9dadc8;padding:20px 12px 0}.main{flex:1;min-width:0}.topbar{background:#fff;padding:19px 35px;border-bottom:1px solid #e9edf3;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;color:#74839a}.user-pill{border:1px solid #e6ebf2;padding:8px 12px;border-radius:99px}.notice{margin:24px auto 0;max-width:1160px;background:#fff9e8;color:#825511;border:1px solid #efd8a1;padding:12px 18px;font-size:12px;border-radius:10px;line-height:1.5}#screen{max-width:1204px;padding:24px 30px 60px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:5px 0 23px}.heading h1{font-size:26px;font-weight:670;letter-spacing:-.6px;margin:0 0 6px}.subtitle{font-size:13px;color:#8190a3}.btn{border:1px solid #e0e6f0;border-radius:10px;padding:11px 17px;background:#fff;color:#334961;font-size:13px;font-weight:650;white-space:nowrap}.btn.primary{background:#2458c6;color:white;border-color:#2458c6}.btn.primary:hover{background:#174aaa}.btn.secondary:hover{background:#f6f8fb}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:23px}.metric,.panel{background:white;border:1px solid #e5eaf2;border-radius:15px;box-shadow:0 5px 20px rgba(25,49,84,.025)}.metric{padding:21px}.metric .icon{color:#2458c6;margin-bottom:12px}.metric-label{font-size:13px;color:#8290a3}.metric-number{font-weight:720;font-size:29px;color:#223247;margin-top:5px}.panel{padding:21px;margin-top:15px}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.panel-header h2{font-size:16px;margin:0}.link{border:0;background:none;color:#2458c6;font-size:13px;font-weight:700}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:#8290a3;font-size:12px;font-weight:600;background:#f8fafc}td,th{padding:15px 12px;border-bottom:1px solid #eff2f7}tr:last-child td{border-bottom:0}.badge{border-radius:99px;padding:5px 9px;background:#eff5ff;color:#2356b7;font-size:11px;font-weight:650;display:inline-block}.badge.done{color:#20724d;background:#ebf8f0}.badge.progress{color:#946318;background:#fff6e6}.action-group{display:flex;gap:8px;flex-wrap:wrap}.muted-text{color:#8391a4}.search{border:1px solid #e2e8f0;background:#fff;border-radius:10px;padding:11px 14px;min-width:250px;max-width:420px;width:100%}.filters{display:flex;gap:10px;margin-bottom:13px}.empty{text-align:center;padding:38px 10px;color:#8594a8}.modal-overlay{position:fixed;inset:0;background:rgba(11,20,37,.48);display:flex;align-items:center;justify-content:center;z-index:100;padding:15px}.modal-overlay.hidden{display:none}.modal{background:#fff;max-width:710px;width:100%;border-radius:18px;max-height:94vh;overflow:auto;padding:22px;box-shadow:0 25px 80px rgba(0,0,0,.18)}.modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6ebf1;padding-bottom:17px;margin-bottom:22px}.modal-head h2{font-size:19px;margin:0}.close{border:0;background:#f3f6fb;border-radius:9px;width:34px;height:34px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#53657d}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid #dce4ef;border-radius:10px;padding:10px 12px;min-width:0;color:#26354a;background:#fff}.field textarea{min-height:66px;resize:vertical}.form-section{font-size:13px;font-weight:700;margin:19px 0 10px}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.check-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#53657d}.check-grid select{border:1px solid #dce4ef;padding:7px;border-radius:8px;background:#fff}.form-actions{border-top:1px solid #e6ebf1;margin-top:20px;padding-top:15px;display:flex;justify-content:flex-end;gap:9px}.detail{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:13px}.detail div{padding:12px;background:#f8fafc;border-radius:10px}.detail strong{display:block;margin-bottom:5px;color:#8a98ab;font-size:11px}.detail .full{grid-column:1/-1}.print-only{display:none}@media(max-width:900px){.sidebar{width:210px;min-width:210px}.brand img{width:175px}#screen{padding:20px 16px}.metric-grid{gap:10px}.topbar{padding:15px 18px}.user-pill{display:none}}@media(max-width:680px){#app{display:block}.sidebar{width:100%;min-width:0;padding:9px 12px}.brand{height:52px}.brand img{width:145px;max-height:48px}.sb-caption,.side-footer,.nav-separator,.nav-item.muted{display:none}.sidebar nav{display:flex;overflow:auto}.nav-item{padding:9px 12px;white-space:nowrap}.metric-grid{grid-template-columns:1fr}.heading{align-items:flex-start}.heading h1{font-size:21px}.form-grid,.check-grid,.detail{grid-template-columns:1fr}.notice{margin:12px}.filters{display:block}.modal{padding:15px}}#print-area{display:none}
@page{size:A4 portrait;margin:7mm}@media print{html,body{margin:0;padding:0;background:#fff}#app,.modal-overlay{display:none!important}#print-area{display:block!important}#print-area *{box-sizing:border-box}.os-sheet{font-family:Arial,sans-serif;color:#111;font-size:9px}.os-copy{height:137mm;max-height:137mm;overflow:hidden;padding:2.5mm 4mm;position:relative}.os-copy:first-child{border-bottom:1px dashed #888}.os-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:5px}.os-header .store{font-size:16px;font-weight:800;line-height:1.1;color:#1b3592}.os-header .store small{font-size:8px;font-weight:400;color:#555}.os-header .number{font-size:15px;font-weight:bold;text-align:right}.os-title{text-align:center;font-weight:bold;font-size:11px;border-top:1px solid #444;border-bottom:1px solid #aaa;padding:3px}.os-section{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:6px 0}.os-line{border-bottom:1px solid #bbb;min-height:13px;padding:2px 1px}.os-checklist{border:1px solid #777;padding:5px;margin:5px 0}.os-checklist-head{font-weight:bold;margin-bottom:4px}.os-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.os-legal{font-size:7.2px;line-height:1.35;text-align:justify;margin:5px 0;white-space:normal}.os-legal strong{font-weight:bold}.os-signature-row{display:flex;justify-content:space-between;align-items:end;gap:8mm;margin-top:9mm}.signature{width:44%;border-top:1px solid #555;text-align:center;padding-top:2px}.os-password{display:flex;justify-content:end;margin-top:1mm}.pattern-wrap{width:38mm;display:flex;flex-direction:column;align-items:center}.pattern{display:grid;grid-template-columns:repeat(3,6px);gap:7px 13px;margin:1mm 0 9mm}.pattern i{display:block;background:#000;border-radius:50%;height:4px;width:4px}.password-line{border-top:1px solid #555;width:90%;text-align:center;font-size:8px;padding-top:2px}.cut-note{position:absolute;bottom:0;right:0;font-size:7px;color:#aaa}.status-note{font-size:8px;color:#555}}
.hidden{display:none!important}.auth-view,.pending-view{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#eaf1fc,#f8fafc)}.login-box{width:min(100%,440px);padding:35px;background:#fff;border:1px solid #e5eaf2;border-radius:18px;box-shadow:0 15px 45px rgba(32,70,124,.08)}.login-box img{display:block;width:280px;max-width:100%;height:100px;object-fit:contain;margin:0 auto 5px;background:#111b34;border-radius:10px;padding:15px}.login-box h1{text-align:center;font-size:23px}.login-box p{text-align:center;color:#64748b;font-size:13px;line-height:1.6}.login-box label{display:flex;flex-direction:column;gap:7px;font-size:13px;margin-top:14px}.login-box input{border:1px solid #dce4ef;border-radius:10px;padding:12px}.auth-actions{display:flex;gap:10px;margin-top:24px}.auth-actions .btn{flex:1}.auth-error{margin-top:14px;color:#a03c2f;font-size:12px;line-height:1.6;min-height:15px}.login-box .auth-small{font-size:11px}.top-actions{display:flex;align-items:center;gap:10px}.info-message{margin-top:15px;border:1px solid #d4e2f9;background:#f2f6ff;border-radius:11px;padding:12px;font-size:12px;color:#2a4d8b}.danger-message{color:#b13232}.field textarea{min-height:76px}.btn:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b2caff;outline-offset:2px}@media(max-width:680px){.top-actions{gap:2px}.top-actions .user-pill{display:none}}

/* BRX v0.3 — orçamento na própria OS */
.budget-block{border:1px solid #e1e9f5;border-radius:13px;padding:14px;background:#fbfdff;margin-top:17px}
.budget-title{display:flex;align-items:center;justify-content:space-between;gap:10px}
.budget-title h3{font-size:15px;margin:0 0 4px;color:#223247}
.budget-title p{font-size:12px;color:#75869d;margin:0}
.budget-pill{font-size:11px;color:#2458c6;background:#e9f1ff;padding:6px 10px;border-radius:20px;white-space:nowrap}
.budget-table{margin-top:13px;background:#fff;border-radius:8px}
.budget-table td,.budget-table th{padding:10px 7px}
.right{text-align:right}
.budget-actions{justify-content:end}
.danger-link{color:#a93a3a}
.budget-empty{font-size:12px;color:#8190a3;padding:18px 8px;text-align:center}
.budget-total{display:flex;justify-content:space-between;align-items:center;background:#eef4ff;border-radius:9px;padding:13px;margin-top:12px;font-size:13px;color:#435572}
.budget-total strong{font-size:21px;color:#2458c6}
.budget-caption{font-size:11px;color:#8090a4;margin:8px 0 11px;line-height:1.5}
.repair-inputs{display:grid;grid-template-columns:2fr 1fr;gap:10px}
.repair-inputs .field{min-width:0}.repair-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
@media(max-width:680px){.repair-inputs{grid-template-columns:1fr}.budget-title{align-items:start}}
@media print{
 .os-budget{border:1px solid #aab2bd;margin:5px 0 4px;font-size:8px;break-inside:avoid}
 .os-budget-head{font-size:8px;font-weight:700;background:#f1f4f8;border-bottom:1px solid #adb4bf;padding:2px 4px}
 .os-budget-row{display:flex;justify-content:space-between;align-items:start;gap:8px;padding:2px 4px;border-bottom:1px solid #e0e4ea;line-height:1.15}
 .os-budget-row span{flex:1;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .os-budget-row b{white-space:nowrap}
 .os-budget-total{padding:3px 4px;display:flex;justify-content:space-between;font-size:9px;background:#f3f5fb}
 .os-budget-more{font-size:7px;color:#555;padding:2px 4px}
}

/* BRX v0.3.2 — padrao visual de valores e documentos */
.field input[data-mask='currency']{font-variant-numeric:tabular-nums;font-weight:650;text-align:right}
.field input[data-mask='phone'],.field input[data-mask='document']{font-variant-numeric:tabular-nums;letter-spacing:.2px}

/* BRX v0.3.3 — senha por bolinhas exclusivamente na via impressa da assistência.
   Rodapé ancorado: impede que os nove pontos desapareçam ao somar vários reparos. */
.print-password-info{margin-top:12px}
@media print {
  .os-copy{position:relative; height:137mm;max-height:137mm;overflow:visible}
  .os-main-content{display:block;max-height:none}
  .os-print-footer{position:absolute;left:4mm;right:4mm;bottom:7mm;height:32mm;display:flex;align-items:flex-end;justify-content:space-between;gap:8mm;background:white}
  .os-print-footer.with-pattern .os-signature-row{height:28mm;width:51%;display:flex;flex-direction:column;justify-content:space-between;gap:4mm;margin:0;align-items:flex-start}
  .os-print-footer.with-pattern .signature{width:66mm;max-width:100%;font-size:8px;line-height:1.15;min-height:4.5mm}
  .os-print-footer.client-copy{height:16mm;bottom:8mm}
  .os-print-footer.client-copy .os-signature-row{display:flex;width:100%;margin:0;justify-content:space-between;align-items:flex-end;gap:9mm}
  .os-print-footer.client-copy .signature{width:46%;font-size:8px;line-height:1.15}
  .os-password{width:39mm;min-width:39mm;height:31mm;display:flex;justify-content:center;align-items:flex-end;margin:0 0 0 auto}
  .pattern-wrap{width:37mm;display:flex;align-items:center;flex-direction:column;justify-content:flex-end}
  .pattern{display:grid;grid-template-columns:repeat(3,1.4mm);column-gap:7mm;row-gap:5.8mm;margin:0 0 9mm;justify-content:center;align-content:center}
  .pattern i{display:block;width:1.4mm;height:1.4mm;border-radius:50%;background:#111}
  .password-line{border-top:1px solid #333;width:34mm;min-height:4mm;text-align:center;font-size:8px;padding-top:1.1mm;margin:0}
  .os-copy .cut-note{bottom:1mm;right:1mm}
}
/* Evita que a tela de login, invisível no app, ocupe a primeira folha ao imprimir. */
@media print {
  #auth-view, #pending-view, #app, #modal, .auth-view, .pending-view {display:none!important}
  #print-area {display:block!important;margin:0;padding:0}
}
/* Reserva margem de segurança entre o texto do termo e o rodapé da loja, mesmo com orçamento de 5 itens. */
@media print {
  .os-header {margin-bottom:2px}
  .os-section {margin:3px 0;gap:3px}
  .os-line {min-height:12px}
  .os-budget {margin:3px 0 2px}
  .os-checklist {padding:4px;margin:3px 0}
  .os-legal {margin:3px 0;font-size:7.2px;line-height:1.25}
}

/* BRX v0.3.4 — bolinhas vetoriais: impressas mesmo sem Gráficos de segundo plano. */
@media print {
 .os-password .pattern-svg {display:block!important; width:25mm!important; height:20mm!important; max-width:none; max-height:none; margin:0 auto 6mm!important; overflow:visible!important; flex-shrink:0; print-color-adjust:exact; -webkit-print-color-adjust:exact;}
 .os-password .pattern-svg circle{fill:#111111!important;stroke:#111111!important;stroke-width:.6px;}
 .os-password .pattern-wrap{justify-content:flex-end!important;}
 .os-password .password-line{border-top:1px solid #111!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;}
}
/* BRX v0.4 — aprovação e entrega: informações discretas, sem telas extras */
.approval-panel{margin-top:14px;border:1px solid #dde6f2;background:#fbfcff;border-radius:12px;padding:15px}
.approval-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.approval-panel-head h3{font-size:15px;margin:0;color:#29394e}
.approval-status{font-size:11px;font-weight:650;border-radius:99px;padding:6px 10px;background:#fff1d6;color:#835b15}
.approval-status.approved{background:#e8f8ee;color:#176b42}
.approval-status.rejected{background:#fff0f0;color:#a82c34}
.approval-history{font-size:12px;color:#64758b;border-left:2px solid #d0ddec;padding:7px 9px;margin:8px 0}
.approval-fields{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:10px;margin:12px 0}
.approval-buttons{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.delivery-summary{background:#f0f9f4;border:1px solid #d5eadf;color:#265b45;padding:12px;border-radius:10px;margin-top:15px;font-size:13px}
#delivery-form .field{margin-top:14px}
@media(max-width:680px){.approval-fields{grid-template-columns:1fr}}
@media print{.os-approval-note{font-size:7.2px;line-height:1.22;padding:2px 1px;margin-top:3px;border-bottom:1px solid #ddd}}

/* Ordenação das OS: controles discretos, adaptáveis a telas menores. */
.os-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.os-filters .search{flex:1 1 270px;max-width:none;min-width:210px;height:43px}
.os-sort-control{display:flex;flex-direction:column;gap:5px;color:#667991;font-size:11px;white-space:nowrap}
.os-sort-control select{background:#fff;border:1px solid #e2e8f0;border-radius:10px;min-width:166px;height:43px;padding:9px 30px 9px 12px;color:#26354a;cursor:pointer}
.os-sort-direction select{min-width:145px}
.os-sort-control select:focus-visible{outline:3px solid #b2caff;outline-offset:2px}
@media(max-width:680px){.os-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}.os-filters .search{grid-column:1/-1;min-width:0;width:100%}.os-sort-control select{min-width:0;width:100%}}

/* BRX v0.5 — estoque compacto, sem poluição visual */
.stock-top{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}
.stock-top .search{width:min(100%,440px);min-width:250px}.stock-count{font-size:12px;color:#718099}
.product-thumb{width:51px;height:48px;border:1px solid #e4eaf4;background:#f3f7fc;border-radius:8px;display:grid;place-items:center;color:#b0bfd4;font-size:21px;overflow:hidden}
.product-thumb img{width:100%;height:100%;object-fit:contain}.subtle{font-size:11px;color:#8291a4;line-height:1.45;margin-top:4px}
.stock-low{color:#ad6918}.stock-top+.panel table{min-width:790px}
@media(max-width:680px){.stock-top .search{min-width:0;flex:1 1 100%}}

/* v0.5.1: busca clara e compacta por serviço e peça no orçamento da OS */
.catalog-search{width:100%}
.catalog-results{width:100%;min-height:112px;height:auto!important;padding:5px 8px!important;border-radius:9px;background:#fff;line-height:1.7}
.catalog-results option{padding:8px 9px;border-bottom:1px solid #edf0f7;white-space:normal}
.catalog-results option:checked{background:#dce9ff;color:#153b81}
.catalog-divider{font-size:12px;color:#8291a4;margin:13px 0 8px;padding-top:9px;border-top:1px dashed #dce4ef}
#os-service-form{margin:12px 0 14px}
#os-service-form .repair-form-actions{justify-content:flex-start;flex-wrap:wrap}
#part-form .repair-inputs{grid-template-columns:minmax(170px,1fr) minmax(200px,1.25fr) 110px}
@media(max-width:780px){#part-form .repair-inputs{grid-template-columns:1fr}}

/* BRX v0.5.2 — tipografia ampliada em todo aplicativo, EXCETO impressão A4 */
@media screen {
 html,body{font-size:16px;line-height:1.48}
 .sidebar{width:256px;min-width:256px}
 .nav-item{font-size:15px;line-height:1.4;padding:13px 15px}
 .nav-item span{font-size:12px}
 .sb-caption{font-size:12px}
 .side-footer{font-size:13px}
 .topbar,.subtitle{font-size:14px}
 .user-pill{font-size:13px}
 .notice{font-size:14px;line-height:1.55}
 .heading h1{font-size:29px}
 .btn{font-size:14px;padding:12px 17px;min-height:43px}
 .link{font-size:14px}
 .panel-header h2{font-size:18px}
 .metric-label{font-size:14px}.metric-number{font-size:32px}
 table{font-size:14px}th{font-size:13px}td,th{padding:13px 12px}
 .badge,.budget-pill,.approval-status{font-size:13px}
 .field,.check-grid label,.login-box label{font-size:14px}
 .field input,.field textarea,.field select,.check-grid select,.search,.os-sort-control select,.login-box input{font-size:16px;min-height:44px}
 .form-section,.budget-title h3,.approval-panel-head h3{font-size:17px}
 .budget-title p,.budget-caption,.budget-empty,.approval-history,.stock-count,.info-message,.delivery-summary{font-size:14px}
 .subtle,.catalog-search-hint,.catalog-empty{font-size:13px}
 .budget-total{font-size:15px}.budget-total strong{font-size:24px}
 .detail{font-size:14px}.detail strong{font-size:13px}
 .modal-head h2{font-size:22px}
 .login-box h1{font-size:27px}.login-box p{font-size:14px}.login-box .auth-small{font-size:13px}
 .modal{max-width:min(940px,96vw);padding:26px}
 .close{width:40px;height:40px;font-size:18px}
 .os-sort-control{font-size:13px}
 .approval-fields{grid-template-columns:minmax(180px,1fr) 2fr}
}
/* Orçamento em uma única área: busca instantânea, escolha clara e total visível após os itens. */
.quote-panel{margin-top:20px;padding:19px;background:#fff;border-color:#dce5f2}
.quote-search-zone{margin:17px 0 18px;padding:15px;background:#f5f8ff;border:1px solid #d9e6fd;border-radius:12px;position:relative}
.quote-search-zone .field strong{font-size:16px;color:#233a5d}
.quote-search-zone input[type=search]{background:#fff;padding:13px 15px;border:1px solid #b7cbea;border-radius:10px;font-size:16px;min-height:49px;outline-offset:2px}
.catalog-search-hint{color:#637791;margin:7px 0 0}
.unified-results{margin-top:9px;max-height:300px;overflow:auto;border:1px solid #dbe4f2;background:#fff;border-radius:12px;box-shadow:0 9px 24px rgba(37,75,127,.09)}
.unified-result{width:100%;border:0;border-bottom:1px solid #e9edf5;display:flex;align-items:center;gap:12px;padding:12px;background:#fff;text-align:left;color:#293a51;cursor:pointer;font:inherit}
.unified-result:last-child{border-bottom:0}.unified-result:hover,.unified-result.focused{background:#edf4ff}
.unified-result-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.unified-result-main strong{font-size:15px;font-weight:650;line-height:1.3}
.unified-result-main span{font-size:13px;color:#6c7d91;overflow-wrap:anywhere}
.unified-result-price{font-size:15px;white-space:nowrap;color:#1c4d9c}
.item-type{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;border-radius:7px;font-size:11px;font-weight:750;line-height:1;letter-spacing:.03em;white-space:nowrap;padding:7px 8px}
.item-type.item-part{background:#fff3e2;color:#995d0e}
.item-type.item-service{background:#e6f0ff;color:#214eaf}
.catalog-selected{margin:11px 0 8px;display:flex;gap:12px;align-items:center;padding:13px;background:white;border:1px solid #c4d5f0;border-radius:10px}
.catalog-selected span:nth-child(2){display:flex;flex-direction:column;gap:2px}
.catalog-selected small{color:#607287;font-size:13px}
.catalog-add-form{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-top:9px}
.catalog-add-form .catalog-qty{max-width:118px}
.catalog-add-form .btn.primary{flex:1 1 190px}
.catalog-empty{padding:18px;color:#78889d}
.quote-summary-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e6eaf1}
.quote-summary-title strong{font-size:16px}.quote-summary-title span{font-size:13px;color:#7b8ba3}
.quote-table{margin-top:5px;width:100%}.quote-table td{vertical-align:middle}
.quote-table td:first-child strong{display:inline;vertical-align:middle;margin-left:8px;font-weight:600;line-height:1.4}
.quote-table .small-state{color:#6b788a;font-size:13px}
.quote-actions{min-width:160px}.quote-actions .link{margin:2px 3px}
.quote-grand-total{padding:17px 16px;margin-top:12px;gap:14px}
.quote-grand-total span{font-weight:650}
.quote-extra{margin-top:14px;padding:12px 14px;background:#fafcff;border:1px solid #e4eaf3;border-radius:10px}
.quote-extra summary{font-size:14px;font-weight:600;color:#2458c6;cursor:pointer}
.quote-extra form{margin-top:15px}.quote-help{margin-top:10px}
@media screen and (max-width:900px){.sidebar{width:215px;min-width:215px}.modal{padding:19px}}
@media screen and (max-width:680px){.sidebar{width:100%;min-width:0}.heading h1{font-size:24px}.modal{max-width:100%;padding:16px}.quote-panel{padding:13px}.quote-table{min-width:640px}.quote-search-zone{padding:11px}.unified-result{gap:7px;padding:10px 8px}.unified-result-main strong,.unified-result-price{font-size:14px}.item-type{font-size:10px}.catalog-add-form .btn{flex:1 1 100%}.approval-fields{grid-template-columns:1fr}}

/* Cabeçalho da OS compacto — busca visível sem rolar dezenas de campos */
.os-summary-top{display:grid;grid-template-columns:1.15fr 1.5fr 1fr;gap:9px;margin-bottom:10px}
.os-summary-top>div{background:#f4f7fb;border:1px solid #e9eef5;border-radius:10px;padding:10px 12px;min-width:0}
.os-summary-top strong{display:block;font-size:12px;color:#71819a;margin-bottom:3px}
.os-summary-top span{font-size:15px;font-weight:600;overflow-wrap:anywhere}
.os-reported-problem{border-left:3px solid #2458c6;padding:10px 13px;background:#f5f8ff;border-radius:0 10px 10px 0}
.os-reported-problem strong{font-size:13px;color:#41618e}
.os-reported-problem p{font-size:15px;margin:3px 0 0;color:#283a51;line-height:1.45}
.os-entry-details{margin:10px 0 12px;border-bottom:1px solid #e9eff5;padding:5px 0 12px}
.os-entry-details summary{font-size:13px;font-weight:600;color:#4e6a93;cursor:pointer}
.os-entry-details .detail{margin-top:12px}
@media screen and (max-width:680px){.os-summary-top{grid-template-columns:1fr 1fr}.os-summary-top>div:last-child{grid-column:1/-1}.os-summary-top span{font-size:14px}}


/* BRX v0.5.3 — legibilidade ampliada: SOMENTE TELA.
   As regras de impressao da OS (incluindo as 9 bolinhas) nao sao alteradas. */
@media screen {
 html,body {font-size:18px;line-height:1.53}
 .sidebar{width:272px;min-width:272px}
 .brand img{width:210px}
 .nav-item{font-size:17px;line-height:1.45;padding:14px 13px;gap:6px}
 .nav-item span{font-size:14px}
 .sb-caption,.side-footer{font-size:14px}
 .topbar,.subtitle{font-size:16px}
 .user-pill{font-size:15px}
 .notice{font-size:16px;line-height:1.55}
 .heading h1{font-size:32px;line-height:1.2}
 .btn{font-size:17px;line-height:1.35;min-height:47px;padding:12px 18px}
 .link{font-size:16px;line-height:1.45;padding:5px 2px}
 .panel-header h2{font-size:20px;line-height:1.3}
 .metric-label{font-size:16px}
 .metric-number{font-size:35px}
 table{font-size:16px}
 th{font-size:15px}
 td,th{padding:15px 12px;line-height:1.42}
 .badge,.budget-pill,.approval-status{font-size:15px;line-height:1.4}
 .field,.check-grid label,.login-box label{font-size:16px;line-height:1.45}
 .field input,.field textarea,.field select,.check-grid select,.search,.os-sort-control select,.login-box input{
  font-size:18px;min-height:47px;line-height:1.45
 }
 .form-section,.budget-title h3,.approval-panel-head h3{font-size:19px}
 .budget-title p,.budget-caption,.budget-empty,.approval-history,.stock-count,.info-message,.delivery-summary{font-size:16px}
 .subtle,.catalog-search-hint,.catalog-empty,.catalog-divider{font-size:15px;line-height:1.5}
 .budget-total{font-size:17px}.budget-total strong{font-size:27px}
 .detail{font-size:16px}.detail strong{font-size:15px}
 .modal{max-width:min(1010px,97vw);padding:26px}
 .modal-head h2{font-size:25px;line-height:1.25}
 .login-box{width:min(100%,490px)}
 .login-box h1{font-size:30px}
 .login-box p{font-size:16px}
 .login-box .auth-small,.auth-error{font-size:15px}
 .os-sort-control{font-size:15px}
 .quote-search-zone .field strong{font-size:18px}
 .quote-search-zone input[type=search]{font-size:18px;min-height:52px}
 .unified-result-main strong,.unified-result-price{font-size:18px}
 .unified-result-main span{font-size:15px}
 .item-type{font-size:14px}
 .catalog-selected small{font-size:15px}
 .quote-summary-title strong{font-size:18px}
 .quote-summary-title span,.quote-table .small-state{font-size:15px}
 .quote-extra summary{font-size:16px}
 .os-summary-top strong,.os-reported-problem strong,.os-entry-details summary{font-size:15px}
 .os-summary-top span,.os-reported-problem p{font-size:17px}
 .quote-search-zone{padding:17px}
 .quote-table td:first-child strong{line-height:1.42}
}
@media screen and (max-width:900px) {
 .sidebar{width:240px;min-width:240px}
 .modal{padding:20px}
}
@media screen and (max-width:680px) {
 .sidebar{width:100%;min-width:0}
 .brand img{width:155px}
 .nav-item{font-size:16px;padding:11px 13px}
 .heading h1{font-size:27px}
 .panel-header h2{font-size:20px}
 .modal{max-width:100%;padding:17px}
 .os-summary-top span{font-size:16px}
 .unified-result-main strong,.unified-result-price{font-size:16px}
 .item-type{font-size:13px;padding:7px}
 .unified-result-main span{font-size:14px}
 .quote-search-zone{padding:12px}
 .btn{font-size:16px}
}


/* BRX v0.5.4 - Identidade visual maior no menu, somente tela.
   Logo original preservada; pagina impressa nao recebe alteracoes. */
@media screen {
  .sidebar{width:304px;min-width:304px;}
  .brand{height:105px;min-height:105px;align-items:center;}
  .brand img{width:270px;max-width:100%;max-height:94px;height:auto;object-fit:contain;}
  .sb-caption{font-size:15px;line-height:1.45;letter-spacing:.035em;text-transform:none;
    font-weight:600;margin:2px 0 31px;padding:0 4px;overflow-wrap:normal;}
}
@media screen and (max-width:900px){
  .sidebar{width:252px;min-width:252px;padding-left:12px;padding-right:12px;}
  .brand{height:94px;min-height:94px;}
  .brand img{width:228px;max-height:85px;}
  .sb-caption{font-size:13.5px;letter-spacing:.02em;}
}
@media screen and (max-width:680px){
  .sidebar{width:100%;min-width:0;}
  .brand{height:77px;min-height:77px;}
  .brand img{width:226px;max-height:70px;}
  .sb-caption{display:none;}
}

/* BRX v0.5.5 — busca de clientes e checklist simplificado; apenas interface, impressão intacta. */
@media screen{
 .customer-lookup{position:relative;min-width:0;display:flex;flex-direction:column;gap:7px;font-size:16px;font-weight:600}
 .customer-lookup input[type=search]{height:51px;min-height:51px;border:1px solid #cedbed;border-radius:10px;padding:12px 13px;font-size:18px;width:100%;background:#fff;color:#182d4d}
 .customer-hint{font-weight:400;font-size:14px;color:#627794;line-height:1.4}
 .customer-results{position:relative;width:100%;max-height:270px;overflow:auto;background:#fff;border:1px solid #c8d9f6;border-radius:11px;box-shadow:0 10px 22px rgba(19,41,79,.07);z-index:4}
 .customer-result{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;gap:3px;padding:11px 13px;color:#1a365b;background:#fff;border:0;border-bottom:1px solid #edf1f8;cursor:pointer;font-size:16px}
 .customer-result strong{font-size:17px}.customer-result span{font-size:14px;color:#56708d}
 .customer-result:hover,.customer-result.is-highlighted,.customer-result:focus-visible{background:#eaf2ff;outline:none}
 .customer-no-result{padding:13px;color:#586a82;font-size:15px;font-weight:400}
 .uppercase-input{text-transform:uppercase}
 #order-form .check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
}
@media screen and (max-width:680px){#order-form .check-grid{grid-template-columns:1fr}}

/* BRX v0.5.7: catálogo de fornecedor. Telas normais usam fontes aprovadas na v0.5.3. */
@media screen{
 .cpx-warning{padding:15px 18px;background:#fff8ec;border:1px solid #e9d5ab;border-radius:12px;color:#705018;font-size:16px;margin:16px 0;line-height:1.5}
 .cpx-top{margin-top:14px}
 .cpx-loading{text-align:center;color:#6c7f99;padding:25px!important}
 .cpx-pages{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:15px 3px;font-size:16px;color:#53647f}
 .cpx-pages div{display:flex;gap:10px}
 .cpx-pages .btn{min-height:42px}
 .cpx-top .search{max-width:none;flex:1 1 360px}
}
@media(max-width:680px){.cpx-pages{flex-wrap:wrap}.cpx-top .search{min-width:0}}

/* BRX v0.5.8: custo base + frete; preço de venda manual; exclusão reversível. */
.calc-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #dce7f4;background:#f3f7fd;padding:16px;border-radius:12px;margin-top:5px}
.calc-row>div{flex:1 1 170px;color:#536780;font-size:15px;display:flex;flex-direction:column;gap:4px}
.calc-row strong{color:#174eaf;font-size:20px}
.action-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.action-group .danger-link{color:#b13139}
.stock-top .btn{white-space:nowrap}

/* BRX v0.5.12 — atalho CPX opcional por unidade; catálogo permanece ativo. */
@media screen {
 .settings-panel{max-width:860px;padding:25px}
 .settings-panel h2{font-size:21px;margin:0 0 18px;color:#243854}
 .settings-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #dfe7f3;border-radius:14px;padding:18px;cursor:pointer;background:#fbfdff}
 .settings-toggle-text{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;color:#3d506b}
 .settings-toggle-text strong{font-size:18px;color:#20334e;font-weight:700}
 .settings-toggle-text span{font-size:16px;line-height:1.5;color:#62738b}
 .settings-toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:53px;height:30px;margin:0;border-radius:40px;border:2px solid #c7d3e3;background:#e0e7f0;position:relative;transition:background .15s;cursor:pointer}
 .settings-toggle input[type=checkbox]:before{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:transform .15s}
 .settings-toggle input[type=checkbox]:checked{background:#2458c6;border-color:#2458c6}
 .settings-toggle input[type=checkbox]:checked:before{transform:translateX(22px)}
 .settings-toggle input[type=checkbox]:disabled{cursor:default;opacity:.65}
 .settings-toggle input[type=checkbox]:focus-visible{outline:3px solid #a9c4ff;outline-offset:3px}
 .settings-status{font-size:16px;color:#5f7189;margin-top:12px;line-height:1.5}
 .settings-actions{margin-top:20px;display:flex;justify-content:flex-start}
}
@media screen and (max-width:680px){
 .settings-panel{padding:16px}
 .settings-toggle{padding:14px;gap:12px}
 .settings-toggle-text strong{font-size:17px}
 .settings-toggle-text span,.settings-status{font-size:15px}
 .settings-panel h2{font-size:20px}
}


/* BRX v0.6 — caixa e PDV, tipografia aprovada e layout clean */
.cash-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cash-metrics .metric{min-width:0}
.cash-value{font-size:25px;font-weight:780;color:#2458c6;margin:8px 0}
.cash-banner{padding:25px}
.cash-banner h2,.cash-actions-panel h2,.pdv-layout h2,.panel>h2{font-size:21px;margin:0 0 15px}
.cash-banner p,.pdv-products p{font-size:16px;line-height:1.6}
.cash-simple-form{display:flex;flex-wrap:wrap;align-items:end;gap:13px}
.cash-simple-form .field{flex:1 1 170px;min-width:0}
.cash-simple-form .cash-reason{flex:2 1 230px}
.cash-simple-form .btn{min-height:48px;white-space:normal}
.cash-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.pdv-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.32fr);gap:16px;align-items:start}
.pdv-layout .panel{margin-top:0;min-width:0}
.pdv-results{margin-top:12px;display:grid;gap:8px;max-height:410px;overflow:auto}
.pdv-result{width:100%;border:1px solid #e3eaf5;border-radius:11px;background:#f8fbff;padding:13px 14px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#243950;font-size:16px}
.pdv-result:hover{background:#eaf2ff;border-color:#bbcff3}
.pdv-result span{min-width:0;display:grid;gap:5px}
.pdv-result strong{font-size:16px;overflow-wrap:anywhere}
.pdv-result small{color:#71819a;font-size:14px}
.pdv-result b{white-space:nowrap;font-size:17px;color:#2458c6}
.pdv-stepper{display:flex;gap:7px;align-items:center;white-space:nowrap}
.pdv-stepper b{min-width:22px;text-align:center}
.pdv-stepper .btn{min-width:32px;padding:6px 8px}
.pdv-checkout table{min-width:580px}
.pdv-grand-total{border-radius:12px;background:#eff5ff;color:#23456c;margin:13px 0 18px;padding:16px;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:18px;font-weight:650}
.pdv-grand-total strong{font-size:27px;color:#2458c6}
.pdv-change{font-size:17px;color:#2458c6;font-weight:700;margin:5px 0 14px}
.pdv-checkout #pdv-sale-form>.field{margin:13px 0}
.pdv-checkout-button{width:100%;font-size:17px;white-space:normal;margin-top:12px}
@media(max-width:980px){.pdv-layout{grid-template-columns:1fr}}
@media(max-width:680px){.cash-metrics{grid-template-columns:1fr}.cash-simple-form{display:grid;grid-template-columns:1fr}.cash-simple-form .field{width:100%}.pdv-results{max-height:260px}.pdv-grand-total strong{font-size:22px}}
@media print{.cash-banner,.cash-metrics,.pdv-layout{display:none!important}}

.cash-session-list{margin:10px 0;display:grid;gap:8px}.cash-session-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:10px 12px;background:#f7faff;border-radius:9px;font-size:16px}

/* BRX v0.6.1 — três blocos do menu aprovados: Operação, Cadastros, Configurações.
   Somente interface; opção Catálogo CPX continua controlada em Configurações. */
@media screen {
  .sidebar nav { row-gap: 0; }
  .sidebar .nav-section { display:flex; flex-direction:column; gap:6px; min-width:0; }
  .sidebar .nav-section .nav-item { width:100%; }
  .sidebar .nav-separator { margin:16px 10px; height:1px; background:#31405b; }
}
@media screen and (max-width:680px) {
  .sidebar nav { display:flex; flex-wrap:nowrap; gap:0; align-items:center; overflow-x:auto; padding-bottom:3px; }
  .sidebar .nav-section { display:flex; flex-direction:row; gap:4px; flex:0 0 auto; align-items:center; }
  .sidebar .nav-section .nav-item { width:auto; white-space:nowrap; flex:0 0 auto; }
  .sidebar .nav-separator { display:block; flex:0 0 1px; width:1px; height:28px; margin:4px 8px; }
  .sidebar .nav-item.muted { display:flex; }
}

/* v0.6.1 - PDV mostra produtos sem estoque ou sem preco, bloqueio visivel */
@media screen {
 .pdv-result.pdv-result-unavailable{background:#fbfcff;border-color:#e5eaf3;}
 .pdv-result.pdv-result-unavailable:hover{background:#fff5eb;border-color:#efcca4;}
 .pdv-stock-warning{color:#b44b18;font-style:normal;font-weight:750;}
 .pdv-result small{line-height:1.5;}
}
/* Em celular, o menu inteiro rola apenas na area de navegacao, sem mover a pagina. */
@media screen and (max-width:680px) {
  html,body{max-width:100%;overflow-x:clip}
  #app,.sidebar,.main,#screen{max-width:100%;min-width:0}
  .sidebar{overflow:hidden}
  .sidebar nav{max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;}
  .sidebar .nav-section{min-width:max-content;}
  .sidebar .nav-section .nav-item{min-width:max-content;}
  .topbar,#screen{min-width:0;}
}

/* PDV v0.6.2: CPX sob encomenda, sem misturar com estoque físico */
.pdv-result-cpx{border-left:4px solid #D98A22;background:#fffaf0;}
.pdv-supply-label{color:#936000;font-weight:700;font-size:.91em;}
.pdv-pending-panel{margin-top:22px;}
.pdv-pending-panel td{vertical-align:middle;}
.pdv-pending-panel button:disabled{opacity:.63;cursor:not-allowed;}

/* BRX v0.6.3 — Filtros de Estoque, busca de cliente no PDV e exclusão de OS. */
@media screen{
 .stock-filter-bar .search{flex:1 1 240px;max-width:none;min-width:180px}
 .stock-filter-label{display:flex;flex-direction:column;gap:6px;min-width:160px;flex:0 1 220px;color:#50627b;font-size:15px;font-weight:600}
 .stock-filter-label select{height:45px;max-width:100%;width:100%;background:#fff;border:1px solid #d4deed;border-radius:10px;padding:0 12px;font-size:16px;color:#1b2e50}
 .os-heading-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;justify-content:flex-end}
 .pdv-customer-field{position:relative;margin:15px 0;padding:14px;background:#f7faff;border:1px solid #dae6f6;border-radius:12px}
 .pdv-customer-field .field{margin:0}
 .pdv-customer-field #pdv-customer-results{margin-top:6px;position:relative;max-height:260px;overflow:auto}
 .pdv-client-status{font-size:15px;color:#57708d;margin:8px 0 0;word-break:break-word}
 .pdv-client-clear{display:inline-block;margin-top:5px}
}
@media screen and (max-width:680px){.stock-filter-label{flex:1 1 calc(50% - 10px);min-width:130px}.os-heading-actions{width:100%;justify-content:flex-start}}

/* BRX v0.6.3 — comprovante comercial de venda/garantia, sem valor fiscal. */
@media screen{
 .sale-success-panel{font-size:17px;line-height:1.6}
 .sale-success-panel h3{font-size:23px;color:#173e83;margin:0 0 8px}
 .nonfiscal-inline{border:1px solid #d4a47e;background:#fffaf5;border-radius:9px;padding:10px 12px;font-size:16px}
 .receipt-warning{color:#986324;font-weight:650}
}
@media print{
 body:has(.brx-receipt-sheet) #print-area{display:block!important}
 #print-area .brx-receipt-sheet{font-family:Arial,Helvetica,sans-serif;width:100%;max-width:190mm;color:#182536;background:#fff;line-height:1.34;font-size:12px;margin:0 auto;padding:5mm 6mm;border:1px solid #a9b8c9;box-sizing:border-box}
 .brx-receipt-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #193d82;padding-bottom:7mm;gap:10mm}
 .brx-receipt-logo{display:flex;align-items:center;gap:4mm;flex:1;min-width:0}
 .brx-receipt-logo img{width:36mm;max-height:21mm;object-fit:contain;background:#111b34;border-radius:2mm;padding:2mm;box-sizing:border-box}
 .brx-receipt-logo div{display:flex;flex-direction:column;gap:1mm;min-width:0;font-size:9px}
 .brx-receipt-logo div b{font-size:12px;color:#173e83}
 .brx-receipt-number{text-align:right;display:flex;flex-direction:column;gap:3mm;min-width:33mm;font-size:11px}
 .brx-receipt-number b{font-size:13px}
 .brx-receipt-sheet h1{text-align:center;color:#173e83;font-size:20px;line-height:1.2;margin:0 0 3mm}
 .brx-receipt-subheading{text-align:center;color:#41516b;font-size:11px;margin:0 0 8mm}
 .brx-receipt-sheet h2{font-size:12px;color:#193d82;letter-spacing:.3px;margin:0 0 3mm;border-bottom:1px solid #d6e0ec;padding-bottom:2mm}
 .brx-receipt-customer{border:1px solid #d9e2ed;border-radius:2mm;padding:3mm 4mm;margin-bottom:7mm;line-height:1.9}
 .brx-receipt-customer h2{border:0;padding:0;margin:0 0 2mm}
 .brx-receipt-items-title{margin-top:0!important}
 .brx-receipt-table{border-collapse:collapse;width:100%;font-size:11px;table-layout:fixed}
 .brx-receipt-table th,.brx-receipt-table td{padding:3mm 2mm;border-bottom:1px solid #ccd5df;vertical-align:top;overflow-wrap:anywhere}
 .brx-receipt-table th{background:transparent;color:#2a3b54;font-size:10px;text-align:left;border-bottom:2px solid #617891}
 .brx-receipt-table th:first-child{width:56%}
 .brx-receipt-table th:nth-child(2){width:11%}
 .brx-receipt-table th:nth-child(3){width:16%}
 .brx-receipt-table th:nth-child(4){width:17%}
 .brx-receipt-table td small{display:block;color:#53647e;font-size:9px;margin-top:2mm}
 .brx-receipt-table tr{break-inside:avoid;page-break-inside:avoid}
 .brx-receipt-totals{display:flex;justify-content:flex-end;gap:10mm;align-items:center;margin:6mm 0 4mm;font-weight:700;font-size:13px}
 .brx-receipt-totals strong{font-size:20px;color:#193d82}
 .brx-receipt-guarantee{border-top:1px solid #ccd5df;padding-top:5mm;margin-top:6mm;break-inside:avoid}
 .brx-receipt-guarantee p{margin:2.8mm 0 4mm;text-align:justify;font-size:11px;line-height:1.46}
 .brx-receipt-balcao{font-size:11.5px!important;font-weight:800;text-align:center!important;letter-spacing:.35px;margin-top:5mm!important}
 .brx-receipt-footer{display:flex;justify-content:space-between;gap:5mm;border-top:2px solid #193d82;padding:4mm 0 1mm;margin-top:9mm;font-size:10px;font-weight:600}
 .brx-receipt-footer strong{font-size:11px;white-space:nowrap;text-align:right}
}

/* BRX v0.6.3 — cadastro de clientes/CEP, mantendo fontes maiores */
.customer-address-section{grid-column:1/-1;padding:13px 0 6px;margin-top:5px;border-top:1px solid #e4eaf3;font-weight:760;font-size:19px;color:#203857}
.customer-address-section span{font-size:15px;color:#687a93;font-weight:450}
.customer-cep-control{display:flex;align-items:flex-start;padding-top:27px}
.customer-cep-control .btn{min-height:47px}
#customer-cep-status{font-size:14px;line-height:1.4;min-height:19px}
#customer-cep-status[data-state=error]{color:#a12c2c}
#customer-cep-status[data-state=success]{color:#247249}
@media screen and (max-width:680px){.customer-cep-control{padding-top:0}.customer-cep-control .btn{width:100%}.customer-address-section span{display:block;font-size:14px}}

/* BRX v0.7.0 — Financeiro gerencial: leitura generosa, sem destaque decorativo excessivo. */
@media screen {
 .brx-fin-filters{margin-bottom:16px}
 #brx-fin-period{display:flex;flex-wrap:wrap;align-items:end;gap:12px}
 #brx-fin-period .field{flex:1 1 190px;min-width:150px;margin:0}
 #brx-fin-period input{min-height:46px;font-size:18px}
 #brx-fin-period .btn{min-height:46px}
 .brx-fin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}
 .brx-fin-metrics .metric{min-width:0}
 .brx-fin-metrics .metric-number{font-size:clamp(24px,2.1vw,34px);white-space:normal;overflow-wrap:anywhere}
 .brx-fin-disclaimer{border:1px solid #e2d4b9;background:#fffbf4;padding:16px 18px;border-radius:12px;line-height:1.6;font-size:16px;color:#5c4b33;margin:16px 0 20px}
 .brx-fin-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;align-items:start}
 .brx-fin-columns .panel{min-width:0;margin:0}
 .brx-fin-methods{display:grid;gap:1px;background:#e8edf5;border-radius:10px;overflow:hidden;margin-top:12px}
 .brx-fin-methods>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 14px;background:#fbfdff;font-size:17px}
 .brx-fin-methods strong{color:#203a64}
 .brx-fin-void{opacity:.56}
 .brx-fin-void td:nth-child(2){text-decoration:line-through}
 #brx-fin-expense-form .form-grid{margin-top:12px}
 #brx-fin-expense-form textarea{min-height:80px}
}
@media screen and (max-width:900px){.brx-fin-columns{grid-template-columns:1fr}}
@media screen and (max-width:680px){.brx-fin-metrics{grid-template-columns:1fr}.brx-fin-methods>div{font-size:16px}}

/* BRX 0.7.1 — Contas fixas mensais e parceladas; legibilidade aprovada. */
@media screen {
 .brx-rec-panel{margin:20px 0 18px;min-width:0}
 .brx-rec-top{align-items:flex-start;flex-wrap:wrap}
 .brx-rec-top h2{font-size:21px;margin:0 0 8px}
 .brx-rec-top p{font-size:16px;line-height:1.55;margin:0;max-width:780px}
 .brx-rec-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 24px}
 .brx-rec-stats>div{border:1px solid #e3eaf4;background:#f8faff;border-radius:12px;padding:16px;display:grid;gap:5px;min-width:0}
 .brx-rec-stats span{font-size:15px;color:#526680;font-weight:600}
 .brx-rec-stats strong{font-size:24px;color:#1d3864;overflow-wrap:anywhere}
 .brx-rec-stats small{font-size:14px;color:#74839a}
 .brx-rec-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0 12px}
 .brx-rec-subhead h3{font-size:19px;margin:0}
 .brx-rec-due-title{border-top:1px solid #e5eaf2;padding-top:24px}
 .brx-rec-filter{display:flex;gap:8px;align-items:center;font-size:16px;color:#50627b;font-weight:600}
 .brx-rec-filter select{min-height:44px;border-radius:10px;border:1px solid #d9e2ed;background:#fff;padding:8px 12px;font-size:16px;color:#253f62}
 .brx-rec-panel table{min-width:710px}
 .brx-rec-panel td{vertical-align:middle;line-height:1.45}
 .brx-rec-panel td .link{font-size:15px;line-height:1.4}
 .brx-rec-panel .action-group{flex-wrap:nowrap}
 .brx-rec-panel .badge{white-space:nowrap}
 .brx-rec-foot{margin:18px 0 0;line-height:1.55}
 #brx-fin-plan-form [hidden]{display:none!important}
 #brx-fin-plan-form .info-message,#brx-fin-pay-due-form .info-message{line-height:1.55;margin-top:15px}
}
@media screen and (max-width:900px){.brx-rec-stats{grid-template-columns:1fr 1fr}}
@media screen and (max-width:680px){.brx-rec-stats{grid-template-columns:1fr}.brx-rec-panel{padding:17px}.brx-rec-top .btn{width:100%}.brx-rec-filter{width:100%;justify-content:space-between}.brx-rec-stats strong{font-size:25px}}
/* Caixa BRX v0.7.2 — modo simplificado, uma única operadora. */
.cash-metrics.cash-metrics-single{grid-template-columns:repeat(2,minmax(0,1fr))}
.cash-single-active{display:inline-flex;align-items:center;color:#176b4c;font-weight:700;font-size:15px;min-height:43px}
@media(max-width:680px){.cash-metrics.cash-metrics-single{grid-template-columns:1fr}}
/* v0.7.7 — avisos de contas e comissões, sem painéis excessivos */
.brx-alert-panel{border-left:4px solid #ea9b26}
.brx-alert-panel h2{margin-bottom:4px}
.brx-alert-list{display:grid;gap:8px}
.brx-alert-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 13px;background:#f5f8fd;border:1px solid #e4eaf4;border-radius:9px}
.brx-alert-item>div:last-child{text-align:right;white-space:nowrap}
.brx-alert-status{display:block;color:#986400;font-size:12px;font-weight:700;margin-top:3px}
.brx-alert-overdue{background:#fff7f3;border-color:#f6d1be}
.brx-alert-overdue .brx-alert-status{color:#b53023}
.brx-mgmt-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:8px 0 16px}
.brx-mgmt-form>.field{flex:0 1 300px;min-width:150px}
.brx-mgmt-form .btn{min-height:46px}
.brx-mgmt-staff{display:grid;gap:10px}
.brx-mgmt-staff-row{border:1px solid #e0e8f4;border-radius:10px;padding:12px 14px;background:#f9fbfe}
.brx-mgmt-staff-row>.subtle{display:block;margin-top:3px}
.brx-mgmt-staff-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.brx-mgmt-staff-actions .brx-mgmt-form{margin:7px 0 0}
.brx-mgmt-staff-actions .brx-mgmt-form>.field{flex:0 1 110px;min-width:110px}
.brx-commission-total{font-size:23px;font-weight:800;color:#2458c6;text-align:right}
.brx-commission-total small{font-size:12px;color:#718199;display:block;font-weight:400}
.pdv-checkout .field select#pdv-seller-select{background:#fff}
@media(max-width:560px){.brx-alert-item{align-items:flex-start}.brx-alert-item>div:first-child{min-width:0;overflow-wrap:anywhere}.brx-alert-item>div:last-child{flex-shrink:0}.brx-mgmt-form{display:grid;grid-template-columns:1fr}.brx-mgmt-form>.field{min-width:0;max-width:100%}.brx-mgmt-staff-actions{display:block}.brx-commission-total{font-size:19px}}
@media(max-width:560px){.brx-alert-panel .panel-header{display:block}.brx-alert-panel .panel-header .btn{margin-top:10px}}

/* BRX v0.7.8 — recebimentos da OS: somente interface, impressão A4 preservada. */
@media screen {
 .brx-os-finance{margin:18px 0 12px;padding:17px;background:#fbfdff}
 .brx-os-finance h3{margin:0 0 6px;font-size:20px}
 .brx-os-finance .table-wrap{margin:12px 0}
 .brx-os-fin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
 .brx-os-fin-metrics span{display:flex;flex-direction:column;gap:7px;background:#f1f5fc;border-radius:10px;padding:12px;font-size:15px}
 .brx-os-fin-metrics b{font-size:21px;color:#2458c6;font-variant-numeric:tabular-nums}
 .brx-os-fin-summary .brx-fin-methods{margin:10px 0}
 @media (max-width:680px){.brx-os-fin-metrics{grid-template-columns:1fr;gap:6px}.brx-os-fin-metrics span{flex-direction:row;align-items:center;justify-content:space-between}.brx-os-fin-metrics b{font-size:18px}}
}

/* BRX v0.7.9: titulo oficial na tela de acesso, sem alterar a impressao */
@media screen {
  #auth-view .login-box h1 {
    font-size:clamp(21px, 4.8vw, 28px);
    line-height:1.25;
    text-wrap:balance;
    margin:14px 0 19px;
  }
}

/* BRX v0.7.10: resposta simples do cliente e acabamento da OS. Somente tela. */
@media screen {
 .approval-simple{background:#fff;border-color:#e1e8f0;padding:17px 18px}
 .approval-simple .approval-panel-head h3{font-size:19px}
 .approval-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:17px 0 11px}
 .approval-quick-actions .btn{font-size:17px;font-weight:750;padding:14px 12px;min-height:54px;border:0;border-radius:10px;white-space:normal;line-height:1.3}
 .approval-quick-actions .approval-yes{background:#18794e;color:#fff}
 .approval-quick-actions .approval-no{background:#bd3440;color:#fff}
 .approval-quick-actions .approval-yes:hover:not(:disabled){background:#126640}
 .approval-quick-actions .approval-no:hover:not(:disabled){background:#a82834}
 .approval-quick-actions .btn:disabled{opacity:.45;cursor:not-allowed}
 .approval-optional{margin-top:8px;border-top:1px solid #edf1f7;padding-top:9px}
 .approval-optional summary,.os-status-optional summary{color:#64748b;font-size:14px;cursor:pointer}
 .approval-disclaimer{font-size:13px;color:#748197;margin:11px 0 0;line-height:1.45}
 .os-finish-section{margin:20px 0 10px;padding:14px 16px;background:#f8fafd;border:1px solid #e4ebf4;border-radius:11px}
 .os-finish-section .form-section{margin:0 0 12px}
 .os-status-optional{margin-top:14px;padding-top:12px;border-top:1px solid #e7ebf1}
 .os-status-optional .field{margin:12px 0}
 @media(max-width:680px){.approval-quick-actions{grid-template-columns:1fr;gap:9px}.approval-simple .approval-panel-head h3{font-size:18px}}
}

/* BRX v0.7.11 — confirmação discreta de retirada */
.os-pickup-choices{display:grid;gap:10px;margin:12px 0 15px}
.os-pickup-choice{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:13px 15px;border:1px solid #dce4ef;background:#fff;border-radius:11px;color:#28394f;font-weight:600;cursor:pointer}
.os-pickup-choice:has(input:checked){border-color:#2458c6;background:#f1f5ff}
.os-pickup-choice input{accent-color:#2458c6;width:18px;height:18px}
.os-pickup-client-name{font-weight:400;color:#62748b;overflow-wrap:anywhere}
.os-pickup-note{margin:12px 0 0;color:#69788a}
#os-close-form .field input{font-size:inherit}
@media screen and (max-width:680px){.os-pickup-choice{padding:12px;gap:8px}.os-pickup-client-name{width:100%;padding-left:26px}}

/* v0.7.11 — conteúdo operacional mínimo na OS, sem caixas de avisos decorativas */
@media screen {
 .os-decision-simple{display:flex;justify-content:flex-start;margin:14px 0 8px}
 .os-decision-simple .approval-status{font-size:16px;line-height:1.35;font-weight:700;padding:8px 12px}
 .os-decision-actions{margin:12px 0 2px}
 .os-decision-actions .approval-quick-actions{margin:0}
 .os-decision-warning{color:#9a6016;font-size:14px;font-weight:600;margin:5px 0 10px}
}

@media screen{.os-advanced{border:0;padding:0;margin:12px 0 2px}.os-advanced summary{font-size:14px;color:#5d718e;cursor:pointer}.os-advanced .field{margin:12px 0}.os-advanced button{margin-top:6px}}

/* v0.7.12 — Etapas da OS: navegação compacta, sem mensagens repetidas. */
@media screen {
.os-stage-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.os-stage-tab{border:1px solid #dce4ef;background:#fff;color:#455c7b;border-radius:9px;padding:9px 15px;font:inherit;font-weight:650;font-size:15px;cursor:pointer;min-height:42px}
.os-stage-tab span{font-size:.9em;color:#71819a;margin-left:5px}
.os-stage-tab.active{background:#edf3ff;border-color:#295cc6;color:#174ab0}
.os-stage-tab.active span{color:#174ab0}
.os-cash-queue .panel-header{margin-bottom:8px}
.cash-queue-count{display:inline-block;font-size:.83em;background:#eaf0fa;color:#31598e;border-radius:20px;padding:2px 10px;margin-left:6px}
@media(max-width:680px){.os-stage-tab{padding:9px 10px;font-size:13px;flex:1;min-width:100px}}
}

/* BRX v0.7.13 — ações de impressão após recebimento de OS. */
@media screen{
 .brx-os-print-success{text-align:center;padding:6px 0 3px}
 .brx-os-print-confirmed{font-size:20px;font-weight:750;color:#17734b;margin:4px 0 9px}
 .brx-os-print-success>p:not(:first-child){color:#52647e}
 .brx-os-print-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:18px 0}
 .brx-os-print-actions .btn{min-width:160px}
 .os-cash-queue .action-group{align-items:center}
}
@media print{
 #print-area .brx-os-note-sheet h1{text-align:center;font-size:19px;margin:7mm 0 7mm}
 #print-area .brx-os-note-payment{margin-top:9mm;break-inside:avoid}
 #print-area .brx-os-note-payment-line{display:flex;justify-content:space-between;gap:8mm;padding:2.5mm 1mm;border-bottom:1px solid #e4e9f0;font-size:11px}
 #print-area .brx-os-note-payment-total{font-weight:750;background:#f6f8fb}
}

/* BRX v0.7.15 — Comissões: painel resumido, histórico opcional. */
@media screen{
.brx-comm-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 15px}
.brx-comm-summary>div{padding:12px;background:#f2f6fc;border-radius:10px;display:flex;flex-direction:column;gap:6px}
.brx-comm-summary small{color:#687b97;font-size:12px;font-weight:600}
.brx-comm-summary strong{font-size:20px;color:#214fb4}
.brx-comm-history{margin-top:15px}.brx-comm-history summary{font-weight:600;color:#38577a;cursor:pointer}
.brx-comm-history .table-wrap{margin-top:10px}
.brx-comm-note{margin-top:10px;font-size:12px}
.brx-comm-pay-header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:15px}
@media(max-width:620px){.brx-comm-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.brx-comm-summary strong{font-size:18px}}
}
@media screen and (min-width:1100px){.brx-fin-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media screen and (min-width:681px) and (max-width:1099px){.brx-fin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* BRX v0.7.16 — Competência mensal, visualização pessoal read-only. */
@media screen{
.brx-comm-month-field{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:600;color:#37506e}
.brx-comm-month-field input{max-width:175px;min-width:135px}
.brx-commissions-panel .panel-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
@media(max-width:620px){.brx-comm-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
}
/* v0.7.18 categorias e campos de celular: blocos discretos, só quando necessários */
.brx-categories-settings>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.brx-categories-settings>summary::-webkit-details-marker{display:none}
.brx-category-content{margin-top:16px}
.brx-category-top,.brx-category-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.brx-category-top{margin-bottom:12px}.brx-category-row{padding:10px 0;border-bottom:1px solid var(--line, #e3e3e3)}
.brx-category-actions{display:flex;gap:12px;align-items:center}.brx-category-archive{margin-top:12px}
.brx-phone-fields{padding:12px 14px;border:1px solid var(--line, #e0e0e0);border-radius:10px;background:var(--surface-soft,#fafafa)}
.brx-phone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.brx-phone-used-fields{margin-top:14px}.brx-phone-checks{display:flex;gap:12px 16px;flex-wrap:wrap;margin:10px 0 12px}
.brx-phone-checks label{display:flex;align-items:center;gap:6px;font-size:0.95rem}.brx-phone-checks input{width:18px;height:18px}
.brx-phone-mini summary{cursor:pointer;font-size:0.9em}.brx-phone-inventory{margin-top:3px}
@media(max-width:520px){.brx-phone-grid{grid-template-columns:1fr}.brx-category-row{align-items:flex-start}.brx-category-actions{flex-wrap:wrap}}
/* BRX v0.7.19 — GB sempre visível, sem digitar letras. */
.brx-gb-control{display:flex;align-items:stretch;width:100%;border:1px solid var(--border,#ccd2da);border-radius:8px;overflow:hidden;background:var(--surface,#fff)}
.brx-gb-control input{border:0!important;min-width:0;width:100%;flex:1;box-shadow:none!important;background:transparent}
.brx-gb-control span{display:flex;align-items:center;justify-content:center;min-width:46px;padding:0 12px;background:#edf1f6;color:#415269;font-weight:700;font-size:.85rem;border-left:1px solid #d4dce5}
.brx-gb-control:focus-within{outline:2px solid #2458c666;outline-offset:1px}

/* BRX v0.7.23 — filtros, ações e campos alinhados; sem alteração do impresso. */
@media screen{
 .stock-top.stock-filter-bar{display:grid;grid-template-columns:minmax(200px,1.3fr) minmax(160px,1fr) minmax(160px,1fr) auto auto;align-items:end;column-gap:12px;row-gap:12px}
 .stock-filter-bar .stock-filter-label{min-width:0;width:100%;max-width:none;margin:0;gap:6px;align-self:stretch;justify-content:flex-end;font-size:14px;line-height:1.35}
 .stock-filter-bar .stock-filter-label .search,.stock-filter-bar .stock-filter-label select{width:100%;max-width:none;min-width:0;height:47px;min-height:47px;margin:0;padding:9px 12px;line-height:1.3;font-size:16px}
 .stock-filter-bar .stock-count{align-self:end;min-height:47px;display:flex;align-items:center;white-space:nowrap;font-size:13px}
 .stock-filter-bar>.btn{align-self:end;min-height:47px;height:47px;white-space:nowrap;padding:8px 12px;font-size:14px}
 .stock-action-group{display:grid;grid-template-columns:repeat(2,max-content);column-gap:13px;row-gap:8px;align-content:center;align-items:center}
 .stock-action-group .link{padding:4px 0;text-align:left;white-space:nowrap;font-size:14px}
}
@media screen and (max-width:1360px){
 .stock-top.stock-filter-bar{grid-template-columns:minmax(210px,1.5fr) minmax(175px,1fr) minmax(175px,1fr)}
 .stock-filter-bar .stock-count,.stock-filter-bar>.btn{grid-row:2;min-height:43px;height:43px}
 .stock-filter-bar .stock-count{grid-column:1/3;justify-content:flex-start}
 .stock-filter-bar>.btn{grid-column:3}
}
@media screen and (max-width:800px){
 .stock-top.stock-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .stock-filter-bar .stock-search-label{grid-column:1/-1}
 .stock-filter-bar .stock-count,.stock-filter-bar>.btn{grid-row:auto;grid-column:auto}
 .stock-filter-bar .stock-count{white-space:normal}
}
@media screen and (max-width:440px){
 .stock-top.stock-filter-bar{grid-template-columns:1fr}
 .stock-filter-bar .stock-search-label,.stock-filter-bar .stock-count,.stock-filter-bar>.btn{grid-column:1}
 .stock-action-group{grid-template-columns:repeat(2,max-content)}
}

/* BRX v0.7.25: filtros de estoque, corrigindo a classe .search antiga com flex-grow no input. */
@media screen {
 .stock-top.stock-filter-bar {align-items:end;}
 .stock-filter-bar .stock-search-label{display:flex;flex-direction:column;align-self:end;height:auto;min-height:0;justify-content:flex-start;}
 .stock-filter-bar .stock-search-label input#stock-search{
  display:block!important;flex:none!important;flex-grow:0!important;flex-shrink:0!important;
  box-sizing:border-box!important;height:47px!important;min-height:47px!important;max-height:47px!important;
  width:100%!important;min-width:0!important;margin:0!important;line-height:normal!important;
 }
 .cash-pin-settings{max-width:800px}
 .cash-pin-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}
 .cash-pin-panel .field{min-width:0}
 .cash-pin-panel .cash-pin-wide{grid-column:1/-1}
 .cash-pin-panel .form-actions{grid-column:1/-1;margin-top:2px}
}
@media screen and (max-width:720px){.cash-pin-panel{grid-template-columns:1fr}}

/* BRX v0.7.26 — Configurações expansíveis e listas internas com lote de 20 */
@media screen {
 #screen .settings-panel.brx-settings-accordion{max-width:none;padding:0;overflow:visible;}
 #screen .brx-settings-accordion>summary{
  display:flex;align-items:center;justify-content:space-between;
  cursor:pointer;gap:14px;min-height:61px;padding:16px 21px;
  list-style:none;user-select:none;color:#263e60;
 }
 #screen .brx-settings-accordion>summary::-webkit-details-marker{display:none}
 #screen .brx-settings-accordion>summary::after{
  content:'⌄';font-size:25px;color:#567398;line-height:1;
  transform:rotate(0deg);transition:transform .14s ease;flex:none;
 }
 #screen .brx-settings-accordion[open]>summary::after{transform:rotate(180deg)}
 #screen .brx-settings-accordion>summary h2{font-size:20px;line-height:1.35;margin:0}
 #screen .brx-settings-accordion>summary strong{font-size:20px;line-height:1.35}
 #screen .brx-settings-accordion>summary .subtle{margin-left:auto;font-size:13px}
 #screen .brx-settings-accordion>summary:hover{background:#f6f9fe;border-radius:14px}
 #screen .brx-settings-accordion>summary:focus-visible{outline:3px solid #5e88ee;outline-offset:2px;border-radius:10px}
 #screen .brx-settings-accordion[open]>summary{border-bottom:1px solid #e7edf6}
 #screen .brx-settings-body,#screen .brx-settings-accordion>.brx-category-content{padding:18px 21px 21px}
 #screen .brx-settings-body>.panel-header{margin:0 0 14px}
 #screen .brx-settings-body>p:first-child{margin-top:0}
 #screen .brx-settings-accordion>.brx-category-content{margin-top:0}
 /* O catálogo CPX usa paginação própria no servidor (50 por página),
    mas também fica contido e rolável dentro do card. */
 #screen .panel .table-wrap:has(#cpx-table){max-height:min(710px,69vh);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
 #screen .panel .table-wrap:has(#cpx-table) thead th{position:sticky;top:0;z-index:1;background:#f8fafc}
 #screen .panel .table-wrap.brx-list-scroll{
  display:block;max-height:min(710px,69vh);overflow:auto;overscroll-behavior:contain;
  scrollbar-gutter:stable;scrollbar-width:thin;border:1px solid #e9eef5;border-radius:10px;
 }
 #screen .panel .table-wrap.brx-list-scroll table{min-width:100%;}
 #screen .panel .table-wrap.brx-list-scroll thead th{
  position:sticky;top:0;z-index:1;background:#f8fafc;box-shadow:0 1px 0 #e5eaf2;
 }
 #screen .panel .brx-category-list.brx-list-scroll,
 #screen .panel .brx-alert-list.brx-list-scroll,
 #screen .panel .cash-session-list.brx-list-scroll,
 #screen .panel .brx-mgmt-staff.brx-list-scroll{
  max-height:min(690px,65vh);overflow:auto;overscroll-behavior:contain;
  scrollbar-width:thin;scrollbar-gutter:stable;padding-right:7px;
 }
 #screen .brx-list-progress{color:#66778e;font-size:13px;padding:9px 2px 3px;line-height:1.4}
 #screen .panel .brx-list-scroll:focus-visible{outline:2px solid #2458c6;outline-offset:2px}
}
@media screen and (max-width:680px){
 /* O catálogo CPX usa paginação própria no servidor (50 por página),
    mas também fica contido e rolável dentro do card. */
 #screen .panel .table-wrap:has(#cpx-table){max-height:min(710px,69vh);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
 #screen .panel .table-wrap:has(#cpx-table) thead th{position:sticky;top:0;z-index:1;background:#f8fafc}
 #screen .panel .table-wrap.brx-list-scroll{max-height:63vh;scrollbar-gutter:auto}
 #screen .brx-settings-accordion>summary{padding:14px 16px}
 #screen .brx-settings-body,#screen .brx-settings-accordion>.brx-category-content{padding:14px 16px 18px}
 #screen .brx-settings-accordion>summary h2,#screen .brx-settings-accordion>summary strong{font-size:18px}
 #screen .brx-settings-accordion>summary .subtle{font-size:12px}
}

/* BRX v0.7.27 — histórico de estornos, rolagem interna e confirmação legível. */
.brx-refund-history{max-height:390px;overflow:auto;overscroll-behavior:contain}
.brx-refund-check{display:flex;align-items:flex-start;gap:10px;margin-top:16px;font-size:13px;line-height:1.45;color:#374c65;font-weight:600}
.brx-refund-check input{width:19px;height:19px;flex:0 0 auto;accent-color:#2458c6}
#brx-pdv-refund-form .info-message{line-height:1.6}
#brx-pdv-history-search{max-width:460px}
@media(max-width:680px){.brx-refund-history{max-height:320px}#brx-pdv-history-search{max-width:100%}}

/* BRX v0.7.28: confirmação explícita do troco na abertura do Caixa Geral. */
.cash-open-dialog{display:grid;gap:14px;max-width:540px}
.cash-open-dialog>.field{max-width:100%}
.cash-open-dialog .form-actions{justify-content:flex-end}
.cash-open-dialog .btn{min-height:45px}
@media(max-width:600px){.cash-open-dialog .form-actions{display:grid;grid-template-columns:1fr;gap:8px}.cash-open-dialog .form-actions .btn{width:100%}}

/* v0.7.32 — formulário de troca com campos claros em duas colunas. */
#brx-exchange-form .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#brx-exchange-form #brx-exchange-totals{line-height:1.65;}
#brx-exchange-form select,#brx-exchange-form input,#brx-exchange-form textarea{max-width:100%;min-width:0;}
@media(max-width:520px){#brx-exchange-form .form-row{grid-template-columns:1fr;}}


/* BRX v0.7.35 — OS finalizadas ainda aguardando retirada, card enxuto. */
.brx-pickup-dashboard .panel-header{flex-wrap:wrap}
.brx-pickup-dashboard .panel-header .subtle{margin:5px 0 0;font-size:13px}
.brx-pickup-list{display:grid;gap:0}
.brx-pickup-item{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 2px;border-top:1px solid #eef2f7}
.brx-pickup-item>div{display:grid;min-width:0;gap:4px}
.brx-pickup-item strong{font-size:14px;overflow-wrap:anywhere}
.brx-pickup-item .subtle{font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.brx-pickup-item .link{white-space:nowrap;flex-shrink:0;min-height:34px}
.brx-pickup-more{font-size:12px;margin:10px 0 0}
@media(max-width:680px){
 .brx-pickup-dashboard .panel-header{align-items:stretch}
 .brx-pickup-dashboard .panel-header .btn{width:100%}
 .brx-pickup-item strong{font-size:13px}
}

/* BRX v0.7.36 — documentos da OS por unidade, card compacto */
#os-doc-settings-panel .brx-doc-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#os-doc-settings-panel .brx-doc-fields .full{grid-column:1/-1}
#os-doc-settings-panel .brx-doc-fields textarea{width:100%;resize:vertical;line-height:1.5;min-height:115px}
.brx-doc-logo-settings{display:flex;align-items:center;gap:18px;margin:15px 0}
.brx-doc-logo-preview{width:180px;height:86px;border:1px solid #d8e1ef;border-radius:10px;display:grid;place-items:center;overflow:hidden;background:#f8fafd;flex-shrink:0}
.brx-doc-logo-preview img{max-height:78px;max-width:174px;object-fit:contain}
.brx-doc-logo-settings .field{flex:1;min-width:0}
.brx-os-print-header{display:grid!important;grid-template-columns:41mm minmax(0,1fr) 31mm;align-items:center!important;gap:4mm;margin-bottom:2mm!important;min-height:18mm;}
.brx-os-brand{display:flex;align-items:center;justify-content:flex-start;width:41mm;height:17mm;overflow:hidden}
.brx-os-brand img{max-width:40mm;max-height:16mm;width:auto;height:auto;object-fit:contain}
.brx-os-contact{display:flex;flex-direction:column;justify-content:center;font-size:8px;line-height:1.27;color:#333;min-width:0;overflow-wrap:anywhere}
.brx-os-contact strong{font-size:10px;color:#213b77}
.brx-os-print-header .number{font-size:14px;text-align:right;white-space:nowrap;align-self:center}
.os-summary-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.os-summary-top>div{min-width:0}
.brx-editable-guarantee{white-space:pre-line}
@media(max-width:700px){#os-doc-settings-panel .brx-doc-fields{grid-template-columns:1fr} .brx-doc-logo-settings{flex-direction:column;align-items:stretch}.os-summary-top{grid-template-columns:1fr 1fr}}
@media print{.brx-os-print-header{grid-template-columns:38mm minmax(0,1fr) 31mm;gap:3mm;min-height:16mm;margin-bottom:1mm!important}.brx-os-brand{width:38mm;height:15mm}.brx-os-brand img{max-width:37mm;max-height:14mm}.brx-os-contact{font-size:7.2px}.brx-os-contact strong{font-size:9px}}

/* Nota comercial da OS: mesmo cabeçalho em três posições. */
.brx-doc-remove-logo{display:flex;align-items:center;gap:9px;font-size:12px;margin:7px 0 13px;color:#344561;cursor:pointer}
@media print{.brx-os-note-sheet .brx-os-note-header{display:grid;grid-template-columns:41mm minmax(0,1fr) 35mm;gap:5mm;align-items:center}.brx-os-note-brand{height:22mm;display:flex;align-items:center;justify-content:flex-start}.brx-os-note-brand img{max-width:39mm;max-height:21mm;object-fit:contain}.brx-os-note-contact{display:flex;flex-direction:column;gap:1mm;overflow-wrap:anywhere;font-size:9px;color:#334155}.brx-os-note-contact b{font-size:12px;color:#173e83}}

@media print{.os-section .os-line-wide{grid-column:1/-1}}

/* Ajuste de densidade para manter termo editado integralmente acima das assinaturas.
   Nunca truncar o texto legal da OS. */
@media print{
 .os-copy.brx-os-dense .os-header{margin-bottom:0!important;min-height:14mm}
 .os-copy.brx-os-dense .os-title{font-size:10px;padding:1px}
 .os-copy.brx-os-dense .os-section{margin:1px 0;gap:1px}
 .os-copy.brx-os-dense .os-section .os-line{min-height:9px;padding:1px 0}
 .os-copy.brx-os-dense .os-budget{margin:2px 0 1px}
 .os-copy.brx-os-dense .os-budget-row{padding:1px 3px;line-height:1.05}
 .os-copy.brx-os-dense .os-checklist{padding:2px;margin:1px 0}
 .os-copy.brx-os-dense .os-check-grid{gap:1px}
 .os-copy.brx-os-dense .os-approval-note{margin-top:1px;padding:1px 0}
 .os-copy.brx-os-dense .os-legal{font-size:6.9px;line-height:1.17;margin:1px 0}
}

/* BRX v0.7.37 — tipografia de OS impressa ampliada conforme homologação.
   Não modifica os demais documentos, incluindo a nota comercial/garantia. */
@media print {
  #print-area .os-sheet {font-size:11px;line-height:1.12;color:#111;}
  #print-area .os-copy {font-size:11px;line-height:1.12;padding:1.8mm 3mm;overflow:visible;}
  #print-area .os-copy .os-main-content {max-height:none;}
  #print-area .os-copy .brx-os-print-header,
  #print-area .os-copy.brx-os-dense .os-header {
    display:grid!important;grid-template-columns:36mm minmax(0,1fr) 28mm;
    gap:2.2mm;min-height:13.2mm;margin:0 0 0.6mm!important;align-items:center;
  }
  #print-area .os-copy .brx-os-brand{width:36mm;height:13.5mm;}
  #print-area .os-copy .brx-os-brand img{max-width:35mm;max-height:13mm;}
  #print-area .os-copy .brx-os-contact{font-size:10px;line-height:1.08;gap:0;}
  #print-area .os-copy .brx-os-contact strong{font-size:11px;line-height:1.1;}
  #print-area .os-copy .brx-os-print-header .number{font-size:16px;line-height:1.12;}
  #print-area .os-copy .brx-os-print-header .number small{font-size:10px;}
  #print-area .os-copy .os-title,
  #print-area .os-copy.brx-os-dense .os-title{font-size:13px;line-height:1.08;padding:1px;margin:0;}
  #print-area .os-copy .os-section,
  #print-area .os-copy.brx-os-dense .os-section {grid-template-columns:1fr 1fr;gap:0 3mm;margin:1px 0;}
  #print-area .os-copy .os-line,
  #print-area .os-copy.brx-os-dense .os-section .os-line {font-size:11px;min-height:0;padding:1px 0;line-height:1.12;overflow-wrap:anywhere;}
  #print-area .os-copy .os-budget,
  #print-area .os-copy.brx-os-dense .os-budget {
    display:grid;grid-template-columns:1fr 1fr;gap:0 2mm;
    font-size:10px;margin:1.5px 0;border:1px solid #929cab;
  }
  #print-area .os-copy .os-budget-head{grid-column:1/-1;font-size:10px;padding:1px 3px;}
  #print-area .os-copy .os-budget-row,
  #print-area .os-copy.brx-os-dense .os-budget-row{
    font-size:10px;line-height:1.12;padding:1px 3px;min-width:0;gap:3px;
  }
  #print-area .os-copy .os-budget-row span{display:block;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;}
  #print-area .os-copy .os-budget-total{grid-column:1/-1;font-size:11px;padding:1.5px 3px;line-height:1.1;}
  #print-area .os-copy .os-budget-more{grid-column:1/-1;font-size:9px;padding:1px 3px;}
  #print-area .os-copy .os-checklist,
  #print-area .os-copy.brx-os-dense .os-checklist {font-size:11px;padding:2px 3px;margin:2px 0;line-height:1.12;}
  #print-area .os-copy .os-checklist-head {font-size:11px;margin:0 0 1px;}
  #print-area .os-copy .os-check-grid,
  #print-area .os-copy.brx-os-dense .os-check-grid{gap:1px 2mm;}
  #print-area .os-copy .os-approval-note,
  #print-area .os-copy.brx-os-dense .os-approval-note{font-size:10px;line-height:1.12;margin:1px 0;padding:1px 0;}
  #print-area .os-copy .os-legal {font-size:9px;line-height:1.18;margin:2px 0;text-align:justify;overflow-wrap:break-word;}
  #print-area .os-copy.brx-os-dense .os-legal {font-size:8.5px;line-height:1.12;margin:1px 0;text-align:justify;overflow-wrap:break-word;}
  #print-area .os-copy .os-print-footer{left:3mm;right:3mm;bottom:5mm;}
  #print-area .os-copy .os-print-footer.with-pattern{height:29mm;}
  #print-area .os-copy .os-print-footer.client-copy{height:13mm;bottom:6mm;}
  #print-area .os-copy .os-print-footer .signature,
  #print-area .os-copy .os-print-footer.with-pattern .signature,
  #print-area .os-copy .os-print-footer.client-copy .signature{font-size:10px;line-height:1.12;padding-top:2px;}
  #print-area .os-copy .password-line {font-size:10px;}
  #print-area .os-copy .cut-note{font-size:9px;}
}


/* BRX v0.7.38 — Via da loja: assinaturas de cliente e técnico lado a lado
   na linha inferior, antes da senha de nove pontos. A via do cliente não muda. */
@media print {
  #print-area .os-copy .os-print-footer.with-pattern {gap:5mm;}
  #print-area .os-copy .os-print-footer.with-pattern .os-signature-row {
    display:flex; flex-direction:row; width:auto; height:auto; flex:1 1 auto;
    min-width:0; align-items:flex-end; justify-content:space-between;
    gap:6mm; margin:0; padding:0;
  }
  #print-area .os-copy .os-print-footer.with-pattern .signature {
    width:auto; max-width:none; min-width:0; flex:1 1 0;
    margin:0; font-size:10px; line-height:1.12; white-space:normal;
    overflow-wrap:anywhere; text-align:center;
  }
  #print-area .os-copy .os-print-footer.with-pattern .os-password {
    flex:0 0 39mm; width:39mm; min-width:39mm; margin:0;
  }
}

/* BRX 0.7.39 — aviso de retirada simples, sem abrir novos painéis. */
.brx-os-wa-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.brx-os-wa-inline small{font-size:.82rem;color:var(--muted,#65758c)}
.brx-os-wa .field textarea{min-height:110px;line-height:1.5;resize:vertical;width:100%}
.brx-os-wa-note{font-size:.91rem;color:var(--muted,#58677e);line-height:1.45}
.brx-os-wa .form-actions{display:flex;flex-wrap:wrap;gap:9px}
.brx-os-wa .form-actions .btn{min-width:145px}
@media(max-width:600px){.brx-os-wa .form-actions .btn{flex:1 1 100%}.brx-os-wa-inline .btn{width:100%}}


/* BRX v0.7.40 — Situação dos avisos sem criar um módulo adicional. */
.brx-pickup-state{font-size:12px;line-height:1.3;font-weight:650;letter-spacing:.01em}
.brx-pickup-state.waiting,.brx-os-notice-hint.is-waiting{color:#9a5809}
.brx-pickup-state.confirmed,.brx-os-notice-hint.is-confirmed{color:#24654d}
.brx-pickup-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;justify-content:flex-end;flex-shrink:0}
.brx-pickup-actions .link{white-space:nowrap;min-height:34px}
.brx-os-notice-hint{font-size:11px;line-height:1.4;font-weight:650;margin-top:4px;white-space:nowrap}
@media(max-width:560px){
 .brx-pickup-item{align-items:flex-start;flex-wrap:wrap;gap:5px}
 .brx-pickup-actions{justify-content:flex-start;margin-top:4px;width:100%}
 .brx-pickup-state{font-size:11px}
}

/* v0.7.41 — busca única de clientes, sem novos painéis ou menus. */
.brx-customer-quicksearch{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.brx-customer-quicksearch label{width:100%;font-size:14px;font-weight:600;margin:0}
.brx-customer-quicksearch .search{height:46px;min-height:46px;max-height:46px;min-width:0;width:min(440px,100%);flex:0 1 440px;box-sizing:border-box}
.brx-customer-result-count{white-space:nowrap;align-self:center}
@media(max-width:650px){.brx-customer-quicksearch{gap:7px}.brx-customer-quicksearch .search{width:100%;flex:1 1 100%}.brx-customer-result-count{width:100%}}

/* BRX v0.7.42: listas e backup compactos */
.brx-stock-history-scroll {max-height: min(54vh, 480px);overflow:auto;}
.brx-backup-choice{display:flex;gap:9px;align-items:center;font-size:14px;padding:12px 0;}
.brx-backup-choice input{width:18px;height:18px;flex-shrink:0;}
#brx-backup-progress,#brx-backup-validation{overflow-wrap:anywhere;line-height:1.5;}
#brx-backup-validation{font-weight:600;}
@media(max-width:520px){.brx-backup-choice{align-items:flex-start;}}
/* v0.7.49 — NF-e: apenas um botão novo e uma revisão compacta. */
.brx-stock-heading-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.brx-nfe-upload{padding:4px 0 12px}
.brx-nfe-upload .field{display:grid;gap:8px}
.brx-nfe-upload input[type=file]{min-height:44px;padding:9px;max-width:100%}
#brx-nfe-status{font-size:13px;margin:8px 0;color:#37659b}
.brx-nfe-meta{display:grid;gap:5px;margin:8px 0 12px;font-size:14px}
.brx-nfe-meta span{color:#596b82}
.brx-nfe-meta small{color:#67778c;overflow-wrap:anywhere}
.brx-nfe-items{display:grid;gap:9px;margin:12px 0;max-height:46vh;overflow:auto}
.brx-nfe-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(185px,40%);gap:10px;padding:12px;border:1px solid #e0e7f0;border-radius:10px;background:#fff;align-items:center}
.brx-nfe-item span{display:grid;gap:5px;min-width:0}
.brx-nfe-item strong{font-size:13px;overflow-wrap:anywhere}
.brx-nfe-item small{color:#65748a;font-size:12px;overflow-wrap:anywhere}
.brx-nfe-item select{min-width:0;max-width:100%;width:100%;padding:9px;border-radius:8px;border:1px solid #cbd7e7}
.brx-nfe-error{color:#a42b36!important;font-size:13px}
.brx-nfe-footer{border-top:1px solid #e5ebf4;padding-top:14px;display:grid;gap:12px;font-size:13px}
.brx-nfe-footer .form-actions{margin:0;justify-content:flex-end}
@media(max-width:720px){.brx-nfe-item{grid-template-columns:1fr}.brx-stock-heading-actions{justify-content:flex-start}}

/* v0.7.50 — Prévia didática da NF-e, sem lançamento */
#brx-nfe-confirm:disabled{opacity:.6;cursor:not-allowed}

/* v0.7.52 — manter o estoque legível com exportação em um único grupo de ações */
@media screen {
 .brx-stock-filter-actions{display:flex;gap:8px;align-items:end;justify-content:flex-end;flex-wrap:wrap;min-width:0;align-self:end}
 .brx-stock-filter-actions .btn{min-height:47px;white-space:nowrap;padding:9px 12px;font-size:14px}
 .stock-top.stock-filter-bar>.brx-stock-filter-actions{min-width:0}
}
@media screen and (max-width:1360px){
 .stock-filter-bar>.brx-stock-filter-actions{grid-column:3;grid-row:2;justify-content:flex-end}
}
@media screen and (max-width:800px){
 .stock-filter-bar>.brx-stock-filter-actions{grid-column:auto;grid-row:auto;justify-content:flex-end}
}
@media screen and (max-width:440px){
 .stock-filter-bar>.brx-stock-filter-actions{grid-column:1;grid-row:auto;justify-content:stretch}
 .brx-stock-filter-actions .btn{flex:1 1 135px;min-width:0;font-size:13px}
}

/* BRX v0.7.54 — confirmação discreta de leitura de código no PDV. */
.brx-pdv-scan-feedback{margin:6px 0 9px;font-size:14px;color:#526781;min-height:20px;line-height:1.4}
.brx-pdv-scan-feedback[data-kind="success"]{color:#166534;font-weight:700}
.brx-pdv-scan-feedback[data-kind="error"]{color:#a32b32;font-weight:700}

/* BRX 0.7.55: comprovante A4 de fechamento de caixa. */
@media print {
 #print-area .brx-cash-close-sheet{max-width:190mm;margin:0 auto;padding:7mm;font-family:Arial,sans-serif;color:#111;font-size:12px;line-height:1.35}
 #print-area .brx-cash-close-sheet header{display:flex;align-items:center;justify-content:space-between;gap:8mm;border-bottom:2px solid #1d4eae;padding-bottom:4mm}
 #print-area .brx-cash-close-sheet header strong{font-size:16px;color:#1d4eae}
 #print-area .brx-cash-close-sheet header span{font-size:9px;color:#555}
 #print-area .brx-cash-close-sheet h1{font-size:18px;text-align:center;margin:7mm 0 5mm}
 #print-area .brx-cash-close-sheet h2{font-size:13px;margin:6mm 0 2mm}
 #print-area .brx-cash-close-meta{display:grid;grid-template-columns:1fr 1fr;gap:2mm 5mm;border:1px solid #d9dee8;padding:4mm}
 #print-area .brx-cash-close-sheet table{width:100%;border-collapse:collapse;font-size:11px}
 #print-area .brx-cash-close-sheet th,#print-area .brx-cash-close-sheet td{padding:2mm;border-bottom:1px solid #dde2ea;text-align:left;line-height:1.3}
 #print-area .brx-cash-close-sheet th:last-child,#print-area .brx-cash-close-sheet td:last-child{text-align:right}
 #print-area .brx-cash-close-totals{border:1px solid #333;margin-top:6mm;break-inside:avoid}
 #print-area .brx-cash-close-totals>div{padding:3mm 4mm;display:flex;justify-content:space-between;gap:6mm;border-bottom:1px solid #ccc}
 #print-area .brx-cash-close-totals>div:last-child{border-bottom:0;font-size:14px}
 #print-area .brx-cash-close-totals>div.ok{background:#f1f5f9}
 #print-area .brx-cash-close-totals>div.difference{background:#fff3ec}
 #print-area .brx-cash-close-note{margin-top:6mm;break-inside:avoid;overflow-wrap:anywhere}
 #print-area .brx-cash-close-note p{margin-top:2mm;white-space:pre-wrap}
 #print-area .brx-cash-close-sheet footer{margin-top:9mm;padding-top:3mm;border-top:1px solid #aaa;color:#555;font-size:10px;text-align:center;line-height:1.7}
}

/* BRX 0.7.56: contagem opcional de cedulas/moedas sem expor saldo esperado */
.brx-cash-counter{min-width:260px;flex:1 1 100%;align-self:stretch}
.brx-cash-counter-toggle{padding:9px 0;text-align:left}
.brx-cash-counter-panel{background:#f8fafc;border:1px solid #e3eaf4;border-radius:12px;padding:15px;margin:6px 0 12px}
.brx-cash-counter-panel[hidden]{display:none}
.brx-cash-counter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:13px}
.brx-cash-counter-row{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:650;color:#3e5270}
.brx-cash-counter-row input{width:100%;min-width:0;border:1px solid #dce4ed;border-radius:9px;padding:10px 12px;font-size:16px;background:#fff;color:#26354a}
.brx-cash-counter-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;border-top:1px solid #e1e8f1;padding-top:14px}
.brx-cash-counter-bottom>div{display:flex;flex-direction:column;gap:3px}
.brx-cash-counter-bottom strong{font-size:23px;color:#2458c6}
.brx-cash-counter-error{color:#a72b2b;max-width:330px}
@media(max-width:620px){.brx-cash-counter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brx-cash-counter-bottom .btn{width:100%;white-space:normal}}

/* BRX v0.7.57: consultar fechamentos antigos sem novo menu */
.brx-cash-history-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:5px 0 15px}
.brx-cash-history-form .field{flex:1 1 145px;min-width:145px}
.brx-cash-history-form .btn{min-height:41px}
.brx-cash-history-table{margin-top:12px;max-height:53vh;overflow:auto}
.brx-cash-history-nav{display:flex;justify-content:space-between;gap:10px;margin-top:13px}
.brx-cash-history-nav button[hidden]{display:none}
@media(max-width:620px){.brx-cash-history-form .field{flex:1 1 100%}.brx-cash-history-form .btn{width:100%}.brx-cash-history-table{max-height:48vh}}

/* v0.7.59 — detalhes e pesquisa de vendas antigas */
.brx-sales-history-header{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.brx-sales-history-header .btn{min-height:40px}.brx-sales-details-cell{background:var(--surface,#f5f8ff);padding:16px!important}.brx-sales-details-cell .table-wrap{margin-top:12px}.brx-sales-details-cell .subtle{margin-bottom:2px}@media(max-width:680px){.brx-sales-history-header{width:100%}.brx-sales-history-header .btn{width:100%}}

/* BRX v0.7.61: filtros simples de vencimentos sem alterar lançamentos */
.brx-fin-due-searchrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 14px}
.brx-fin-due-searchlabel{flex-wrap:wrap}
.brx-fin-due-searchlabel input{min-height:44px;min-width:min(260px,75vw);max-width:100%;padding:9px 12px;border:1px solid #d9e2ed;border-radius:10px;background:#fff;color:#253f62;font-size:16px}
.brx-fin-due-pager{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:16px 0 4px}
.brx-fin-due-pager .btn{min-height:42px;font-size:15px}
@media(max-width:680px){.brx-fin-due-searchlabel{width:100%}.brx-fin-due-searchlabel input{width:100%;min-width:0}.brx-fin-due-pager{gap:8px}}

/* v0.7.62 — botão de exportação alinhado ao resumo sem ampliar a tela */
.brx-fin-due-searchrow #brx-fin-due-summary{flex:1;min-width:180px}
.brx-fin-due-searchrow [data-fin-due-export]{white-space:nowrap;min-height:44px;font-size:15px}
@media(max-width:680px){.brx-fin-due-searchrow [data-fin-due-export]{width:100%}}

/* BRX v0.7.63 — despesas pagas: filtros sem adicionar seção no menu. */
.brx-fin-expense-filters{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:12px 0}
.brx-fin-expense-search-label{flex:1;min-width:245px}
.brx-fin-expense-search-label input{min-width:min(230px,70vw);flex:1;min-height:44px;padding:9px 12px;border:1px solid #d9e2ed;border-radius:10px;color:#253f62;font-size:16px;background:white}
.brx-fin-expense-filters [data-fin-expense-export]{font-size:15px;min-height:44px;white-space:nowrap}
#brx-fin-expense-summary{margin:8px 0 12px}
@media(max-width:680px){.brx-fin-expense-filters{align-items:stretch;flex-direction:column}.brx-fin-expense-search-label{width:100%;min-width:0;flex-wrap:wrap}.brx-fin-expense-search-label input{min-width:0;width:100%}.brx-fin-expense-filters [data-fin-expense-export]{width:100%}}

/* BRX v0.7.64: resumo gerencial recolhível; sem novos menus e sem novos dados. */
#screen details.brx-fin-breakdown{padding:0;overflow:visible}
#screen .brx-fin-breakdown>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;cursor:pointer;list-style:none;padding:18px 20px;font-size:18px;font-weight:750;color:#233d68}
#screen .brx-fin-breakdown>summary::-webkit-details-marker{display:none}
#screen .brx-fin-breakdown>summary:before{content:'▸';color:#3565ab;margin-right:2px}
#screen .brx-fin-breakdown[open]>summary:before{content:'▾'}
#screen .brx-fin-breakdown>summary .subtle{font-size:15px;font-weight:500;flex:1;text-align:right}
.brx-fin-breakdown-body{padding:0 20px 20px}
.brx-fin-breakdown-list{display:grid;gap:16px;margin:16px 0}
.brx-fin-breakdown-item{min-width:0}
.brx-fin-breakdown-label{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:7px;font-size:16px}
.brx-fin-breakdown-label>strong{overflow-wrap:anywhere}
.brx-fin-breakdown-label>span{color:#526582;white-space:normal}
.brx-fin-breakdown-track{height:11px;background:#e8edf5;border-radius:999px;overflow:hidden}
.brx-fin-breakdown-track>div{height:100%;background:#3266c2;border-radius:999px;max-width:100%}
.brx-fin-breakdown-foot{margin-top:16px;padding-top:12px;border-top:1px solid #e3eaf3}
@media(max-width:600px){#screen .brx-fin-breakdown>summary{padding:16px;align-items:flex-start}#screen .brx-fin-breakdown>summary .subtle{text-align:left;flex-basis:100%}.brx-fin-breakdown-body{padding:0 16px 16px}.brx-fin-breakdown-label{font-size:15px}}

/* BRX v0.7.65: conferência por categoria a partir do resumo, sem novas telas. */
#screen .brx-fin-category-drill{display:inline-flex;margin-top:9px;align-items:center;justify-content:center;min-height:36px;font-size:13px;padding:7px 14px}
#screen .brx-fin-expense-filters select{max-width:100%;min-width:165px}
@media(max-width:600px){#screen .brx-fin-category-drill{width:100%;font-size:14px;min-height:42px}}

/* BRX v0.7.66 — previsão mensal enxuta, fechada até solicitação do usuário. */
#screen .brx-fin-forecast{margin:16px 0;border:1px solid var(--line,#d7dfeb);border-radius:12px;padding:13px 15px;background:var(--panel,#fff)}
#screen .brx-fin-forecast>summary{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;cursor:pointer;font-size:15px;list-style:disclosure-closed}
#screen .brx-fin-forecast[open]>summary{list-style:disclosure-open;margin-bottom:14px}
#screen .brx-fin-forecast table{width:100%}
#screen .brx-fin-forecast .link[disabled]{opacity:.35;cursor:default}
@media(max-width:600px){#screen .brx-fin-forecast{padding:11px}#screen .brx-fin-forecast>summary{font-size:14px}}
/* v0.7.67 — resumo compacto no histórico de ordens */
.brx-os-history-summary {padding: 8px 3px;overflow-wrap:anywhere;line-height:1.5}
.brx-os-history-summary p {margin:8px 0;font-size:inherit}
@media (max-width:600px){.brx-os-history-summary{font-size:14px}.brx-os-history-summary p{margin:7px 0}}

/* BRX v0.7.73 — OS para conferir, lista enxuta no dashboard. */
.brx-idle-dashboard{margin:16px 0}
.brx-idle-dashboard .panel-header{padding-bottom:12px}
.brx-idle-list{display:grid;gap:0}
.brx-idle-item{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #e4eaf3;padding:13px 0}
.brx-idle-info{display:flex;flex-direction:column;gap:5px;min-width:0;overflow-wrap:anywhere;font-size:16px}
.brx-idle-info strong{color:#243a5b}
.brx-idle-info .subtle{font-size:14px}
.brx-idle-age{color:#965525;font-size:14px;font-weight:700}
.brx-idle-item .link{flex-shrink:0;min-height:42px;white-space:nowrap}
.brx-idle-note{margin:13px 0 0;font-size:13px;line-height:1.55}
.brx-idle-more{margin:10px 0}
@media(max-width:620px){.brx-idle-item{align-items:flex-start;flex-wrap:wrap;gap:8px}.brx-idle-item .link{margin-left:auto}.brx-idle-info{width:100%}}

/* BRX 0.7.75 — check-up de implantação, recolhido por padrão. */
.brx-system-check{margin-top:14px}
.brx-system-check>summary{font-size:16px;font-weight:700;color:#224985;cursor:pointer;padding:6px 0}
.brx-system-check>summary:focus-visible{outline:3px solid #a4bdf5;outline-offset:4px}
.brx-system-check .subtle{margin:12px 0;line-height:1.55}
.brx-system-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}
.brx-system-actions .btn{font-size:13px}
.brx-system-status{line-height:1.5;padding:10px 0;font-size:14px;overflow-wrap:anywhere}
.brx-system-status ul{list-style:none;padding:0;margin:8px 0;display:grid;gap:7px}
.brx-system-status li{padding:9px 11px;border:1px solid #e0e7f1;border-radius:9px;background:#fcfdff}
.brx-system-ok{color:#246048}.brx-system-fail{color:#973e2c}.brx-system-skip{color:#7c6b3d}
@media(max-width:600px){.brx-system-actions{display:grid;grid-template-columns:1fr}.brx-system-actions .btn{width:100%}}
/* v0.7.76 — Desconto autorizado por item no PDV, mantendo a tela limpa. */
.brx-pdv-discount-field{min-width:132px;max-width:165px;font-size:12px;margin:0}
.brx-pdv-discount-field input{max-width:145px;font-size:15px;min-width:100px}
.brx-pdv-discount-panel{margin:12px 0;padding:12px;border:1px solid var(--line,#dce3ef);border-radius:10px}
.brx-pdv-discount-panel .field{margin:0 0 6px}
.brx-pdv-totals>div:not(.pdv-grand-total){display:flex;justify-content:space-between;gap:10px;padding:4px 8px;font-size:15px}
.brx-pdv-totals .pdv-grand-total{margin-top:7px}
@media(max-width:600px){.brx-pdv-discount-field{min-width:116px}.brx-pdv-discount-field input{min-width:108px}}

/* v0.7.77: crachá administrativo, configuração responsiva */
.brx-discount-config{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #dbe2e9}
.brx-discount-config h3{margin:0 0 .5rem}
.brx-discount-badge{max-width:480px;margin:auto;text-align:center;padding:1rem;border:1px solid #d9dfe8;border-radius:10px}
.brx-discount-barcode svg{display:block;width:100%;height:auto;max-height:140px;background:#fff;padding:8px}
.brx-discount-badge p{margin:.6rem 0}

.brx-discount-settings-fieldset{border:0;padding:0;margin:0;min-width:0}
.brx-discount-settings-fieldset:disabled{opacity:.55}
/* v0.7.82 — histórico de OS direto no cliente */
.brx-customer-os-nav{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin:12px 0 4px}
.brx-customer-os-note{margin:0 0 10px}
.brx-customer-os-table th,.brx-customer-os-table td{vertical-align:middle}
@media(max-width:600px){.brx-customer-os-nav{justify-content:stretch}.brx-customer-os-nav button{flex:1}}

/* BRX v0.7.83: histórico de compras por cliente */
.brx-client-sales-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin:12px 0 4px}
.brx-client-sales-table td,.brx-client-sales-table th{vertical-align:middle}
.brx-client-sales-note{margin:0 0 10px}
@media(max-width:600px){.brx-client-sales-nav{justify-content:stretch}.brx-client-sales-nav button{flex:1}}

/* BRX 0.7.84 — garantia na ficha de compras (somente indicação de prazo). */
.brx-customer-warranty{display:inline-block;white-space:normal;max-width:280px;font-size:.93em;line-height:1.35}
.brx-warranty-current{font-weight:600;color:#126e45}
.brx-warranty-past{color:#656b75}
@media(max-width:650px){.brx-customer-warranty{min-width:145px}.brx-sales-details-cell .table-wrap{max-width:100%;overflow-x:auto}}

/* BRX v0.7.85: contexto de retorno no formulário de OS */
.brx-os-return-context{padding:14px 16px;border:1px solid var(--border,#d4dae8);border-radius:12px;background:rgba(35,93,215,.04)}
.brx-os-return-context strong{display:block;margin-bottom:6px}
.brx-os-return-context p{margin:5px 0;overflow-wrap:anywhere;line-height:1.5}
.brx-os-return-context small{display:block;line-height:1.55;color:var(--muted,#64748b)}

/* BRX 0.7.86 — orçamento do PDV: página A4 compacta, sem ocultar os valores */
.brx-quote-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.brx-quote-actions .subtle{flex:1;min-width:220px}.brx-quote-validity{max-width:240px;margin:12px 0}.brx-quote-dialog-actions{flex-wrap:wrap}.brx-quote-modal .brx-sale-quote-sheet{border:1px solid #d8e2ef;border-radius:12px;padding:17px;margin-top:14px;max-height:54vh;overflow:auto}
.brx-sale-quote-sheet{font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.35;color:#172438;background:#fff}.brx-sale-quote-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:2px solid #2359ce;padding-bottom:10px}.brx-sale-quote-head div{display:flex;flex-direction:column;gap:5px}.brx-sale-quote-head strong{font-size:18px;color:#204894}.brx-sale-quote-head small{font-weight:700;letter-spacing:.04em}.brx-sale-quote-head img{height:19mm;max-width:65mm;object-fit:contain;object-position:left}.brx-sale-quote-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin:14px 0 17px}.brx-sale-quote-table{width:100%;border-collapse:collapse}.brx-sale-quote-table th,.brx-sale-quote-table td{padding:9px 7px;border-bottom:1px solid #d8dfe9;font-size:12px}.brx-sale-quote-table th:nth-child(n+2),.brx-sale-quote-table td:nth-child(n+2){text-align:right;white-space:nowrap}.brx-sale-quote-table small{display:block;color:#6b7b93;margin-top:2px}.brx-sale-quote-total{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 3px;margin-top:8px;font-weight:700;border-bottom:1px solid #9baec8}.brx-sale-quote-total strong{font-size:19px}.brx-sale-quote-disclaimer{font-size:10px;line-height:1.55;color:#566577;margin:15px 0 0}
@media(max-width:590px){.brx-quote-dialog-actions button{white-space:normal}.brx-sale-quote-table th,.brx-sale-quote-table td{padding:7px 4px;font-size:10px}.brx-sale-quote-head strong{font-size:14px}}
@media print{body:has(.brx-sale-quote-print) #print-area{display:block!important;margin:0 auto;width:100%!important}#print-area .brx-sale-quote-print{margin:0 auto!important;padding:5mm 6mm!important;max-width:190mm;break-inside:auto}#print-area .brx-sale-quote-print tr{break-inside:avoid}#print-area .brx-sale-quote-print .brx-sale-quote-disclaimer{break-inside:avoid}#print-area .brx-sale-quote-head img{max-height:18mm}}

/* v0.7.87 — vendas em espera no balcão */
.brx-pdv-hold-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.brx-pdv-hold-header h2{margin:0}
.brx-pdv-hold-actions{display:flex;gap:8px;flex-wrap:wrap}
.brx-pdv-hold-list{display:grid;gap:8px;margin:16px 0;max-height:54vh;overflow-y:auto}
.brx-pdv-hold-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border,#dae2f0);border-radius:10px;padding:12px;flex-wrap:wrap}
.brx-pdv-hold-row span{display:grid;gap:4px}
.brx-pdv-hold-row small{color:var(--muted,#64748b)}
@media(max-width:600px){.brx-pdv-hold-actions{width:100%}.brx-pdv-hold-actions button{flex:1;font-size:14px}.brx-pdv-hold-row .action-group{width:100%;justify-content:flex-start}}

/* BRX 0.7.90 — conferência física do estoque */
.brx-inventory-summary{font-weight:750;font-size:17px;margin:10px 0}
.brx-inventory-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:10px 0 14px}
.brx-inventory-toolbar input[type=search]{min-width:230px;flex:1;padding:10px;border:1px solid #cbd5e1;border-radius:8px}
.brx-inventory-toolbar label{display:flex;gap:7px;align-items:center;font-size:14px}
.brx-inventory-table{width:100%}.brx-inventory-table th,.brx-inventory-table td{vertical-align:middle}
.brx-inventory-qty{width:110px;max-width:100%;min-height:41px;font-size:16px;padding:8px;border:1px solid #cbd5e1;border-radius:8px}
.brx-inventory-pager{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:12px 0;flex-wrap:wrap}
.brx-inventory-pager>div{display:flex;gap:8px}.brx-inventory-actions{flex-wrap:wrap}
@media(max-width:640px){.brx-inventory-toolbar input[type=search]{min-width:100%;width:100%}.brx-inventory-table{min-width:680px}.brx-inventory-qty{width:95px}.brx-inventory-pager>div .btn{font-size:12px}}

/* BRX v0.7.92 — inventário por leitor de código de barras */
.brx-inventory-scan{display:flex;flex-direction:column;gap:6px;padding:12px 14px;margin:12px 0;border:1px solid #bfd0ee;background:#f8fbff;border-radius:10px}
.brx-inventory-scan>label{font-weight:750;font-size:15px}
.brx-inventory-scan>input{min-height:44px;padding:10px 12px;font-size:17px;border:1px solid #aebdd0;border-radius:8px;width:100%;max-width:430px}
.brx-inventory-scan>p{margin:2px 0;font-size:14px}
.brx-inventory-scan>p[data-state=error]{color:#b91c1c;font-weight:700}
.brx-inventory-scan>p[data-state=success]{color:#166534;font-weight:700}

/* BRX v0.7.93 — pesquisa completa de clientes, paginada e sem poluir a tela de balcão. */
.brx-directory{max-width:100%;font-size:14px}.brx-directory>.field{margin:14px 0}
.brx-directory #brx-directory-search{min-height:46px;font-size:16px}
.brx-directory #brx-directory-status{color:#51647f;margin:10px 0;font-size:13px;font-weight:600}
.brx-directory-toggle{display:flex;gap:8px;align-items:center;cursor:pointer;font-size:13px;margin:8px 0}
.brx-directory .table-wrap{max-width:100%;overflow-x:auto}.brx-directory th,.brx-directory td{padding:10px 8px}
.brx-directory .action-group{display:flex;gap:8px;flex-wrap:wrap;min-width:120px}
.brx-directory-pages{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.brx-directory-pages span{font-size:13px;color:#50637f}
@media(max-width:680px){.brx-directory .action-group{gap:6px}.brx-directory .action-group .link{padding:6px 2px}}

/* BRX v0.7.94 — localizar OS além do cache operacional */
.brx-os-locator{max-width:100%;font-size:14px}.brx-os-locator #brx-os-locator-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.brx-os-locator #brx-os-locator-form .form-actions{grid-column:1/-1}.brx-os-locator input{min-height:46px;font-size:16px}.brx-os-locator #brx-os-locator-status{margin:14px 0;color:#465d7e;font-weight:600}.brx-os-locator .table-wrap{overflow-x:auto}.brx-os-locator td,.brx-os-locator th{padding:9px 7px}.brx-os-locator .link{white-space:nowrap}@media(max-width:650px){.brx-os-locator #brx-os-locator-form{grid-template-columns:1fr}}

/* v0.7.97 — aviso de fechamento de caixa: sem interferir no modal operacional. */
.brx-reminder-settings h2{margin-top:0}.brx-reminder-form{display:grid;gap:13px}
.brx-reminder-fields{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brx-reminder-fields>.field{min-width:205px;max-width:270px;flex:1}
.brx-reminder-fields input[type=time]{font-size:17px;min-height:45px;width:100%;margin-top:5px}
.brx-reminder-fields>.settings-toggle{flex:2;min-width:245px}
.brx-reminder-actions{display:flex;gap:12px;flex-wrap:wrap}
.brx-reminder-actions button{white-space:normal}
.brx-close-reminder-overlay:not([hidden]){position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:15000;background:rgba(8,21,43,.72);padding:20px}
.brx-close-reminder-overlay[hidden]{display:none}
.brx-close-reminder-dialog{background:#fff;color:#223148;border-radius:21px;border:2px solid #386ed7;box-shadow:0 15px 75px rgba(0,0,0,.24);width:min(100%,500px);padding:34px 28px;text-align:center}
.brx-close-reminder-symbol{font-size:50px;line-height:1.1;margin-bottom:10px}
.brx-close-reminder-dialog h2{font-size:26px;line-height:1.25;margin:0 0 13px;color:#1949a7}
.brx-close-reminder-dialog p{font-size:17px;line-height:1.55;margin:0 0 13px}
.brx-close-reminder-dialog .brx-close-reminder-note{font-size:13px;color:#65748b}
.brx-close-reminder-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:24px}
.brx-close-reminder-actions .btn{min-height:47px;font-size:14px}
@media(max-width:600px){.brx-close-reminder-dialog{padding:25px 18px}.brx-close-reminder-dialog h2{font-size:23px}.brx-close-reminder-dialog p{font-size:16px}.brx-close-reminder-actions .btn{flex:1 1 100%}}

/* BRX 0.7.98 — simulação de crediário (não cria venda) */
.brx-credit-preview {display:grid;gap:12px;max-width:760px}
.brx-credit-preview .form-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.brx-credit-totals {display:flex;gap:14px;flex-wrap:wrap;padding:14px;background:var(--panel-bg,#f5f7fb);border-radius:12px}
.brx-credit-totals span {font-size:1rem;white-space:nowrap}
.brx-credit-preview .table-wrap {max-height:310px;overflow:auto}
@media(max-width:500px){.brx-credit-totals{display:grid;grid-template-columns:1fr}.brx-credit-preview .form-actions{flex-wrap:wrap}}

/* BRX v0.7.99: Contas a receber sem atalhos de baixa */
.brx-ar-panel .panel-header{flex-wrap:wrap}.brx-ar-panel .brx-ar-stats{margin:1rem 0}.brx-ar-filters{display:grid;grid-template-columns:minmax(180px,250px) minmax(210px,1fr);gap:12px;margin:16px 0}.brx-ar-warning{color:#a33215;display:block}.brx-ar-detail h3{margin-top:18px}
@media(max-width:640px){.brx-ar-filters{grid-template-columns:1fr}.brx-ar-panel .table-wrap{overflow-x:auto}}

/* BRX v0.7.104 — prévia sem lançamento da devolução de crédito */
.brx-credit-return{display:grid;gap:13px;font-size:15px;max-width:100%}
.brx-credit-return .table-wrap{overflow-x:auto;max-height:320px}
.brx-credit-return .table-wrap table{min-width:570px}
.brx-credit-return [data-brx-return-id]{width:96px;max-width:100%;min-height:42px;font-size:16px;border:1px solid #b7c6dd;border-radius:8px;padding:7px}
.brx-credit-return .form-actions{display:flex;flex-wrap:wrap;gap:9px}
.brx-credit-return-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px;padding:11px;border-radius:10px;background:#f4f7ff}
.brx-credit-return-metrics>div{min-width:0;padding:9px 11px;border:1px solid #d7e1f2;border-radius:8px;background:white}
.brx-credit-return-metrics span{display:block;font-size:13px;color:#4b5d78}
.brx-credit-return-metrics strong{font-size:18px;color:#17499f}
@media(max-width:560px){.brx-credit-return-metrics{grid-template-columns:1fr 1fr}.brx-credit-return .form-actions .btn{flex:1 1 100%;font-size:14px}}

/* BRX 0.7.108 — extratos e avisos de Contas a Receber */
.brx-ar-tools{margin:12px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.brx-ar-whatsapp textarea{min-height:130px;font-size:14px;line-height:1.5}
.brx-credit-statement{font:13px/1.55 Arial,sans-serif;color:#17263c;background:#fff;padding:4mm 6mm}
.brx-credit-statement h1{font-size:20px;color:#1b3592}
.brx-credit-statement table{width:100%;margin:5mm 0;font-size:12px}
.brx-credit-statement th,.brx-credit-statement td{padding:2.5mm;border-bottom:1px solid #ddd}
.brx-credit-statement-warning{font-weight:700;border-top:2px solid #1b3592;padding-top:4mm;font-size:11px}
@media(max-width:680px){.brx-ar-tools .btn,.brx-ar-tools .subtle{width:100%}}
@media print{#print-area .brx-credit-statement{display:block!important;width:100%!important;max-width:190mm!important;margin:0 auto;color:#17263c;font-size:12px}}
.brx-ar-detail .form-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}
.brx-ar-detail .form-actions button{white-space:normal}
@media(max-width:680px){.brx-ar-detail .form-actions button{flex:1 1 100%}}

/* BRX v0.7.109 — envelhecimento da carteira e registro de recebimento */
.brx-ar-aging{margin:14px 0;padding:13px;border:1px solid var(--border,#dce1ea);border-radius:12px}
.brx-ar-aging-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin:12px 0}
.brx-ar-aging-grid>div{border:1px solid #d7e1f0;border-radius:9px;padding:10px;display:flex;flex-direction:column;gap:5px}
.brx-ar-aging-grid span{font-size:13px;color:#52637a}.brx-ar-aging-grid strong{font-size:18px;color:#173e83}.brx-ar-aging-grid small{font-size:12px;color:#6c7890}
.brx-credit-receipt{font:14px/1.6 Arial,sans-serif;background:white;color:#1a2638;padding:5mm 7mm}
.brx-credit-receipt h1{font-size:19px;color:#1b3592}.brx-credit-receipt-amount{display:flex;justify-content:space-between;gap:12px;border-block:2px solid #1b3592;padding:8px 0;margin:12px 0}.brx-credit-receipt-amount strong{font-size:22px}
@media(max-width:680px){.brx-ar-aging-grid{grid-template-columns:1fr 1fr}.brx-ar-detail [data-brx-ar-print-receipt]{margin-left:6px;white-space:normal}}
@media print{#print-area .brx-credit-receipt{display:block!important;max-width:190mm!important;margin:0 auto;color:#1a2638}}

/* v0.7.112 — seleção de modo para o administrador da unidade */
.brx-operating-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:15px 0}
.brx-operating-option{text-align:left;display:flex;flex-direction:column;gap:11px;align-items:stretch;min-width:0;min-height:135px;padding:19px 18px;border:2px solid #d4e0f3;border-radius:14px;background:#fff;color:#263a59;cursor:pointer;font:inherit;line-height:1.45}
.brx-operating-option strong{font-size:20px;color:#16499c;letter-spacing:.02em}
.brx-operating-option span{font-size:15px}
.brx-operating-option.selected{border-color:#2162ca;background:#eaf2ff;box-shadow:0 0 0 2px rgba(33,98,202,.1)}
.brx-operating-option:focus-visible{outline:3px solid #2162ca;outline-offset:3px}
.brx-operating-option:disabled{opacity:.7;cursor:wait}
.brx-operating-readonly{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px;background:#eef4fe;border-radius:10px}
.brx-operating-readonly strong{color:#17499f;font-size:18px}
.brx-essential-mode .brx-advanced-settings,.brx-essential-mode [data-brx-os-history-open],.brx-essential-mode [data-export-os],.brx-essential-mode [data-toggle-archived-os],.brx-essential-mode [data-export-stock],.brx-essential-mode [data-toggle-archived-stock],.brx-essential-mode [data-toggle-archived-customers]{display:none!important}
@media(max-width:640px){.brx-operating-options{grid-template-columns:1fr}.brx-operating-option{min-height:0;padding:16px}.brx-operating-option strong{font-size:19px}}

/* BRX 0.7.113 · Conferência cega em duas etapas: PIN, prévia, justificativa e confirmação. */
.brx-close-breakdown,.brx-close-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.brx-close-breakdown>div,.brx-close-summary>div{background:var(--panel,#f5f7fd);border:1px solid var(--border,#dce3f0);border-radius:10px;padding:13px 12px;min-width:0;display:flex;flex-direction:column;gap:5px}
.brx-close-breakdown span,.brx-close-summary span{font-size:.85rem;line-height:1.35}
.brx-close-breakdown strong,.brx-close-summary strong{font-size:1.15rem;overflow-wrap:anywhere}
.brx-close-summary>.difference{border-color:#bd5858;background:#fff4f2;color:#9b2424}
.brx-close-summary>.ok{border-color:#6eaf82;background:#f2fcf5;color:#25633a}
.brx-close-warning{font-weight:650;color:#9b2424}
@media(max-width:720px){.brx-close-breakdown,.brx-close-summary{grid-template-columns:1fr}.brx-close-breakdown>div,.brx-close-summary>div{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}}


/* v0.7.114 — resultado de backup inconfundível e fora do acordeão */
.brx-backup-outcome{margin:12px 0;border:1px solid #9acdb2;background:#ecf9f1;color:#195d3d;padding:14px;border-radius:11px;line-height:1.55;font-size:14px}
.brx-backup-outcome p{margin:6px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}
.brx-backup-outcome.is-error{background:#fff1f1;border-color:#efb6b6;color:#a12828}
.brx-backup-outcome.is-warning{background:#fff9e9;border-color:#eacb8e;color:#805a17}
.brx-backup-result-backdrop{position:fixed;inset:0;background:rgba(10,22,40,.62);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px}
.brx-backup-result-dialog{background:#fff;border:2px solid #35a269;border-radius:15px;padding:23px;width:min(600px,100%);max-height:min(88vh,850px);overflow:auto;box-shadow:0 22px 80px rgba(0,0,0,.25)}
.brx-backup-result-dialog.is-error{border-color:#c93b3b}
.brx-backup-result-dialog.is-warning{border-color:#d69d37}
.brx-backup-result-dialog h2{font-size:20px;color:#17633e;margin:0 0 12px}
.brx-backup-result-dialog.is-error h2{color:#ab2222}
.brx-backup-result-dialog.is-warning h2{color:#855410}
.brx-backup-result-dialog p{font-size:15px;line-height:1.6;color:#2e4358;white-space:pre-wrap;overflow-wrap:anywhere}
.brx-backup-result-actions{display:flex;justify-content:flex-end;margin-top:18px}
@media(max-width:520px){.brx-backup-result-dialog{padding:16px}.brx-backup-result-dialog h2{font-size:18px}.brx-backup-result-dialog p{font-size:14px}.brx-backup-result-actions button{width:100%}}
@media print{.brx-backup-result-backdrop{display:none!important}}

/* BRX v0.7.116: lista de fornecedores e estado dos catálogos */
.brx-supplier-status{border:1px solid var(--border, #d6deea);border-radius:12px;padding:14px 16px;margin:9px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.brx-supplier-status .btn{white-space:normal}
@media(max-width:560px){.brx-supplier-status{align-items:stretch;flex-direction:column}.brx-supplier-status .btn{width:100%}}
