/* ============================================================
 * Reddgifs Pornstars — pornstar-tile internal styling ONLY.
 *
 * Layout, grid, gap, pagination, container width, side padding —
 * ALL of these are inherited unchanged from reddgifs-xvids-home/
 * xvids-home.css. We use the EXACT same class names as the homepage
 * (.xvh-page > .xvh-main > .post-grid.xvh-grid-wrap > .row.xvh-grid)
 * so the homepage's CSS rules apply verbatim. There are no .xvp-page /
 * .xvp-main / .xvp-grid rules in this file because adding any would
 * re-introduce the layout drift this page suffered from.
 *
 * What's allowed here: rules scoped to .xvp-item (the pornstar tile
 * itself) — thumbnail wrap, rank badge, name, video count. The tile
 * sits in a .xvh-grid cell sized by the homepage's CSS; we just paint
 * its insides.
 * ============================================================ */


/* Pornstar tile — the only thing the homepage CSS doesn't already cover,
   because our tiles aren't .xvh-card (they don't render a video). The
   .post-item class on the tile makes xvids-home's `.xvh-page .xvh-grid > .post-item`
   width:100% rule apply, so the tile fills its grid cell at the same
   width as a homepage video tile. */

.xvp-item {
    display: block;
    text-decoration: none;
    color: inherit;
    background: transparent;
    transition: transform 120ms ease-out;
}
.xvp-item:hover { text-decoration: none; transform: translateY(-2px); }
.xvp-item:hover .xvp-item__name { color: #ff5e7e; }

.xvp-item__thumb-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #1a1a1a;
    border-radius: 4px;
    overflow: hidden;
}
.xvp-item__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.xvp-item__thumb--empty {
    background: linear-gradient(135deg, #222 0%, #1a1a1a 100%);
}

/* Meta block sits below the thumbnail; xvideos-style two-line layout:
   line 1 = "#N Name" (the rank lives inline with the name now, not as a badge
   over the thumbnail). Line 2 = "K videos". Both centered.
   The .xvp-item parent selector is included on every rule to bump specificity
   above any generic StreamTube post-meta rules that might otherwise win. */
.xvp-item .xvp-item__meta {
    padding: 6px 2px 4px;
    display: flex;
    flex-direction: column;
    align-items: center;       /* center flex items horizontally */
    text-align: center;        /* center inline text within each item */
    gap: 1px;
    min-height: 36px;
    width: 100%;
}
.xvp-item .xvp-item__name,
.xvp-item .xvp-item__count {
    display: block;            /* spans → block so text-align actually applies */
    text-align: center;
    width: 100%;
}
.xvp-item .xvp-item__name {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    color: #ddd;
    transition: color 120ms;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.xvp-item .xvp-item__count {
    font-size: 11px;
    color: #888;
    font-weight: 500;
}


/* ============================================================
 * Per-pornstar archive header (taxonomy-pornstar.php).
 *
 * Markup uses the StreamTube theme's .widget-title-wrap +
 * .widget-title classes — same structure the Top Videos page uses
 * — so the title gets uppercase + red underline styling from the
 * theme CSS for free. All we add here is the band padding so the
 * title has breathing room from the nav above. Pattern after Top
 * Videos' .rgt-head wrapper (16px top, 8px sides, 0 bottom).
 * ============================================================ */

.xvp-archive-head {
    padding: 16px 8px 0;
}
