/* DialogLab v1.67.78 — Mobile Player Approved UI Rebuild
   Phone-only. Portrait + Landscape. Desktop/tablet are untouched. */

html.dl-phone-player-v16778,
html.dl-phone-player-v16778 body{
  background:#0d1722!important;
  overflow-x:hidden!important;
}

html.dl-phone-player-v16778 body.user-mode{
  margin:0!important;
  padding:0!important;
  background:linear-gradient(180deg,#0d1722 0%,#10202d 100%)!important;
}

html.dl-phone-player-v16778 body.user-mode .site-product-title-v16625,
html.dl-phone-player-v16778 body.user-mode .site-header,
html.dl-phone-player-v16778 body.user-mode .content-compliance-note-v16625,
html.dl-phone-player-v16778 body.user-mode .content-compliance-note-v16626,
html.dl-phone-player-v16778 body.user-mode .content-compliance-note-v16628,
html.dl-phone-player-v16778 body.user-mode .pro-results-panel,
html.dl-phone-player-v16778 body.user-mode .aurora-bg,
html.dl-phone-player-v16778 body.user-mode .pro-video-topbar,
html.dl-phone-player-v16778 body.user-mode .video-bottom-ui,
html.dl-phone-player-v16778 body.user-mode .video-side-tools,
html.dl-phone-player-v16778 body.user-mode .center-transport,
html.dl-phone-player-v16778 body.user-mode #fa-caption-wrap,
html.dl-phone-player-v16778 body.user-mode #caption-wrap,
html.dl-phone-player-v16778 body.user-mode #phrase-search-form,
html.dl-phone-player-v16778 body.user-mode .stable-action-row,
html.dl-phone-player-v16778 body.user-mode #copy-fa-caption,
html.dl-phone-player-v16778 body.user-mode #copy-en-caption{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

html.dl-phone-player-v16778 body.user-mode.shell-backdrop-v16720::before,
html.dl-phone-player-v16778 body.user-mode.shell-backdrop-v16720::after{
  display:none!important;
  content:none!important;
}

html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0 0 calc(env(safe-area-inset-bottom) + 16px)!important;
  background:linear-gradient(180deg,#0d1722 0%,#10202d 100%)!important;
  overflow:visible!important;
}

html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .live-stage,
html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .player-content-stack-v16628,
html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-card,
html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-frame{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell{
  position:relative!important;
  display:block!important;
  width:calc(100% - 16px)!important;
  max-width:none!important;
  height:auto!important;
  margin:0 auto!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:24px!important;
  background:#09111a!important;
  box-shadow:0 18px 48px rgba(0,0,0,.26)!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .video-media-area{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16 / 10!important;
  margin:0!important;
  padding:0!important;
  background:#071018!important;
  overflow:hidden!important;
}

html.dl-phone-player-v16778 body.user-mode #phrase-video{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:#071018!important;
  border:0!important;
  border-radius:0!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}

#dl78-header,
#dl78-subtitles,
#dl78-search-row,
#dl78-controls,
#dl78-secondary,
#dl78-sheet,
#dl78-sheet-backdrop{
  box-sizing:border-box;
  font-family:Inter,Poppins,Vazirmatn,system-ui,sans-serif;
}

#dl78-header{
  width:calc(100% - 16px);
  margin:8px auto 8px;
  display:grid;
  grid-template-columns:48px auto minmax(0,1fr);
  gap:8px;
  align-items:center;
  direction:ltr;
  color:#fff;
}

.dl78-glass{
  border:1px solid rgba(255,255,255,.11);
  background:rgba(18,34,48,.84);
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  backdrop-filter:blur(18px) saturate(1.06);
  -webkit-backdrop-filter:blur(18px) saturate(1.06);
}

.dl78-menu-btn,
.dl78-counter,
.dl78-title-card,
.dl78-search-wrap,
.dl78-genre-wrap,
.dl78-dock,
.dl78-secondary-card,
.dl78-sheet-close,
.dl78-sheet-action,
.dl78-lang-option,
.dl78-toggle,
.dl78-size-btn{
  border:1px solid rgba(255,255,255,.11);
  background:rgba(18,34,48,.84);
  color:#fff;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  backdrop-filter:blur(18px) saturate(1.06);
  -webkit-backdrop-filter:blur(18px) saturate(1.06);
}

.dl78-menu-btn{
  width:48px;
  height:48px;
  border-radius:17px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  touch-action:manipulation;
}

.dl78-menu-btn svg,
.dl78-control-btn svg,
.dl78-search-btn svg,
.dl78-secondary-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.dl78-counter{
  min-width:94px;
  height:48px;
  padding:0 12px;
  border-radius:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  white-space:nowrap;
  font-size:13px;
  font-weight:850;
  font-variant-numeric:tabular-nums;
}

.dl78-title-card{
  min-width:0;
  min-height:48px;
  padding:10px 14px;
  border-radius:17px;
  display:flex;
  align-items:center;
}

.dl78-title-text{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  width:100%;
  color:#fff;
  font-size:15px;
  line-height:1.28;
  font-weight:850;
  direction:ltr;
  text-align:left;
  text-wrap:pretty;
}

#dl78-subtitles{
  position:absolute;
  z-index:9;
  left:50%;
  bottom:16px;
  transform:translateX(-50%);
  width:max-content;
  max-width:calc(100% - 28px);
  padding:9px 14px 10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(8,15,22,.62);
  box-shadow:0 10px 28px rgba(0,0,0,.25);
  backdrop-filter:blur(10px) saturate(1.04);
  -webkit-backdrop-filter:blur(10px) saturate(1.04);
  color:#fff;
  text-align:center;
  pointer-events:auto;
}

#dl78-subtitles.is-hidden{display:none!important;}

.dl78-sub-fa,
.dl78-sub-en{display:none;text-align:center;text-wrap:pretty;text-shadow:0 2px 4px rgba(0,0,0,.55);}
.dl78-sub-fa.is-visible,.dl78-sub-en.is-visible{display:block;}
.dl78-sub-fa{font-family:Vazirmatn,system-ui,sans-serif;font-size:calc(17px * var(--dl78-sub-scale,1));line-height:1.55;font-weight:850;direction:rtl;color:#fff;}
.dl78-sub-en{margin-top:3px;font-family:Inter,Poppins,system-ui,sans-serif;font-size:calc(14px * var(--dl78-sub-scale,1));line-height:1.38;font-weight:650;direction:ltr;color:rgba(255,255,255,.94);}

#dl78-search-row{
  width:calc(100% - 16px);
  margin:10px auto 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 132px;
  gap:8px;
  direction:ltr;
}

.dl78-search-wrap{
  position:relative;
  min-width:0;
  height:54px;
  border-radius:18px;
  display:grid;
  grid-template-columns:50px minmax(0,1fr);
  overflow:hidden;
}

.dl78-search-btn{
  width:50px;
  height:52px;
  border:0;
  background:transparent;
  color:#dffaff;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  touch-action:manipulation;
}

.dl78-search-input{
  min-width:0;
  width:100%;
  height:52px;
  border:0;
  outline:none;
  background:transparent;
  color:#fff;
  padding:0 12px 0 2px;
  font-size:14px;
  direction:ltr;
}
.dl78-search-input::placeholder{color:rgba(220,232,241,.55);}

.dl78-genre-wrap{
  height:54px;
  border-radius:18px;
  overflow:hidden;
}
.dl78-genre-select{
  width:100%;
  height:54px;
  border:0;
  outline:none;
  padding:0 14px;
  background:transparent;
  color:#fff;
  font-size:13px;
  font-weight:750;
  direction:ltr;
  appearance:auto;
}

#dl78-controls{
  width:calc(100% - 16px);
  margin:9px auto 0;
  color:#fff;
}

.dl78-progress-row{
  min-height:34px;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 40px;
  gap:8px;
  align-items:center;
  direction:ltr;
}

.dl78-time{
  text-align:center;
  color:rgba(235,243,248,.70);
  font-size:10px;
  font-weight:750;
  font-variant-numeric:tabular-nums;
}

