/* Natalis v4.5 — Carga / romaneio (cg-) e Programação (pg-) */
.cg-grupo{margin-bottom:16px}
.cg-grupo-tit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:700;margin-bottom:6px}
.cg-grupo-tit span{font-size:11px;font-weight:400;color:var(--muted)}
.cg-grupo-tit .btn{margin-left:auto}
.cg-vazio{font-size:12px;color:var(--muted);padding:8px 0}
.cg-tab td,.cg-tab th{padding:6px 8px}
.cg-tab .n{text-align:right;white-space:nowrap}
.cg-tab small{color:var(--muted);font-size:10px}
.cg-nome{font-size:12px;font-weight:600}
.cg-sub{font-size:11px;color:var(--muted)}
.cg-item-foto{display:flex;align-items:center;gap:8px}
.cg-item-foto>div{min-width:0}
.cg-mini{flex:0 0 44px;width:44px;height:44px;object-fit:contain;border-radius:4px;background:#fff;border:1px solid var(--border2);cursor:zoom-in;display:block}
.cg-mini-vazia{background:var(--surface);cursor:default}
.cg-foto-grande{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.85);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px;cursor:zoom-out;color:#fff;font-size:13px;text-align:center}
.cg-foto-grande img{max-width:100%;max-height:85vh;object-fit:contain;background:#fff;border-radius:6px}
.cg-falta{color:var(--amber);font-weight:700}
.cg-ok{color:var(--green)}
input.cg-qtd{width:90px;flex:0 0 90px;box-sizing:border-box;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-size:14px;padding:6px 8px;text-align:right;outline:none;font-family:inherit}
input.cg-qtd:focus{border-color:var(--accent)}
input.cg-qtd.cg-mais{border-color:var(--amber)}
input.cg-qtd:disabled{opacity:.5;cursor:not-allowed}
.cg-naofab{font-size:10px;color:var(--amber);margin-top:2px}
.cg-tot td{font-weight:700;border-top:2px solid var(--border2)}
.cg-avulsos{display:flex;flex-direction:column;gap:6px}
.cg-avulso{display:flex;gap:6px;align-items:center}
.cg-avulso input[type=text]{flex:1;min-width:0;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-size:13px;padding:6px 8px;outline:none;font-family:inherit}
.cg-avulso input.cg-un{flex:0 0 70px}
.cg-transp{display:grid;grid-template-columns:repeat(3,1fr);gap:0 12px}
.cg-transp .cg-entrega{grid-column:span 2}
.cg-rodape{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border2);padding-top:12px;font-size:12px}
.cg-editando{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.35);border-radius:var(--radius-sm);padding:8px 10px;font-size:12px;margin-bottom:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cg-hist{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}
.cg-hist:last-child{border-bottom:none}
.cg-hist-info{flex:1;min-width:220px;font-size:12px;line-height:1.6}
.cg-hist-acoes{display:flex;gap:4px;flex-wrap:wrap;align-items:flex-start}
.cg-cancelada{opacity:.55}
.cg-nova{background:rgba(245,158,11,.06);border-radius:var(--radius-sm);padding-left:8px;padding-right:8px}
.cg-whats{color:#4ADE80}
.cg-det summary{cursor:pointer;color:var(--muted);font-size:11px}
.cg-det div{font-size:12px;padding:1px 0 1px 10px}
.cg-ok-botoes{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.cg-ok-botoes .btn{justify-content:center}

/* Programação */
.pg-barra{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;justify-content:space-between}
.pg-nav{display:flex;align-items:center;gap:4px}
.pg-titulo{font-size:13px;margin-left:6px;text-transform:capitalize}
.pg-zoom{margin-bottom:0}
.pg-filtros{display:flex;gap:6px;flex-wrap:wrap}
.pg-filtros select{padding:5px 8px;background:var(--card);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-size:12px;outline:none;max-width:200px}
.pg-aviso{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.35);color:#F87171;border-radius:var(--radius-sm);padding:7px 10px;font-size:12px;margin-bottom:10px}
.pg-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card)}
.pg-grade{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;min-width:640px}
.pg-grade th,.pg-grade td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:3px;vertical-align:top}
.pg-grade th.pg-rec{position:sticky;left:0;z-index:2;background:var(--card);width:150px;text-align:left;padding:6px 8px;text-transform:none;letter-spacing:0}
.pg-rec-nome{font-size:12px;font-weight:600;color:var(--text);white-space:normal;word-break:break-word}
.pg-rec-sub{font-size:10px;color:var(--muted);font-weight:400;white-space:normal}
.pg-dia{text-align:center;padding:4px 2px !important}
.pg-dia div{font-size:9px;font-weight:500}.pg-dia b{font-size:13px;color:var(--text)}
.pg-fds{background:rgba(255,255,255,.025)}
.pg-hoje{box-shadow:inset 0 0 0 2px rgba(212,160,23,.55)}
.pg-cel{height:40px;cursor:pointer}
.pg-cel:hover{background:rgba(255,255,255,.04)}
.pg-conflito{background:rgba(239,68,68,.22) !important}
.pg-fora{outline:2px dashed var(--amber);outline-offset:-3px}
.pg-chip{font-size:10px;color:#fff;border-radius:4px;padding:2px 4px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.pg-carga{background:rgba(255,255,255,.12);color:var(--text);cursor:default}
.pg-sec td{background:var(--surface);font-size:11px;font-weight:700;padding:5px 8px;position:sticky;left:0}
.pg-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--border);font-size:12px;cursor:pointer}
.pg-item:last-child{border-bottom:none}
.pg-bola{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}
.pg-chks{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-sm);padding:6px}
.pg-chk{display:flex;gap:8px;align-items:flex-start;font-size:12px;cursor:pointer;padding:3px 2px}
.pg-chk input{width:auto;margin-top:2px}
.pg-chk span{display:flex;flex-direction:column}.pg-chk small{color:var(--muted);font-size:10px}

@media (max-width:820px){
  .cg-transp{grid-template-columns:1fr}
  .cg-transp .cg-entrega{grid-column:auto}
  input.cg-qtd{width:76px;flex-basis:76px;font-size:16px}
  .cg-tab td,.cg-tab th{padding:6px 5px}
  /* Lista da carga no celular: cada item vira um cartão (nome em cima, números embaixo) */
  .cg-tab-carga thead{display:none}
  .cg-tab-carga tr{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px 10px;padding:8px 0;border-bottom:1px solid var(--border)}
  .cg-tab-carga td{border:none;padding:0;display:block;text-align:left !important;font-size:13px;white-space:nowrap}
  .cg-tab-carga td.cg-td-nome{flex:0 0 100%;white-space:normal}
  .cg-tab-carga td[data-l]::before{content:attr(data-l);display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
  .cg-tab-carga td.cg-td-qtd{margin-left:auto}
  .cg-tab-carga input.cg-qtd{height:40px;min-height:0;padding:6px 8px}
  .cg-tab-carga .tbl-wrap,.cg-grupo .tbl-wrap{overflow-x:visible}
  .cg-grupo-tit .btn{margin-left:0}
  .cg-hist-acoes{width:100%}
  #cg-cidade{max-width:100% !important;width:100%}
  .pg-grade th.pg-rec{width:110px}
  .pg-filtros select{max-width:100%;flex:1}
}
