/* DaoPhim v7 — detail-page visual fidelity; appended after v1–v6.
 * Desktop layout is intentionally capped and never grows unbounded at 1920px.
 * No changes to admin, crawler or player layout. */
body.dao-body:has(.dao-detail-v7) { background-color:#090a10; }
body.dao-body .dao-detail-v7.dao-shell {
  box-sizing:border-box; width:calc(100% - clamp(40px,7vw,160px));
  max-width:1600px; margin:0 auto; padding:0 0 62px; min-width:0;
}
body.dao-body .dao-detail-v7 .dao-detail-hero {
  display:grid; grid-template-columns:clamp(248px,21.96vw,300px) minmax(0,1fr);
  align-items:start; gap:clamp(28px,2.8vw,44px);
  margin:clamp(40px,3.9vw,58px) 0 56px;
}
.dao-detail-v7 .dao-detail-description { min-width:0; overflow-wrap:break-word; }
.dao-detail-v7 .dao-detail-description h1 { font-size:clamp(38px,3.05vw,58px); line-height:1.15; letter-spacing:-1.35px; margin:0 0 12px; }
.dao-detail-v7 .dao-detail-subtitle { font-size:clamp(17px,1.2vw,20px); margin-bottom:18px; }
.dao-detail-v7 .dao-detail-update { margin:0 0 22px; font-size:14px; }
.dao-detail-v7 .dao-breadcrumb { margin-bottom:15px; }
.dao-detail-v7 .dao-detail-chips { margin-bottom:22px; }
.dao-detail-v7 .dao-detail-actionbar { width:100%; max-width:1140px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.dao-detail-v7 .dao-detail-actionbar .dao-btn-primary,
.dao-detail-v7 .dao-detail-actionbar .dao-btn-secondary { min-height:58px; font-size:16px; }
/* Entire movie poster remains a keyboard-focusable link. Show disc on hover
 * just like the reference, instead of permanently overlaying movie posters. */
body.dao-body .dao-detail-v7 .dao-detail-poster { isolation:isolate; max-width:100%; width:100%; border-radius:19px; border:1px solid #262b34; aspect-ratio:2/3; overflow:hidden; }
body.dao-body .dao-detail-v7 .dao-detail-poster > img { transition:transform .28s ease,filter .26s ease; will-change:transform; }
body.dao-body .dao-detail-v7 .dao-detail-poster::after { content:''; position:absolute; inset:0; z-index:1; opacity:0; pointer-events:none; background:linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.16)); transition:opacity .23s ease; }
body.dao-body .dao-detail-v7 .dao-detail-poster .dao-badge-quality { z-index:4; }
body.dao-body .dao-detail-v7 .dao-detail-poster .dao-detail-poster-play {
  display:flex!important; position:absolute!important; inset:0!important;
  top:0!important; left:0!important; width:100%!important; height:100%!important;
  border:0!important; border-radius:0!important; box-shadow:none!important;
  transform:none!important; opacity:1!important; z-index:3; cursor:pointer;
  background:transparent!important; align-items:center; justify-content:center; text-decoration:none;
}
.dao-detail-v7 .dao-detail-play-disc {
  display:flex; justify-content:center; align-items:center; width:61px; height:61px;
  border-radius:50%; background:#b47131; border:1px solid #ad6b30;
  color:#fff; box-shadow:0 9px 32px rgba(0,0,0,.35);
  opacity:0; transform:translateY(4px) scale(.93);
  transition:opacity .24s ease,transform .26s ease,background .22s ease;
}
.dao-detail-v7 .dao-detail-poster:hover > img, .dao-detail-v7 .dao-detail-poster:focus-within > img { transform:scale(1.025); filter:brightness(.80); }
.dao-detail-v7 .dao-detail-poster:hover::after, .dao-detail-v7 .dao-detail-poster:focus-within::after { opacity:1; }
.dao-detail-v7 .dao-detail-poster:hover .dao-detail-play-disc,
.dao-detail-v7 .dao-detail-poster .dao-detail-poster-play:focus-visible .dao-detail-play-disc { opacity:1; transform:translateY(0) scale(1); }
.dao-detail-v7 .dao-detail-poster .dao-detail-poster-play:hover .dao-detail-play-disc { background:#c17c39; }
/* Community 10-star rating widget — independent of imported IMDb values. */
.dao-detail-v7 .dao-stars-v7 { display:flex; flex-wrap:wrap; align-items:center; column-gap:6px; row-gap:6px; margin:1px 0 18px; }
.dao-detail-v7 .dao-rating-stars { display:flex; align-items:center; flex-wrap:nowrap; gap:0; white-space:nowrap; }
.dao-detail-v7 .dao-rating-star {
  appearance:none; -webkit-appearance:none; background:transparent; border:0; border-radius:4px;
  width:30px; height:31px; padding:2px; margin:0; color:#707888;
  display:inline-flex; align-items:center; justify-content:center; cursor:pointer;
  transition:color .16s ease,transform .16s ease;
}
.dao-detail-v7 .dao-rating-star svg { display:block; width:26px; height:26px; fill:transparent; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; transition:fill .14s ease,color .14s ease; }
.dao-detail-v7 .dao-rating-star.is-on { color:#ffbf00; }
.dao-detail-v7 .dao-rating-star.is-on svg { fill:#ffbf00; stroke:#ffbf00; }
.dao-detail-v7 .dao-rating-star:hover, .dao-detail-v7 .dao-rating-star:focus-visible { transform:scale(1.09); }
.dao-detail-v7 .dao-rating-star:focus-visible { outline:2px solid #ffd055; outline-offset:2px; }
.dao-detail-v7 .dao-rating-stars.is-loading { opacity:.55; pointer-events:none; }
.dao-detail-v7 .dao-rating-summary { color:#bbc0cd; font-size:14px; white-space:nowrap; line-height:1.55; }
.dao-detail-v7 .dao-rating-summary strong { font-weight:600; color:#e3e4ee; }
.dao-detail-v7 .dao-rating-feedback { flex-basis:100%; color:#e0b485; font-size:12px; min-height:0; }
.dao-detail-v7 .dao-rating-feedback:empty { display:none; }
.dao-detail-v7 .dao-rating-feedback[data-status='success'] { color:#6fe5a5; }
.dao-detail-v7 .dao-rating-feedback[data-status='error'] { color:#ffb1a9; }
/* Sharing row: icon paths and visual rhythm are aligned with the saved HTML. */
.dao-detail-v7 .dao-detail-share { display:flex; align-items:center; flex-wrap:wrap; gap:17px; min-height:27px; margin:14px 0 22px; color:#fff; }
.dao-detail-v7 .dao-detail-share>button.dao-share-label { display:inline-flex; align-items:center; gap:8px; color:#f5f5fa; font-size:15px; font-weight:700; border:0; padding:0; margin:0; background:transparent; cursor:pointer; }
.dao-detail-v7 .dao-detail-share .dao-share-label strong { font-size:15px; font-weight:700; }
.dao-detail-v7 .dao-detail-share>a.dao-share-network { display:inline-flex; align-items:center; justify-content:center; width:23px; height:27px; min-width:23px; color:#f3f4f8; text-decoration:none; background:none; font-weight:normal; border:0; transform:none; transition:color .16s ease,transform .16s ease; }
.dao-detail-v7 .dao-detail-share .dao-share-network svg { display:block; width:22px; height:22px; }
.dao-detail-v7 .dao-detail-share>a.dao-share-network:hover { transform:translateY(-2px); }
.dao-detail-v7 .dao-share-facebook:hover { color:#1877f2!important; }
.dao-detail-v7 .dao-share-twitter:hover { color:#1da1f2!important; }
.dao-detail-v7 .dao-share-pinterest:hover { color:#e60023!important; }
.dao-detail-v7 .dao-share-status { color:#9bd6ad; font-size:12px; }
.dao-detail-v7 .dao-detail-benefits { margin-bottom:20px; }
/* Small notebook / tablet, without breaking desktop layout or any other page. */
@media(max-width:1250px) {
 body.dao-body .dao-detail-v7.dao-shell { width:calc(100% - 70px); }
 body.dao-body .dao-detail-v7 .dao-detail-hero { grid-template-columns:clamp(220px,21vw,265px) minmax(0,1fr); gap:30px; margin:40px 0 44px; }
 .dao-detail-v7 .dao-detail-description h1 { font-size:clamp(34px,3.5vw,45px); }
 .dao-detail-v7 .dao-rating-star { width:27px; height:29px; }
 .dao-detail-v7 .dao-rating-star svg { width:24px; height:24px; }
}
@media(max-width:800px) {
 body.dao-body .dao-detail-v7.dao-shell { width:calc(100% - 32px); }
 body.dao-body .dao-detail-v7 .dao-detail-hero { grid-template-columns:180px minmax(0,1fr); gap:19px; margin:28px 0 34px; }
 .dao-detail-v7 .dao-detail-description h1 { font-size:30px; }
 .dao-detail-v7 .dao-detail-actionbar { gap:9px; }
 .dao-detail-v7 .dao-detail-actionbar .dao-btn-primary,
 .dao-detail-v7 .dao-detail-actionbar .dao-btn-secondary { min-height:48px; font-size:14px; }
 .dao-detail-v7 .dao-detail-update { font-size:12px; margin-bottom:12px; }
 .dao-detail-v7 .dao-detail-subtitle { font-size:15px; }
 .dao-detail-v7 .dao-rating-summary { font-size:12px; }
 .dao-detail-v7 .dao-rating-star { width:24px; height:26px; padding:1px; }
 .dao-detail-v7 .dao-rating-star svg { width:22px; height:22px; }
}
@media(max-width:640px) {
 body.dao-body .dao-detail-v7.dao-shell { width:calc(100% - 26px); }
 body.dao-body .dao-detail-v7 .dao-detail-hero { display:flex; flex-direction:column; gap:18px; margin:20px 0 27px; }
 body.dao-body .dao-detail-v7 .dao-detail-poster { max-width:180px; width:180px; margin:0 auto; }
 .dao-detail-v7 .dao-detail-description h1 { font-size:29px; letter-spacing:-.6px; }
 .dao-detail-v7 .dao-detail-update { text-align:left; }
 .dao-detail-v7 .dao-rating-stars { width:auto; }
 .dao-detail-v7 .dao-rating-star { width:clamp(22px,7.3vw,29px); height:30px; padding:1px; }
 .dao-detail-v7 .dao-rating-star svg { width:100%; height:100%; }
 .dao-detail-v7 .dao-detail-share { gap:13px; }
 .dao-detail-v7 .dao-detail-share .dao-share-label strong { font-size:13px; }
 .dao-detail-v7 .dao-detail-share .dao-share-network svg { width:20px; height:20px; }
}
@media(hover:none) {
 .dao-detail-v7 .dao-detail-play-disc { opacity:1; transform:none; }
}
@media(prefers-reduced-motion:reduce) {
 .dao-detail-v7 .dao-detail-poster > img,.dao-detail-v7 .dao-detail-play-disc,.dao-detail-v7 .dao-rating-star { transition:none!important; }
}
/* Reference-exact CSS pixel sizing based on the user-provided saved HTML,
 * NOT physical screenshot pixels (15-inch displays commonly use OS scaling).
 * Tailwind reference: .container, md:w-56 lg:w-60, md:gap-10, md:text-5xl. */
body.dao-body:has(.dao-detail-v7) { background:#0a0a0f!important; }
body.dao-body .dao-detail-v7.dao-shell {
  width:calc(100% - 32px); max-width:1536px;
}
body.dao-body .dao-detail-v7 .dao-detail-hero {
  grid-template-columns:240px minmax(0,1fr); gap:40px;
}
body.dao-body .dao-detail-v7 .dao-detail-poster { width:240px; max-width:100%;
  border-radius:16px; border:1px solid rgba(255,255,255,.10);
  box-shadow:0 24px 50px rgba(0,0,0,.35);
  transition:transform .3s ease, box-shadow .3s ease;
}
body.dao-body .dao-detail-v7 .dao-detail-poster:hover,
body.dao-body .dao-detail-v7 .dao-detail-poster:focus-within {
  transform:translateY(-6px);
  box-shadow:0 30px 70px rgba(138,85,32,.35);
}
body.dao-body .dao-detail-v7 .dao-detail-poster > img,
body.dao-body .dao-detail-v7 .dao-detail-poster:hover > img,
body.dao-body .dao-detail-v7 .dao-detail-poster:focus-within > img { transform:none; filter:none; }
body.dao-body .dao-detail-v7 .dao-detail-poster::after { background:rgba(0,0,0,.35); }
.dao-detail-v7 .dao-detail-play-disc {
  width:48px; height:48px; background:linear-gradient(135deg,#C07838,#8A5520);
  border:0; box-shadow:0 14px 30px rgba(0,0,0,.28);
}
.dao-detail-v7 .dao-detail-play-disc svg { width:20px; height:20px; margin-left:2px; }
.dao-detail-v7 .dao-detail-description h1 { font-size:48px; letter-spacing:-1.1px; line-height:1.25; }
.dao-detail-v7 .dao-rating-stars { gap:4px; }
.dao-detail-v7 .dao-rating-star { width:24px; height:24px; padding:0; }
.dao-detail-v7 .dao-rating-star svg { width:24px; height:24px; }
.dao-detail-v7 .dao-detail-share .dao-share-network svg { width:20px; height:20px; }
@media (min-width:1280px) and (max-width:1535.98px) {
 body.dao-body .dao-detail-v7.dao-shell { max-width:1280px; }
}
@media (min-width:1024px) and (max-width:1279.98px) {
 body.dao-body .dao-detail-v7.dao-shell { max-width:1024px; }
 body.dao-body .dao-detail-v7 .dao-detail-hero { grid-template-columns:240px minmax(0,1fr);gap:40px; }
 body.dao-body .dao-detail-v7 .dao-detail-poster { width:240px; }
}
@media (min-width:768px) and (max-width:1023.98px) {
 body.dao-body .dao-detail-v7.dao-shell { max-width:768px; }
 body.dao-body .dao-detail-v7 .dao-detail-hero { grid-template-columns:224px minmax(0,1fr);gap:40px; }
 body.dao-body .dao-detail-v7 .dao-detail-poster { width:224px; }
 .dao-detail-v7 .dao-detail-description h1 {font-size:48px;}
}
@media (max-width:767.98px) {
 body.dao-body .dao-detail-v7 .dao-detail-hero {display:flex;flex-direction:column;gap:24px;}
 body.dao-body .dao-detail-v7 .dao-detail-poster {width:144px;margin:0 auto;}
 .dao-detail-v7 .dao-detail-description h1 {font-size:30px;line-height:1.25;}
 .dao-detail-v7 .dao-rating-stars {gap:3px;}
 .dao-detail-v7 .dao-rating-star {width:24px;height:24px;}
 .dao-detail-v7 .dao-rating-star svg {width:23px;height:23px;}
}
@media(hover:none) {
 body.dao-body .dao-detail-v7 .dao-detail-poster:hover {transform:none;box-shadow:0 24px 50px rgba(0,0,0,.35);}
}