.dl78-seek{
  width:100%;
  height:28px;
  margin:0;
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  cursor:pointer;
  touch-action:pan-y;
}
.dl78-seek::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(90deg,#2fd3de var(--dl78-pct,0%),rgba(255,255,255,.22) var(--dl78-pct,0%));}
.dl78-seek::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-8px;border-radius:50%;border:3px solid #2fd3de;background:#fff;box-shadow:0 3px 14px rgba(47,211,222,.38);}
.dl78-seek::-moz-range-track{height:4px;border-radius:999px;background:rgba(255,255,255,.22);}
.dl78-seek::-moz-range-progress{height:4px;border-radius:999px;background:#2fd3de;}
.dl78-seek::-moz-range-thumb{width:15px;height:15px;border-radius:50%;border:3px solid #2fd3de;background:#fff;}

.dl78-dock{
  width:min(100%,430px);
  min-height:86px;
  margin:6px auto 0;
  padding:8px;
  border-radius:24px;
  display:grid;
  grid-template-columns:58px 76px 58px 58px 58px;
  gap:8px;
  justify-content:center;
  align-items:center;
  direction:ltr;
}

.dl78-control-item{
  min-width:0;
  display:grid;
  justify-items:center;
  gap:5px;
  direction:rtl;
}

.dl78-control-btn{
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(18,34,48,.84);
  color:#fff;
  display:grid;
  place-items:center;
  padding:0;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
  cursor:pointer;
  touch-action:manipulation;
}

.dl78-control-btn.dl78-primary{
  width:72px;
  height:72px;
  border-radius:24px;
  color:#061217;
  background:linear-gradient(145deg,#43dde5,#15bcd3);
  border-color:rgba(137,248,250,.80);
  box-shadow:0 14px 30px rgba(21,188,211,.32),inset 0 1px rgba(255,255,255,.36);
}
.dl78-control-btn.dl78-primary svg{width:32px;height:32px;fill:currentColor;stroke:none;}
.dl78-control-label{font-size:9.5px;line-height:1.2;color:rgba(236,244,249,.76);white-space:nowrap;}
.dl78-speed-text{font-size:14px;font-weight:850;font-variant-numeric:tabular-nums;}

#dl78-secondary{
  width:calc(100% - 16px);
  margin:10px auto 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  direction:rtl;
}
.dl78-secondary-card{
  min-height:64px;
  border-radius:18px;
  padding:10px 13px;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  touch-action:manipulation;
}
.dl78-secondary-icon{width:40px;height:40px;border-radius:14px;background:rgba(47,211,222,.10);display:grid;place-items:center;color:#58e0e8;flex:0 0 auto;}
.dl78-secondary-text{min-width:0;flex:1;}
.dl78-secondary-title{font-size:12px;font-weight:850;color:#fff;}
.dl78-secondary-sub{margin-top:2px;font-size:10px;color:#93a8ba;}
.dl78-secondary-value{font-size:12px;font-weight:850;color:#65e4ea;white-space:nowrap;}
.dl78-secondary-card.is-active{border-color:rgba(47,211,222,.42);background:rgba(14,64,70,.78);}
.dl78-secondary-card.is-favorite .dl78-secondary-icon{color:#ff6b87;background:rgba(255,107,135,.10);}

#dl78-sheet-backdrop{
  position:fixed;
  inset:0;
  z-index:10020;
  background:rgba(2,7,12,.55);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}
#dl78-sheet-backdrop.is-open{opacity:1;pointer-events:auto;}

#dl78-sheet{
  position:fixed;
  left:10px;
  right:10px;
  bottom:calc(env(safe-area-inset-bottom) + 10px);
  z-index:10021;
  max-height:min(78dvh,700px);
  overflow:auto;
  padding:15px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(16,30,43,.985);
  box-shadow:0 28px 80px rgba(0,0,0,.42);
  color:#fff;
  transform:translateY(calc(100% + 30px));
  opacity:0;
  pointer-events:none;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease;
  direction:rtl;
}
#dl78-sheet.is-open{transform:translateY(0);opacity:1;pointer-events:auto;}

.dl78-sheet-handle{width:54px;height:5px;border-radius:999px;background:rgba(255,255,255,.28);margin:0 auto 12px;}
.dl78-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.dl78-sheet-title{font-size:17px;font-weight:900;}
.dl78-sheet-close{width:44px;height:44px;border-radius:16px;padding:0;display:grid;place-items:center;font-size:20px;cursor:pointer;}
.dl78-sheet-section{padding:12px 0;border-top:1px solid rgba(255,255,255,.07);}
.dl78-sheet-section:first-of-type{border-top:0;padding-top:0;}
.dl78-section-title{margin-bottom:9px;font-size:12px;font-weight:850;color:#a1b4c3;}
.dl78-lang-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.dl78-lang-option{min-height:48px;border-radius:15px;padding:0 10px;font-size:12px;font-weight:800;cursor:pointer;}
.dl78-lang-option.is-selected{border-color:rgba(47,211,222,.48);background:rgba(13,71,78,.80);color:#73e9ee;}
.dl78-setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;}
.dl78-setting-meta{min-width:0;}
.dl78-setting-label{font-size:13px;font-weight:850;color:#fff;}
.dl78-setting-sub{margin-top:3px;font-size:10px;color:#90a6b8;}
.dl78-toggle{position:relative;width:54px;height:32px;border-radius:999px;padding:0;cursor:pointer;flex:0 0 auto;}
.dl78-toggle::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .2s ease;}
.dl78-toggle.is-on{border-color:rgba(47,211,222,.5);background:#1daebe;}
.dl78-toggle.is-on::after{transform:translateX(22px);}
.dl78-size-group{display:flex;gap:7px;direction:ltr;}
.dl78-size-btn{width:46px;height:42px;border-radius:14px;padding:0;display:grid;place-items:center;font-size:13px;font-weight:850;cursor:pointer;}
.dl78-size-btn.is-selected{border-color:rgba(47,211,222,.48);background:rgba(13,71,78,.80);color:#73e9ee;}
.dl78-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.dl78-sheet-action{min-height:54px;border-radius:16px;padding:7px 8px;font-size:11px;font-weight:800;cursor:pointer;}
.dl78-sheet-action.is-active{border-color:rgba(47,211,222,.48);background:rgba(13,71,78,.80);color:#73e9ee;}
.dl78-sheet-action[data-action="report"]{color:#ff7a8b;}

html.dl-phone-player-v16778 .player-home.dl78-chrome-hidden #dl78-header,
html.dl-phone-player-v16778 .player-home.dl78-chrome-hidden #dl78-search-row,
html.dl-phone-player-v16778 .player-home.dl78-chrome-hidden #dl78-controls,
html.dl-phone-player-v16778 .player-home.dl78-chrome-hidden #dl78-secondary{
  opacity:0!important;
  pointer-events:none!important;
}
#dl78-header,#dl78-search-row,#dl78-controls,#dl78-secondary{transition:opacity .28s ease,transform .28s ease;}

@media (max-width:370px){
  #dl78-header{grid-template-columns:44px 86px minmax(0,1fr);gap:6px;}
  .dl78-menu-btn{width:44px;height:44px;border-radius:15px;}
  .dl78-counter{min-width:86px;height:44px;font-size:12px;padding:0 8px;}
  .dl78-title-card{min-height:44px;padding:8px 10px;border-radius:15px;}
  .dl78-title-text{font-size:13px;}
  #dl78-search-row{grid-template-columns:minmax(0,1fr) 112px;gap:6px;}
  .dl78-search-wrap,.dl78-genre-wrap{height:50px;border-radius:16px;}
  .dl78-search-btn{height:48px;width:46px;}
  .dl78-search-input{height:48px;font-size:12.5px;}
  .dl78-genre-select{height:50px;padding:0 10px;font-size:12px;}
  .dl78-dock{grid-template-columns:50px 66px 50px 50px 50px;gap:5px;padding:7px;}
  .dl78-control-btn{width:50px;height:50px;border-radius:16px;}
  .dl78-control-btn.dl78-primary{width:66px;height:66px;border-radius:22px;}
  .dl78-control-label{font-size:8.5px;}
}

@media (orientation:landscape){
  html.dl-phone-player-v16778,
  html.dl-phone-player-v16778 body{
    overflow:hidden!important;
    background:#09131c!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    z-index:9900!important;
    background:#09131c!important;
    overflow:hidden!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .live-stage,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .player-content-stack-v16628,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-card,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-frame,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .video-media-area{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#09131c!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }

  html.dl-phone-player-v16778 body.user-mode #phrase-video{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    background:#09131c!important;
    padding:0!important;
  }

  #dl78-header{
    position:fixed;
    z-index:10010;
    top:calc(env(safe-area-inset-top) + 10px);
    left:calc(env(safe-area-inset-left) + 12px);
    width:min(45vw,470px);
    margin:0;
    grid-template-columns:44px 92px minmax(0,1fr);
    gap:7px;
  }
  .dl78-menu-btn{width:44px;height:44px;border-radius:15px;background:rgba(13,27,39,.70);}
  .dl78-counter{height:44px;min-width:92px;font-size:12px;border-radius:15px;background:rgba(13,27,39,.70);}
  .dl78-title-card{min-height:44px;padding:8px 11px;border-radius:15px;background:rgba(13,27,39,.70);}
  .dl78-title-text{-webkit-line-clamp:1;font-size:12px;}

  #dl78-search-row{
    position:fixed;
    z-index:10010;
    top:calc(env(safe-area-inset-top) + 10px);
    right:calc(env(safe-area-inset-right) + 12px);
    width:min(45vw,470px);
    margin:0;
    grid-template-columns:minmax(0,1fr) 118px;
    gap:7px;
  }
  .dl78-search-wrap,.dl78-genre-wrap{height:44px;border-radius:15px;background:rgba(13,27,39,.70);}
  .dl78-search-wrap{grid-template-columns:42px minmax(0,1fr);}
  .dl78-search-btn{width:42px;height:42px;}
  .dl78-search-input{height:42px;font-size:11.5px;padding-right:8px;}
  .dl78-genre-select{height:44px;font-size:11px;padding:0 9px;}

  #dl78-subtitles{
    position:fixed;
    left:50%;
    bottom:calc(env(safe-area-inset-bottom) + 104px);
    transform:translateX(-50%);
    width:max-content;
    max-width:min(76vw,780px);
    padding:7px 12px 8px;
    border-radius:16px;
    background:rgba(5,12,18,.58);
    z-index:10009;
  }
  .dl78-sub-fa{font-size:calc(14px * var(--dl78-sub-scale,1));line-height:1.45;}
  .dl78-sub-en{font-size:calc(12px * var(--dl78-sub-scale,1));line-height:1.34;}

  #dl78-controls{
    position:fixed;
    z-index:10010;
    left:calc(env(safe-area-inset-left) + 14px);
    right:calc(env(safe-area-inset-right) + 14px);
    bottom:calc(env(safe-area-inset-bottom) + 10px);
    width:auto;
    margin:0;
  }
  .dl78-progress-row{width:min(90vw,980px);margin:0 auto 2px;min-height:26px;}
  .dl78-dock{
    width:min(500px,74vw);
    min-height:68px;
    margin:2px auto 0;
    padding:6px 8px;
    grid-template-columns:50px 66px 50px 50px 50px;
    gap:6px;
    border-radius:22px;
    background:rgba(10,23,34,.70);
  }
  .dl78-control-item{gap:2px;}
  .dl78-control-btn{width:48px;height:48px;border-radius:15px;background:rgba(18,34,48,.68);}
  .dl78-control-btn.dl78-primary{width:62px;height:62px;border-radius:21px;}
  .dl78-control-btn.dl78-primary svg{width:28px;height:28px;}
  .dl78-control-label{font-size:8px;color:rgba(255,255,255,.72);}
  #dl78-secondary{display:none!important;}

  #dl78-sheet{
    left:auto;
    right:calc(env(safe-area-inset-right) + 12px);
    width:min(400px,46vw);
    bottom:calc(env(safe-area-inset-bottom) + 12px);
    max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);
  }
}

@media (orientation:landscape) and (max-height:380px){
  #dl78-header{top:calc(env(safe-area-inset-top) + 6px);width:min(44vw,430px);grid-template-columns:38px 84px minmax(0,1fr);gap:5px;}
  .dl78-menu-btn{width:38px;height:38px;border-radius:13px;}
  .dl78-counter{height:38px;min-width:84px;font-size:10.5px;border-radius:13px;}
  .dl78-title-card{min-height:38px;padding:6px 9px;border-radius:13px;}.dl78-title-text{font-size:10.5px;}
  #dl78-search-row{top:calc(env(safe-area-inset-top) + 6px);width:min(44vw,430px);grid-template-columns:minmax(0,1fr) 104px;gap:5px;}
  .dl78-search-wrap,.dl78-genre-wrap{height:38px;border-radius:13px;}.dl78-search-wrap{grid-template-columns:36px minmax(0,1fr);}.dl78-search-btn{width:36px;height:36px;}.dl78-search-input{height:36px;font-size:10px;}.dl78-genre-select{height:38px;font-size:9.5px;}
  #dl78-subtitles{bottom:calc(env(safe-area-inset-bottom) + 88px);padding:5px 10px 6px;}.dl78-sub-fa{font-size:calc(12px * var(--dl78-sub-scale,1));}.dl78-sub-en{font-size:calc(10px * var(--dl78-sub-scale,1));}
  .dl78-progress-row{min-height:22px;}
  .dl78-dock{width:min(450px,70vw);min-height:58px;grid-template-columns:44px 56px 44px 44px 44px;gap:5px;padding:5px 7px;border-radius:19px;}
  .dl78-control-btn{width:42px;height:42px;border-radius:14px;}.dl78-control-btn.dl78-primary{width:54px;height:54px;border-radius:18px;}.dl78-control-label{display:none;}
}

@media (prefers-reduced-motion:reduce){
  #dl78-header,#dl78-search-row,#dl78-controls,#dl78-secondary,#dl78-sheet,#dl78-sheet-backdrop,.dl78-toggle::after{transition:none!important;animation:none!important;}
}

/* ========================================================================
   DialogLab v1.67.78 — focused mobile polish
   - subtitle strip lives below video (never over the picture)
   - compact four-action row
   - brighter settings sheet
   - hard-owned, visible landscape video geometry
   ======================================================================== */

html.dl-phone-player-v16778 body.user-mode{
  background:linear-gradient(180deg,#132434 0%,#173247 100%)!important;
}

html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766{
  background:linear-gradient(180deg,#122433 0%,#173247 100%)!important;
}

/* Subtitle is now a bounded strip BELOW the video. */
#dl78-subtitles{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  z-index:2!important;
  display:block;
  width:calc(100% - 16px)!important;
  max-width:none!important;
  max-height:128px;
  overflow:auto;
  margin:8px auto 0!important;
  padding:9px 12px 10px!important;
  border-radius:17px!important;
  border:1px solid rgba(116,185,216,.18)!important;
  background:rgba(23,43,58,.92)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(12px) saturate(1.04)!important;
  -webkit-backdrop-filter:blur(12px) saturate(1.04)!important;
  pointer-events:auto!important;
}
#dl78-subtitles.is-hidden{display:none!important;}
.dl78-sub-fa{font-size:calc(15px * var(--dl78-sub-scale,1))!important;line-height:1.48!important;}
.dl78-sub-en{font-size:calc(13px * var(--dl78-sub-scale,1))!important;line-height:1.4!important;margin-top:3px!important;}

/* Search row remains directly accessible. */
#dl78-search-row{margin-top:8px!important;}
.dl78-search-wrap,.dl78-genre-wrap{
  background:rgba(26,48,65,.92)!important;
  border-color:rgba(124,190,219,.18)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.13)!important;
}

/* Compact four-button action row: Subtitle / Favorite / Share / Report. */
#dl78-secondary{
  width:calc(100% - 16px)!important;
  margin:8px auto 0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  direction:rtl!important;
}
.dl78-secondary-card{
  min-width:0!important;
  min-height:58px!important;
  height:58px!important;
  padding:6px 4px!important;
  border-radius:16px!important;
  display:grid!important;
  grid-template-rows:28px 14px!important;
  grid-template-columns:1fr!important;
  align-content:center!important;
  justify-items:center!important;
  gap:3px!important;
  background:rgba(26,48,65,.90)!important;
  border-color:rgba(124,190,219,.17)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.12)!important;
}
.dl78-secondary-icon{
  width:28px!important;
  height:28px!important;
  border-radius:10px!important;
  background:rgba(47,211,222,.09)!important;
}
.dl78-secondary-icon svg{width:17px!important;height:17px!important;}
.dl78-secondary-title{
  display:block!important;
  max-width:100%!important;
  font-size:9.5px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#edf8ff!important;
}
.dl78-secondary-value{
  position:absolute!important;
  top:5px!important;
  right:5px!important;
  padding:2px 4px!important;
  border-radius:7px!important;
  background:rgba(39,201,211,.12)!important;
  font-size:7.5px!important;
  line-height:1!important;
  color:#7feaf0!important;
}
.dl78-secondary-card{position:relative!important;}
.dl78-secondary-card.is-active{background:rgba(20,72,82,.78)!important;}
.dl78-secondary-card.is-favorite .dl78-secondary-icon{color:#ff718d!important;}
.dl78-secondary-report .dl78-secondary-icon{color:#ff8192!important;background:rgba(255,112,137,.08)!important;}

/* Brighter but still dark settings sheet. */
#dl78-sheet-backdrop{
  background:rgba(4,10,16,.42)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}
#dl78-sheet{
  background:linear-gradient(180deg,rgba(29,52,69,.995),rgba(22,42,57,.995))!important;
  border-color:rgba(145,203,226,.20)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}
.dl78-sheet-close,
.dl78-lang-option,
.dl78-toggle,
.dl78-size-btn,
.dl78-sheet-action{
  background:rgba(34,60,78,.94)!important;
  border-color:rgba(150,206,229,.18)!important;
}
.dl78-setting-sub,.dl78-section-title{color:#b4c9d8!important;}
.dl78-lang-option.is-selected,.dl78-size-btn.is-selected,.dl78-sheet-action.is-active{
  background:rgba(17,92,101,.80)!important;
  border-color:rgba(74,223,231,.52)!important;
}

@media (max-width:370px){
  #dl78-secondary{gap:5px!important;}
  .dl78-secondary-card{height:54px!important;min-height:54px!important;border-radius:14px!important;}
  .dl78-secondary-title{font-size:8.5px!important;}
  .dl78-secondary-icon{width:26px!important;height:26px!important;}
}

/* LANDSCAPE HARD FIX: only the real video shell owns the movie region.
   Ancestor wrappers are transparent/static so none can cover the video. */
@media (orientation:landscape){
  html.dl-phone-player-v16778,
  html.dl-phone-player-v16778 body{
    width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#122331!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766{
    position:fixed!important;
    inset:0!important;
    z-index:9900!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    background:#122331!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .live-stage,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .player-content-stack-v16628,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-card,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-frame{
    position:static!important;
    inset:auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    transform:none!important;
    filter:none!important;
    contain:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:calc(env(safe-area-inset-bottom) + 120px)!important;
    z-index:1!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-height:120px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#142737!important;
    box-shadow:none!important;
    transform:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .video-media-area{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#142737!important;
    transform:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode #phrase-video{
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    opacity:1!important;
    visibility:visible!important;
    background:#142737!important;
    transform:none!important;
    filter:none!important;
  }

  #dl78-header{
    position:fixed!important;
    z-index:10010!important;
    top:calc(env(safe-area-inset-top) + 6px)!important;
    left:calc(env(safe-area-inset-left) + 8px)!important;
    width:min(44vw,470px)!important;
    margin:0!important;
    grid-template-columns:38px 86px minmax(0,1fr)!important;
    gap:5px!important;
  }
  .dl78-menu-btn{width:38px!important;height:38px!important;border-radius:13px!important;background:rgba(22,43,58,.74)!important;}
  .dl78-counter{height:38px!important;min-width:86px!important;font-size:10.5px!important;border-radius:13px!important;background:rgba(22,43,58,.74)!important;}
  .dl78-title-card{min-height:38px!important;padding:6px 9px!important;border-radius:13px!important;background:rgba(22,43,58,.74)!important;}
  .dl78-title-text{-webkit-line-clamp:1!important;font-size:10.5px!important;}

  #dl78-search-row{
    position:fixed!important;
    z-index:10010!important;
    top:calc(env(safe-area-inset-top) + 6px)!important;
    right:calc(env(safe-area-inset-right) + 8px)!important;
    width:min(48vw,510px)!important;
    margin:0!important;
    grid-template-columns:minmax(0,1fr) 104px!important;
    gap:5px!important;
  }
  .dl78-search-wrap,.dl78-genre-wrap{height:38px!important;border-radius:13px!important;background:rgba(22,43,58,.74)!important;}
  .dl78-search-wrap{grid-template-columns:36px minmax(0,1fr)!important;}
  .dl78-search-btn{width:36px!important;height:36px!important;}
  .dl78-search-input{height:36px!important;font-size:10px!important;padding-right:7px!important;}
  .dl78-genre-select{height:38px!important;font-size:9.5px!important;padding:0 8px!important;}

  /* subtitle strip is physically below the video, not layered over it */
  #dl78-subtitles{
    position:fixed!important;
    z-index:10008!important;
    left:50%!important;
    right:auto!important;
    bottom:calc(env(safe-area-inset-bottom) + 69px)!important;
    transform:translateX(-50%)!important;
    width:min(88vw,980px)!important;
    max-width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - 24px)!important;
    max-height:47px!important;
    margin:0!important;
    padding:5px 12px 6px!important;
    overflow:auto!important;
    border-radius:13px!important;
    background:rgba(25,47,63,.97)!important;
    border-color:rgba(133,200,226,.19)!important;
  }
  .dl78-sub-fa{font-size:calc(12px * var(--dl78-sub-scale,1))!important;line-height:1.35!important;}
  .dl78-sub-en{font-size:calc(10px * var(--dl78-sub-scale,1))!important;line-height:1.28!important;margin-top:1px!important;}

  #dl78-controls{
    position:fixed!important;
    z-index:10010!important;
    left:calc(env(safe-area-inset-left) + 10px)!important;
    right:calc(env(safe-area-inset-right) + 10px)!important;
    bottom:calc(env(safe-area-inset-bottom) + 4px)!important;
    width:auto!important;
    height:63px!important;
    margin:0!important;
    display:grid!important;
    grid-template-rows:18px 43px!important;
    gap:2px!important;
  }
  .dl78-progress-row{width:min(92vw,1040px)!important;min-height:18px!important;height:18px!important;margin:0 auto!important;grid-template-columns:34px minmax(0,1fr) 34px!important;gap:5px!important;}
  .dl78-seek{height:18px!important;}
  .dl78-dock{
    width:min(360px,64vw)!important;
    min-height:43px!important;
    height:43px!important;
    margin:0 auto!important;
    padding:3px 6px!important;
    grid-template-columns:38px 48px 38px 38px 38px!important;
    gap:4px!important;
    border-radius:17px!important;
    background:rgba(18,39,53,.82)!important;
  }
  .dl78-control-item{gap:0!important;}
  .dl78-control-label{display:none!important;}
  .dl78-control-btn{width:36px!important;height:36px!important;border-radius:12px!important;background:rgba(31,58,75,.84)!important;}
  .dl78-control-btn svg{width:17px!important;height:17px!important;}
  .dl78-control-btn.dl78-primary{width:46px!important;height:46px!important;border-radius:15px!important;}
  .dl78-control-btn.dl78-primary svg{width:23px!important;height:23px!important;}
  .dl78-speed-text{font-size:11px!important;}
  #dl78-secondary{display:none!important;}

  #dl78-sheet{
    left:auto!important;
    right:calc(env(safe-area-inset-right) + 10px)!important;
    width:min(390px,48vw)!important;
    bottom:calc(env(safe-area-inset-bottom) + 8px)!important;
    max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px)!important;
  }
}

