/* PDF tools (P2): Word to PDF, resize, flatten and image extraction. */
.p2pdf { min-width: 0; }
.p2pdf * { box-sizing: border-box; }
.p2pdf [hidden] { display: none !important; }
.p2pdf .wt-grid { grid-template-columns: minmax(0, 1fr); }
.p2pdf label,
.p2pdf input,
.p2pdf select,
.p2pdf button,
.p2pdf a { max-width: 100%; }
.p2pdf-hint { margin: 0; color: var(--text-3); font-size: 0.85rem; }
.p2pdf-out { display: flex; flex-wrap: wrap; gap: 0.5rem; min-width: 0; margin-top: 0.75rem; }
.p2pdf-out a { min-height: 44px; overflow-wrap: anywhere; text-align: center; }
.p2pdf-log { margin: 0.75rem 0 0; white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; color: var(--text-2); }
.p2pdf-pics {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 0.6rem;
  margin: 0.75rem 0 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}
.p2pdf-pics:empty { display: none; }
.p2pdf-pics li {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.4rem;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  background: var(--bg);
}
.p2pdf-pics img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 180px;
  object-fit: contain;
  background: #fff;
  border-radius: 6px;
}
.p2pdf-pics span { overflow-wrap: anywhere; font-size: 0.8rem; color: var(--text-2); }
.p2pdf-pics a { min-height: 44px; text-align: center; }

@media (min-width: 640px) {
  .p2pdf .wt-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
}
@media (max-width: 420px) {
  .p2pdf-pics { grid-template-columns: minmax(0, 1fr); }
}
