/**
 * =====================================================================================
 * FILE: /css/site_artist_page.css
 * MODULE: Perfil público del ARTISTA — bloque server-side (SSR-01)
 * Solo lo carga pagina_artista.php. Prefijo .wk-ap-* (no choca con site_object_page.css).
 * VERSION: 1.0.0 (2026-09-22)
 * =====================================================================================
 */
:root { --wk-ap-blue:#005BAB; --wk-ap-org:#F8981D; --wk-ap-txt:#3d4652; --wk-ap-mut:#6c757d; --wk-ap-bd:#e6e9ee; --wk-ap-bg:#fff; }

.wk-ap-h2 { font-size:1.15rem; font-weight:700; color:#0a2a4a; margin:6px 0 4px; line-height:1.35; }
.wk-ap-meta { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; margin:6px 0 12px; font-size:.95rem; color:var(--wk-ap-txt); }
.wk-ap-stars { color:var(--wk-ap-org); letter-spacing:1px; }
.wk-ap-count i { color:var(--wk-ap-blue); }

.wk-ap { max-width:1140px; margin:0 auto; padding:8px 16px 40px; }
.wk-ap-sec { background:var(--wk-ap-bg); border:1px solid var(--wk-ap-bd); border-radius:16px; padding:20px; margin-top:18px; }
.wk-ap-h { font-size:1.15rem; font-weight:800; color:#0a2a4a; margin:0 0 14px; }
.wk-ap-h i { color:var(--wk-ap-blue); margin-right:4px; }
.wk-ap-empty { margin:0; color:var(--wk-ap-mut); }

/* Shows */
.wk-ap-shows { display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:14px; }
.wk-ap-show { display:flex; flex-direction:column; border:1px solid var(--wk-ap-bd); border-radius:14px; overflow:hidden; text-decoration:none; color:inherit; transition:box-shadow .15s, transform .15s; }
.wk-ap-show:hover { box-shadow:0 6px 18px rgba(16,42,67,.12); transform:translateY(-2px); color:inherit; }
.wk-ap-show__img { display:block; aspect-ratio:16/9; background:#f3f5f8; }
.wk-ap-show__img img { width:100%; height:100%; object-fit:cover; display:block; }
.wk-ap-show__b { display:flex; flex-direction:column; gap:3px; padding:12px 14px 14px; flex:1; }
.wk-ap-show__d { font-size:.82rem; font-weight:700; color:var(--wk-ap-blue); }
.wk-ap-show__t { font-weight:800; color:#0a2a4a; }
.wk-ap-show__c { font-size:.86rem; color:var(--wk-ap-mut); }
.wk-ap-show__bt { margin-top:auto; padding-top:8px; font-weight:700; color:var(--wk-ap-org); }

/* Book Me (MB-BK-01, opción A) */
.wk-ap-book__occ { margin:0 0 14px; color:var(--wk-ap-mut); }
.wk-ap-btn { display:inline-flex; align-items:center; gap:8px; padding:10px 20px; border-radius:10px; background:var(--wk-ap-blue); color:#fff; font-weight:700; text-decoration:none; }
.wk-ap-btn:hover { background:#0a2a4a; color:#fff; }

/* Canciones */
.wk-ap-songs { margin:0; padding-left:1.4em; columns:2 280px; column-gap:32px; }
.wk-ap-songs li { break-inside:avoid; padding:6px 0; border-bottom:1px dashed var(--wk-ap-bd); }
.wk-ap-songs li > span { display:inline-flex; }
.wk-ap-song__n { font-weight:600; }
.wk-ap-song__n a { color:inherit; }
.wk-ap-song__d { float:right; color:var(--wk-ap-mut); font-variant-numeric:tabular-nums; }

/* Vídeos */
.wk-ap-video { position:relative; aspect-ratio:16/9; max-width:720px; border-radius:12px; overflow:hidden; background:#000; }
.wk-ap-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.wk-ap-video__t { margin:8px 0 0; font-weight:700; }
.wk-ap-vlist { list-style:none; margin:14px 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(160px, 1fr)); gap:12px; }
.wk-ap-vlist a { display:flex; flex-direction:column; gap:6px; text-decoration:none; color:inherit; font-size:.86rem; }
.wk-ap-vlist img { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:8px; }

/* Reseñas */
.wk-ap-reviews { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:14px; }
.wk-ap-review { margin:0; padding:14px; border:1px solid var(--wk-ap-bd); border-radius:12px; }
.wk-ap-review__h { display:flex; justify-content:space-between; gap:8px; }
.wk-ap-review__t { font-weight:700; margin-top:4px; }
.wk-ap-review p { margin:6px 0 0; color:var(--wk-ap-txt); }

/* Bio */
.wk-ap-bio { color:var(--wk-ap-txt); line-height:1.65; }
.wk-ap-bio img { max-width:100%; height:auto; }

@media (max-width: 575.98px) {
    .wk-ap { padding:4px 12px 28px; }
    .wk-ap-sec { padding:16px; border-radius:14px; }
    .wk-ap-songs { columns:1; }
}