@media (orientation:landscape) and (max-height:330px){
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell{
    bottom:calc(env(safe-area-inset-bottom) + 101px)!important;
  }
  #dl78-subtitles{bottom:calc(env(safe-area-inset-bottom) + 57px)!important;max-height:40px!important;padding:4px 10px!important;}
  .dl78-sub-fa{font-size:calc(10.5px * var(--dl78-sub-scale,1))!important;}
  .dl78-sub-en{font-size:calc(9px * var(--dl78-sub-scale,1))!important;}
  #dl78-controls{height:52px!important;grid-template-rows:15px 35px!important;}
  .dl78-progress-row{height:15px!important;min-height:15px!important;}
  .dl78-dock{height:35px!important;min-height:35px!important;width:min(320px,60vw)!important;grid-template-columns:31px 39px 31px 31px 31px!important;gap:3px!important;}
  .dl78-control-btn{width:30px!important;height:30px!important;border-radius:10px!important;}
  .dl78-control-btn.dl78-primary{width:38px!important;height:38px!important;border-radius:13px!important;}
}

/* ========================================================================
   DialogLab v1.67.84 — Rotation-safe landscape video hard-fix on v1.67.78 base
   IMPORTANT: Portrait/Search behavior remains v1.67.78.
   This block owns only phone landscape video geometry; no Canvas/compositor loop is used.
   ======================================================================== */

