/**
 * Modern visual refresh for the "PDF Embed" list screen (edit.php?post_type=
 * pdfev_embed_viewer). CSS-only: every element here is native WP_List_Table
 * markup, so bulk actions, quick edit, screen options, search and filtering
 * all keep working exactly as before — only the presentation changes.
 */

/* Without this, cell padding adds ON TOP of every column's declared width
   (content-box is the table-cell default), so a "130px" column actually
   renders ~28px wider once its 14px left/right padding is added in — the
   real cause of the table outgrowing the page. border-box makes the
   declared width the final rendered width, padding included. */
.post-type-pdfev_embed_viewer .wp-list-table th,
.post-type-pdfev_embed_viewer .wp-list-table td {
  box-sizing: border-box;
}

.post-type-pdfev_embed_viewer {
  --pdfev-accent: #b8874a;
  --pdfev-accent-ink: #6b4e26;
  --pdfev-ink: #1d2327;
  --pdfev-muted: #646970;
  --pdfev-line: #e5e7eb;
  --pdfev-surface: #ffffff;
  --pdfev-canvas: #f6f7f7;
  --pdfev-good: #1a7f4e;
  --pdfev-good-bg: #eaf7ef;
  --pdfev-off-bg: #f1f1f1;
  --pdfev-off-ink: #646970;
}

/* ===== Toolbar (search, filters, bulk actions) ===== */
.post-type-pdfev_embed_viewer .tablenav.top {
  margin-bottom: 14px;
}

.post-type-pdfev_embed_viewer .tablenav .actions {
  padding: 6px 0;
}

.post-type-pdfev_embed_viewer .tablenav select {
  border-radius: 6px;
}

.post-type-pdfev_embed_viewer .search-box #post-search-input {
  border-radius: 6px 0 0 6px;
  min-height: 32px;
}

.post-type-pdfev_embed_viewer .search-box #search-submit {
  border-radius: 0 6px 6px 0;
}

/* ===== Table shell ===== */
/* overflow-x (not overflow:hidden) — the many min/max-width columns below
   can add up to more than the viewport on a busy row; letting the table
   scroll horizontally when that happens keeps every column at its real
   width instead of the browser silently force-compressing Title and
   breaking words mid-word to make everything fit. */
.post-type-pdfev_embed_viewer .wp-list-table {
  border: 1px solid var(--pdfev-line);
  border-radius: 10px;
  overflow-x: auto;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

.post-type-pdfev_embed_viewer .wp-list-table thead tr,
.post-type-pdfev_embed_viewer .wp-list-table tfoot tr {
  background: var(--pdfev-canvas);
}

.post-type-pdfev_embed_viewer .wp-list-table th.manage-column {
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--pdfev-muted);
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 14px;
  padding-right: 14px;
  vertical-align: middle;
  border-bottom: 1px solid var(--pdfev-line);
}

.post-type-pdfev_embed_viewer .wp-list-table th.check-column {
  padding-right: 6px;
}

/* WP core positions the little sort-direction triangle with its own
   float/absolute rules built for the default header padding — realign
   label + triangle on one flex line so they stay level with each other
   instead of drifting once our own padding/line-height are in play. */
.post-type-pdfev_embed_viewer .wp-list-table th.manage-column a {
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--pdfev-muted);
}

.post-type-pdfev_embed_viewer .wp-list-table th.manage-column .sorting-indicators {
  position: relative;
  inset: auto;
  float: none;
  margin: 0;
}

.post-type-pdfev_embed_viewer .wp-list-table th.sorted a {
  color: var(--pdfev-ink);
}

.post-type-pdfev_embed_viewer .wp-list-table > tbody > tr {
  background: var(--pdfev-surface);
  transition: background-color 0.12s ease;
}

.post-type-pdfev_embed_viewer .wp-list-table > tbody > tr:hover {
  background: var(--pdfev-canvas);
}

.post-type-pdfev_embed_viewer .wp-list-table > tbody > tr + tr {
  border-top: 1px solid var(--pdfev-line);
}

