/* Shared file picker (dropzone card, file rows) and file-type icons. The app is dark-only; badge colours are tuned for it. */
:root {
  --fz-pdf: #d9564a; --fz-doc: #4f7fd0; --fz-xls: #3a9564; --fz-csv: #43a870; --fz-ppt: #e0793a; --fz-txt: #6f7f8d;
  --fz-md: #8497a8; --fz-json: #b8921f; --fz-xml: #c98428; --fz-zip: #9a66b8; --fz-img: #2a9d89; --fz-video: #c4558f;
  --fz-code: #3f7fe0; --fz-abap: #2a82d4; --fz-sfp: #d04a45; --fz-file: #6f7f8d;
}

/* Icon */
.fz-icone { flex: none; display: block; }
.fz-icone .fz-folha { fill: var(--color-surface); stroke: var(--color-border); stroke-width: 1.5; }
.fz-icone .fz-dobra { fill: none; stroke: var(--color-border); stroke-width: 1.5; }
.fz-icone .fz-emblema { fill: var(--fz-file); }
.fz-icone .fz-rotulo { fill: #fff; font: 700 7.5px/1 system-ui, sans-serif; letter-spacing: 0.2px; }
.fz-tipo-pdf .fz-emblema { fill: var(--fz-pdf); } .fz-tipo-doc .fz-emblema { fill: var(--fz-doc); }
.fz-tipo-xls .fz-emblema { fill: var(--fz-xls); } .fz-tipo-csv .fz-emblema { fill: var(--fz-csv); }
.fz-tipo-ppt .fz-emblema { fill: var(--fz-ppt); } .fz-tipo-txt .fz-emblema { fill: var(--fz-txt); }
.fz-tipo-md .fz-emblema { fill: var(--fz-md); } .fz-tipo-json .fz-emblema { fill: var(--fz-json); }
.fz-tipo-xml .fz-emblema { fill: var(--fz-xml); } .fz-tipo-zip .fz-emblema { fill: var(--fz-zip); }
.fz-tipo-img .fz-emblema { fill: var(--fz-img); } .fz-tipo-video .fz-emblema { fill: var(--fz-video); }
.fz-tipo-code .fz-emblema { fill: var(--fz-code); } .fz-tipo-abap .fz-emblema { fill: var(--fz-abap); }
.fz-tipo-sfp .fz-emblema { fill: var(--fz-sfp); } .fz-tipo-file .fz-emblema { fill: var(--fz-file); }

/* Dropzone card */
.fz-zona { display: flex; flex-wrap: wrap; align-items: center; gap: var(--spacing-md, 1rem); padding: 1.25rem 1.5rem; border: 2px dashed var(--color-border); border-radius: 12px; transition: border-color 0.15s, background-color 0.15s; }
.fz-zona.is-over { border-color: var(--color-accent); background: var(--color-accent-soft); }
.fz-zona-icone { font-size: var(--fs-h2); width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; border-radius: 10px; background: var(--color-accent-soft); flex: none; }
.fz-zona-texto { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; flex: 1 1 12rem; }
.fz-zona-texto small { opacity: 0.75; }
.fz-escolher { margin-left: auto; }
.fz-entrada { display: none !important; }
.fz-compacta { padding: 0.6rem 0.9rem; gap: 0.6rem; }
.fz-compacta .fz-zona-icone { width: 2rem; height: 2rem; font-size: var(--fs-h3); }

/* Header + rows */
.fz-cabecalho { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; margin: var(--spacing-sm, 0.5rem) 0; }
.fz-cabecalho[hidden] { display: none; }
.fz-lista { list-style: none; margin: var(--spacing-sm, 0.5rem) 0 0; padding: 0; display: flex; flex-direction: column; gap: 0.35rem; }
.fz-linha { display: flex; align-items: center; gap: 0.6rem; min-width: 0; }
.fz-nome { overflow-wrap: anywhere; min-width: 0; }
.fz-tamanho { color: var(--color-muted); font-size: var(--fs-base); white-space: nowrap; }
.fz-miniatura { width: 28px; height: 28px; object-fit: cover; border-radius: var(--radius-sm, 4px); flex: none; }
.fz-remover { margin-left: auto; background: transparent; color: var(--color-fg); border: 1px solid var(--color-border); border-radius: var(--radius-sm, 4px); min-width: 24px; min-height: 24px; padding: 0 0.4rem; cursor: pointer; line-height: 1; }
.fz-remover:hover:not(:disabled) { background: var(--color-accent-soft); }
.fz-remover:disabled { opacity: 0.5; cursor: default; }

@media (max-width: 600px) {
  .fz-escolher { margin-left: 0; width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .fz-zona { transition: none; }
}

.akb-nome-linha { display: flex; align-items: center; gap: 0.6rem; min-width: 0; }
.akb-nome-meta { min-width: 0; }