/* Legacy clip-motion must never be allowed to leave the live video invisible
   after an orientation change. */
@media (orientation:landscape){
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > #phrase-video,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area.clip-motion-switch-v16697 > #phrase-video,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area.clip-motion-switch-v16698 > #phrase-video,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area.clip-safe-wait-v16695 > #phrase-video{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    scale:1!important;
    animation:none!important;
    transition:none!important;
    will-change:auto!important;
    clip-path:none!important;
    -webkit-clip-path:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > .clip-transition-old-frame-v16690,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > .clip-transition-old-frame-v16691,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > .clip-transition-old-frame-v16695,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > .clip-transition-old-frame-v16697,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766.dl-mobile-approved-v16778 .video-media-area > .clip-transition-old-frame-v16698{
    display:none!important;
  }

  /* Keep one compositor owner for the movie surface. */
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .live-stage,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .player-content-stack-v16628,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-card,
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-player-frame{
    position:static!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:visible!important;
    background:transparent!important;
    transform:none!important;
    filter:none!important;
    contain:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:calc(env(safe-area-inset-bottom) + 120px)!important;
    left:0!important;
    z-index:1!important;
    width:auto!important;
    height:auto!important;
    min-height:120px!important;
    overflow:hidden!important;
    background:#102432!important;
    isolation:isolate!important;
    transform:none!important;
    filter:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .video-media-area{
    position:relative!important;
    inset:auto!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#102432!important;
    isolation:isolate!important;
    transform:none!important;
    filter:none!important;
  }

  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 #phrase-video{
    position:absolute!important;
    inset:0!important;
    z-index:20!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    background:#102432!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    filter:none!important;
    animation:none!important;
    transition:none!important;
  }


  /* UI overlays remain above either the native video layer or its mirror. */
  #dl78-header,
  #dl78-search-row,
  #dl78-subtitles,
  #dl78-controls,
  #dl78-sheet,
  #dl78-sheet-backdrop{
    z-index:10060!important;
  }
}

