 /* ── ENTREGAS VIEWS ── */
 .ent-toolbar { display:flex;align-items:center;gap:6px;padding:10px 0;border-bottom:1px solid var(--border);margin-bottom:0 }
 .ent-view-btn { display:flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border);border-radius:var(--r-sm);font-size:12px;font-weight:500;background:var(--surface);color:var(--muted);cursor:pointer;transition:all .12s }
 .ent-view-btn.active { background:var(--navy-solid);color:#fff;border-color:var(--navy-solid) }
 .ent-view-btn:not(.active):hover { color:var(--text) }

 /* Tabela — mesmo padrão visual de Obras/Projetos (.tbl-box + table/th/td
    globais de main.css); .ent-table só existe pra escopar os detalhes
    abaixo (status/data), sem mais reescrever padding/tipografia da tabela. */
 .ent-table th { white-space:nowrap }
 .ent-status { display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;white-space:nowrap }
 .ent-status-dot { width:7px;height:7px;border-radius:50%;flex-shrink:0 }
 .ent-date { font-size:12px;color:var(--muted);white-space:nowrap }
 .ent-date.overdue { color:var(--red);font-weight:600 }
 .ent-date.soon { color:#f59e0b;font-weight:500 }
 .ent-date.ok { color:#22c55e;font-weight:500 }
 .ent-late-tag { font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--red);background:var(--red-dim);border-radius:var(--r-full);padding:1px 6px;margin-left:2px }

 /* Dropzone de anexo — modal "Nova Entrega" (Documento da entrega/Ordem de
    Produção). Antes eram <input type="file"> nus dentro de um .mf, que uma
    regra global (.mf input[type="file"]{display:none}, main.css — pensada
    pro upload de avatar) escondia sem deixar NENHUM jeito de clicar; aqui
    aplicamos o mesmo padrão visual/label-wraps-input já usado e funcionando
    no dropzone do painel de detalhe da entrega (_spEntDetDropzone,
    entregas.js), só que sem upload imediato — os arquivos ficam no <input>
    até "Criar entrega" (a entrega ainda não existe, não tem em cima do que
    gravar o anexo). */
 /* .mf .ne-dropzone (não só .ne-dropzone): precisa vencer .mf label de
    main.css (mesma especificidade que uma classe sozinha), que forçaria
    text-transform:uppercase/gap:3px pensados pro rótulo do campo, não pro
    texto "Clique ou arraste" deste dropzone. */
 .mf .ne-dropzone { display:flex;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--border);border-radius:8px;padding:9px 8px;cursor:pointer;transition:border-color .15s,background .15s;text-align:center;font-size:11px;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--muted) }
 .mf .ne-dropzone:hover, .mf .ne-dropzone.drag { border-color:var(--navy);background:rgba(59,130,246,.05) }
 .ne-dropzone svg { flex-shrink:0 }
 .ne-dropzone span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap }

 /* Grade de cards de anexo — ver .doc-card-* em main.css (componente
    compartilhado, scripts/lib/doc-cards.js). Rótulos do espelho
    somente-leitura da Obra levam sufixo "(da Obra)" — igual ao
    "(from Obras)" do Airtable de referência, sem selo/emoji sobreposto. */

 /* Abas de atalho (quick-view) */
 .ent-qv-btn { padding:5px 12px;border:1px solid var(--border);border-radius:var(--r-full);font-size:12px;font-weight:500;background:var(--surface);color:var(--muted);cursor:pointer;transition:all .12s }
 .ent-qv-btn:hover { color:var(--text);border-color:var(--navy) }
 .ent-qv-btn.active { background:var(--navy-solid);color:#fff;border-color:var(--navy-solid) }

 /* Kanban de Entregas — reaproveita .obra-card/.oc-title/.oc-tags/.oc-date
    (mesma linguagem visual do Kanban de Obras), só acrescenta o selo de
    atrasado. */
 .ent-card { position:relative }
 .ent-card-late { position:absolute;top:10px;right:10px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:var(--red);background:var(--red-dim);border-radius:var(--r-full);padding:2px 7px }

 /* Calendário */
 .ent-cal { margin-top:0 }
 /* gap em vez de justify-content:space-between — o seletor de período
    (.gp-wrap#pp-wrap-entcal, margin-left:auto) é o 4º filho agora; com
    space-between os 4 elementos ficariam espaçados uniformemente (título
    "grudado" longe dos botões de navegação, que deveriam ficar juntos). */
 .ent-cal-nav { display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border) }
 .ent-cal-title { font-size:14px;font-weight:600 }
 .ent-cal-navbtn { border:none;background:none;cursor:pointer;color:var(--muted);padding:4px 8px;border-radius:var(--r-sm);font-size:16px;line-height:1 }
 .ent-cal-navbtn:hover { background:rgba(0,0,0,.06);color:var(--text) }
 .ent-cal-grid { display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;margin-top:12px }
 .ent-cal-dow { background:var(--surface2);padding:8px;text-align:center;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px }
 /* Células bem maiores (item pedido: "parece que ele é maior e proporciona
    uma melhor visualização") — igual à referência do Airtable, que mostra
    vários eventos por dia com folga, não uma grade apertada de 80px. */
 .ent-cal-day { background:var(--surface);min-height:150px;padding:7px;position:relative }
 .ent-cal-day.other-month { background:var(--surface2);opacity:.5 }
 .ent-cal-day.today { background:var(--navy-dim) }
 .ent-cal-daynum { font-size:12px;color:var(--muted);font-weight:500;margin-bottom:5px }
 .ent-cal-day.today .ent-cal-daynum { background:var(--navy-solid);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px }
 /* Cor por Status (bucket), inline via style — consistente com a legenda
    (ver _entEventColor/_entCalEventHTML, entregas.js). Antes tinha uma
    paleta de 10 classes fixas por hash de Transporte, sem relação com a
    legenda (bug corrigido). */
 .ent-cal-event { font-size:11px;font-weight:500;padding:3px 6px;border-radius:4px;margin-bottom:3px;line-height:1.35;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:filter .1s }
 .ent-cal-event:hover { filter:brightness(1.08) }
