/* Folha única: dados e produtos visíveis, mantendo os controles e contratos. */
#modalCarrinhoCompras.carrinho-compras-modal {
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  background:rgba(15,23,42,.72) !important; transition:none !important;
}
#modalCarrinhoCompras .carrinho-compras-sheet,
#modalCarrinhoCompras .carrinho-product-card,
#modalCarrinhoCompras .cp-sheet-action {
  backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  filter:none !important; animation:none !important; transition:none !important;
  box-shadow:none !important;
}
#modalCarrinhoCompras .carrinho-categoria-option:hover { background:#e2e8f0; }
#modalCarrinhoCompras #carrinhoCompraParaGlobal[hidden] { display:none !important; }
#modalCarrinhoCompras .carrinho-compra-para-busca { position:relative; min-width:0; }
#modalCarrinhoCompras .carrinho-compra-para-resultados { position:absolute; top:100%; left:0; right:0; z-index:30; max-height:220px; overflow:auto; background:#fff; border:1px solid #94a3b8; border-radius:6px; box-shadow:0 4px 12px #0f172a26; }
#modalCarrinhoCompras .carrinho-compra-para-resultados[hidden] { display:none; }
#modalCarrinhoCompras .carrinho-compra-para-resultados button { display:block; width:100%; min-height:44px; padding:8px 10px; text-align:left; background:#fff; color:#1e293b; border:0; }
#modalCarrinhoCompras .carrinho-compra-para-resultados button:is(:hover,:focus) { background:#dbeafe; outline:2px solid #2563eb; outline-offset:-2px; }
#modalCarrinhoCompras .carrinho-compras-sheet.cp-purchase-sheet { background:#e9eef4 !important; color:#1e293b; }
#modalCarrinhoCompras .carrinho-sheet-main { background:#e9eef4; }
#modalCarrinhoCompras .cp-detail-header { background:#dce5ef !important; border-bottom:1px solid #b8c8d8; }
#modalCarrinhoCompras .carrinho-sheet-actions { background:#dde7ee !important; border-left:1px solid #b8c8d8; }
#modalCarrinhoCompras .carrinho-sheet-section { background:#f3f6fa; border:1px solid #ccd7e3; border-radius:8px; padding:10px; }
#modalCarrinhoCompras .carrinho-np-group { background:#e4ebf3 !important; }
#modalCarrinhoCompras .carrinho-product-card { background:#f4f7fb !important; border-color:#bfccd9 !important; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados .ui-label { color:#334155; font-weight:700; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados :is(select,input)[required]:invalid { background:#fff3db !important; border:2px solid #b7791f !important; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados :is(select,input)[required]:valid { background:#edf8f3 !important; border:1px solid #46856d !important; }
#modalCarrinhoCompras [aria-invalid="true"] { outline:2px solid #b91c1c; outline-offset:2px; }
#modalCarrinhoCompras #modalComprasEnviarPedidoBtn,
#modalCarrinhoCompras .carrinho-item-controles button,
#modalCarrinhoCompras .carrinho-item-top-row span[style*="background:#3b82f6"] { color:#fff !important; }
#modalCarrinhoCompras .carrinho-item-dropzone { min-width:0; border:1px dashed #94a3b8; border-radius:5px; padding:5px; background:#f8fafc; }
#modalCarrinhoCompras .carrinho-item-dropzone small { display:block; color:#475569; margin-top:3px; }
#modalCarrinhoCompras .carrinho-item-dropzone:focus,
#modalCarrinhoCompras .carrinho-item-dropzone.is-dragover { outline:2px solid #2563eb; background:#eff6ff; }
#modalCarrinhoCompras .carrinho-item-dropzone input { max-width:100%; }
#modalCarrinhoCompras .carrinho-item-dropzone { display:grid !important; grid-template-columns:auto minmax(0,1fr) auto !important; align-items:center; }
#modalCarrinhoCompras .carrinho-item-dropzone input[hidden] { display:none !important; }
#modalCarrinhoCompras .carrinho-item-dropzone > i { color:#3b82f6; font-size:20px; }
#modalCarrinhoCompras .carrinho-item-dropzone > strong { color:#1e293b; font-size:12px; }
#modalCarrinhoCompras .carrinho-item-dropzone > button { background:#fff; color:#1e40af; border:1px solid #cbd5e1; border-radius:5px; min-height:34px; }
#modalCarrinhoCompras .carrinho-compras-sheet.cp-purchase-sheet {
  width:min(1180px,96vw) !important;
  height:min(820px,92dvh) !important;
  grid-template-rows:48px minmax(0,1fr);
}
#modalCarrinhoCompras .carrinho-compras-sheet .cp-detail-header { min-height:48px !important; padding:0 14px !important; }
#modalCarrinhoCompras .carrinho-sheet-layout { grid-template-columns:minmax(0,1fr) 200px; }
#modalCarrinhoCompras .carrinho-sheet-main { padding:12px 14px !important; gap:12px !important; }
#modalCarrinhoCompras #carrinhoSheetTabs { display:none !important; }
#modalCarrinhoCompras .carrinho-sheet-section { gap:6px; flex-shrink:0; }
#modalCarrinhoCompras .carrinho-sheet-section .cp-sheet-section-title { padding-bottom:5px !important; font-size:13px; }
#modalCarrinhoCompras .carrinho-sheet-resumo { margin:0 !important; padding:6px 8px !important; min-height:0 !important; }
#modalCarrinhoCompras .carrinho-sheet-resumo > div { padding:0 6px !important; }
#modalCarrinhoCompras .carrinho-sheet-grid { gap:6px 10px; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
#modalCarrinhoCompras .carrinho-sheet-grid--objetivo { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); align-items:start; }
#modalCarrinhoCompras .carrinho-sheet-grid--objetivo .carrinho-sheet-field--wide { grid-column:auto; grid-row:span 2; }
#modalCarrinhoCompras .carrinho-sheet-field { gap:3px; }
#modalCarrinhoCompras .carrinho-sheet-main .ui-input,
#modalCarrinhoCompras .carrinho-sheet-main .ui-select { min-height:34px; padding:6px 8px !important; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados :is(.ui-input,.ui-select) {
  box-sizing:border-box; width:100%; height:40px !important; min-height:40px !important;
  max-height:40px; margin:0; font-size:14px; line-height:20px;
}
#modalCarrinhoCompras .carrinho-sheet-main .ui-textarea { min-height:64px !important; height:64px; padding:6px 8px !important; }
#modalCarrinhoCompras .carrinho-category-link-hint { margin-top:0; padding:4px 6px !important; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados > .carrinho-category-link-hint { grid-column:1/-1; display:flex; align-items:center; gap:6px; min-height:26px; }
#modalCarrinhoCompras .carrinho-sheet-grid--dados > .carrinho-category-link-hint[hidden] { display:none; }
#modalCarrinhoCompras .carrinho-anexo-dropzone { min-height:44px !important; padding:6px 8px !important; gap:6px; }
#modalCarrinhoCompras .carrinho-anexo-dropzone small { display:none; }
#modalCarrinhoCompras .carrinho-anexo-dropzone button { padding:5px 8px !important; }
#modalCarrinhoCompras .carrinho-sheet-itens { min-height:120px; flex-shrink:0; }
#modalCarrinhoCompras .carrinho-items { gap:8px; min-height:100px; }
#modalCarrinhoCompras .carrinho-product-card { padding:9px !important; gap:6px !important; box-shadow:none !important; }
#modalCarrinhoCompras .carrinho-product-card select.carrinho-item-versao-select { width:auto !important; min-height:26px; max-width:110px; padding:2px 6px !important; }
#modalCarrinhoCompras .carrinho-item-meta-sempre { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:4px 10px !important; }
#modalCarrinhoCompras .carrinho-item-meta-sempre > div:last-child > div { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:4px !important; }
#modalCarrinhoCompras .carrinho-item-anexo-info { grid-column:1/-1; }
#modalCarrinhoCompras .carrinho-np-group { padding:8px !important; }
#modalCarrinhoCompras .carrinho-product-card textarea.carrinho-input-observacao { min-height:34px !important; height:34px; }
#modalCarrinhoCompras .carrinho-sheet-actions { padding:12px 10px !important; gap:8px !important; }
#modalCarrinhoCompras .carrinho-sheet-actions .cp-sheet-action { min-height:40px; padding:8px !important; }
#modalCarrinhoCompras .carrinho-sheet-actions .cp-sheet-action small { display:none; }
@media(min-width:1100px) {
  #modalCarrinhoCompras .carrinho-sheet-grid--dados { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(max-width:980px) {
  #modalCarrinhoCompras .carrinho-item-meta-sempre { grid-template-columns:minmax(0,1fr); }
  #modalCarrinhoCompras .carrinho-product-card textarea.carrinho-input-observacao { height:64px !important; }
  #modalCarrinhoCompras .carrinho-item-controles button { min-width:44px !important; min-height:44px !important; }
  #modalCarrinhoCompras .carrinho-item-qtd input { min-height:44px; }
  /* Uma rolagem para o formulário e as ações: nenhum botão fica preso em outra barra. */
  #modalCarrinhoCompras .carrinho-sheet-layout { display:block; overflow:auto; min-height:0; }
  #modalCarrinhoCompras .carrinho-sheet-main { overflow:visible; min-height:0; height:auto; }
  #modalCarrinhoCompras .carrinho-sheet-actions {
    max-height:none; overflow:visible; gap:6px !important; border-left:0;
    padding:8px 10px max(8px,env(safe-area-inset-bottom)) !important;
  }
  #modalCarrinhoCompras .carrinho-sheet-actions-title,
  #modalCarrinhoCompras .carrinho-sheet-actions > .cp-sheet-actions-title { display:none; }
  #modalCarrinhoCompras .carrinho-sheet-flags { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  #modalCarrinhoCompras .carrinho-sheet-flags { margin:0; padding:0; border:0; }
  #modalCarrinhoCompras .carrinho-sheet-flag { min-height:44px; padding:6px; gap:5px; }
  #modalCarrinhoCompras .carrinho-sheet-actions-sep { display:none; }
  #modalCarrinhoCompras .carrinho-sheet-nfe { grid-column:1/-1; }
  #modalCarrinhoCompras .carrinho-sheet-actions button { min-height:44px !important; }
}
@media(max-width:600px) {
  #modalCarrinhoCompras .carrinho-compras-sheet.cp-purchase-sheet { width:100% !important; height:96dvh !important; }
  #modalCarrinhoCompras .carrinho-sheet-main { padding:10px !important; }
  #modalCarrinhoCompras .carrinho-sheet-grid--dados { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #modalCarrinhoCompras .carrinho-sheet-grid--objetivo { grid-template-columns:minmax(0,1fr); }
  #modalCarrinhoCompras .carrinho-sheet-grid--objetivo .carrinho-sheet-field--wide { grid-row:auto; }
  #modalCarrinhoCompras .carrinho-sheet-main .ui-input,
  #modalCarrinhoCompras .carrinho-sheet-main .ui-select { min-height:44px; }
  #modalCarrinhoCompras .carrinho-sheet-grid--dados :is(.ui-input,.ui-select) { height:44px !important; min-height:44px !important; max-height:44px; }
  #modalCarrinhoCompras .carrinho-anexo-dropzone { grid-template-columns:auto minmax(0,1fr) auto; }
  #modalCarrinhoCompras .carrinho-anexo-dropzone button { grid-column:auto; width:auto; min-height:44px; }
  #modalCarrinhoCompras .carrinho-item-meta-sempre,
  #modalCarrinhoCompras .carrinho-item-meta-sempre > div:last-child > div { grid-template-columns:minmax(0,1fr); }
}
/* Após as regras base: composição horizontal apenas onde há espaço. */
#modalCarrinhoCompras #modalComprasEnviarPedidoBtn span { color:#fff !important; }
@media(min-width:981px) {
  #modalCarrinhoCompras .carrinho-product-card { display:grid !important; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:8px 12px !important; }
  #modalCarrinhoCompras .carrinho-item-top-row { grid-column:1; grid-row:1; }
  #modalCarrinhoCompras .carrinho-item-meta-sempre { display:contents !important; }
  #modalCarrinhoCompras .carrinho-item-observacao { grid-column:2; grid-row:1; }
  #modalCarrinhoCompras .carrinho-item-meta-sempre > div:not(.carrinho-item-observacao) { grid-column:1/-1; }
  #modalCarrinhoCompras .carrinho-product-card textarea.carrinho-input-observacao { height:64px !important; }
  #modalCarrinhoCompras .carrinho-detalhes-expandiveis { grid-column:1/-1; }
}