@media (orientation:landscape) and (max-height:330px){
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766 .pro-video-shell{
    bottom:calc(env(safe-area-inset-bottom) + 101px)!important;
  }
}

/* ========================================================================
   DialogLab v1.67.87 — SINGLE OWNER LANDSCAPE PORTAL
   One body-level grid owns every visible landscape region. This deliberately
   bypasses the accumulated player ancestor geometry from older mobile releases.
   Portrait remains the v1.67.84/v1.67.78 layout.
   ======================================================================== */
@media (orientation:landscape){
  html.dl87-landscape-portal-active,
  html.dl87-landscape-portal-active body{
    overflow:hidden!important;
    background:#091622!important;
  }

  /* Original mobile shell stays mounted for app state, but is no longer a
     visible/layout owner while its real video shell lives in the portal. */
  html.dl87-landscape-portal-active body.user-mode .player-home.mobile-shell-v16766{
    visibility:hidden!important;
    pointer-events:none!important;
  }

  #dl87-landscape-root{
    --dl87-vw:100vw;
    --dl87-vh:100dvh;
    --dl87-top-h:40px;
    --dl87-sub-h:38px;
    --dl87-controls-h:62px;
    --dl87-gap:4px;
    --dl87-btn:36px;
    --dl87-play:46px;
    position:fixed!important;
    z-index:2147482000!important;
    display:grid!important;
    grid-template-rows:var(--dl87-top-h) minmax(0,1fr) var(--dl87-sub-h) var(--dl87-controls-h)!important;
    gap:var(--dl87-gap)!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:
      calc(env(safe-area-inset-top) + var(--dl87-gap))
      calc(env(safe-area-inset-right) + var(--dl87-gap))
      calc(env(safe-area-inset-bottom) + var(--dl87-gap))
      calc(env(safe-area-inset-left) + var(--dl87-gap))!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#0c1d2a 0%,#09131d 100%)!important;
    color:#fff!important;
    isolation:isolate!important;
    contain:none!important;
  }

  #dl87-landscape-root *{box-sizing:border-box;}

  #dl87-landscape-root .dl87-top-row{
    position:relative!important;
    z-index:30!important;
    display:grid!important;
    grid-template-columns:minmax(0,46fr) minmax(0,54fr)!important;
    gap:var(--dl87-gap)!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:visible!important;
  }

  #dl87-landscape-root #dl78-header,
  #dl87-landscape-root #dl78-search-row{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    z-index:auto!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    align-self:stretch!important;
    overflow:hidden!important;
  }

  #dl87-landscape-root #dl78-header{
    grid-template-columns:var(--dl87-top-h) clamp(70px,10vw,94px) minmax(0,1fr)!important;
    gap:4px!important;
  }
  #dl87-landscape-root #dl78-search-row{
    grid-template-columns:minmax(0,1fr) clamp(78px,11vw,112px)!important;
    gap:4px!important;
  }

  #dl87-landscape-root .dl78-menu-btn,
  #dl87-landscape-root .dl78-counter,
  #dl87-landscape-root .dl78-title-card,
  #dl87-landscape-root .dl78-search-wrap,
  #dl87-landscape-root .dl78-genre-wrap{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    border-radius:12px!important;
    background:rgba(18,43,59,.90)!important;
    box-shadow:none!important;
  }
  #dl87-landscape-root .dl78-menu-btn{
    width:var(--dl87-top-h)!important;
    min-width:0!important;
  }
  #dl87-landscape-root .dl78-counter{
    min-width:0!important;
    padding:0 6px!important;
    font-size:clamp(9px,1.3vw,12px)!important;
  }
  #dl87-landscape-root .dl78-title-card{
    min-width:0!important;
    padding:0 9px!important;
    display:flex!important;
    align-items:center!important;
  }
  #dl87-landscape-root .dl78-title-text{
    width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    -webkit-line-clamp:unset!important;
    font-size:clamp(9px,1.15vw,12px)!important;
  }
  #dl87-landscape-root .dl78-search-wrap{
    min-width:0!important;
    grid-template-columns:var(--dl87-top-h) minmax(0,1fr)!important;
  }
  #dl87-landscape-root .dl78-search-btn{
    width:var(--dl87-top-h)!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
  }
  #dl87-landscape-root .dl78-search-input,
  #dl87-landscape-root .dl78-genre-select{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    font-size:clamp(9px,1.1vw,11.5px)!important;
  }
  #dl87-landscape-root .dl78-genre-select{padding:0 8px!important;}

  /* This is the ONLY movie rectangle in landscape. */
  #dl87-landscape-root > .pro-video-shell{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:10!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:10px!important;
    background:#050a0f!important;
    box-shadow:none!important;
    transform:none!important;
    filter:none!important;
    isolation:isolate!important;
    contain:none!important;
  }

  #dl87-landscape-root > .pro-video-shell > .video-media-area{
    position:relative!important;
    inset:auto!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#050a0f!important;
    border-radius:inherit!important;
    transform:none!important;
    filter:none!important;
    contain:none!important;
  }

  #dl87-landscape-root #phrase-video{
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:50% 50%!important;
    opacity:1!important;
    visibility:visible!important;
    background:#050a0f!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    filter:none!important;
    animation:none!important;
    transition:none!important;
    clip-path:none!important;
    -webkit-clip-path:none!important;
  }

  #dl87-landscape-root #dl78-subtitles{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    z-index:20!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:2px 10px!important;
    overflow:hidden!important;
    border-radius:10px!important;
    border:1px solid rgba(121,190,220,.16)!important;
    background:rgba(21,48,65,.94)!important;
    box-shadow:none!important;
  }
  #dl87-landscape-root #dl78-subtitles.is-hidden{visibility:hidden!important;}
  #dl87-landscape-root .dl78-sub-fa,
  #dl87-landscape-root .dl78-sub-en{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    line-height:1.15!important;
  }
  #dl87-landscape-root .dl78-sub-fa{font-size:clamp(9px,1.25vw,13px)!important;}
  #dl87-landscape-root .dl78-sub-en{margin-top:1px!important;font-size:clamp(8px,1.05vw,11px)!important;}

  #dl87-landscape-root #dl78-controls{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    z-index:25!important;
    display:grid!important;
    grid-template-rows:16px minmax(0,1fr)!important;
    gap:2px!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  #dl87-landscape-root .dl78-progress-row{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr) 36px!important;
    gap:5px!important;
    align-items:center!important;
    width:100%!important;
    max-width:none!important;
    height:16px!important;
    min-height:16px!important;
    max-height:16px!important;
    margin:0!important;
    padding:0!important;
  }
  #dl87-landscape-root .dl78-time{font-size:8.5px!important;}
  #dl87-landscape-root .dl78-seek{height:14px!important;min-height:14px!important;}

  #dl87-landscape-root .dl78-dock{
    display:grid!important;
    grid-template-columns:var(--dl87-btn) var(--dl87-play) var(--dl87-btn) var(--dl87-btn) var(--dl87-btn)!important;
    gap:4px!important;
    align-items:center!important;
    justify-content:center!important;
    width:min(390px,72vw)!important;
    max-width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0 auto!important;
    padding:1px 5px!important;
    overflow:hidden!important;
    border-radius:16px!important;
    background:rgba(13,33,46,.86)!important;
    border:1px solid rgba(112,190,220,.12)!important;
    box-shadow:none!important;
  }
  #dl87-landscape-root .dl78-control-item{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    height:100%!important;
    min-height:0!important;
    gap:0!important;
  }
  #dl87-landscape-root .dl78-control-label{display:none!important;}
  #dl87-landscape-root .dl78-control-btn{
    width:var(--dl87-btn)!important;
    height:var(--dl87-btn)!important;
    min-width:var(--dl87-btn)!important;
    min-height:var(--dl87-btn)!important;
    max-width:var(--dl87-btn)!important;
    max-height:var(--dl87-btn)!important;
    margin:0!important;
    padding:0!important;
    border-radius:11px!important;
  }
  #dl87-landscape-root .dl78-control-btn.dl78-primary{
    width:var(--dl87-play)!important;
    height:var(--dl87-play)!important;
    min-width:var(--dl87-play)!important;
    min-height:var(--dl87-play)!important;
    max-width:var(--dl87-play)!important;
    max-height:var(--dl87-play)!important;
    border-radius:14px!important;
  }
  #dl87-landscape-root .dl78-control-btn.dl78-primary svg{width:52%!important;height:52%!important;}

  #dl87-landscape-root.dl87-chrome-hidden .dl87-top-row,
  #dl87-landscape-root.dl87-chrome-hidden #dl78-controls{
    opacity:0!important;
    pointer-events:none!important;
  }
  #dl87-landscape-root .dl87-top-row,
  #dl87-landscape-root #dl78-controls{
    transition:opacity .26s ease!important;
  }

  #dl87-landscape-root.dl87-narrow .dl87-top-row{
    grid-template-columns:minmax(0,44fr) minmax(0,56fr)!important;
  }
  #dl87-landscape-root.dl87-narrow #dl78-header{
    grid-template-columns:var(--dl87-top-h) 72px minmax(0,1fr)!important;
  }
  #dl87-landscape-root.dl87-narrow #dl78-search-row{
    grid-template-columns:minmax(0,1fr) 78px!important;
  }

  #dl87-landscape-root.dl87-very-short .dl78-title-text,
  #dl87-landscape-root.dl87-very-short .dl78-search-input,
  #dl87-landscape-root.dl87-very-short .dl78-genre-select,
  #dl87-landscape-root.dl87-very-short .dl78-counter{
    font-size:8.5px!important;
  }
}


