/* ZIP Tool — tool-specific styles */
.zt-listhead, .zt-createrow { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.zt-listhead b { font-size: 1rem; align-self: center; max-width: 30ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.zt-createrow { margin-bottom: 0; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.zt-createrow .field { min-width: 200px; }
.np-spacer { flex: 1; }

.zt-files { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px;
  max-height: 420px; overflow-y: auto; }
.zt-file { display: flex; align-items: center; gap: 12px; background: var(--bg-soft); border: 1px solid var(--line);
  border-radius: var(--radius-sm); padding: 10px 14px; animation: ats-rise .25s cubic-bezier(.23,1,.32,1) both; }
.zt-fic { flex-shrink: 0; color: var(--accent); font-size: 1.05rem; }
.zt-fname { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-weight: 600; font-size: .92rem; }
.zt-fsize { color: var(--muted-2); font-size: .83rem; font-variant-numeric: tabular-nums; flex-shrink: 0; }
.zt-dl { background: none; border: 1px solid var(--line); color: var(--accent); border-radius: 7px;
  padding: 6px 12px; cursor: pointer; font-size: .82rem; font-weight: 700; font-family: inherit; flex-shrink: 0;
  transition: border-color .15s, transform .12s; }
.zt-dl:hover { border-color: var(--accent); }
.zt-dl:active { transform: scale(.94); }
.zt-x { background: none; border: none; color: var(--muted-2); cursor: pointer; font-size: 1rem; padding: 4px;
  flex-shrink: 0; border-radius: 6px; }
.zt-x:hover { color: var(--danger); }

#ztDropX.compact, #ztDropC.compact { padding: 18px; }
.zt-pane .dropzone { margin-bottom: 14px; }
@media (max-width: 560px) { .zt-fsize { display: none; } }
