/* Anime Not player: compact desktop layout and comfortable mobile flow. */
.app--player-window #app { max-height:none; }
html, body, #app { height:100%; }
.view-watch { height:100%; min-height:0; overflow:auto; }
.watch-layout { height:auto; min-height:0; align-items:start; grid-template-columns:minmax(0,1fr) 300px; }
.watch-layout > .watch-page { height:auto; min-height:0; }
.watch-page--anidesk .watch-page__player-wrap { flex:none; height:auto; min-height:0; aspect-ratio:16 / 9; }
.watch-page__details { padding:14px 20px 22px; background:#000; }
.watch-page__details h1 { max-width:100%; font-size:clamp(16px,1.5vw,22px); line-height:1.3; }
.watch-page__details p { flex-wrap:wrap; white-space:normal; }
.episode-rail { height:calc(100vh - 40px); max-height:calc(100vh - 40px); padding:14px 12px 20px; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.episode-rail__head span { display:none; }
.episode-rail__list { gap:8px; }
.episode-rail__item { grid-template-columns:112px minmax(0,1fr); gap:10px; min-height:63px; }
.episode-rail__thumb { border-radius:7px; }
.episode-rail__thumb b { display:none; }
.episode-rail__copy { align-content:center; gap:4px; }
.episode-rail__copy strong { font-size:14px; line-height:1.25; }
.episode-rail__copy small { font-size:12px; line-height:1.25; white-space:normal; }
.episode-recommendations { margin-top:24px; padding-top:18px; border-top:1px solid #292929; }
.episode-recommendations__title { color:#fff; margin:0 0 12px; font-size:15px; font-weight:700; }
.episode-recommendations__list { display:grid; gap:12px; }
.episode-recommendation { display:grid; grid-template-columns:92px minmax(0,1fr); gap:9px; color:#fff; text-decoration:none; align-items:center; }
.episode-recommendation:hover .episode-recommendation__poster { outline:1px solid #888; transform:scale(1.02); }
.episode-recommendation__poster { width:92px; aspect-ratio:16/9; object-fit:cover; border-radius:6px; background:#222; transition:transform .18s,outline .18s; }
.episode-recommendation__name { display:-webkit-box; overflow:hidden; margin:0; color:#eee; font-size:12px; line-height:1.3; font-weight:600; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.episode-recommendation__meta { display:block; overflow:hidden; margin-top:3px; color:#929292; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:860px) {
  html, body, #app { height:auto; min-height:100%; }
  .view-watch { height:auto; min-height:100%; overflow-y:auto; }
  .watch-layout { height:auto; display:block; }
  .watch-layout > .watch-page { height:auto; }
  .watch-page--anidesk .watch-page__player-wrap { width:100%; height:auto; min-height:0; aspect-ratio:16 / 9; }
  .watch-page__details { padding:13px 14px 18px; }
  .watch-page__details h1 { font-size:17px; }
  .episode-rail { height:auto; max-height:none; padding:15px 14px 28px; border-top:1px solid #292929; border-left:0; overflow:visible; }
  .episode-rail__item { grid-template-columns:minmax(128px,38vw) minmax(0,1fr); min-height:76px; gap:10px; }
  .episode-rail__copy strong { font-size:14px; }
  .episode-recommendations { margin-top:22px; padding-top:16px; }
  .episode-recommendations__list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 10px; }
  .episode-recommendation { display:block; }
  .episode-recommendation__poster { width:100%; display:block; margin-bottom:7px; }
  .episode-recommendation__name { font-size:12px; }
}
@media (max-width:480px) {
  .episode-rail__item { grid-template-columns:42vw minmax(0,1fr); }
  .episode-recommendations__list { grid-template-columns:1fr 1fr; }
}

/* Compact, clean video controls: no side shading, panels or oversized hit areas. */
.watch-page__video,
.watch-page__iframe { object-fit:cover; }
.watch-page__gui-overlay { background:transparent !important; }
.watch-page__bottom-controls { padding:0 8px max(5px, env(safe-area-inset-bottom)); gap:0; }
.watch-page__timeline-row { gap:3px; }
.watch-page__progress-wrap { padding:5px 0; }
.watch-page__progress-bar { height:3px; }
.watch-page__timeline-dot { width:7px; height:7px; }
.watch-page__btn-row,
.watch-page__btns-left,
.watch-page__btns-right { gap:0 !important; }
.watch-page__ctrl-btn,
.watch-page__vol-btn,
.watch-page__ep-nav,
.watch-page__ep-nav--alt-next,
.watch-page__ep-nav--alt-prev { width:29px !important; min-width:29px !important; height:29px !important; min-height:29px !important; padding:0 !important; border:0 !important; outline:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; }
.watch-page__ctrl-btn svg,
.watch-page__vol-btn svg { width:15px !important; height:15px !important; }
.watch-page__ctrl-btn:hover,
.watch-page__vol-btn:hover,
.watch-page__ep-nav:hover { background:transparent !important; border:0 !important; box-shadow:none !important; }
.watch-page__time-readout { padding:0 4px; font-size:10px; }
.watch-page__vol-wrap { display:flex !important; align-items:center; }
.watch-page__vol-slider-wrap,
.watch-page__vol-wrap:hover .watch-page__vol-slider-wrap { display:flex !important; align-items:center; width:70px !important; height:29px !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; }
.watch-page__vol-slider { width:58px !important; height:3px !important; margin:0 !important; background:transparent !important; accent-color:#fff; }
.watch-page__vol-slider::-webkit-slider-runnable-track { height:3px; background:#fff; border-radius:99px; }
.watch-page__vol-slider::-moz-range-track { height:3px; background:#fff; border-radius:99px; }
.watch-page__vol-slider::-webkit-slider-thumb { width:9px; height:9px; margin-top:-3px; }
.watch-page__vol-slider::-moz-range-thumb { width:9px; height:9px; border:0; background:#fff; }
.watch-page__float-panel,
.watch-page__popover-panel,
.watch-page__vol-slider-wrap::before,
.watch-page__vol-slider-wrap::after { border:0 !important; background:transparent !important; box-shadow:none !important; }
@media (max-width:860px) {
  .watch-page__bottom-controls { padding-left:5px; padding-right:5px; }
  .watch-page__vol-wrap,
  .watch-page__vol-wrap:hover .watch-page__vol-slider-wrap { display:flex !important; }
  .watch-page__vol-slider-wrap { position:static !important; opacity:1 !important; visibility:visible !important; transform:none !important; }
  .watch-page__ctrl-btn,
  .watch-page__vol-btn { width:27px !important; min-width:27px !important; height:27px !important; }
  .watch-page__vol-slider-wrap { width:57px !important; }
  .watch-page__vol-slider { width:48px !important; }
}