/* v1.67.88 root rule: preserve the complete source frame in mobile landscape.
   Letterboxing is intentional when the browser viewport is wider/shorter than the video. */
@media (orientation:landscape){
  #dl87-landscape-root > .pro-video-shell,
  #dl87-landscape-root > .pro-video-shell > .video-media-area{
    overflow:hidden!important;
    background:#050a0f!important;
  }
  #dl87-landscape-root #phrase-video{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    opacity:1!important;
    visibility:visible!important;
  }
}

/* ========================================================================
   DialogLab v1.67.89 — Mobile navigation + header/action polish
   IMPORTANT: this block intentionally does NOT change landscape video geometry.
   ======================================================================== */

/* ---------- Portrait phone: restore the site's primary bottom navigation ---------- */
@media (orientation:portrait){
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630{
    position:fixed!important;
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    z-index:10040!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-flow:unset!important;
    grid-auto-columns:unset!important;
    width:auto!important;
    height:72px!important;
    min-height:72px!important;
    padding:7px!important;
    gap:4px!important;
    overflow:hidden!important;
    border-radius:24px!important;
    background:rgba(245,248,252,.96)!important;
    border:1px solid rgba(255,255,255,.82)!important;
    box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(18px) saturate(1.08)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
  }
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630 .favorite-nav-link{
    display:none!important;
  }
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>a,
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>button{
    min-width:0!important;
    width:100%!important;
    height:58px!important;
    margin:0!important;
    padding:4px 2px!important;
    border:0!important;
    border-radius:18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    color:#26364a!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>a span,
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>button span{
    font-size:19px!important;
    line-height:1!important;
  }
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>a b,
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>button b{
    font-size:10px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630>.active{
    color:#fff!important;
    background:linear-gradient(135deg,#24c9df,#5269ff)!important;
    box-shadow:0 8px 20px rgba(47,119,235,.26)!important;
  }

  /* Keep player content clear of the restored fixed nav. */
  html.dl-phone-player-v16778 body.user-mode .player-home.mobile-shell-v16766{
    padding-bottom:calc(94px + env(safe-area-inset-bottom))!important;
  }

  /* Header: menu at far-left, readable movie title, compact counter at far-right. */
  #dl78-header{
    grid-template-columns:44px minmax(0,1fr) 82px!important;
    gap:7px!important;
    direction:ltr!important;
  }
  #dl78-header .dl78-menu-btn{
    grid-column:1!important;
    width:44px!important;
    height:44px!important;
    border-radius:15px!important;
  }
  #dl78-header .dl78-title-card{
    grid-column:2!important;
    grid-row:1!important;
    min-height:44px!important;
    padding:8px 10px!important;
    border-radius:15px!important;
  }
  #dl78-header .dl78-counter{
    grid-column:3!important;
    grid-row:1!important;
    min-width:0!important;
    width:82px!important;
    height:44px!important;
    padding:0 7px!important;
    border-radius:15px!important;
    font-size:10.5px!important;
    gap:2px!important;
  }
  #dl78-header .dl78-title-text{
    font-size:12.5px!important;
    line-height:1.24!important;
    font-weight:800!important;
    -webkit-line-clamp:1!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }

  /* Clip action row: left -> right = Report, Share, Favorite, Subtitle. */
  #dl78-secondary{
    direction:ltr!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
  }
  #dl78-secondary .dl78-secondary-card{
    height:54px!important;
    min-height:54px!important;
    border-radius:15px!important;
    padding:5px 3px!important;
  }
  #dl78-secondary .dl78-secondary-icon{
    width:26px!important;
    height:26px!important;
    border-radius:9px!important;
  }
  #dl78-secondary .dl78-secondary-title{font-size:9px!important;}
}

