/* ===== V25.4 audio detail page fix ===== */
.single-library_item .th25d-page{margin:-24px calc(50% - 50vw) 0;width:100vw;background:#f4f5f7}
.single-library_item .th-breadcrumb,
.single-library_item .th-audio-layout,
.single-library_item .th-audio-description,
.single-library_item .th-similar,
.single-library_item .th25-floating-player,
.single-library_item .th24-app-nav,
.single-library_item .th25-player-card,
.single-library_item .th-footer{display:none !important}

.th25d-hero{position:relative;min-height:760px;overflow:hidden}
.th25d-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.08);filter:blur(18px)}
.th25d-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg, rgba(247,221,111,.70), rgba(39,57,77,.82))}
.th25d-topbar{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:22px 24px 0}
.th25d-icon-btn{width:58px;height:58px;border-radius:50%;border:0;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;background:rgba(47,67,97,.90);color:#fff;font-size:42px;box-shadow:0 10px 22px rgba(0,0,0,.18)}
.th25d-cover-wrap{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:34px 20px 34px;margin-top:6px}
.th25d-cover{width:min(100%, 380px);aspect-ratio:.67/1;object-fit:cover;box-shadow:0 28px 50px rgba(0,0,0,.25)}
.th25d-cover--placeholder{background:#d9b638}
.th25d-play-btn{margin-top:28px;min-width:620px;max-width:82vw;height:108px;border-radius:999px;border:4px solid rgba(255,255,255,.9);background:#2d425c;color:#fff;font-size:28px;font-weight:800;box-shadow:0 16px 30px rgba(0,0,0,.18)}
.th25d-play-btn.is-playing{background:#1f3147}
.th25d-content{background:#f7f7f8;border-radius:34px 34px 0 0;margin-top:-24px;position:relative;z-index:4;padding:34px 34px 50px}
.th25d-title-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.th25d-title{margin:0;font-size:68px;line-height:1.02;color:#21252d;font-weight:700;letter-spacing:-0.03em}
.th25d-author-row{display:flex;align-items:center;gap:18px;margin-top:28px}
.th25d-author-avatar{width:84px;height:84px;border-radius:50%;overflow:hidden;flex:0 0 auto;background:linear-gradient(135deg,#bcc6d2,#6a7281)}
.th25d-author-avatar img{width:100%;height:100%;object-fit:cover}
.th25d-author-name,.th25d-author-name a{font-size:52px;color:#232730;font-weight:500;text-decoration:none;letter-spacing:-0.02em}
.th25d-bookmark{border:0;background:transparent;color:#33465e;font-size:64px;line-height:1;padding:8px 0 0}
.th25d-price{margin:46px 0 34px;text-align:center;color:#f18a73;font-size:74px;font-weight:800;letter-spacing:-0.03em}
.th25d-about h3{margin:0 0 18px;color:#1f2329;font-size:58px;line-height:1.05;font-weight:800}
.th25d-about-text{color:#2b2f37;font-size:28px;line-height:1.55;max-height:280px;overflow:hidden;position:relative}
.th25d-about-text.is-expanded{max-height:none}
.th25d-about-text:not(.is-expanded)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:92px;background:linear-gradient(180deg, rgba(247,247,248,0), #f7f7f8 88%)}
.th25d-show-more{margin-top:8px;border:0;background:transparent;color:#ef8f77;font-size:34px;font-weight:800;padding:0}

@media (max-width: 820px){
.th25d-hero{min-height:640px}
.th25d-play-btn{min-width:360px;height:86px;font-size:22px}
.th25d-content{padding:26px 24px 40px}
.th25d-title{font-size:42px}
.th25d-author-name,.th25d-author-name a{font-size:28px}
.th25d-author-avatar{width:54px;height:54px}
.th25d-bookmark{font-size:48px}
.th25d-price{font-size:44px;margin:26px 0 22px}
.th25d-about h3{font-size:30px}
.th25d-about-text{font-size:19px;max-height:200px}
.th25d-show-more{font-size:24px}
}
@media (max-width: 540px){
.th25d-topbar{padding:18px 18px 0}
.th25d-icon-btn{width:48px;height:48px;font-size:34px}
.th25d-hero{min-height:520px}
.th25d-cover{width:min(100%, 250px)}
.th25d-play-btn{min-width:0;width:100%;max-width:360px;height:72px;margin-top:22px;font-size:18px;border-width:3px}
.th25d-content{margin-top:-16px;border-radius:26px 26px 0 0;padding:24px 18px 34px}
.th25d-title{font-size:31px}
.th25d-author-row{gap:12px;margin-top:18px}
.th25d-author-avatar{width:42px;height:42px}
.th25d-author-name,.th25d-author-name a{font-size:18px}
.th25d-bookmark{font-size:38px}
.th25d-price{font-size:30px;margin:22px 0 18px}
.th25d-about h3{font-size:24px}
.th25d-about-text{font-size:17px;line-height:1.62}
.th25d-show-more{font-size:20px}
}
