/* TMDB 影视/影人独立详情页样式（条件加载，仅在 movie/tv_show/person 详情页） */
.tmdb-single-hero{background:linear-gradient(135deg,#0d0b1e 0%,#1a1035 50%,#0d0b1e 100%);position:relative;overflow:hidden;padding:60px 0}
.tmdb-single-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(245,158,11,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(245,158,11,.04) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0}
.tmdb-single-hero .glow{position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(245,158,11,.12) 0,transparent 55%),radial-gradient(circle at 20% 60%,rgba(168,85,247,.08) 0,transparent 50%);pointer-events:none;z-index:0}
.tmdb-single-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:0 20px;display:flex;gap:36px;align-items:flex-start}
.tmdb-single-photo{width:260px;flex-shrink:0;border-radius:16px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.4);background:linear-gradient(135deg,#1a1035,#2d1b4e)}
.tmdb-single-photo img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block}
.tmdb-single-photo.is-person img{aspect-ratio:1/1;border-radius:50%}
.tmdb-single-photo .no-photo{width:100%;aspect-ratio:2/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#9289b8;font-size:15px}
.tmdb-single-photo.is-person .no-photo{aspect-ratio:1/1;border-radius:50%;font-size:32px}
.no-photo-label{font-size:13px;font-weight:600;letter-spacing:.5px;color:#9289b8;line-height:1.2;text-align:center}
.tmdb-single-info{flex:1;color:#e2e0ed}
.tmdb-single-info h1{font-size:32px;font-weight:900;color:#fff;margin:0 0 6px;line-height:1.25}
.tmdb-single-info .original-title{font-size:15px;color:#9289b8;margin-bottom:8px}
.tmdb-single-info .tagline{font-style:italic;color:#fcd34d;font-size:16px;margin-bottom:18px}
.tmdb-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.tmdb-meta-item .label{font-size:11px;color:rgba(255,255,255,.45);text-transform:uppercase;font-weight:600;letter-spacing:.5px;display:block;margin-bottom:3px}
.tmdb-meta-item .value{font-size:15px;font-weight:700;color:#fff}
.tmdb-meta-item .value.rating{color:#f59e0b;font-size:18px}
.tmdb-genres{display:flex;flex-wrap:wrap;gap:8px}
.tmdb-genre-tag{font-size:13px;padding:5px 15px;border-radius:999px;background:rgba(245,158,11,.12);color:#fbbf24;font-weight:600;border:1px solid rgba(245,158,11,.2)}
.tmdb-single-actions{margin-top:20px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.tmdb-btn{display:inline-block;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s}
.tmdb-btn-back{border:1px solid rgba(245,158,11,.35);color:#f59e0b}
.tmdb-btn-back:hover{background:rgba(245,158,11,.08);border-color:#f59e0b;color:#fbbf24}
.tmdb-single-content{max-width:1100px;margin:0 auto;padding:40px 20px 60px}
.tmdb-section{margin-bottom:32px}
.tmdb-section h2{font-size:20px;font-weight:800;color:#1a1035;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid rgba(245,158,11,.2);display:flex;align-items:center;gap:8px}
.tmdb-section h2::before{content:'';width:4px;height:20px;background:linear-gradient(180deg,#f59e0b,#d97706);border-radius:2px}
.tmdb-overview{font-size:15px;line-height:1.9;color:#4a5568}
.tmdb-detail-table{width:100%;border-collapse:collapse}
.tmdb-detail-table th,.tmdb-detail-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #f0edf5}
.tmdb-detail-table th{width:140px;font-size:13px;color:#9289b8;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#faf9fc}
.tmdb-detail-table td{font-size:14px;color:#1f2937;font-weight:500}
.tmdb-cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:14px;justify-content:center}
.tmdb-cast-item{display:flex;flex-direction:column;align-items:center;text-align:center}
.tmdb-cast-item img{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#e2e8f0;margin-bottom:8px;display:block}
.tmdb-cast-item .no-photo{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:24px;color:#94a3b8;margin-bottom:8px}
.tmdb-cast-item .no-photo-label{font-size:0;line-height:0}
.tmdb-cast-item .name{font-size:13px;font-weight:700;color:#1f2937;display:block}
.tmdb-cast-item .role{font-size:12px;color:#94a3b8;display:block;margin-top:2px}
.tmdb-stars{display:flex;flex-wrap:wrap;gap:8px}
.tmdb-star-tag{font-size:13px;padding:4px 12px;border-radius:999px;background:#f3f0fa;color:#1a1035;font-weight:600}
.tmdb-disclaimer{font-size:12px;color:#94a3b8;margin-top:32px;padding:14px 18px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0;line-height:1.7;text-align:center}
.tmdb-disclaimer a{color:#f59e0b;font-weight:600}
@media (max-width:768px){.tmdb-single-inner{flex-direction:column;align-items:center;text-align:center}.tmdb-single-photo{width:200px}.tmdb-meta-grid{grid-template-columns:1fr 1fr}.tmdb-single-actions{justify-content:center}.tmdb-detail-table th{width:100px}}