/* ---------- Landscape phone: one clean top row, no overflow menu ---------- */
@media (orientation:landscape){
  #dl87-landscape-root .dl87-top-row{
    /* left -> right: counter | search | genre | movie title */
    display:grid!important;
    grid-template-columns:clamp(68px,9vw,88px) minmax(170px,1fr) clamp(72px,10vw,100px) minmax(170px,31vw)!important;
    grid-template-areas:"counter search genre title"!important;
    align-items:stretch!important;
    gap:var(--dl87-gap)!important;
    overflow:hidden!important;
  }

  /* Flatten the two old rows so their real children become items of the single top grid. */
  #dl87-landscape-root #dl78-header,
  #dl87-landscape-root #dl78-search-row{
    display:contents!important;
  }
  #dl87-landscape-root .dl78-menu-btn{
    display:none!important;
  }
  #dl87-landscape-root .dl78-counter{
    grid-area:counter!important;
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    padding:0 6px!important;
    font-size:clamp(9px,1.05vw,11px)!important;
    border-radius:12px!important;
  }
  #dl87-landscape-root .dl78-search-wrap{
    grid-area:search!important;
    width:100%!important;
    min-width:0!important;
    height:100%!important;
  }
  #dl87-landscape-root .dl78-genre-wrap{
    grid-area:genre!important;
    width:100%!important;
    min-width:0!important;
    height:100%!important;
  }
  #dl87-landscape-root .dl78-title-card{
    grid-area:title!important;
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    padding:0 9px!important;
    border-radius:12px!important;
  }
  #dl87-landscape-root .dl78-title-text{
    font-size:clamp(9px,1vw,11px)!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* Equal-size transport buttons: Play/Pause no longer drops below the dock. */
  #dl87-landscape-root .dl78-dock{
    grid-template-columns:repeat(5,var(--dl87-btn))!important;
    width:min(340px,66vw)!important;
    gap:4px!important;
    padding:2px 6px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  #dl87-landscape-root .dl78-control-btn,
  #dl87-landscape-root .dl78-control-btn.dl78-primary{
    width:var(--dl87-btn)!important;
    height:var(--dl87-btn)!important;
    min-width:var(--dl87-btn)!important;
    min-height:var(--dl87-btn)!important;
    max-width:var(--dl87-btn)!important;
    max-height:var(--dl87-btn)!important;
    margin:0!important;
    border-radius:11px!important;
    transform:none!important;
  }
  #dl87-landscape-root .dl78-control-btn.dl78-primary svg{
    width:48%!important;
    height:48%!important;
  }

  /* Bottom site navigation remains hidden in active landscape player. */
  html.dl-phone-player-v16778 body.user-mode .mobile-app-tabbar.mobile-app-tabbar-v16630{
    display:none!important;
  }
}

@media (orientation:landscape) and (max-width:760px){
  #dl87-landscape-root .dl87-top-row{
    grid-template-columns:64px minmax(130px,1fr) 70px minmax(130px,30vw)!important;
  }
}


/* ========================================================================
   DialogLab v1.67.90 — portrait nav recovery + landscape compact controls
   This block does NOT alter the v1.67.88 video-fit/compositor rules.
   ======================================================================== */

@media (orientation:portrait){
  /* The JS no longer hard-hides the primary nav. Force a stable 4-item bar. */
  html.dl-phone-player-v16778 body.user-mode > .mobile-app-tabbar.mobile-app-tabbar-v16630{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-auto-flow:unset!important;
    position:fixed!important;
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    z-index:2147481000!important;
  }

  /* Explicit visual order from left -> right: Subtitle, Favorite, Share, Report.
     Therefore Persian reading order from right -> left is Report, Share, Favorite, Subtitle. */
  #dl78-secondary{direction:ltr!important;}
  #dl78-secondary [data-dl78-secondary="language"]{order:1!important;}
  #dl78-secondary [data-dl78-secondary="favorite"]{order:2!important;}
  #dl78-secondary [data-dl78-secondary="share"]{order:3!important;}
  #dl78-secondary [data-dl78-secondary="report"]{order:4!important;}
}

@media (orientation:landscape){
  /* Primary site nav stays out of the cinematic landscape player. */
  html.dl-phone-player-v16778 body.user-mode > .mobile-app-tabbar.mobile-app-tabbar-v16630{
    display:none!important;
  }

  /* One deterministic top row. Physical left -> right:
     clip counter | SEARCH | genre | movie title.
     This also fixes the old inherited RTL reversal. */
  #dl87-landscape-root .dl87-top-row{
    direction:ltr!important;
    grid-template-columns:clamp(64px,8vw,82px) minmax(250px,1.65fr) clamp(70px,9vw,92px) minmax(160px,.9fr)!important;
    grid-template-areas:"counter search genre title"!important;
    align-items:stretch!important;
    gap:3px!important;
  }
  #dl87-landscape-root .dl78-counter{grid-area:counter!important;direction:ltr!important;}
  #dl87-landscape-root .dl78-search-wrap{grid-area:search!important;direction:ltr!important;}
  #dl87-landscape-root .dl78-genre-wrap{grid-area:genre!important;direction:ltr!important;}
  #dl87-landscape-root .dl78-title-card{grid-area:title!important;direction:ltr!important;}

  /* Shorter title/search/genre/counter boxes so more viewport goes to video. */
  #dl87-landscape-root .dl78-counter,
  #dl87-landscape-root .dl78-title-card,
  #dl87-landscape-root .dl78-search-wrap,
  #dl87-landscape-root .dl78-genre-wrap{
    min-height:0!important;
    height:100%!important;
    max-height:100%!important;
    border-radius:10px!important;
  }
  #dl87-landscape-root .dl78-title-card{padding:0 8px!important;}
  #dl87-landscape-root .dl78-title-text{font-size:clamp(8.5px,.92vw,10.5px)!important;}
  #dl87-landscape-root .dl78-search-wrap{grid-template-columns:30px minmax(0,1fr)!important;}
  #dl87-landscape-root .dl78-search-btn{width:30px!important;height:100%!important;}
  #dl87-landscape-root .dl78-search-btn svg{width:17px!important;height:17px!important;}
  #dl87-landscape-root .dl78-search-input,
  #dl87-landscape-root .dl78-genre-select{font-size:clamp(8.5px,.92vw,10.5px)!important;}
  #dl87-landscape-root .dl78-counter{font-size:clamp(8.5px,.92vw,10.5px)!important;padding:0 5px!important;}

  /* User requested no seek/progress bar in landscape. */
  #dl87-landscape-root #dl78-controls{
    grid-template-rows:minmax(0,1fr)!important;
    gap:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  #dl87-landscape-root .dl78-progress-row{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Remove the outer pill that was visually sitting on top of the buttons. */
  #dl87-landscape-root .dl78-dock{
    display:grid!important;
    grid-template-columns:repeat(5,var(--dl87-btn))!important;
    width:max-content!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:100%!important;
    gap:5px!important;
    margin:0 auto!important;
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #dl87-landscape-root .dl78-control-item{
    width:var(--dl87-btn)!important;
    height:var(--dl87-btn)!important;
    min-width:var(--dl87-btn)!important;
    min-height:var(--dl87-btn)!important;
  }
  #dl87-landscape-root .dl78-control-btn,
  #dl87-landscape-root .dl78-control-btn.dl78-primary{
    width:var(--dl87-btn)!important;
    height:var(--dl87-btn)!important;
    min-width:var(--dl87-btn)!important;
    min-height:var(--dl87-btn)!important;
    max-width:var(--dl87-btn)!important;
    max-height:var(--dl87-btn)!important;
    border-radius:10px!important;
    margin:0!important;
    transform:none!important;
  }

  /* Overflow/settings menu is never shown in landscape. */
  #dl87-landscape-root .dl78-menu-btn{display:none!important;}
}

