.watch-info{margin-top:16px;padding:24px 26px;background:linear-gradient(135deg,#111217,#0d0e12);border:1px solid #262830;border-radius:18px;align-items:center}.watch-info h1{font-size:30px;line-height:1.2;margin:11px 0 8px}.watch-info .desc{margin:0;font-size:15px;line-height:1.65;color:#aeb1bb}.watch-info .chips{margin-bottom:2px}.watch-info .chip{padding:5px 9px;font-size:11px}.season-card{min-width:170px;padding:16px 18px;background:#17181d;border-color:#30323a;box-shadow:inset 3px 0 0 var(--accent)}.season-card small{font-size:10px;letter-spacing:.08em}.season-card strong{font-size:18px;margin:5px 0 0}.season-card p{font-size:13px;color:#a0a3ad;margin:5px 0 0}.comments-panel{margin-top:16px;padding:24px 26px;background:linear-gradient(145deg,#101a29,#0c1522);box-shadow:0 14px 45px #0003}.comments-panel h2{display:flex;align-items:center;gap:10px;font-size:20px;margin-bottom:18px}.comments-panel h2:before{content:"";width:4px;height:21px;border-radius:4px;background:#1de1cf}.comment-form{grid-template-columns:160px minmax(260px,1fr) 140px;gap:12px;padding:16px;background:#111e2f;border:1px solid #293a50;border-radius:13px}.comment-form label{font-size:11px;font-weight:750;letter-spacing:.02em}.comment-form input,.comment-form textarea{height:44px;margin-top:7px;background:#0d1725;border-color:#33455d}.comment-form textarea{min-height:44px;padding-top:12px}.comment-send{height:44px;background:linear-gradient(135deg,#12cfc0,#08a99f);box-shadow:0 8px 22px #08bcae22}.comment-send:hover{filter:brightness(1.08)}.comment-toolbar{padding:20px 2px 11px}.comment-toolbar select{font-size:12px;padding:8px 30px 8px 11px}.comment-item{margin-top:8px;padding:14px;border:1px solid #24354a;border-radius:12px;background:#0e1927}.avatar{width:38px;height:38px;font-size:14px;box-shadow:0 5px 15px #087ec933}.comment-head strong{font-size:14px}.comment-head time{margin-left:auto;font-size:10px}.comment-item p{margin:5px 0 0;font-size:14px}.empty-comments{border:1px dashed #2d3b4e;border-radius:12px;margin-top:8px}@media(max-width:700px){.watch-info{padding:18px}.watch-info h1{font-size:23px}.season-card{width:100%}.comments-panel{padding:17px}.comment-form{grid-template-columns:1fr;padding:13px}.comment-send{width:100%}.comment-head{flex-wrap:wrap}.comment-head time{margin-left:0;width:100%}}


/* v777: Facebook player - Căn giữa hoàn hảo, nền đen sâu thuần túy #000, không lộ nền trắng */
.player-wrap:has(.fb-player-shell),
.player-wrap:has([data-fb-player-shell]) {
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 240px !important;
  background: #000 !important;
  display: flex !important;
  flex-direction: column !important;
}
.fb-player-shell{position:relative;width:100%;aspect-ratio:16/9;background:#000!important;overflow:hidden;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
.fb-player-shell .fb-fallback-plugin{width:min(100%,calc(100% * 16 / 9))!important;height:100%!important;aspect-ratio:16/9!important;max-width:100%!important;max-height:100%!important;display:block!important;margin:auto!important;border:0!important;background:#000!important}
.fb-player-shell.fb-reel-shell{aspect-ratio:auto;min-height:480px}
.fb-player-shell.fb-reel-shell .fb-fallback-plugin{aspect-ratio:9/16!important;width:auto!important;height:100%!important;max-width:100%!important;max-height:100%!important}
.fb-player-shell .fb-video,.fb-player-shell .fb-video>span,.fb-player-shell .fb-video iframe{width:100%!important;height:100%!important}
.fb-player-shell .fb-stream-player-wrap,
.fb-player-shell .fb-stream-player-wrap video,
.fb-player-shell video.native-fb-video{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;background:#000!important;display:block!important;margin:auto!important}
.site-pause-overlay{position:absolute;inset:0;z-index:9999;background:rgba(0,0,0,.93);display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;pointer-events:none;transition:none!important;contain:paint;will-change:opacity}
.site-pause-overlay.is-visible{visibility:visible;opacity:1;pointer-events:auto}
.pause-instant{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff;text-align:center}
.pause-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#ffffff14;border:1px solid #ffffff28;font-size:25px;font-weight:900}
.pause-instant strong{font-size:20px}
.resume-video{border:0;border-radius:12px;padding:11px 18px;background:#ff9f0a;color:#111;font-weight:850;cursor:pointer}
.resume-video:hover{filter:brightness(1.07)}
/* v32: distinguish end-of-episode action from pause */
.site-pause-overlay .end-state .next-video{font-weight:900}
.watch-season-area{margin-top:16px;margin-bottom:16px}.watch-season-area h2{font-size:18px}.watch-season-area .episode-btn.active{box-shadow:0 0 0 2px rgba(255,157,0,.18) inset}

/* v648: Thanh điều khiển & lưu mốc xem thông minh cho Facebook Player */
.fb-player-quick-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;background:rgba(15,23,42,0.92);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.1);border-radius:0 0 12px 12px;font-size:13px;color:#e2e8f0;margin-top:-2px;box-sizing:border-box}
.fb-qb-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fb-qb-tag{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:0.5px;padding:3px 8px;border-radius:6px;background:rgba(24,119,242,0.2);color:#60a5fa;border:1px solid rgba(24,119,242,0.4)}
.fb-qb-pos{font-weight:700;color:#fbbf24;font-variant-numeric:tabular-nums}
.fb-qb-actions{display:flex;align-items:center;gap:6px}
.fb-qb-btn{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);color:#f1f5f9;border-radius:8px;padding:5px 11px;font-size:12px;font-weight:650;cursor:pointer;transition:all 0.18s ease;display:inline-flex;align-items:center;gap:4px}
.fb-qb-btn:hover{background:rgba(56,189,248,0.22);border-color:#38bdf8;color:#38bdf8}
.fb-qb-btn.fb-qb-save:hover{background:rgba(245,158,11,0.25);border-color:#f59e0b;color:#fbbf24}
@media(max-width:600px){
  .fb-player-quick-bar{flex-direction:column;align-items:flex-start;gap:8px;padding:8px 10px}
  .fb-qb-actions{width:100%;justify-content:space-between}
  .fb-qb-btn{flex:1;justify-content:center;padding:6px 8px;font-size:11px}
}
.episode-btn.is-watching{border-color:#f59e0b!important;box-shadow:0 0 0 1px rgba(245,158,11,0.35) inset}
.ep-resume-dot{margin-left:4px;font-size:11px;display:inline-block;animation:pulseResumeDot 2s infinite ease-in-out}
@keyframes pulseResumeDot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.6;transform:scale(1.15)}}

/* v743: Hide watchResumeBadge on watch page (User requested only 1 single line on video player) */
.watch-page #watchResumeBadge,
#watchResumeBadge {
  display: none !important;
}

/* v748: Thanh trạng thái "Bạn đã xem đến..." nằm BÊN TRÊN khung phát video (Không đè lên video player) */
.video-resume-status-line {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  z-index: 10 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 12px 0 !important;
  padding: 8px 14px !important;
  background: rgba(15, 23, 42, 0.95) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(245, 158, 11, 0.55) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35), 0 0 12px rgba(245, 158, 11, 0.15) !important;
  border-radius: 12px !important;
  color: #f1f5f9 !important;
  font-size: 13.5px !important;
  font-weight: 550 !important;
  white-space: normal !important;
  pointer-events: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  font-family: 'Be Vietnam Pro', 'Inter', system-ui, sans-serif !important;
  animation: resumeTopBarFadeIn 0.3s ease-out !important;
  transition: opacity .35s ease, transform .35s ease, margin .35s ease, max-height .35s ease !important;
}
.video-resume-status-line.is-hidden {
  opacity: 0 !important;
  transform: translateY(-8px) !important;
  margin-bottom: 0 !important;
  max-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}
/* Tuyệt đối không cho phép hiển thị thanh thông báo bên trong player-wrap hoặc fb-player-shell (Chống trùng lặp 2 thanh) */
.player-wrap .video-resume-status-line,
.fb-player-shell .video-resume-status-line,
[data-fb-player-shell] .video-resume-status-line {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.video-resume-status-line .vrsl-left {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  min-width: 0 !important;
}
.video-resume-status-line .vrsl-icon {
  font-size: 16px !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}
.video-resume-status-line .vrsl-text {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  line-height: 1.4 !important;
}
.video-resume-status-line .vrsl-time,
.video-resume-status-line b {
  color: #fbbf24 !important;
  font-weight: 750 !important;
  letter-spacing: .2px !important;
}
.video-resume-status-line .vrsl-seek-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  padding: 5px 14px !important;
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
  color: #0b0f19 !important;
  font-size: 12.5px !important;
  font-weight: 750 !important;
  border: none !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  line-height: 1.2 !important;
  box-shadow: 0 2px 10px rgba(245, 158, 11, 0.45) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease !important;
  flex-shrink: 0 !important;
  text-decoration: none !important;
}
.video-resume-status-line .vrsl-seek-btn:hover {
  transform: translateY(-1px) scale(1.02) !important;
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.65) !important;
  filter: brightness(1.08) !important;
}
.video-resume-status-line .vrsl-seek-btn:active {
  transform: translateY(0) scale(0.98) !important;
}
.video-resume-status-line .vrsl-seek-btn.is-synced {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 2px 10px rgba(16, 185, 129, 0.45) !important;
}
.video-resume-status-line .vrsl-seek-btn.is-synced:hover {
  box-shadow: 0 4px 14px rgba(16, 185, 129, 0.65) !important;
}
.video-resume-status-line .vrsl-seek-btn.is-paused {
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
  color: #0b0f19 !important;
  box-shadow: 0 2px 10px rgba(245, 158, 11, 0.45) !important;
}
.video-resume-status-line .vrsl-seek-btn.is-paused:hover {
  transform: translateY(-1px) scale(1.02) !important;
  box-shadow: 0 4px 14px rgba(245, 158, 11, 0.65) !important;
  filter: brightness(1.08) !important;
}
.video-resume-status-line .vrsl-pause-icon {
  display: inline-block !important;
  font-size: 11px !important;
  line-height: 1 !important;
  margin-right: 3px !important;
}
.video-resume-status-line .vrsl-live-dot {
  display: inline-block !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.9) !important;
  animation: vrslPulseDot 1.4s ease-in-out infinite !important;
  margin-right: 3px !important;
}
@keyframes vrslPulseDot {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.35; transform: scale(0.7); }
}
.video-resume-status-line .vrsl-close-btn {
  background: transparent !important;
  border: none !important;
  color: #94a3b8 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 4px 8px !important;
  cursor: pointer !important;
  line-height: 1 !important;
  border-radius: 6px !important;
  transition: all 0.15s ease !important;
  flex-shrink: 0 !important;
}
.video-resume-status-line .vrsl-close-btn:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.1) !important;
}
@keyframes resumeTopBarFadeIn {
  0% { opacity: 0; transform: translateY(-8px); }
  100% { opacity: 1; transform: translateY(0); }
}
@media (max-width: 650px) {
  .video-resume-status-line {
    font-size: 12.5px !important;
    padding: 8px 10px !important;
    gap: 8px !important;
  }
  .video-resume-status-line .vrsl-left {
    gap: 7px !important;
  }
  .video-resume-status-line .vrsl-seek-btn {
    font-size: 11.5px !important;
    padding: 4px 11px !important;
  }
}

/* Legacy fallback support */
.fb-resume-prompt-banner,
.player-resume-prompt-banner { display: none !important; }

/* v650: Multi-Platform Season Cards (Facebook & YouTube buttons) */
.seasons-total-duration{display:flex;align-items:center;gap:6px;font-size:14.5px;color:#cbd5e1;margin-bottom:14px}
.seasons-total-duration svg{color:#f59e0b}
.seasons-total-duration strong{color:#f59e0b;font-weight:700}
.seasons-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;box-sizing:border-box}
.seasons-card-grid.has-single-season{grid-template-columns:1fr}
@media(max-width:768px){.seasons-card-grid{grid-template-columns:1fr}}
.season-play-card{background:#11141c;border:1px solid #1f2432;border-radius:14px;padding:13px 15px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;transition:border-color .18s ease,box-shadow .18s ease;width:100%;box-sizing:border-box;overflow:hidden}
.season-play-card:hover{border-color:#2e3648}
.season-play-card.is-active-season{border-color:rgba(245,158,11,.45);box-shadow:0 0 16px rgba(245,158,11,.12)}
.season-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.season-card-left{display:flex;align-items:center;gap:10px;min-width:0;cursor:pointer;user-select:none;transition:opacity .15s ease}
.season-card-left:hover{opacity:.88}
.season-card-left:hover .season-card-title{color:#f59e0b}
.season-card-left:active{transform:scale(0.99)}
.season-card-title{font-size:16px;font-weight:700;color:#f8fafc;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease}
.season-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}
.season-report-pill{display:inline-flex;align-items:center;gap:4px;background:#1a1e28;border:1px solid #2a3040;color:#94a3b8;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;cursor:pointer;transition:all .15s ease;line-height:1}
.season-report-pill:hover{background:#262e3d;color:#f1f5f9;border-color:#3b455b}
.season-card-duration{display:inline-flex;align-items:center;gap:4px;color:#f59e0b;font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1}
.season-platform-row{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;flex-wrap:wrap}
.season-platform-btn{flex:1;min-height:38px;border-radius:9px;font-size:13.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;text-decoration:none;border:1px solid transparent;transition:all .18s ease;padding:6px 10px;outline:none;box-sizing:border-box}
.season-platform-btn.platform-fb{background:#112238;border-color:#1e3d62;color:#3b82f6}
.season-platform-btn.platform-fb:hover{background:#162f4e;border-color:#60a5fa;color:#60a5fa}
.season-platform-btn.platform-fb.is-playing{background:#18375c;border-color:#60a5fa;color:#93c5fd;box-shadow:0 0 10px rgba(59,130,246,.35)}
.season-platform-btn.platform-yt{background:#2a1317;border-color:#4a1f26;color:#ef4444}
.season-platform-btn.platform-yt:hover{background:#3b1920;border-color:#f87171;color:#f87171}
.season-platform-btn.platform-yt.is-playing{background:#441a22;border-color:#f87171;color:#fca5a5;box-shadow:0 0 10px rgba(239,68,68,.35)}
.season-platform-btn.platform-other{background:#1e293b;border-color:#334155;color:#cbd5e1}
.season-platform-btn.platform-other:hover{background:#334155;color:#fff}
.season-platform-btn.platform-empty{background:#151821;border-color:#242938;color:#64748b;cursor:not-allowed}

/* Bất kể bộ phim nào nhiều tập: hiển thị lưới tập phim cân đối */
.season-platform-row.season-episodes-grid,
.season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)){
  display:grid!important;
  grid-template-columns:repeat(5,1fr)!important;
  gap:8px!important;
  width:100%!important;
}
.season-platform-row.season-episodes-grid .season-platform-btn,
.season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn{
  width:100%!important;
  min-width:0!important;
  padding:6px 4px!important;
  font-size:12px!important;
  min-height:36px!important;
  border-radius:8px!important;
  gap:4px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  justify-content:center!important;
}
.season-platform-row.season-episodes-grid .season-platform-btn svg,
.season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn svg{
  width:13px!important;
  height:13px!important;
  min-width:13px!important;
  max-width:13px!important;
  flex-shrink:0!important;
  margin:0!important;
}
.season-platform-row.season-episodes-grid .season-platform-btn span,
.season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn span{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
  min-width:0!important;
  font-size:12px!important;
  line-height:1.15!important;
  text-align:center!important;
  display:block!important;
}

/* Giao diện điện thoại (max-width: 768px): CHUẨN ĐÚNG 5 TẬP / 1 HÀNG, CẮT THÀNH 2, 3, 4, 5... DÒNG */
@media(max-width:768px){
  .season-play-card{
    padding:12px 10px!important;
  }
  .season-platform-row.season-episodes-grid,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)){
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    gap:5px!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:6px 1px!important;
    font-size:10px!important;
    font-weight:700!important;
    min-height:35px!important;
    border-radius:7px!important;
    gap:1.5px!important;
    box-sizing:border-box!important;
    text-align:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn svg,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn svg{
    width:10px!important;
    height:10px!important;
    min-width:10px!important;
    max-width:10px!important;
    flex-shrink:0!important;
    margin:0!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn span,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn span{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    line-height:1.15!important;
    font-size:10px!important;
    font-weight:700!important;
    max-width:100%!important;
    min-width:0!important;
    letter-spacing:-0.25px!important;
    display:block!important;
    text-align:center!important;
  }
}

@media(max-width:360px){
  .season-play-card{
    padding:10px 7px!important;
  }
  .season-platform-row.season-episodes-grid,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)){
    gap:3.5px!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn{
    padding:5px 1px!important;
    font-size:10px!important;
    min-height:32px!important;
    gap:1.5px!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn svg,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn svg{
    width:9.5px!important;
    height:9.5px!important;
    min-width:9.5px!important;
    max-width:9.5px!important;
  }
  .season-platform-row.season-episodes-grid .season-platform-btn span,
  .season-play-card .season-platform-row:has(.season-platform-btn:nth-child(3)) .season-platform-btn span{
    font-size:10px!important;
    letter-spacing:-0.5px!important;
  }
}

/* v653: Modern Spacious Full-Width Movie Comments */
.movie-comment-input-bar{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:12px!important;
  margin-bottom:22px!important;
  width:100%!important;
  box-sizing:border-box!important;
  background:rgba(15,23,42,.75)!important;
  border:1px solid rgba(56,189,248,.18)!important;
  border-radius:16px!important;
  padding:16px 18px!important;
  box-shadow:0 4px 20px rgba(0,0,0,.25)!important;
}
.comment-input-user-info{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  padding-bottom:4px!important;
}
.comment-input-user-left{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  cursor:pointer!important;
  min-width:0!important;
}
.comment-input-user-meta{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
.comment-input-name{
  font-weight:700!important;
  font-size:14px!important;
  color:#f8fafc!important;
}
.comment-user-badge-tag{
  background:#162a45!important;
  border:1px solid rgba(56,189,248,.3)!important;
  color:#38bdf8!important;
  font-size:11px!important;
  font-weight:600!important;
  padding:2px 8px!important;
  border-radius:12px!important;
}
.comment-change-profile-btn{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:#cbd5e1!important;
  border-radius:8px!important;
  padding:5px 11px!important;
  font-size:12px!important;
  font-weight:650!important;
  cursor:pointer!important;
  transition:all .15s ease!important;
  white-space:nowrap!important;
}
.comment-change-profile-btn:hover{
  background:rgba(56,189,248,.18)!important;
  border-color:rgba(56,189,248,.45)!important;
  color:#38bdf8!important;
}
.comment-login-action-btn{
  background:linear-gradient(135deg,#f59e0b,#d97706)!important;
  color:#0f172a!important;
  border:none!important;
  border-radius:8px!important;
  padding:5px 12px!important;
  font-size:12px!important;
  font-weight:750!important;
  cursor:pointer!important;
  transition:all .15s ease!important;
  box-shadow:0 2px 8px rgba(245,158,11,.3)!important;
  white-space:nowrap!important;
}
.comment-login-action-btn:hover{
  filter:brightness(1.12)!important;
  transform:translateY(-1px)!important;
}
.comment-guest-hint{
  color:#94a3b8!important;
  font-size:13px!important;
}
.comment-textarea-wrap{
  width:100%!important;
  position:relative!important;
  box-sizing:border-box!important;
}
.comment-input-row{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:10px!important;
  width:100%!important;
}
.comment-input-footer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.comment-input-tips{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  color:#94a3b8!important;
  font-size:12.5px!important;
}
.comment-tip-dot{
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:#10b981!important;
  display:inline-block!important;
  flex-shrink:0!important;
}
.comment-me-tag{
  background:linear-gradient(135deg,#f59e0b,#d97706)!important;
  color:#0f172a!important;
  font-size:10px!important;
  font-weight:800!important;
  padding:1px 6px!important;
  border-radius:6px!important;
  text-transform:uppercase!important;
  letter-spacing:.3px!important;
}
.comment-item.is-my-comment{
  background:rgba(245,158,11,.03)!important;
  border-bottom:1px solid rgba(245,158,11,.15)!important;
}
@media(max-width:600px){
  .comment-input-user-info{flex-wrap:wrap;gap:8px}
  .comment-change-profile-btn,.comment-login-action-btn{font-size:11.5px!important;padding:4px 9px!important}
  .comment-input-footer{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
  .comment-input-tips{font-size:11px!important}
}
@media(max-width:420px){
  .comment-input-footer{flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  .comment-input-tips{justify-content:center!important}
}

/* v652: Facebook Video Restrict Fallback & App Deep Link */
.fb-restricted-fallback{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background-size:cover!important;
  background-position:center!important;
  position:relative!important;
}
.fb-fallback-container{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
  width:min(90%,560px);
  padding:28px 24px;
  background:rgba(10,16,28,.88);
  border:1px solid rgba(24,119,242,.45);
  box-shadow:0 16px 48px rgba(0,0,0,.6),0 0 24px rgba(24,119,242,.2);
  border-radius:20px;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.fb-fallback-icon{
  width:68px;
  height:68px;
  border-radius:50%;
  background:rgba(24,119,242,.15);
  border:1px solid rgba(24,119,242,.4);
  display:grid;
  place-items:center;
  margin-bottom:2px;
}
.fb-fallback-title{
  font-size:20px;
  font-weight:850;
  color:#f8fafc;
  line-height:1.3;
}
.fb-fallback-desc{
  font-size:13.5px;
  line-height:1.55;
  color:#cbd5e1;
  max-width:480px;
}
.fb-fallback-btns{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:6px;
  width:100%;
}
.fb-fallback-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:11px 18px;
  border-radius:12px;
  font-size:13.5px;
  font-weight:750;
  text-decoration:none!important;
  cursor:pointer;
  transition:all .18s ease;
  box-sizing:border-box;
  border:1px solid transparent;
}
.fb-fallback-btn-app{
  background:linear-gradient(135deg,#1877f2,#0b5cd5);
  color:#fff!important;
  box-shadow:0 4px 16px rgba(24,119,242,.4);
}
.fb-fallback-btn-app:hover{
  filter:brightness(1.12);
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(24,119,242,.55);
}
.fb-fallback-btn-web{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.2);
  color:#f1f5f9!important;
}
.fb-fallback-btn-web:hover{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.35);
  transform:translateY(-2px);
  color:#fff!important;
}
.fb-fallback-btn-next{
  background:#1e293b;
  border-color:#334155;
  color:#e2e8f0;
}
.fb-fallback-btn-next:hover{
  background:#334155;
  color:#fff;
  transform:translateY(-2px);
}
.fb-qb-btn.fb-qb-external{
  text-decoration:none!important;
  font-size:11.5px;
}
.fb-qb-btn.fb-qb-app{
  background:rgba(24,119,242,.18);
  border-color:rgba(24,119,242,.45);
  color:#60a5fa;
}
.fb-qb-btn.fb-qb-app:hover{
  background:rgba(24,119,242,.35);
  border-color:#3b82f6;
  color:#fff;
}
.fb-qb-btn.fb-qb-web{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
  color:#cbd5e1;
}
.fb-qb-btn.fb-qb-web:hover{
  background:rgba(255,255,255,.18);
  color:#fff;
}
@media(max-width:600px){
  .fb-fallback-container{
    padding:20px 16px;
    gap:10px;
    width:94%;
  }
  .fb-fallback-icon{
    width:56px;
    height:56px;
  }
  .fb-fallback-title{
    font-size:17px;
  }
  .fb-fallback-desc{
    font-size:12px;
  }
  .fb-fallback-btns{
    flex-direction:column;
    width:100%;
  }
  .fb-fallback-btn{
    width:100%;
    padding:10px 14px;
    font-size:12.5px;
  }
}

/* v745: Facebook Mobile Assist Bar - Dời xuống dưới player, giao diện gọn đẹp */
.fb-mobile-assist-bar{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  background:rgba(15,23,42,.88);
  border:1px solid rgba(24,119,242,.25);
  border-radius:12px;
  margin-top:12px;
  font-size:12.5px;
  color:#cbd5e1;
  box-shadow:0 4px 16px rgba(0,0,0,.3);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.fb-assist-btns{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  width:100%;
}
.fb-assist-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:7px 14px;
  border-radius:8px;
  font-size:12px;
  font-weight:750;
  text-decoration:none!important;
  cursor:pointer;
  transition:all .16s ease;
  border:none;
  white-space:nowrap;
}
.fb-assist-app{
  background:linear-gradient(135deg,#1877f2,#0b5cd5);
  color:#fff!important;
  box-shadow:0 2px 8px rgba(24,119,242,.35);
}
.fb-assist-app:hover{
  filter:brightness(1.15);
  transform:translateY(-1px);
}
.fb-assist-web{
  background:rgba(255,255,255,.09);
  color:#f1f5f9!important;
  border:1px solid rgba(255,255,255,.2);
}
.fb-assist-web:hover{
  background:rgba(255,255,255,.18);
  color:#fff!important;
}
.fb-assist-switch{
  background:rgba(245,158,11,.15);
  color:#fbbf24!important;
  border:1px solid rgba(245,158,11,.35);
}
.fb-assist-switch:hover{
  background:rgba(245,158,11,.25);
}

/* Nút phóng to nổi bật cho trình xem Facebook */
.fb-corner-fs-btn,
.fb-float-fs-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10000 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 12px;
  background: rgba(15, 23, 42, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 9px;
  color: #fff;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: all 0.18s ease;
  user-select: none;
  pointer-events: auto;
}
.fb-corner-fs-btn:hover,
.fb-float-fs-btn:hover {
  background: rgba(24, 119, 242, 0.95);
  border-color: #38bdf8;
  color: #fff;
  transform: scale(1.05);
}
.fb-corner-fs-btn:active,
.fb-float-fs-btn:active {
  transform: scale(0.96);
}
.fb-corner-fs-btn svg,
.fb-float-fs-btn svg {
  display: block;
}
.fb-qb-fs {
  background: rgba(24, 119, 242, 0.25) !important;
  border-color: rgba(56, 189, 248, 0.5) !important;
  color: #38bdf8 !important;
  font-weight: 800 !important;
}
.fb-qb-fs:hover {
  background: #38bdf8 !important;
  color: #0f172a !important;
}
.fb-assist-fs {
  background: rgba(24, 119, 242, 0.25) !important;
  border-color: rgba(56, 189, 248, 0.5) !important;
  color: #38bdf8 !important;
  font-weight: 700 !important;
}
.fb-assist-fs:hover {
  background: #38bdf8 !important;
  color: #0f172a !important;
}

/* v777: Fullscreen & Pseudo-fullscreen hoàn chỉnh cho Facebook Player (Chuẩn như iOS & YouTube, Nền đen #000, Căn giữa tuyệt đối) */
.fb-player-shell:fullscreen,
.fb-player-shell:-webkit-full-screen,
.fb-player-shell:-moz-full-screen {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  background: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  z-index: 2147483647 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.fb-player-shell.is-pseudo-fullscreen {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-width: none !important;
  max-height: none !important;
  z-index: 2147483647 !important;
  background: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

body.fb-in-fullscreen,
html.fb-in-fullscreen {
  overflow: hidden !important;
  background: #000 !important;
}

body.fb-in-fullscreen .player-wrap {
  border-radius: 0 !important;
  border: none !important;
  overflow: visible !important;
  aspect-ratio: auto !important;
  background: #000 !important;
}

body.fb-in-fullscreen .topbar,
body.fb-in-fullscreen .mobile-nav {
  display: none !important;
}

.fb-player-shell .fb-sdk-stage:not(.is-active) {
  display: none !important;
}

.fb-player-shell:fullscreen iframe,
.fb-player-shell:-webkit-full-screen iframe,
.fb-player-shell:-moz-full-screen iframe,
.fb-player-shell.is-pseudo-fullscreen iframe {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  width: min(100vw, calc(100vh * 16 / 9)) !important;
  width: min(100vw, calc(100dvh * 16 / 9)) !important;
  height: min(100vh, calc(100vw * 9 / 16)) !important;
  height: min(100dvh, calc(100vw * 9 / 16)) !important;
  aspect-ratio: 16/9 !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  margin: auto !important;
  border: 0 !important;
  background: #000 !important;
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.95) !important;
  z-index: 1 !important;
}

.fb-player-shell.fb-reel-shell:fullscreen iframe,
.fb-player-shell.fb-reel-shell:-webkit-full-screen iframe,
.fb-player-shell.fb-reel-shell:-moz-full-screen iframe,
.fb-player-shell.fb-reel-shell.is-pseudo-fullscreen iframe {
  width: min(100vw, calc(100vh * 9 / 16)) !important;
  width: min(100vw, calc(100dvh * 9 / 16)) !important;
  height: min(100vh, calc(100vw * 16 / 9)) !important;
  height: min(100dvh, calc(100vw * 16 / 9)) !important;
  aspect-ratio: 9/16 !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  margin: auto !important;
}

.fb-player-shell:fullscreen video,
.fb-player-shell:-webkit-full-screen video,
.fb-player-shell:-moz-full-screen video,
.fb-player-shell.is-pseudo-fullscreen video {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  object-fit: contain !important;
  background: #000 !important;
  margin: auto !important;
  border: 0 !important;
  z-index: 1 !important;
}

.fb-player-shell:fullscreen .fb-video,
.fb-player-shell:-webkit-full-screen .fb-video,
.fb-player-shell:-moz-full-screen .fb-video,
.fb-player-shell.is-pseudo-fullscreen .fb-video,
.fb-player-shell:fullscreen .fb-stream-player-wrap,
.fb-player-shell:-webkit-full-screen .fb-stream-player-wrap,
.fb-player-shell.is-pseudo-fullscreen .fb-stream-player-wrap,
.fb-player-shell:fullscreen .fb-sdk-stage.is-active,
.fb-player-shell:-webkit-full-screen .fb-sdk-stage.is-active,
.fb-player-shell.is-pseudo-fullscreen .fb-sdk-stage.is-active {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #000 !important;
  margin: auto !important;
  border: 0 !important;
  z-index: 1 !important;
}

.fb-player-shell:fullscreen .fb-corner-fs-btn,
.fb-player-shell:-webkit-full-screen .fb-corner-fs-btn,
.fb-player-shell.is-pseudo-fullscreen .fb-corner-fs-btn {
  position: fixed !important;
  top: 16px !important;
  right: 16px !important;
  z-index: 2147483647 !important;
  background: rgba(220, 38, 38, 0.92) !important;
  border-color: #ef4444 !important;
  color: #fff !important;
  padding: 8px 14px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.8) !important;
}

.fb-player-shell:fullscreen .fb-corner-fs-btn:hover,
.fb-player-shell:-webkit-full-screen .fb-corner-fs-btn:hover,
.fb-player-shell.is-pseudo-fullscreen .fb-corner-fs-btn:hover {
  background: #dc2626 !important;
}

.fb-player-shell:fullscreen .fb-player-quick-bar,
.fb-player-shell:-webkit-full-screen .fb-player-quick-bar,
.fb-player-shell.is-pseudo-fullscreen .fb-player-quick-bar {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 2147483646 !important;
  background: linear-gradient(transparent, rgba(15, 23, 42, 0.88) 35%, rgba(15, 23, 42, 0.98)) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 8px 16px !important;
}

/* v735: Watch Server / Source Switcher Bar */
.watch-server-bar{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  margin-top:12px;
  background:rgba(15,23,42,.92);
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 4px 18px rgba(0,0,0,.3);
  flex-wrap:wrap;
}
.wsb-label{
  font-size:12.5px;
  font-weight:700;
  color:#94a3b8;
  text-transform:uppercase;
  letter-spacing:.5px;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.wsb-btns{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.wsb-btn{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 14px;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:all .18s ease;
  border:1px solid transparent;
  text-decoration:none!important;
  outline:none;
}
.wsb-btn.wsb-yt{
  background:rgba(239,68,68,.12);
  border-color:rgba(239,68,68,.32);
  color:#f87171;
}
.wsb-btn.wsb-yt:hover{
  background:rgba(239,68,68,.22);
  border-color:rgba(239,68,68,.5);
  transform:translateY(-1px);
}
.wsb-btn.wsb-yt.is-active{
  background:linear-gradient(135deg,#ef4444,#dc2626);
  color:#fff;
  border-color:transparent;
  box-shadow:0 2px 12px rgba(239,68,68,.4);
}
.wsb-btn.wsb-fb{
  background:rgba(24,119,242,.12);
  border-color:rgba(24,119,242,.32);
  color:#60a5fa;
}
.wsb-btn.wsb-fb:hover{
  background:rgba(24,119,242,.22);
  border-color:rgba(24,119,242,.5);
  transform:translateY(-1px);
}
.wsb-btn.wsb-fb.is-active{
  background:linear-gradient(135deg,#1877f2,#0b5cd5);
  color:#fff;
  border-color:transparent;
  box-shadow:0 2px 12px rgba(24,119,242,.4);
}
.wsb-btn.is-single{
  cursor:default;
  pointer-events:none;
}
.wsb-badge{
  font-size:10.5px;
  padding:2px 6px;
  background:rgba(255,255,255,.22);
  border-radius:6px;
  font-weight:800;
  letter-spacing:.2px;
}
@media(max-width:600px){
  .watch-server-bar{
    padding:8px 12px;
    gap:8px;
    margin-top:10px;
    border-radius:10px;
  }
  .wsb-label{
    font-size:11.5px;
    width:100%;
  }
  .wsb-btns{
    width:100%;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
    gap:6px;
  }
  .wsb-btn{
    justify-content:center;
    padding:8px 10px;
    font-size:12px;
  }
}

@media(max-width:600px){
  .fb-mobile-assist-bar{
    padding:8px 8px;
    margin-top:10px;
  }
  .fb-assist-btns{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    width:100%;
  }
  .fb-assist-btn{
    flex:1 1 calc(50% - 6px);
    padding:7px 8px;
    font-size:11.5px;
  }
  .fb-assist-switch{
    flex:1 1 100%;
  }
}

/* v734: Facebook Mobile Direct Player & Enhanced Fallback */
.fb-fallback-status-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:rgba(34,197,94,.16);
  border:1px solid rgba(34,197,94,.42);
  border-radius:999px;
  padding:5px 14px;
  font-size:12px;
  font-weight:750;
  color:#4ade80;
  letter-spacing:.2px;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.fb-status-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#22c55e;
  box-shadow:0 0 8px #22c55e;
  animation:fbPulseDot 1.8s infinite ease-in-out;
}
@keyframes fbPulseDot{
  0%,100%{transform:scale(1);opacity:1;}
  50%{transform:scale(1.3);opacity:.55;}
}
.fb-fallback-btn-main{
  background:linear-gradient(135deg,#1877f2,#0052cc);
  color:#fff!important;
  font-size:14px;
  font-weight:850;
  padding:12px 22px;
  box-shadow:0 4px 18px rgba(24,119,242,.45);
  border:1px solid rgba(255,255,255,.2);
  letter-spacing:.3px;
}
.fb-fallback-btn-main:hover{
  filter:brightness(1.15);
  transform:translateY(-2px);
  box-shadow:0 6px 24px rgba(24,119,242,.65);
}
.fb-pulse{
  animation:fbButtonPulse 2.8s infinite;
}
@keyframes fbButtonPulse{
  0%,100%{box-shadow:0 4px 18px rgba(24,119,242,.45);}
  50%{box-shadow:0 4px 26px rgba(24,119,242,.75);}
}
.fb-embed-toggle-wrap{
  margin-top:6px;
  display:flex;
  justify-content:center;
}
.fb-embed-toggle-link{
  background:none;
  border:none;
  color:#94a3b8;
  font-size:11.5px;
  text-decoration:underline;
  cursor:pointer;
  padding:4px 8px;
  transition:color .16s ease;
}
.fb-embed-toggle-link:hover{
  color:#f1f5f9;
}



/* v747: Đồng bộ Font Tiếng Việt chuẩn Be Vietnam Pro & Inter cho các nút xem phim, nút tập, điều khiển */
.season-platform-btn,
.season-play-card,
.season-card-title,
.season-report-pill,
.season-card-duration,
.seasons-total-duration,
.episode-btn,
.wsb-btn,
.wsb-label,
.fb-qb-btn,
.fb-rpb-btn,
.fb-fallback-btn,
.resume-video,
.external-source-next,
.comment-send,
.comment-login-action-btn,
.comment-change-profile-btn,
.movie-comment-submit-btn,
.fb-mobile-assist-btn,
.watch-season-area h2,
#watchEpisodeHeading,
#watchEpisodeSeasonName,
.no-episodes {
  font-family: 'Be Vietnam Pro', 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