.post-type-pdfev_embed_viewer .wp-list-table td,
.post-type-pdfev_embed_viewer .wp-list-table th {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 14px;
  padding-right: 14px;
  vertical-align: top;
}

.post-type-pdfev_embed_viewer .wp-list-table td.column-cb,
.post-type-pdfev_embed_viewer .wp-list-table td.column-pdfev_reorder {
  padding-top: 14px;
}

/* ===== Column widths ===== */
/* WP core sets its own width on several of these columns (confirmed by
   measuring actual rendered offsetWidth — plain width/max-width was silently
   overridden), so every column here uses width + !important, budgeted to
   add up to the table's real available width instead of just capping each
   one in isolation and hoping the browser sorts it out. Title gets the
   explicit majority share since it's the column people actually read; the
   rest are sized to their own (short) content only. */
.post-type-pdfev_embed_viewer .wp-list-table .column-title { width: 320px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_category { width: 95px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_author { width: 148px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_publisher { width: 95px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_download { width: 92px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_views_count,
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_downloads_count {
  text-align: center;
}
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_views_count { width: 85px !important; }
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_downloads_count { width: 110px !important; }

.post-type-pdfev_embed_viewer .wp-list-table th.column-pdfev_meta_views_count a,
.post-type-pdfev_embed_viewer .wp-list-table th.column-pdfev_meta_downloads_count a {
  justify-content: center;
}
.post-type-pdfev_embed_viewer .wp-list-table .column-Author { width: 75px !important; }

.post-type-pdfev_embed_viewer .wp-list-table .column-date {
  width: 85px !important;
  text-align: right;
}

.post-type-pdfev_embed_viewer .wp-list-table th.column-date a {
  justify-content: flex-end;
}

/* Row actions (Edit | Quick Edit | Trash | View) stay reserved-but-invisible
   until hover — that's WP core's own anti-layout-shift behavior, kept as-is.
   Just give the reserved space a smaller footprint so it doesn't read as a
   large empty gap under a short, single-line title. */
.post-type-pdfev_embed_viewer .wp-list-table .row-actions {
  font-size: 12px;
  line-height: 1.6;
  padding-top: 2px;
}

/* ===== Title column ===== */
.post-type-pdfev_embed_viewer .wp-list-table .column-title strong a {
  font-size: 14px;
  font-weight: 600;
  color: var(--pdfev-ink);
}

.post-type-pdfev_embed_viewer .wp-list-table .row-actions {
  color: var(--pdfev-muted);
}

/* ===== Drag handle column ===== */
.post-type-pdfev_embed_viewer .column-pdfev_reorder {
  width: 28px;
  padding-left: 8px !important;
  padding-right: 0 !important;
  text-align: center;
}

.post-type-pdfev_embed_viewer .pdfev-drag-handle {
  display: inline-flex;
  cursor: grab;
  color: #b7bcc2;
  transition: color 0.12s ease;
}

.post-type-pdfev_embed_viewer tr:hover .pdfev-drag-handle {
  color: var(--pdfev-accent);
}

/* Search, a taxonomy filter, or a column sort all change which/what order
   posts are shown in, so a drag there wouldn't reorder what a plain visit
   to this screen actually shows — admin-reorder.js disables dragging and
   marks the handles .is-disabled in that case. Grey out (and keep grey on
   hover, overriding the accent-on-hover rule above) rather than just
   silently doing nothing, so it doesn't look broken. */
.post-type-pdfev_embed_viewer .pdfev-drag-handle.is-disabled,
.post-type-pdfev_embed_viewer tr:hover .pdfev-drag-handle.is-disabled {
  color: #dcdcde;
  cursor: not-allowed;
}

/* ===== Taxonomy columns (Categories / Authors / Publishers) as pills ===== */
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_category,
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_author,
.post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_publisher {
  line-height: 1.9;
}

.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_category a,
.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_author a,
.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_publisher a {
  display: inline-block;
  font-size: 11.5px;
  line-height: 1.3;
  padding: 2px 8px;
  margin: 0 4px 0 0;
  border-radius: 999px;
  background: var(--pdfev-canvas);
  border: 1px solid var(--pdfev-line);
  color: var(--pdfev-ink);
}

.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_category a:hover,
.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_author a:hover,
.post-type-pdfev_embed_viewer .column-taxonomy-pdfev_publisher a:hover {
  border-color: var(--pdfev-accent);
  color: var(--pdfev-accent-ink);
}

/* ===== Download Enable badge ===== */
.pdfev-badge {
  display: inline-block;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.5;
  padding: 2px 10px;
  border-radius: 999px;
}

.pdfev-badge--on {
  background: var(--pdfev-good-bg);
  color: var(--pdfev-good);
}

.pdfev-badge--off {
  background: var(--pdfev-off-bg);
  color: var(--pdfev-off-ink);
}

/* ===== Views / Downloads numbers ===== */
.pdfev-stat {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  color: var(--pdfev-ink);
}

/* ===== Shortcode chip + copy button ===== */
.post-type-pdfev_embed_viewer .wp-list-table .column-shortcode_column {
  width: 130px;
  max-width: 130px;
  overflow: hidden;
}

.pdfev-shortcode-cell {
  display: flex;
  align-items: center;
  gap: 4px;
  max-width: 100%;
}

.pdfev-shortcode-chip {
  display: inline-block;
  font-size: 12px;
  padding: 3px 8px;
  border-radius: 6px;
  background: var(--pdfev-canvas);
  border: 1px solid var(--pdfev-line);
  color: var(--pdfev-ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0; /* lets a flex child actually shrink so text-overflow can kick in */
}

.pdfev-copy-btn {
  display: inline-flex;
  flex: none; /* never let the button itself get squeezed by the chip */
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  vertical-align: middle;
  border: 1px solid transparent;
  background: transparent;
  border-radius: 6px;
  color: var(--pdfev-muted);
  cursor: pointer;
}

.pdfev-copy-btn:hover {
  background: var(--pdfev-canvas);
  border-color: var(--pdfev-line);
  color: var(--pdfev-ink);
}

.pdfev-copy-btn .dashicons {
  width: 16px;
  height: 16px;
  font-size: 16px;
}

.pdfev-copy-btn.is-copied {
  color: var(--pdfev-good);
}

/* ===== File Url column ===== */
.post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_pdf_url {
  width: 120px;
  max-width: 120px;
  overflow: hidden;
}

.pdfev-file-url {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12.5px;
  color: var(--pdfev-muted);
}

.pdfev-file-url:hover {
  color: var(--pdfev-accent-ink);
}

/* ===== Author / Date columns ===== */
.post-type-pdfev_embed_viewer .column-Author,
.post-type-pdfev_embed_viewer .column-date {
  color: var(--pdfev-muted);
  font-size: 12.5px;
}

/* ===== Pagination ===== */
.post-type-pdfev_embed_viewer .tablenav-pages .tablenav-paging-text {
  color: var(--pdfev-muted);
}

/* ===== Responsive (WP admin breakpoints) ===== */
@media screen and (max-width: 782px) {
  .post-type-pdfev_embed_viewer .wp-list-table {
    border-radius: 0;
  }

  .post-type-pdfev_embed_viewer .column-pdfev_reorder {
    display: none; /* dragging a stacked mobile table row layout isn't meaningful */
  }

  /* WP core collapses this table to its own stacked, one-column-per-line
     mobile view below 782px. Our desktop column widths above are !important
     (needed to win over core's own width rule on this hierarchical CPT's
     .column-title/.column-date/etc.), so without this reset they'd carry
     into the stacked view too and fight core's mobile layout. Un-set them
     back to core's own sizing here, scoped to this breakpoint only. */
  .post-type-pdfev_embed_viewer .wp-list-table .column-title,
  .post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_category,
  .post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_author,
  .post-type-pdfev_embed_viewer .wp-list-table .column-taxonomy-pdfev_publisher,
  .post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_download,
  .post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_views_count,
  .post-type-pdfev_embed_viewer .wp-list-table .column-pdfev_meta_downloads_count,
  .post-type-pdfev_embed_viewer .wp-list-table .column-Author,
  .post-type-pdfev_embed_viewer .wp-list-table .column-date {
    width: auto !important;
  }
}