@media (orientation:landscape) and (max-width:760px){
  #dl87-landscape-root .dl87-top-row{
    direction:ltr!important;
    grid-template-columns:58px minmax(150px,1.5fr) 64px minmax(120px,.85fr)!important;
    grid-template-areas:"counter search genre title"!important;
    gap:2px!important;
  }
}

/* ========================================================================
   DialogLab v1.67.91 — mobile help removal, support nav, sheet scroll lock,
   compact centered landscape search. Does not alter video-fit/compositor.
   ======================================================================== */

@media (max-width:600px){
  /* Help is desktop-only. Remove every mobile entry point and any tour chrome. */
  #phraselab-help-tour,
  .help-tour-btn,
  [data-mobile-help-tour],
  .tour-overlay,
  .tour-card,
  .tour-highlight{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Shorter, calmer search placeholder on phone. */
  .dl78-search-input{
    font-size:12px!important;
  }
  .dl78-search-input::placeholder{
    font-size:12px!important;
    letter-spacing:0!important;
  }

  /* Support remains a real tappable destination in the main mobile nav. */
  .mobile-app-tabbar.mobile-app-tabbar-v16630 [data-mobile-support-link]{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }

  /* When the settings sheet is open, freeze the document behind it. */
  body.dl78-sheet-open-v16791{
    position:fixed!important;
    top:calc(-1 * var(--dl78-sheet-scroll-y,0px))!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }

  body.dl78-sheet-open-v16791 > .mobile-app-tabbar.mobile-app-tabbar-v16630{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  #dl78-sheet-backdrop{
    z-index:2147482500!important;
    overscroll-behavior:none!important;
  }

  #dl78-sheet{
    z-index:2147482600!important;
    top:max(10px,env(safe-area-inset-top))!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    max-height:none!important;
    height:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;
  }
}

@media (orientation:landscape) and (max-width:1100px){
  /* Physical left -> right: counter | genre | compact search | movie title.
     Search is deliberately narrower and sits nearer the center. */
  #dl87-landscape-root .dl87-top-row{
    direction:ltr!important;
    grid-template-columns:
      clamp(58px,7vw,78px)
      clamp(66px,8vw,88px)
      clamp(210px,30vw,340px)
      minmax(170px,1fr)!important;
    grid-template-areas:"counter genre search title"!important;
    justify-content:stretch!important;
    align-items:center!important;
    gap:4px!important;
  }

  #dl87-landscape-root .dl78-counter{grid-area:counter!important;}
  #dl87-landscape-root .dl78-genre-wrap{grid-area:genre!important;}
  #dl87-landscape-root .dl78-search-wrap{grid-area:search!important;}
  #dl87-landscape-root .dl78-title-card{grid-area:title!important;}

  #dl87-landscape-root .dl78-search-wrap{
    justify-self:center!important;
    width:100%!important;
    max-width:340px!important;
    grid-template-columns:28px minmax(0,1fr)!important;
  }

  #dl87-landscape-root .dl78-search-btn{
    width:28px!important;
  }

  #dl87-landscape-root .dl78-search-btn svg{
    width:15px!important;
    height:15px!important;
  }

  #dl87-landscape-root .dl78-search-input{
    font-size:9px!important;
    padding:0 6px 0 1px!important;
  }

  #dl87-landscape-root .dl78-search-input::placeholder{
    font-size:9px!important;
  }

  #dl87-landscape-root .dl78-genre-select,
  #dl87-landscape-root .dl78-title-text,
  #dl87-landscape-root .dl78-counter{
    font-size:9px!important;
  }
}

@media (orientation:landscape) and (max-width:760px){
  #dl87-landscape-root .dl87-top-row{
    grid-template-columns:54px 62px minmax(170px,1fr) minmax(130px,.9fr)!important;
    grid-template-areas:"counter genre search title"!important;
    gap:2px!important;
  }
  #dl87-landscape-root .dl78-search-wrap{max-width:280px!important;}
}


/* ========================================================================
   DialogLab v1.67.92 — mobile header spacing / centered landscape search
   Scope: phone landscape header only. Video geometry, rotation portal,
   playback, search submit logic and desktop rules are intentionally untouched.
   ======================================================================== */

@media (orientation:landscape){
  /* Keep the four header controls visually independent. We anchor the
     counter + genre to the left, search to the physical viewport center,
     and give the movie title a bounded width on the right. */
  #dl87-landscape-root .dl87-top-row{
    position:relative!important;
    display:block!important;
    direction:ltr!important;
    width:100%!important;
    height:100%!important;
    overflow:visible!important;
  }

  #dl87-landscape-root #dl78-header,
  #dl87-landscape-root #dl78-search-row{
    display:contents!important;
  }

  #dl87-landscape-root .dl78-counter,
  #dl87-landscape-root .dl78-genre-wrap,
  #dl87-landscape-root .dl78-search-wrap,
  #dl87-landscape-root .dl78-title-card{
    position:absolute!important;
    top:0!important;
    bottom:0!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    margin:0!important;
  }

  #dl87-landscape-root .dl78-counter{
    left:0!important;
    width:clamp(58px,7vw,78px)!important;
  }

  #dl87-landscape-root .dl78-genre-wrap{
    left:calc(clamp(58px,7vw,78px) + 10px)!important;
    width:clamp(66px,8vw,88px)!important;
  }

  #dl87-landscape-root .dl78-search-wrap{
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    width:clamp(230px,34vw,340px)!important;
    max-width:340px!important;
    justify-self:auto!important;
  }

  #dl87-landscape-root .dl78-title-card{
    left:auto!important;
    right:0!important;
    width:clamp(190px,27vw,310px)!important;
    max-width:310px!important;
    padding-inline:10px!important;
  }

  #dl87-landscape-root .dl78-title-text{
    width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (orientation:landscape) and (max-width:760px){
  #dl87-landscape-root .dl78-counter{
    width:52px!important;
  }

  #dl87-landscape-root .dl78-genre-wrap{
    left:59px!important;
    width:60px!important;
  }

  #dl87-landscape-root .dl78-search-wrap{
    width:clamp(170px,34vw,260px)!important;
    max-width:260px!important;
  }

  #dl87-landscape-root .dl78-title-card{
    width:clamp(132px,24vw,190px)!important;
    max-width:190px!important;
    padding-inline:7px!important;
  }
}

/* ========================================================================
   DialogLab v1.67.93 — keep Genre attached to centered Search in landscape
   Scope: phone landscape top header only. The search stays physically centered;
   genre is positioned immediately to its left with a small safe gap.
   Video/portal/rotation/playback/portrait/desktop are intentionally untouched.
   ======================================================================== */
@media (orientation:landscape){
  #dl87-landscape-root .dl78-genre-wrap{
    left:calc(50% - clamp(115px,17vw,170px) - clamp(66px,8vw,88px) - 4px)!important;
    right:auto!important;
    width:clamp(66px,8vw,88px)!important;
  }
}

@media (orientation:landscape) and (max-width:760px){
  #dl87-landscape-root .dl78-genre-wrap{
    left:calc(50% - clamp(85px,17vw,130px) - 64px)!important;
    right:auto!important;
    width:60px!important;
  }
}
