/* Acabamento visual das telas novas I16..I21 (rodada visual final).
   Mesmo padrão das telas antigas do Stock Center (Produtos, Compras, Usuários): Tahoma 13px,
   azul #1763aa nos botões principais, cabeçalho de tabela #e7eef5, números à direita.
   SÓ aparência: nada aqui esconde campo, muda ordem de foco ou mexe na rolagem das telas
   (o miolo rolável do módulo Relatórios continua com as regras do reuso_stock_center.css).
   Escopo: body.sc-acab (telas novas) e as duas seções I21 do PDV (#sc-i21-extras, #sc-i21-bandeira). */

.sc-acab {
  --acab-azul: #1763aa; --acab-azul-escuro: #14568f; --acab-titulo: #234763;
  --acab-texto: #172338; --acab-suave: #566478; --acab-borda: #c7d4df; --acab-linha: #e1e8ef;
  --acab-campo: #a8b8c7; --acab-cabeca: #e7eef5; --acab-faixa: #f8fafc; --acab-painel: #f5f8fb;
  font: 13px/1.45 Tahoma, Arial, sans-serif; color: var(--acab-texto); background: #eef2f6;
}
.sc-acab #content { color: var(--acab-texto); }
.sc-acab a { color: var(--acab-azul); }
.sc-acab a:hover { color: var(--acab-azul-escuro); }
.sc-acab .sc-reuso-barra a, .sc-acab .sc-reuso-barra a:hover { color: #fff; }

/* Títulos */
.sc-acab #content h1 { font: bold 19px/1.25 Tahoma, Arial, sans-serif; color: var(--acab-titulo); margin: 4px 0 10px; }
.sc-acab #content h2 { font: bold 15px/1.3 Tahoma, Arial, sans-serif; color: var(--acab-titulo); background: none;
  margin: 18px 0 8px; padding: 0 0 5px; border-bottom: 1px solid #d3dde7; text-transform: none; letter-spacing: 0; }
.sc-acab #content h3 { font: bold 14px/1.3 Tahoma, Arial, sans-serif; color: var(--acab-titulo); margin: 14px 0 6px; }
.sc-acab #content p { margin: 6px 0 10px; }

/* A tela em um cartão branco, como a ficha de Produtos e a de Compras */
.sc-acab .sc-operacional { background: #fff; border: 1px solid #bac6d2; border-radius: 4px; padding: 12px 16px 14px; }
.sc-acab .sc-operacional > :first-child { margin-top: 0; }
.sc-acab .sc-operacional > ul { margin: 4px 0 12px; padding: 0; list-style: none; display: grid; gap: 6px; }
.sc-acab .sc-operacional > ul > li { padding: 9px 12px; background: var(--acab-painel); border: 1px solid #d3dde7; border-left: 3px solid var(--acab-azul); border-radius: 3px; }
.sc-acab .sc-operacional > ul > li > a { font-weight: bold; }

/* Atalhos do topo da tela: botões secundários */
.sc-acab .sc-operacional-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0 0 10px; padding: 0; background: none; border: 0; }
.sc-acab .sc-operacional-acoes a { box-sizing: border-box; display: inline-flex; align-items: center; min-height: 28px; padding: 3px 11px;
  border: 1px solid var(--acab-campo); border-radius: 3px; background: linear-gradient(#fff, #eef2f6); color: #263e54; text-decoration: none; }
.sc-acab .sc-operacional-acoes a:hover { border-color: #245993; background: #edf5ff; color: #263e54; }

/* Campos */
.sc-acab label { font-weight: bold; font-size: 12px; color: #435568; }
.sc-acab input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
.sc-acab select, .sc-acab textarea {
  min-height: 30px; padding: 4px 7px; border: 1px solid var(--acab-campo); border-radius: 2px;
  background: #fff; color: var(--acab-texto); font: 13px Tahoma, Arial, sans-serif; box-shadow: none; vertical-align: middle;
}
.sc-acab :is(input, select, textarea, button, a.button) { box-sizing: border-box; }
.sc-acab textarea { min-height: 52px; }
.sc-acab input[readonly], .sc-acab input:disabled, .sc-acab select:disabled, .sc-acab textarea:disabled { background: #edf1f5; color: #536778; }
.sc-acab input[type=checkbox], .sc-acab input[type=radio] { width: 16px; height: 16px; margin: 0 5px 0 0; vertical-align: -3px; accent-color: var(--acab-azul); }
.sc-acab input:focus, .sc-acab select:focus, .sc-acab textarea:focus { outline: 2px solid #246abb; outline-offset: 1px; border-color: #246abb; }
.sc-acab ::placeholder { color: #8796a6; }

/* Botões: os mesmos de Produtos/Compras */
.sc-acab button, .sc-acab input[type=submit], .sc-acab a.button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 30px; padding: 4px 12px; margin: 0;
  border: 1px solid var(--acab-campo); border-radius: 3px; background: linear-gradient(#fff, #eef2f6); color: #263e54;
  font: 13px Tahoma, Arial, sans-serif; text-decoration: none; text-transform: none; cursor: pointer; vertical-align: middle; box-shadow: none;
}
.sc-acab button:hover:enabled, .sc-acab a.button:hover { border-color: #245993; background: #edf5ff; color: #263e54; }
.sc-acab button:disabled { cursor: default; color: #768391; background: #edf0f3; border-color: #d1d8df; }
.sc-acab button:focus-visible, .sc-acab a:focus-visible { outline: 2px solid #246abb; outline-offset: 2px; }
.sc-acab button.default, .sc-acab button[value=APROVAR], .sc-acab button[value=gravar], .sc-acab button[value=importar],
.sc-acab button[value=criar], .sc-acab .submit-row button[type=submit]:first-child {
  background: var(--acab-azul); border-color: var(--acab-azul-escuro); color: #fff; font-weight: bold;
}
.sc-acab button.default:hover:enabled, .sc-acab button[value=APROVAR]:hover:enabled, .sc-acab button[value=gravar]:hover:enabled,
.sc-acab button[value=importar]:hover:enabled, .sc-acab button[value=criar]:hover:enabled,
.sc-acab .submit-row button[type=submit]:first-child:hover:enabled { background: var(--acab-azul-escuro); color: #fff; }
.sc-acab button[value=RECUSAR], .sc-acab button[value=excluir], .sc-acab button[value=inativar], .sc-acab button[value=devolvido] {
  background: #fff; border-color: #c48a8a; color: #931f20;
}
.sc-acab button[value=RECUSAR]:hover:enabled, .sc-acab button[value=excluir]:hover:enabled,
.sc-acab button[value=inativar]:hover:enabled, .sc-acab button[value=devolvido]:hover:enabled { background: #fff0ed; border-color: #931f20; color: #931f20; }

/* Formulários soltos na tela: rótulo e campo lado a lado, num painel claro */
.sc-acab .sc-operacional > form, .sc-acab #sc-cred-cliente, .sc-acab #sc-aut-devolver-venda, .sc-acab #sc-aut-cancelar-venda,
.sc-acab.sc-aut-page #content > form[method=get] {
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 8px 0 12px; padding: 9px 12px;
  background: var(--acab-painel); border: 1px solid #d3dde7; border-radius: 3px;
}
/* Formulário que já tem seus blocos (fieldset) e barra de botões: sem painel por fora */
.sc-acab .sc-operacional > form:has(> fieldset.module) { display: block; background: none; border: 0; padding: 0; }
.sc-acab .sc-operacional > form > label { margin-left: 6px; }
.sc-acab .sc-operacional > form > label:first-child, .sc-acab .sc-operacional > form > input[type=hidden] + label { margin-left: 0; }
.sc-acab .sc-operacional > form > :is(table, p, fieldset, h2, h3, ul, div, datalist) { flex: 1 1 100%; margin: 4px 0; }
.sc-acab .sc-operacional > form > p { margin: 2px 0; }
.sc-acab .sc-operacional > form.sc-linha, .sc-acab td > form { background: none; border: 0; padding: 0; margin: 0; }
.sc-acab td > form { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 6px; }
.sc-acab td > form + form { margin-top: 5px; }
.sc-acab td > form > span { color: var(--acab-suave); font-size: 12px; padding: 0 4px; }

/* Blocos com título (fieldset.module): painel com faixa de título, como a ficha de Compras */
.sc-acab fieldset { min-width: 0; margin: 12px 0; padding: 10px 14px 12px; border: 1px solid var(--acab-borda); border-radius: 4px; background: #fff; }
.sc-acab fieldset > legend { padding: 0 5px; font-weight: bold; color: var(--acab-titulo); }
.sc-acab #content fieldset.module > h2, .sc-acab #content fieldset.module > h3 { margin: -10px -14px 10px; padding: 8px 14px; background: #eef3f7;
  border-bottom: 1px solid #ced8e1; border-radius: 4px 4px 0 0; color: #36506a; font-size: 14px; }
.sc-acab fieldset.module .form-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 7px 0; border: 0; border-bottom: 1px solid #edf1f5; overflow: visible; }
.sc-acab fieldset.module .form-row:last-of-type { border-bottom: 0; }
.sc-acab fieldset.module .form-row > label { flex: 0 0 16rem; max-width: 100%; width: auto; padding: 0; float: none; }
.sc-acab fieldset.module .form-row > .help, .sc-acab fieldset.module .form-row > p.help, .sc-acab fieldset.module > .help { flex: 1 1 100%; margin: 0 0 0 calc(16rem + 10px); padding: 0; }
.sc-acab fieldset.module > label { display: inline-block; margin: 6px 6px 6px 0; }
.sc-acab fieldset.module > input, .sc-acab fieldset.module > select { margin: 4px 12px 4px 0; }
.sc-acab .help, .sc-acab small, .sc-acab .sc-relatorio-filtros-texto { color: var(--acab-suave); font-size: 12px; }
.sc-acab .help { display: block; margin: 4px 0; }
.sc-acab label.required::after { content: " *"; color: #931f20; }
.sc-acab .submit-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0 14px; padding: 9px 12px;
  background: #f3f7fa; border: 1px solid var(--acab-borda); border-radius: 3px; text-align: left; overflow: visible; }
.sc-acab .submit-row a { margin-left: auto; }

/* Recados: erro, sucesso, aviso */
.sc-acab .errornote, .sc-acab [role=alert]:not(:empty) {
  display: block; margin: 8px 0 12px; padding: 9px 12px; background: #fff0ed; border: 1px solid #d49486;
  border-left: 4px solid #b23b2a; border-radius: 3px; color: #852a1b; font-size: 13px; overflow-wrap: anywhere;
}
.sc-acab .errornote ul, .sc-acab [role=alert] ul { margin: 4px 0 0; padding-left: 18px; }
.sc-acab p[role=status]:not(:empty) {
  display: block; margin: 8px 0 12px; padding: 9px 12px; background: #e3edf6; border: 1px solid #c5d7e7;
  border-left: 4px solid var(--acab-azul); border-radius: 3px; color: #285b88;
}
.sc-acab .sc-ok, .sc-acab #sc-cred-feito, .sc-acab [data-sc-complemento-cliente] > p[role=status], .sc-acab [data-sc-direta=ok] {
  display: block; margin: 8px 0 12px; padding: 9px 12px; background: #e9f5ec; border: 1px solid #a9d1b3;
  border-left: 4px solid #2f7a45; border-radius: 3px; color: #285c37;
}
.sc-acab [role=note]:not(:empty), .sc-acab .sc-relatorio-aviso {
  display: block; margin: 8px 0 12px; padding: 9px 12px; background: #fff5d9; border: 1px solid #e0c98c;
  border-left: 4px solid #c99b42; border-radius: 3px; color: #725222;
}
.sc-acab td small[role=note] { display: inline; padding: 1px 5px; margin: 0; border-left-width: 1px; }
.sc-acab .messagelist li { border-radius: 3px; }

/* Tabelas: cabeçalho claro, linhas finas, faixa alternada, números à direita */
.sc-acab table { width: 100%; border-collapse: collapse; margin: 6px 0 14px; background: #fff; border: 1px solid var(--acab-borda); font-size: 13px; }
.sc-acab caption { caption-side: top; text-align: left; padding: 8px 10px; background: #eef3f7; border: 1px solid var(--acab-borda);
  border-bottom: 0; color: #36506a; font-weight: bold; font-size: 13px; }
.sc-acab thead th { background: var(--acab-cabeca); color: #3f5a70; font: bold 12px Tahoma, Arial, sans-serif; text-transform: none;
  letter-spacing: 0; text-align: left; padding: 7px 8px; border: 0; border-bottom: 1px solid var(--acab-borda); white-space: normal; vertical-align: bottom; }
.sc-acab tbody td, .sc-acab tbody th { padding: 6px 8px; border: 0; border-bottom: 1px solid var(--acab-linha); vertical-align: middle; font-size: 13px; }
.sc-acab tbody th[scope=row] { color: #36506a; font-weight: bold; text-align: left; }
.sc-acab tbody tr:nth-child(even) > :is(td, th) { background: var(--acab-faixa); }
.sc-acab tbody tr:hover > :is(td, th) { background: #eef5fc; }
.sc-acab tfoot :is(td, th) { padding: 7px 8px; background: #f3f7fa; border-top: 2px solid var(--acab-borda); font-weight: bold; color: var(--acab-texto); }
/* As tabelas do módulo Relatórios já têm medidas no reuso_stock_center.css: aqui só o acabamento. */
.sc-acab .sc-operacional :is(td, th) { padding: 6px 8px; border-bottom: 1px solid var(--acab-linha); vertical-align: middle; }
.sc-acab .sc-operacional thead th { padding: 7px 8px; border-bottom: 1px solid var(--acab-borda); vertical-align: bottom; }
.sc-acab .sc-operacional :is(td, th).num { white-space: nowrap; overflow-wrap: normal; }
.sc-acab .num, .sc-acab th.num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.sc-acab td.num input { text-align: right; width: 7em; }
.sc-acab tbody td[colspan]:only-child { color: var(--acab-suave); font-style: italic; padding: 12px 10px; }
.sc-acab table.sc-ficha { width: auto; min-width: min(560px, 100%); }
.sc-acab table.sc-ficha tbody th[scope=row] { width: 18rem; }
.sc-acab table.sc-ficha td.num { text-align: left; white-space: normal; }
.sc-acab .sc-aut-abaixo > td { background: #fff0ed !important; }
.sc-acab .sc-aut-abaixo strong { color: #931f20; }
.sc-acab tr[data-hoje] > td { background: #fff5d9; font-weight: bold; }
.sc-acab tr.sc-inventario-bloqueado > td { background: #fff5d9; }
.sc-acab tr[data-cliente] { cursor: pointer; }
.sc-acab #changelist .results, .sc-acab .results { overflow-x: auto; }
.sc-acab .visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* Totais e situação em cartões pequenos (Conta do cliente, relatórios de estoque, resumo da nota) */
.sc-acab dl.sc-conta-situacao, .sc-acab dl.sc-relatorio-totais {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; margin: 8px 0 14px; padding: 0;
}
.sc-acab dl.sc-conta-situacao > div, .sc-acab dl.sc-relatorio-totais > div {
  min-width: 0; padding: 8px 10px; background: var(--acab-painel); border: 1px solid #d3dde7; border-radius: 3px;
}
.sc-acab dl.sc-conta-situacao dt, .sc-acab dl.sc-relatorio-totais dt { margin: 0; font-size: 11.5px; font-weight: normal; color: var(--acab-suave); }
.sc-acab dl.sc-conta-situacao dd, .sc-acab dl.sc-relatorio-totais dd { margin: 2px 0 0; font-size: 15px; font-weight: bold; color: var(--acab-titulo);
  font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sc-acab ul.sc-conta-bloqueios { margin: 6px 0 12px; padding: 8px 12px 8px 28px; background: #fff0ed; border: 1px solid #d49486; border-radius: 3px; color: #852a1b; }
.sc-acab ul.sc-relatorios-estoque-lista { margin: 4px 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.sc-acab ul.sc-relatorios-estoque-lista > li { padding: 9px 12px; background: var(--acab-painel); border: 1px solid #d3dde7; border-left: 3px solid var(--acab-azul); border-radius: 3px; color: var(--acab-suave); }
.sc-acab ul.sc-relatorios-estoque-lista > li > a { font-weight: bold; }

/* Etiquetas: modelos (rótulo em cima do campo) e bloco Imprimir */
.sc-acab details { margin: 8px 0; border: 1px solid var(--acab-borda); border-radius: 4px; background: #fff; }
.sc-acab details > summary { padding: 9px 12px; background: #eef3f7; color: #36506a; font-weight: bold; cursor: pointer; border-radius: 4px; }
.sc-acab details[open] > summary { border-bottom: 1px solid #ced8e1; border-radius: 4px 4px 0 0; }
.sc-acab [data-sc-etiquetas-modelos] details > form { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 12px; align-items: end; padding: 10px 12px; margin: 0; }
.sc-acab [data-sc-etiquetas-modelos] details > form + form { border-top: 1px solid #edf1f5; background: var(--acab-painel); }
.sc-acab [data-sc-etiquetas-modelos] details > form > label { display: flex; flex-direction: column; gap: 3px; margin: 0; }
.sc-acab [data-sc-etiquetas-modelos] details > form > label:has(> input[type=checkbox]) { flex-direction: row; align-items: center; min-height: 30px; }
.sc-acab [data-sc-etiquetas-modelos] details > form > :is(button, select) { align-self: end; }
.sc-acab fieldset.sc-etiquetas-imprimir { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; background: var(--acab-painel); }
.sc-acab [data-sc-meu-jeito] > form { gap: 8px 16px; }
.sc-acab [data-sc-meu-jeito] > form > label { display: inline-flex; align-items: center; font-weight: normal; font-size: 13px; color: var(--acab-texto); margin: 0; }
.sc-acab [data-sc-meu-jeito] > form > button { margin-left: auto; }
.sc-acab [data-sc-resumo]:empty { display: none; }
.sc-acab [data-sc-resumo] { padding: 10px 12px; background: var(--acab-painel); border: 1px solid #d3dde7; border-radius: 3px; font: 12px/1.45 Consolas, monospace; }

/* Central de Autorizações: mesma barra escura do Stock Center no lugar do topo do Django */
.sc-acab.sc-aut-page #header { display: flex; align-items: center; background: #172033; color: #fff; padding: 0 18px; height: auto; min-height: 40px; }
.sc-acab.sc-aut-page #header #branding #site-name, .sc-acab.sc-aut-page #site-name { margin: 0; font: bold 14px Tahoma, Arial, sans-serif; color: #fff; }
.sc-acab.sc-aut-page .breadcrumbs { display: block; padding: 7px 18px; background: #263b54; color: #9fb3c8; font-size: 13px; border: 0; }
.sc-acab.sc-aut-page .breadcrumbs a { color: #fff; font-weight: bold; }
.sc-acab.sc-aut-page #content { padding: 14px 18px 20px; max-width: 1260px; margin: 0 auto; }
.sc-acab.sc-aut-page #content > p > a.button { margin-right: 4px; }
.sc-acab.sc-aut-page #sc-aut-devolucoes { margin-top: 18px; }
.sc-acab.sc-aut-page #sc-aut-situacao, .sc-acab.sc-aut-page #sc-aut-dev-situacao {
  display: inline-block; padding: 6px 12px; background: #e3edf6; border: 1px solid #c5d7e7; border-radius: 3px; color: #285b88;
}
.sc-acab.sc-aut-page #sc-aut-situacao[data-situacao=RECUSADA], .sc-acab.sc-aut-page #sc-aut-dev-situacao[data-situacao=recusado] { background: #fff0ed; border-color: #d49486; color: #852a1b; }
.sc-acab.sc-aut-page #sc-aut-situacao[data-situacao=APROVADA], .sc-acab.sc-aut-page #sc-aut-dev-situacao[data-situacao=aprovado],
.sc-acab.sc-aut-page #sc-aut-dev-situacao[data-situacao=feito] { background: #e9f5ec; border-color: #a9d1b3; color: #285c37; }
/* Devolução parcial (tabelas identificadas: números à direita sem mexer no HTML da tela) */
.sc-acab #sc-aut-devolver-pecas :is(th, td):is(:nth-child(2), :nth-child(3), :nth-child(4), :nth-child(5)),
.sc-acab #sc-aut-devolver-pecas tbody tr:last-child > td { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.sc-acab #sc-aut-devolver-pecas input { text-align: right; width: 5em; }
.sc-acab #sc-aut-devolver-conta { width: auto; min-width: min(560px, 100%); }
.sc-acab #sc-aut-devolver-conta tbody th[scope=row] { width: 22rem; }
.sc-acab #sc-aut-devolver-conta td { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; padding-right: 14px; }
.sc-acab #sc-aut-devolver-escolha { display: block; background: none; border: 0; padding: 0; margin: 0 0 8px; }

/* Acerto de produtos desencontrados: as regras de Compras ficam presas a #sc-compras-i14 */
#sc-compras-acertos { font: 13px/1.45 Tahoma, Arial, sans-serif; color: #202d3c; background: #fff; border: 1px solid #bac6d2; border-radius: 4px; padding: 12px 16px; max-width: 1600px; }
#sc-compras-acertos .cp-titulo { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 10px; }
#sc-compras-acertos .cp-titulo h1 { margin: 0; font: bold 19px Tahoma, Arial, sans-serif; color: #234763; }
#sc-compras-acertos .cp-titulo a { display: inline-flex; align-items: center; min-height: 28px; padding: 3px 11px; border: 1px solid #a8b8c7; border-radius: 3px; background: linear-gradient(#fff, #eef2f6); color: #263e54; text-decoration: none; }
#sc-compras-acertos .cp-nota { padding: 9px 11px; background: #fff5d9; border-left: 3px solid #c99b42; color: #725222; overflow-wrap: anywhere; }
#sc-compras-acertos [data-acertos-status] { color: #385e7c; }
#sc-compras-acertos .cp-grade-wrap { overflow: auto; max-width: 100%; border: 1px solid #c7d4df; }
#sc-compras-acertos .cp-grade { border-collapse: collapse; width: 100%; font-size: 13px; background: #fff; }
#sc-compras-acertos .cp-grade th { background: #e7eef5; color: #3f5a70; padding: 7px 8px; font: bold 12px Tahoma, Arial, sans-serif; text-transform: none; text-align: left; border-bottom: 1px solid #c7d4df; }
#sc-compras-acertos .cp-grade :is(th, td):is(:nth-child(2), :nth-child(3), :nth-child(4), :nth-child(5)) { text-align: right; font-variant-numeric: tabular-nums; }
#sc-compras-acertos .cp-grade td { padding: 7px 8px; border-bottom: 1px solid #dfe6ed; }
#sc-compras-acertos .cp-grade tr:nth-child(even) td { background: #f8fafc; }
#sc-compras-acertos .cp-acoes-documento { display: flex; gap: 6px; flex-wrap: wrap; padding: 8px 0; }
#sc-compras-acertos button { min-height: 32px; border: 1px solid #a8b8c7; border-radius: 3px; background: linear-gradient(#fff, #eef2f6); color: #263e54; padding: 5px 12px; font: 13px Tahoma, Arial, sans-serif; cursor: pointer; }
#sc-compras-acertos button:disabled { cursor: default; color: #768391; background: #edf0f3; border-color: #d1d8df; }
#sc-compras-acertos button.cp-primario:enabled { background: #1763aa; color: #fff; border-color: #14568f; font-weight: bold; }
#sc-compras-acertos form { margin-top: 12px; padding: 12px; background: #f5f8fb; border: 1px solid #d3dde7; border-radius: 3px; }
#sc-compras-acertos form label { display: block; margin: 8px 0 4px; font-weight: bold; font-size: 12px; color: #435568; }
#sc-compras-acertos form input { display: block; width: min(420px, 100%); min-height: 30px; margin-top: 4px; padding: 4px 7px; border: 1px solid #a8b8c7; border-radius: 2px; font: 13px Tahoma, Arial, sans-serif; }

/* PDV: só o miolo das duas seções do I21 (o grid do PDV não é tocado aqui) */
#sc-i21-extras, #sc-i21-bandeira { font-size: 13px; }
#sc-i21-extras > h2, #sc-i21-bandeira > h2 { margin: 0 0 6px; font-size: 14px; color: #234763; }
#sc-i21-extras #sc-i21-aviso:not(:empty), #sc-i21-bandeira #sc-i21-bandeira-status:not(:empty) {
  margin: 0 0 8px; padding: 6px 10px; background: #e3edf6; border-left: 3px solid #1763aa; color: #285b88;
}
#sc-i21-corpo { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 8px; }
#sc-i21-corpo[hidden] { display: none; }
#sc-i21-corpo > fieldset { min-width: 0; margin: 0; padding: 6px 10px 9px; border: 1px solid #c7d4df; border-radius: 3px; background: #fff;
  display: flex; flex-wrap: wrap; align-items: center; gap: 5px 6px; align-content: start; }
#sc-i21-corpo > fieldset[hidden] { display: none; }
#sc-i21-corpo > fieldset > legend { padding: 0 4px; font-weight: bold; color: #234763; }
#sc-i21-corpo > fieldset > p { flex: 1 1 100%; margin: 0; min-height: 0; }
#sc-i21-corpo > fieldset > p:empty { display: none; }
#sc-i21-corpo > fieldset > p[role=status]:not(:empty) { padding: 4px 8px; background: #f5f8fb; border-radius: 2px; color: #385e7c; }
#sc-i21-corpo > fieldset > label { flex: 1 1 100%; margin: 2px 0 0; font-weight: bold; font-size: 12px; color: #435568; }
#sc-i21-corpo > fieldset > label:has(> input[type=checkbox]) { display: flex; flex-direction: row; align-items: center; gap: 6px; font-weight: normal; font-size: 13px; color: #172338; }
#sc-i21-corpo > fieldset > label > input[type=checkbox] { flex: none; width: 16px; height: 16px; min-height: 0; margin: 0; accent-color: #1763aa; }
#sc-i21-corpo > fieldset > input:not([type=checkbox]) { flex: 1 1 8rem; width: auto; min-width: 0; text-align: right; }
#sc-i21-corpo > fieldset > #sc-i21-recado { text-align: left; flex-basis: 100%; }
#sc-i21-corpo > fieldset > select { flex: 0 0 auto; width: auto; }
#sc-i21-corpo > fieldset > button { flex: 0 0 auto; }
#sc-i21-corpo > fieldset > small { flex: 1 1 100%; color: #566478; font-size: 11.5px; line-height: 1.35; }
#sc-i21-corpo #sc-i21-pedir:enabled { background: #1763aa; border-color: #14568f; color: #fff; font-weight: bold; }
#sc-i21-bandeira-linhas { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
#sc-i21-bandeira-linhas label { display: inline-flex; align-items: center; gap: 6px; font-weight: bold; font-size: 12px; color: #435568; }
#sc-i21-bandeira-linhas select { width: auto; }
#sc-i5-pagamento #sc-i21-resumo-pagamento:not(:empty) { padding: 6px 10px; background: #fff5d9; border-left: 3px solid #c99b42; color: #725222; }

@media (max-width: 700px) {
  .sc-acab fieldset.module .form-row > label { flex-basis: 100%; }
  .sc-acab fieldset.module .form-row > .help, .sc-acab fieldset.module .form-row > p.help { margin-left: 0; }
  .sc-acab .sc-operacional { padding: 10px; }
  .sc-acab table.sc-ficha tbody th[scope=row], .sc-acab #sc-aut-devolver-conta tbody th[scope=row] { width: auto; }
}
@media print {
  .sc-acab, .sc-acab .sc-operacional { background: #fff; border: 0; padding: 0; }
  .sc-acab tbody tr:nth-child(even) > :is(td, th) { background: none; }
}
/* Lista da Central: o changelists.css do Django zera o recuo do cabeçalho */
.sc-acab #changelist table thead th { padding: 7px 8px; }
.sc-acab #changelist table tbody :is(td, th) { padding: 6px 8px; }
.sc-acab #result_list tbody th[scope=row] { white-space: nowrap; }
