@serifpersia/dango 3.4.5 → 3.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +1 -1
  2. package/client/dist/assets/{AnimeCard-I3S6qw9d.js → AnimeCard-BVdH0EeW.js} +1 -1
  3. package/client/dist/assets/{AnimeInfo-CLU2NSBR.js → AnimeInfo-Dw2Nop6Q.js} +1 -1
  4. package/client/dist/assets/{AnimeInfoPage-4Mw9ArDy.js → AnimeInfoPage-Cw-Tq3YX.js} +2 -2
  5. package/client/dist/assets/{Asmr-DN9XBc5Y.js → Asmr-BrjzzyOi.js} +1 -1
  6. package/client/dist/assets/{AsmrResetProgressModal-DyU1Z2Gw.js → AsmrResetProgressModal-CYjpcYpb.js} +1 -1
  7. package/client/dist/assets/{AvSyncCalibrator-DxL0mr_4.js → AvSyncCalibrator-BuHurVgo.js} +3 -3
  8. package/client/dist/assets/AvSyncCalibrator-D0FYSwiz.css +1 -0
  9. package/client/dist/assets/{Home-CeTeJ-gM.js → Home-KdnP7sNM.js} +1 -1
  10. package/client/dist/assets/{Insights-i34-qV4C.js → Insights-DDWry-t1.js} +1 -1
  11. package/client/dist/assets/{LibraryListPage-DE-ASOX2.js → LibraryListPage-CV8Z9JlO.js} +1 -1
  12. package/client/dist/assets/{ListeningList-DrNce5ll.js → ListeningList-DSMbMZT7.js} +1 -1
  13. package/client/dist/assets/{Manga-DOrf7Fk6.js → Manga-J6XoqEKq.js} +1 -1
  14. package/client/dist/assets/{MangaInfoPage-CAZMLMGw.js → MangaInfoPage-N7TxsN5u.js} +1 -1
  15. package/client/dist/assets/{MangaReadPage-DQVEo8_F.js → MangaReadPage-D_VzSNWq.js} +1 -1
  16. package/client/dist/assets/{MangaResetProgressModal-DOjpLAMp.js → MangaResetProgressModal-DyhQYBDy.js} +1 -1
  17. package/client/dist/assets/{Mature-D2xb9EGB.js → Mature-Db53R-LR.js} +1 -1
  18. package/client/dist/assets/{MediaCard-CKUEcFTd.js → MediaCard-BcLjlpfR.js} +1 -1
  19. package/client/dist/assets/{Music-w_a34r7r.js → Music-DjxQjJOl.js} +1 -1
  20. package/client/dist/assets/{OptionListMenu-DxZHBMIZ.js → OptionListMenu-DngTgHxH.js} +1 -1
  21. package/client/dist/assets/Player-Be_7Ne5p.js +56 -0
  22. package/client/dist/assets/{PlayerSettings-Ddlg-MvW.js → PlayerSettings-D47ItGDR.js} +1 -1
  23. package/client/dist/assets/{QueueOptionsButton-BMvAC6Ut.js → QueueOptionsButton-ClVTpH8J.js} +1 -1
  24. package/client/dist/assets/{QueueRail-CAoGJvHP.js → QueueRail-DeJKVRs5.js} +1 -1
  25. package/client/dist/assets/{Radio-6O7rAUv1.js → Radio-DU0ma3GA.js} +1 -1
  26. package/client/dist/assets/{ReadingList-k3g8oHvs.js → ReadingList-qXW7Dk5z.js} +1 -1
  27. package/client/dist/assets/{ResetProgressModal-vFC6N-Qw.js → ResetProgressModal-C6ukct_c.js} +1 -1
  28. package/client/dist/assets/{Search-Bh9Y6nIJ.js → Search-DjjKA_Wu.js} +1 -1
  29. package/client/dist/assets/{Settings-DRumujfh.js → Settings-DQt_S5Qw.js} +1 -1
  30. package/client/dist/assets/{SkeletonGrid-BtzUnQE0.js → SkeletonGrid-nx2HEi4P.js} +1 -1
  31. package/client/dist/assets/{Trackers-D0nqy8wu.js → Trackers-BcGzeqj2.js} +1 -1
  32. package/client/dist/assets/Tv-COvyHdeJ.js +4 -0
  33. package/client/dist/assets/{TvInfo-BkECbOKN.js → TvInfo-CUd1agFy.js} +1 -1
  34. package/client/dist/assets/{TvPopup-D8WWY6o4.js → TvPopup-CJeu3tgc.js} +1 -1
  35. package/client/dist/assets/{TvSearch-kWPep3gL.js → TvSearch-BIypjbU3.js} +1 -1
  36. package/client/dist/assets/{TvWatchlist-dD4emIHx.js → TvWatchlist-DZrBdiqZ.js} +1 -1
  37. package/client/dist/assets/{Watchlist-cWxw38nU.js → Watchlist-Dw8cPe0n.js} +1 -1
  38. package/client/dist/assets/{hls-uG_Y3i5s.js → hls-B3_1VuDP.js} +1 -1
  39. package/client/dist/assets/{index-BWIWE3Qy.js → index-gMxawd-E.js} +2 -2
  40. package/client/dist/assets/{useAnimeInfoData-DjPBg24u.js → useAnimeInfoData-_iOLEAa8.js} +1 -1
  41. package/client/dist/assets/{useAsmr-DQyobNQX.js → useAsmr-Blk4v41t.js} +1 -1
  42. package/client/dist/assets/{useAsmrPopup-CDoroMBD.js → useAsmrPopup-D9SQIgZa.js} +1 -1
  43. package/client/dist/assets/{useMangaLibrary-C6L8mrnS.js → useMangaLibrary-B60at6ni.js} +1 -1
  44. package/client/dist/assets/{useMangaPopup-BSuMa_vA.js → useMangaPopup-DEfGjWSu.js} +1 -1
  45. package/client/dist/assets/{useProviders-XIdvDof6.js → useProviders-Ca0bZWt7.js} +1 -1
  46. package/client/dist/assets/{useTv-DzSYasru.js → useTv-WJCDL5_5.js} +1 -1
  47. package/client/dist/assets/{useTvLibrary-BnbHS-gg.js → useTvLibrary-Fgn5i9rJ.js} +1 -1
  48. package/client/dist/index.html +1 -1
  49. package/package.json +2 -2
  50. package/server/dist/hono/proxy.js +102 -75
  51. package/server/dist/hono/tv.js +2 -2
  52. package/server/dist/hono/watchlist.js +2 -291
  53. package/server/dist/lib/anilist.js +0 -3
  54. package/server/dist/lib/mal.js +0 -38
  55. package/server/dist/lib/offline-db.js +0 -6
  56. package/server/dist/providers/remote-loader.js +15 -26
  57. package/server/dist/providers/title-matching.js +5 -5
  58. package/server/dist/repositories/manga.repository.js +0 -1
  59. package/server/dist/repositories/watched-episodes.repository.js +0 -2
  60. package/server/dist/utils/megaplay.utils.js +1 -2
  61. package/server/package.json +1 -1
  62. package/client/dist/assets/AvSyncCalibrator-C2wu1ydI.css +0 -1
  63. package/client/dist/assets/Player-B8YHeATv.js +0 -56
  64. package/client/dist/assets/Tv-DVebLMNS.js +0 -4
package/README.md CHANGED
@@ -6,7 +6,7 @@ _A local-first anime web app focused on performance, privacy, and personal libra
6
6
 
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-897cff?style=for-the-badge)](https://opensource.org/licenses/MIT)
8
8
  ![Github stars](https://img.shields.io/github/stars/serifpersia/dango.svg?style=for-the-badge&color=897cff)
9
- [![App version](https://img.shields.io/badge/dango-3.4.5-897cff?style=for-the-badge)](https://github.com/serifpersia/dango)
9
+ [![App version](https://img.shields.io/badge/dango-3.4.6-897cff?style=for-the-badge)](https://github.com/serifpersia/dango)
10
10
 
11
11
  ![Users](https://dango-users-badge.ramiserifpersia.workers.dev)
12
12
 
@@ -1 +1 @@
1
- import{T as B,d as P,A as C,u as s,S as T,L as A,N as D}from"./vendor-core-DfaOB3Rn.js";import{I as o}from"./vendor-icons-DrybRNxP.js";import{u as I}from"./useAnimeInfoData-DjPBg24u.js";import{d as R,s as z,g as M}from"./index-BWIWE3Qy.js";import{Q as _}from"./QueueOptionsButton-BMvAC6Ut.js";import{p as a,a as x,m as $,M as L}from"./MediaCard-CKUEcFTd.js";const O=({showId:e,anchorRect:l,onMouseEnter:v,onMouseLeave:u,onRequestClose:N})=>{const{showMeta:t,loadingMeta:i,inWatchlist:d,toggleWatchlist:f}=I(e),{titlePreference:c}=R(),r=B(()=>t?.name?c==="name"?t.name:c==="nativeName"?t.names?.native||t.name:c==="englishName"&&t.names?.english||t.name:"",[t,c]),[h,g]=P(!1),p=C(!1),b=()=>{p.current=!0,v()},y=()=>{p.current=!1,!h&&u()},w=n=>{g(n),!n&&!p.current&&u()};return s(x,{anchorRect:l,onMouseEnter:b,onMouseLeave:y,onRequestClose:N,children:i?s("div",{className:a.loading,children:[s("div",{className:a.spinner}),s("span",{children:"Fetching details..."})]}):t?s(T,{children:[s("div",{className:a.header,children:s("div",{className:a.title,children:r})}),s("div",{className:a.body,children:[s("div",{className:a.metaRow,children:[t.score&&s("div",{className:a.metaItem,children:[s(o,{name:"star",className:a.scoreIcon,size:14}),s("span",{children:t.score})]}),t.status&&s("div",{className:a.metaItem,children:[s(o,{name:"tv",size:14}),s("span",{children:t.status})]})]}),s("div",{className:a.synopsis,children:t.description?z(t.description):"No synopsis available."}),s("div",{className:a.details,children:[t.nextEpisodeAirDate&&s("div",{className:a.detailItem,children:[s("strong",{children:"Aired:"})," ",t.nextEpisodeAirDate]}),Array.isArray(t.genres)&&t.genres.length>0&&s("div",{className:a.genres,children:t.genres.filter(Boolean).slice(0,4).map(n=>{const E=typeof n=="string"?n:n?.name;return s("span",{className:a.genre,children:E},E)})})]})]}),s("div",{className:a.footer,children:[s("div",{className:a.primaryAction,children:s(A,{to:`/watch/${t?.id||e}`,className:a.watchBtn,children:[s(o,{name:"play",size:14}),"Watch now"]})}),s("div",{className:a.secondaryActions,children:[s("button",{className:`${a.watchlistBtn} ${d?a.active:""}`,onClick:n=>{n.preventDefault(),n.stopPropagation(),f()},children:[d?s(o,{name:"check",size:12}):s(o,{name:"plus",size:12}),s("span",{children:d?"Remove":"Watchlist"})]}),s(_,{showId:e,showName:t.name||t.names?.romaji,showThumbnail:t.thumbnail,nativeName:t.names?.native,englishName:t.names?.english,showType:t.type,className:a.watchlistBtn,activeClassName:a.active,align:"left",onMenuOpenChange:w}),s(A,{to:`/anime/${t?.id||e}`,className:a.detailsBtn,children:"Read more"})]})]})]}):s("div",{className:a.loading,children:"Failed to load info."})})},j=D(({anime:e,continueWatching:l=!1,onRemove:v,config:u,layout:N="vertical"})=>{const t=e.currentTime||0,i=e.duration||0,d=.8,f=t>5&&i>5&&t<i*d,c=t>0&&(i<=5||t>=i*d),r=e.episodeNumber,h=l?{pathname:r?`/watch/${e._id}/${r}`:`/watch/${e._id}`,state:{name:e.name,thumbnail:e.thumbnail,nativeName:e.nativeName,englishName:e.englishName,type:e.type}}:r?`/watch/${e._id}/${r}`:`/anime/${e._id}`,g=(()=>{if(typeof h=="string")return h.startsWith("/watch/");const m=h.pathname;return typeof m=="string"&&m.startsWith("/watch/")})(),p=l&&r?`EP ${r}`:e.watchedCount!==void 0&&e.watchedCount>0?`EP ${e.watchedCount}`:null,b=[e.airTime,e.aired===!1&&e.nextEpisodeAirDate?`· ${e.nextEpisodeAirDate.split(",")[0]}`:""].filter(Boolean).join(" "),y=e.isAdult||e.rating==="R+"||e.rating==="Rx"||e.rating?.includes("17+"),w=s(T,{children:[(e.availableEpisodesDetail?.sub||e.availableEpisodes?.sub)&&s("div",{className:$.metaItem,children:[s(o,{name:"closed-captioning",size:10}),e.availableEpisodesDetail?.sub?.length??e.availableEpisodes?.sub]}),(e.availableEpisodesDetail?.dub||e.availableEpisodes?.dub)&&s("div",{className:$.metaItem,children:[s(o,{name:"microphone",size:10}),e.availableEpisodesDetail?.dub?.length??e.availableEpisodes?.dub]})]});return s(L,{item:{id:e.id||e.showId||e._id,title:e.name,nativeName:e.nativeName,englishName:e.englishName,thumbnail:e.thumbnail,typeBadge:e.type||"TV",chapterBadge:p,airMeta:b||void 0,isAdult:y,notAired:e.aired===!1},linkTo:h,hoverIcon:g?"play":"info",progress:f?{percent:t/i*100,label:`${M(t)} / ${M(i)}`}:c?{percent:100,label:"Watched"}:void 0,showProgress:l,metaRow:w,display:u,layout:N,onRemove:v,showRemoveButton:u?.elements?.poster?.removeButton??(l&&!!v),showInfoButton:!l,enrichedId:e._id,renderPopup:(m,n)=>s(O,{showId:e._id,anchorRect:m,onMouseEnter:n.onMouseEnter,onMouseLeave:n.onMouseLeave,onRequestClose:n.close})})});export{j as A};
1
+ import{T as B,d as P,A as C,u as s,S as T,L as A,N as D}from"./vendor-core-DfaOB3Rn.js";import{I as o}from"./vendor-icons-DrybRNxP.js";import{u as I}from"./useAnimeInfoData-_iOLEAa8.js";import{d as R,s as z,g as M}from"./index-gMxawd-E.js";import{Q as _}from"./QueueOptionsButton-ClVTpH8J.js";import{p as a,a as x,m as $,M as L}from"./MediaCard-BcLjlpfR.js";const O=({showId:e,anchorRect:l,onMouseEnter:v,onMouseLeave:u,onRequestClose:N})=>{const{showMeta:t,loadingMeta:i,inWatchlist:d,toggleWatchlist:f}=I(e),{titlePreference:c}=R(),r=B(()=>t?.name?c==="name"?t.name:c==="nativeName"?t.names?.native||t.name:c==="englishName"&&t.names?.english||t.name:"",[t,c]),[h,g]=P(!1),p=C(!1),b=()=>{p.current=!0,v()},y=()=>{p.current=!1,!h&&u()},w=n=>{g(n),!n&&!p.current&&u()};return s(x,{anchorRect:l,onMouseEnter:b,onMouseLeave:y,onRequestClose:N,children:i?s("div",{className:a.loading,children:[s("div",{className:a.spinner}),s("span",{children:"Fetching details..."})]}):t?s(T,{children:[s("div",{className:a.header,children:s("div",{className:a.title,children:r})}),s("div",{className:a.body,children:[s("div",{className:a.metaRow,children:[t.score&&s("div",{className:a.metaItem,children:[s(o,{name:"star",className:a.scoreIcon,size:14}),s("span",{children:t.score})]}),t.status&&s("div",{className:a.metaItem,children:[s(o,{name:"tv",size:14}),s("span",{children:t.status})]})]}),s("div",{className:a.synopsis,children:t.description?z(t.description):"No synopsis available."}),s("div",{className:a.details,children:[t.nextEpisodeAirDate&&s("div",{className:a.detailItem,children:[s("strong",{children:"Aired:"})," ",t.nextEpisodeAirDate]}),Array.isArray(t.genres)&&t.genres.length>0&&s("div",{className:a.genres,children:t.genres.filter(Boolean).slice(0,4).map(n=>{const E=typeof n=="string"?n:n?.name;return s("span",{className:a.genre,children:E},E)})})]})]}),s("div",{className:a.footer,children:[s("div",{className:a.primaryAction,children:s(A,{to:`/watch/${t?.id||e}`,className:a.watchBtn,children:[s(o,{name:"play",size:14}),"Watch now"]})}),s("div",{className:a.secondaryActions,children:[s("button",{className:`${a.watchlistBtn} ${d?a.active:""}`,onClick:n=>{n.preventDefault(),n.stopPropagation(),f()},children:[d?s(o,{name:"check",size:12}):s(o,{name:"plus",size:12}),s("span",{children:d?"Remove":"Watchlist"})]}),s(_,{showId:e,showName:t.name||t.names?.romaji,showThumbnail:t.thumbnail,nativeName:t.names?.native,englishName:t.names?.english,showType:t.type,className:a.watchlistBtn,activeClassName:a.active,align:"left",onMenuOpenChange:w}),s(A,{to:`/anime/${t?.id||e}`,className:a.detailsBtn,children:"Read more"})]})]})]}):s("div",{className:a.loading,children:"Failed to load info."})})},j=D(({anime:e,continueWatching:l=!1,onRemove:v,config:u,layout:N="vertical"})=>{const t=e.currentTime||0,i=e.duration||0,d=.8,f=t>5&&i>5&&t<i*d,c=t>0&&(i<=5||t>=i*d),r=e.episodeNumber,h=l?{pathname:r?`/watch/${e._id}/${r}`:`/watch/${e._id}`,state:{name:e.name,thumbnail:e.thumbnail,nativeName:e.nativeName,englishName:e.englishName,type:e.type}}:r?`/watch/${e._id}/${r}`:`/anime/${e._id}`,g=(()=>{if(typeof h=="string")return h.startsWith("/watch/");const m=h.pathname;return typeof m=="string"&&m.startsWith("/watch/")})(),p=l&&r?`EP ${r}`:e.watchedCount!==void 0&&e.watchedCount>0?`EP ${e.watchedCount}`:null,b=[e.airTime,e.aired===!1&&e.nextEpisodeAirDate?`· ${e.nextEpisodeAirDate.split(",")[0]}`:""].filter(Boolean).join(" "),y=e.isAdult||e.rating==="R+"||e.rating==="Rx"||e.rating?.includes("17+"),w=s(T,{children:[(e.availableEpisodesDetail?.sub||e.availableEpisodes?.sub)&&s("div",{className:$.metaItem,children:[s(o,{name:"closed-captioning",size:10}),e.availableEpisodesDetail?.sub?.length??e.availableEpisodes?.sub]}),(e.availableEpisodesDetail?.dub||e.availableEpisodes?.dub)&&s("div",{className:$.metaItem,children:[s(o,{name:"microphone",size:10}),e.availableEpisodesDetail?.dub?.length??e.availableEpisodes?.dub]})]});return s(L,{item:{id:e.id||e.showId||e._id,title:e.name,nativeName:e.nativeName,englishName:e.englishName,thumbnail:e.thumbnail,typeBadge:e.type||"TV",chapterBadge:p,airMeta:b||void 0,isAdult:y,notAired:e.aired===!1},linkTo:h,hoverIcon:g?"play":"info",progress:f?{percent:t/i*100,label:`${M(t)} / ${M(i)}`}:c?{percent:100,label:"Watched"}:void 0,showProgress:l,metaRow:w,display:u,layout:N,onRemove:v,showRemoveButton:u?.elements?.poster?.removeButton??(l&&!!v),showInfoButton:!l,enrichedId:e._id,renderPopup:(m,n)=>s(O,{showId:e._id,anchorRect:m,onMouseEnter:n.onMouseEnter,onMouseLeave:n.onMouseLeave,onRequestClose:n.close})})});export{j as A};
@@ -1 +1 @@
1
- import{o as C,a as I,d as S,h as p,T,u as e}from"./vendor-core-DfaOB3Rn.js";import{I as s}from"./vendor-icons-DrybRNxP.js";import{u as b}from"./useAnimeInfoData-DjPBg24u.js";import{d as B,e as w,f as d,s as M,M as x,B as u}from"./index-BWIWE3Qy.js";import{A}from"./AnimeMetaDetails-BogOi_bM.js";import{S as D}from"./SynopsisText-B3Sa5pRv.js";import{Q as G}from"./QueueOptionsButton-BMvAC6Ut.js";import"./vendor-query-BBT5_sHx.js";import"./useIsMobile-Dvx1uJ82.js";import"./vendor-ui-3qrARCPr.js";const P="_container_1287q_1",W="_heroSection_1287q_11",O="_bannerContainer_1287q_17",$="_banner_1287q_17",U="_bannerOverlay_1287q_37",j="_heroContent_1287q_49",z="_posterContainer_1287q_62",V="_floatIn_1287q_1",Q="_poster_1287q_62",E="_infoGlass_1287q_86",H="_slideUpIn_1287q_1",F="_title_1287q_100",J="_quickMeta_1287q_109",K="_metaItem_1287q_117",L="_iconStar_1287q_126",R="_iconTv_1287q_129",X="_iconType_1287q_132",Y="_iconClock_1287q_135",Z="_genres_1287q_139",ee="_genre_1287q_139",ne="_synopsisSection_1287q_165",te="_sectionTitleSmall_1287q_170",se="_description_1287q_178",ae="_actions_1287q_186",ie="_watchBtn_1287q_192",oe="_watchlistBtn_1287q_214",le="_active_1287q_234",ce="_detailsSection_1287q_241",re="_detailsToggleBtn_1287q_247",de="_expandedContent_1287q_270",_e="_fadeIn_1287q_1",me="_detailsGridContainer_1287q_274",he="_detailItem_1287q_284",pe="_airingValue_1287q_303",ue="_loadingDetails_1287q_308",ve="_spinner_1287q_317",ge="_spin_1287q_317",ke="_heroSkeleton_1287q_332",qe="_skeletonBanner_1287q_336",fe="_skeletonPoster_1287q_337",Ne="_skeletonTitle_1287q_338",ye="_skeletonMeta_1287q_339",Ce="_skeletonDesc_1287q_340",Ie="_skeletonActions_1287q_341",Se="_skeletonContent_1287q_374",Te="_skeletonInfo_1287q_388",n={container:P,heroSection:W,bannerContainer:O,banner:$,bannerOverlay:U,heroContent:j,posterContainer:z,floatIn:V,poster:Q,infoGlass:E,slideUpIn:H,title:F,quickMeta:J,metaItem:K,iconStar:L,iconTv:R,iconType:X,iconClock:Y,genres:Z,genre:ee,synopsisSection:ne,sectionTitleSmall:te,description:se,actions:ae,watchBtn:ie,watchlistBtn:oe,active:le,detailsSection:ce,detailsToggleBtn:re,expandedContent:de,fadeIn:_e,detailsGridContainer:me,detailItem:he,airingValue:pe,loadingDetails:ue,spinner:ve,spin:ge,heroSkeleton:ke,skeletonBanner:qe,skeletonPoster:fe,skeletonTitle:Ne,skeletonMeta:ye,skeletonDesc:Ce,skeletonActions:Ie,"skeleton-wave":"_skeleton-wave_1287q_1",skeletonContent:Se,skeletonInfo:Te};function Oe(){const{id:a}=C(),i=I(),{titlePreference:l}=B(),[o,v]=S(!1),{showMeta:t,loadingMeta:g,toggleWatchlist:k,inWatchlist:c}=b(a),{hasConsent:q,grant:f}=w();p(()=>{a&&t?.id&&t.id!==a&&i(`/anime/${t.id}`,{replace:!0})},[a,t,i]),p(()=>{document.title=t?.name?`${t.name} - dango`:"Anime - dango"},[t?.name]);const N=()=>t?.name?l==="name"?t.name:l==="nativeName"?t.names?.native||t.name:l==="englishName"&&t.names?.english||t.name:"",y=()=>{a&&i(`/watch/${a}`)},_=T(()=>t?.bannerImage?d(t.bannerImage):t?.thumbnail?d(t.thumbnail,1200,450):"",[t?.bannerImage,t?.thumbnail]);if(g||!t?.name)return e("div",{className:n.container,children:e("div",{className:n.heroSkeleton,children:[e("div",{className:n.skeletonBanner}),e("div",{className:n.skeletonContent,children:[e("div",{className:n.skeletonPoster}),e("div",{className:n.skeletonInfo,children:[e("div",{className:n.skeletonTitle}),e("div",{className:n.skeletonMeta}),e("div",{className:n.skeletonDesc}),e("div",{className:n.skeletonActions})]})]})]})});const m=t.isAdult===!0&&!q;return e("div",{className:n.container,style:m?{filter:"blur(14px)",pointerEvents:"none",userSelect:"none"}:void 0,children:[e("div",{className:n.heroSection,children:[e("div",{className:n.bannerContainer,children:[e("div",{className:n.banner,style:_?{backgroundImage:`url(${_})`}:void 0}),e("div",{className:n.bannerOverlay})]}),e("div",{className:n.heroContent,children:[e("div",{className:n.posterContainer,children:e("img",{src:d(t.thumbnail||"",320,480),alt:t.name,className:n.poster,decoding:"async"})}),e("div",{className:n.infoGlass,children:[e("div",{className:n.topInfo,children:[e("h1",{className:n.title,children:N()}),e("div",{className:n.quickMeta,children:[t.score&&e("div",{className:n.metaItem,children:[e(s,{name:"star",className:n.iconStar}),e("span",{children:t.score})]}),t.status&&e("div",{className:n.metaItem,children:[e(s,{name:"tv",className:n.iconTv}),e("span",{children:t.status})]}),t.type&&e("div",{className:n.metaItem,children:[e(s,{name:"layer-group",className:n.iconType}),e("span",{children:t.type})]})]}),Array.isArray(t.genres)&&t.genres.length>0&&e("div",{className:n.genres,children:t.genres.filter(Boolean).slice(0,5).map(r=>{const h=typeof r=="string"?r:r?.name;return e("span",{className:n.genre,children:h},h)})})]}),e("div",{className:n.synopsisSection,children:[e("h2",{className:n.sectionTitleSmall,children:"Synopsis"}),e(D,{text:M(t.description),emptyText:"No description available."})]}),e("div",{className:n.actions,children:[e("button",{className:n.watchBtn,onClick:y,children:[e(s,{name:"play",size:14}),"Start Watching"]}),e("button",{className:`${n.watchlistBtn} ${c?n.active:""}`,onClick:k,children:[c?e(s,{name:"check",size:14}):e(s,{name:"plus",size:14}),c?"In Watchlist":"Add to Watchlist"]}),e(G,{showId:a,showName:t.name||t.names?.romaji,showThumbnail:t.thumbnail,nativeName:t.names?.native,englishName:t.names?.english,showType:t.type,className:n.watchlistBtn,activeClassName:n.active})]})]})]})]}),e("div",{className:n.detailsSection,children:[e("button",{className:n.detailsToggleBtn,onClick:()=>{v(!o)},children:[o?e(s,{name:"chevron-up"}):e(s,{name:"chevron-down"}),o?"Hide Details":"Show Details"]}),o&&e("div",{className:n.expandedContent,children:e(A,{showMeta:t,styles:n})})]}),m&&e(x,{isOpen:!0,title:"Content Warning",onClose:()=>i("/"),children:e("div",{style:{padding:"1rem",textAlign:"center"},children:[e("p",{children:"This title contains mature content intended for adult audiences."}),e("p",{children:["By proceeding, you confirm that you are ",e("strong",{children:"18 years of age or older"})," (or the age of majority in your jurisdiction) and wish to view this content."]}),e("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[e(u,{variant:"secondary",onClick:()=>i("/"),children:"Go Back"}),e(u,{onClick:f,children:"I'm 18+, Continue"})]})]})})]})}export{Oe as default};
1
+ import{o as C,a as I,d as S,h as p,T,u as e}from"./vendor-core-DfaOB3Rn.js";import{I as s}from"./vendor-icons-DrybRNxP.js";import{u as b}from"./useAnimeInfoData-_iOLEAa8.js";import{d as B,e as w,f as d,s as M,M as x,B as u}from"./index-gMxawd-E.js";import{A}from"./AnimeMetaDetails-BogOi_bM.js";import{S as D}from"./SynopsisText-B3Sa5pRv.js";import{Q as G}from"./QueueOptionsButton-ClVTpH8J.js";import"./vendor-query-BBT5_sHx.js";import"./useIsMobile-Dvx1uJ82.js";import"./vendor-ui-3qrARCPr.js";const P="_container_1287q_1",W="_heroSection_1287q_11",O="_bannerContainer_1287q_17",$="_banner_1287q_17",U="_bannerOverlay_1287q_37",j="_heroContent_1287q_49",z="_posterContainer_1287q_62",V="_floatIn_1287q_1",Q="_poster_1287q_62",E="_infoGlass_1287q_86",H="_slideUpIn_1287q_1",F="_title_1287q_100",J="_quickMeta_1287q_109",K="_metaItem_1287q_117",L="_iconStar_1287q_126",R="_iconTv_1287q_129",X="_iconType_1287q_132",Y="_iconClock_1287q_135",Z="_genres_1287q_139",ee="_genre_1287q_139",ne="_synopsisSection_1287q_165",te="_sectionTitleSmall_1287q_170",se="_description_1287q_178",ae="_actions_1287q_186",ie="_watchBtn_1287q_192",oe="_watchlistBtn_1287q_214",le="_active_1287q_234",ce="_detailsSection_1287q_241",re="_detailsToggleBtn_1287q_247",de="_expandedContent_1287q_270",_e="_fadeIn_1287q_1",me="_detailsGridContainer_1287q_274",he="_detailItem_1287q_284",pe="_airingValue_1287q_303",ue="_loadingDetails_1287q_308",ve="_spinner_1287q_317",ge="_spin_1287q_317",ke="_heroSkeleton_1287q_332",qe="_skeletonBanner_1287q_336",fe="_skeletonPoster_1287q_337",Ne="_skeletonTitle_1287q_338",ye="_skeletonMeta_1287q_339",Ce="_skeletonDesc_1287q_340",Ie="_skeletonActions_1287q_341",Se="_skeletonContent_1287q_374",Te="_skeletonInfo_1287q_388",n={container:P,heroSection:W,bannerContainer:O,banner:$,bannerOverlay:U,heroContent:j,posterContainer:z,floatIn:V,poster:Q,infoGlass:E,slideUpIn:H,title:F,quickMeta:J,metaItem:K,iconStar:L,iconTv:R,iconType:X,iconClock:Y,genres:Z,genre:ee,synopsisSection:ne,sectionTitleSmall:te,description:se,actions:ae,watchBtn:ie,watchlistBtn:oe,active:le,detailsSection:ce,detailsToggleBtn:re,expandedContent:de,fadeIn:_e,detailsGridContainer:me,detailItem:he,airingValue:pe,loadingDetails:ue,spinner:ve,spin:ge,heroSkeleton:ke,skeletonBanner:qe,skeletonPoster:fe,skeletonTitle:Ne,skeletonMeta:ye,skeletonDesc:Ce,skeletonActions:Ie,"skeleton-wave":"_skeleton-wave_1287q_1",skeletonContent:Se,skeletonInfo:Te};function Oe(){const{id:a}=C(),i=I(),{titlePreference:l}=B(),[o,v]=S(!1),{showMeta:t,loadingMeta:g,toggleWatchlist:k,inWatchlist:c}=b(a),{hasConsent:q,grant:f}=w();p(()=>{a&&t?.id&&t.id!==a&&i(`/anime/${t.id}`,{replace:!0})},[a,t,i]),p(()=>{document.title=t?.name?`${t.name} - dango`:"Anime - dango"},[t?.name]);const N=()=>t?.name?l==="name"?t.name:l==="nativeName"?t.names?.native||t.name:l==="englishName"&&t.names?.english||t.name:"",y=()=>{a&&i(`/watch/${a}`)},_=T(()=>t?.bannerImage?d(t.bannerImage):t?.thumbnail?d(t.thumbnail,1200,450):"",[t?.bannerImage,t?.thumbnail]);if(g||!t?.name)return e("div",{className:n.container,children:e("div",{className:n.heroSkeleton,children:[e("div",{className:n.skeletonBanner}),e("div",{className:n.skeletonContent,children:[e("div",{className:n.skeletonPoster}),e("div",{className:n.skeletonInfo,children:[e("div",{className:n.skeletonTitle}),e("div",{className:n.skeletonMeta}),e("div",{className:n.skeletonDesc}),e("div",{className:n.skeletonActions})]})]})]})});const m=t.isAdult===!0&&!q;return e("div",{className:n.container,style:m?{filter:"blur(14px)",pointerEvents:"none",userSelect:"none"}:void 0,children:[e("div",{className:n.heroSection,children:[e("div",{className:n.bannerContainer,children:[e("div",{className:n.banner,style:_?{backgroundImage:`url(${_})`}:void 0}),e("div",{className:n.bannerOverlay})]}),e("div",{className:n.heroContent,children:[e("div",{className:n.posterContainer,children:e("img",{src:d(t.thumbnail||"",320,480),alt:t.name,className:n.poster,decoding:"async"})}),e("div",{className:n.infoGlass,children:[e("div",{className:n.topInfo,children:[e("h1",{className:n.title,children:N()}),e("div",{className:n.quickMeta,children:[t.score&&e("div",{className:n.metaItem,children:[e(s,{name:"star",className:n.iconStar}),e("span",{children:t.score})]}),t.status&&e("div",{className:n.metaItem,children:[e(s,{name:"tv",className:n.iconTv}),e("span",{children:t.status})]}),t.type&&e("div",{className:n.metaItem,children:[e(s,{name:"layer-group",className:n.iconType}),e("span",{children:t.type})]})]}),Array.isArray(t.genres)&&t.genres.length>0&&e("div",{className:n.genres,children:t.genres.filter(Boolean).slice(0,5).map(r=>{const h=typeof r=="string"?r:r?.name;return e("span",{className:n.genre,children:h},h)})})]}),e("div",{className:n.synopsisSection,children:[e("h2",{className:n.sectionTitleSmall,children:"Synopsis"}),e(D,{text:M(t.description),emptyText:"No description available."})]}),e("div",{className:n.actions,children:[e("button",{className:n.watchBtn,onClick:y,children:[e(s,{name:"play",size:14}),"Start Watching"]}),e("button",{className:`${n.watchlistBtn} ${c?n.active:""}`,onClick:k,children:[c?e(s,{name:"check",size:14}):e(s,{name:"plus",size:14}),c?"In Watchlist":"Add to Watchlist"]}),e(G,{showId:a,showName:t.name||t.names?.romaji,showThumbnail:t.thumbnail,nativeName:t.names?.native,englishName:t.names?.english,showType:t.type,className:n.watchlistBtn,activeClassName:n.active})]})]})]})]}),e("div",{className:n.detailsSection,children:[e("button",{className:n.detailsToggleBtn,onClick:()=>{v(!o)},children:[o?e(s,{name:"chevron-up"}):e(s,{name:"chevron-down"}),o?"Hide Details":"Show Details"]}),o&&e("div",{className:n.expandedContent,children:e(A,{showMeta:t,styles:n})})]}),m&&e(x,{isOpen:!0,title:"Content Warning",onClose:()=>i("/"),children:e("div",{style:{padding:"1rem",textAlign:"center"},children:[e("p",{children:"This title contains mature content intended for adult audiences."}),e("p",{children:["By proceeding, you confirm that you are ",e("strong",{children:"18 years of age or older"})," (or the age of majority in your jurisdiction) and wish to view this content."]}),e("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[e(u,{variant:"secondary",onClick:()=>i("/"),children:"Go Back"}),e(u,{onClick:f,children:"I'm 18+, Continue"})]})]})})]})}export{Oe as default};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AnimeInfo-CLU2NSBR.js","assets/vendor-core-DfaOB3Rn.js","assets/vendor-icons-DrybRNxP.js","assets/useAnimeInfoData-DjPBg24u.js","assets/vendor-query-BBT5_sHx.js","assets/index-BWIWE3Qy.js","assets/index-Cc1Up_NI.css","assets/QueueOptionsButton-BMvAC6Ut.js","assets/vendor-ui-3qrARCPr.js","assets/QueueOptionsButton-CM15uQn8.css","assets/AnimeMetaDetails-BogOi_bM.js","assets/AnimeMetaDetails-BwNQnRCd.css","assets/SynopsisText-B3Sa5pRv.js","assets/useIsMobile-Dvx1uJ82.js","assets/SynopsisText-CYv2W3yR.css","assets/AnimeInfo-BFWtHlPC.css"])))=>i.map(i=>d[i]);
2
- import{a2 as r,_ as t}from"./index-BWIWE3Qy.js";import{u as o,P as e,z as i}from"./vendor-core-DfaOB3Rn.js";import"./vendor-query-BBT5_sHx.js";import"./vendor-icons-DrybRNxP.js";const a=i(()=>t(()=>import("./AnimeInfo-CLU2NSBR.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15])));function p(){return o(e,{fallback:o(r,{}),children:o(a,{})})}export{p as default};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AnimeInfo-Dw2Nop6Q.js","assets/vendor-core-DfaOB3Rn.js","assets/vendor-icons-DrybRNxP.js","assets/useAnimeInfoData-_iOLEAa8.js","assets/vendor-query-BBT5_sHx.js","assets/index-gMxawd-E.js","assets/index-Cc1Up_NI.css","assets/QueueOptionsButton-ClVTpH8J.js","assets/vendor-ui-3qrARCPr.js","assets/QueueOptionsButton-CM15uQn8.css","assets/AnimeMetaDetails-BogOi_bM.js","assets/AnimeMetaDetails-BwNQnRCd.css","assets/SynopsisText-B3Sa5pRv.js","assets/useIsMobile-Dvx1uJ82.js","assets/SynopsisText-CYv2W3yR.css","assets/AnimeInfo-BFWtHlPC.css"])))=>i.map(i=>d[i]);
2
+ import{a2 as r,_ as t}from"./index-gMxawd-E.js";import{u as o,P as e,z as i}from"./vendor-core-DfaOB3Rn.js";import"./vendor-query-BBT5_sHx.js";import"./vendor-icons-DrybRNxP.js";const a=i(()=>t(()=>import("./AnimeInfo-Dw2Nop6Q.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15])));function p(){return o(e,{fallback:o(r,{}),children:o(a,{})})}export{p as default};
@@ -1,2 +1,2 @@
1
- import{T as Ve,u as e,A as j,d as m,h as N,a as Ge,g as $e,q as V,S as O,$ as Je,o as bt,p as vt}from"./vendor-core-DfaOB3Rn.js";import{I as y}from"./vendor-icons-DrybRNxP.js";import{u as yt}from"./vendor-query-BBT5_sHx.js";import{g as ue,t as Ee,W as kt,B as me,M as xe,X as I,z as le,Y as wt,T as ze}from"./index-BWIWE3Qy.js";import{M as Nt}from"./MediaCard-CKUEcFTd.js";import{c as Qe,a as Xe,d as Ct,e as Ze,f as et,g as St,h as Tt,i as At,j as Mt,k as Ye,l as Ie}from"./useAsmr-DQyobNQX.js";import{a as t}from"./Asmr.module-ChUXDZKx.js";import{u as xt,A as Lt}from"./useAsmrPopup-CDoroMBD.js";import{l as Rt}from"./hls-uG_Y3i5s.js";import"./vendor-ui-3qrARCPr.js";import"./useIsMobile-Dvx1uJ82.js";const Pt=({work:s,onClose:o,onPlay:S,t:g})=>{const{data:i,isLoading:h}=Qe(s.id||null),v=Xe(s),{data:A}=Ct(v||void 0),{toggle:k,bookmarkedIds:T}=Ze(),{data:B}=et(v||void 0),R=v?T.has(v):!!A?.inLibrary,C=Ve(()=>(i?.description||s.description||"").split(`
1
+ import{T as Ve,u as e,A as j,d as m,h as N,a as Ge,g as $e,q as V,S as O,$ as Je,o as bt,p as vt}from"./vendor-core-DfaOB3Rn.js";import{I as y}from"./vendor-icons-DrybRNxP.js";import{u as yt}from"./vendor-query-BBT5_sHx.js";import{g as ue,t as Ee,W as kt,B as me,M as xe,X as I,z as le,Y as wt,T as ze}from"./index-gMxawd-E.js";import{M as Nt}from"./MediaCard-BcLjlpfR.js";import{c as Qe,a as Xe,d as Ct,e as Ze,f as et,g as St,h as Tt,i as At,j as Mt,k as Ye,l as Ie}from"./useAsmr-Blk4v41t.js";import{a as t}from"./Asmr.module-ChUXDZKx.js";import{u as xt,A as Lt}from"./useAsmrPopup-D9SQIgZa.js";import{l as Rt}from"./hls-B3_1VuDP.js";import"./vendor-ui-3qrARCPr.js";import"./useIsMobile-Dvx1uJ82.js";const Pt=({work:s,onClose:o,onPlay:S,t:g})=>{const{data:i,isLoading:h}=Qe(s.id||null),v=Xe(s),{data:A}=Ct(v||void 0),{toggle:k,bookmarkedIds:T}=Ze(),{data:B}=et(v||void 0),R=v?T.has(v):!!A?.inLibrary,C=Ve(()=>(i?.description||s.description||"").split(`
2
2
  `).map(l=>{const u=l.indexOf(":");return u===-1?null:{label:l.slice(0,u),value:l.slice(u+1).trim()}}).filter(l=>!!l&&!!l.value),[i?.description,s.description]),f=i?.tracks||[],w=Ve(()=>{const l=B?.progress??[];return l.length>0?l.reduce((u,d)=>u.updatedAt>=d.updatedAt?u:d):null},[B]),M=w&&w.trackIndex<f.length?w.trackIndex:null;return e("div",{className:t.detailOverlay,onClick:o,children:e("div",{className:t.detailModal,onClick:l=>l.stopPropagation(),children:[e("button",{className:t.detailClose,onClick:o,"aria-label":"Close",children:e(y,{name:"times"})}),e("div",{className:t.detailHeader,children:[s.thumbnail?e("img",{className:t.detailCover,src:s.thumbnail,alt:s.name,decoding:"async"}):e("div",{className:`${t.detailCover} ${t.thumbPlaceholder}`}),e("div",{className:t.detailInfo,children:[e("h2",{className:t.detailTitle,children:g?g(s.name):s.name}),e("p",{className:t.detailRj,children:s.id}),C.map(l=>l.label==="Tags"?e("p",{className:t.metaRow,children:[e("span",{className:t.metaLabel,children:"Tags"}),e("span",{className:t.tagChips,children:l.value.split(", ").map(u=>e("span",{className:t.tagChip,children:u},u))})]},l.label):e("p",{className:t.metaRow,children:[e("span",{className:t.metaLabel,children:l.label}),l.value]},l.label))]})]}),e("div",{className:t.tracksSection,children:[e("h3",{className:t.tracksHeading,children:h?"Loading tracks…":`Tracks (${f.length})`}),!h&&(f.length>0?e("ul",{className:t.trackList,children:f.map((l,u)=>e("li",{children:e("button",{className:t.trackRow,onClick:()=>S(s,f,u),children:[e(y,{name:"play",className:t.trackIcon}),e("span",{className:t.trackLabel,children:l.resolutionStr}),e("span",{className:t.trackType,children:l.hls?"HLS":"MP3"})]})},l.link))}):e("p",{className:t.noTracks,children:"No audio streams available for this work."}))]}),e("div",{className:t.detailActions,children:[!h&&f.length>0&&e("button",{className:t.playAllBtn,onClick:()=>S(s,f,0),children:[e(y,{name:"play"})," Play from start"]}),!h&&M!==null&&w&&e("button",{className:t.playAllBtn,onClick:()=>S(s,f,M),children:[e(y,{name:"history"})," Resume track ",M+1," ·"," ",ue(w.currentTime),w.duration>0?` / ${ue(w.duration)}`:""]}),v&&e("button",{className:t.playAllBtn,onClick:()=>k({rjCode:v,title:s.name,thumbnail:s.thumbnail||"",isAdult:!!s.isAdult}),"aria-pressed":R,children:[e(y,{name:R?"check":"plus"})," ",R?"In listening list":"Add to listening list"]})]})]})})},It=({title:s,images:o,chapters:S,tracks:g,trackIndex:i,expanded:h,isAdult:v,rjCode:A,t:k,onTrackChange:T,onExpandedChange:B,onClose:R})=>{const C=j(null),f=j(null),[w,M]=m(!1),[l,u]=m(0),[d,P]=m(0),[p,q]=m(0),[x,te]=m(!0),[F,Y]=m(0),[_,oe]=m(new Set),[D,ae]=m(!1),[he,$]=m(!0),ne=j("");ne.current||(ne.current=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`asmr-${Date.now()}-${Math.random().toString(36).slice(2)}`);const[H,Ne]=m(()=>{const a=parseFloat(localStorage.getItem("asmrVolume")||"");return Number.isFinite(a)?a:1}),pe=j(H);N(()=>{pe.current=H},[H]);const ge=Ge(),J=$e.useMemo(()=>A?St(A):"",[A]),Ce=Tt(),ie=At(),{data:Se}=et(J||void 0),[Le,fe]=m(!1),[U,Re]=m(0),[Pe,G]=m(!1),be=j(""),W=j(null),K=j(0),Q=j(0),ce=j(0),X=g[i],Z=X?.link,Te=X?.hls,n=X?.resolutionStr||"",c=o.length>0,L=`${J}:${i}`,re=$e.useMemo(()=>(Se?.progress??[]).find(r=>r.trackIndex===i)??null,[Se,i]),ee=j({workId:"",trackIndex:0,trackLabel:""});ee.current={workId:J,trackIndex:i,trackLabel:n};const se=V((a,r,b,E=!1)=>{!a.workId||!b||b<10||!E&&Math.abs(r-K.current)<5||(K.current=r,Ce.mutate({workId:a.workId,trackIndex:a.trackIndex,trackLabel:a.trackLabel,currentTime:Math.floor(r),duration:Math.floor(b),title:s,thumbnail:o[0]||"",rjCode:a.workId,isAdult:v?1:0}))},[Ce,s,o,v]),z=V((a=!1)=>{W.current&&(clearTimeout(W.current),W.current=null),se(ee.current,Q.current,ce.current,a)},[se]),ve=j(z);ve.current=z;const _e=j(se);_e.current=se;const de=V(()=>{f.current&&(f.current.destroy(),f.current=null)},[]);N(()=>{const a=C.current;if(!a||!Z)return;const r={workId:J,trackIndex:i,trackLabel:n},b=()=>{W.current&&(clearTimeout(W.current),W.current=null),_e.current(r,Q.current,ce.current,!0)};if(u(0),P(0),q(0),M(!1),Q.current=0,ce.current=0,K.current=0,de(),Te){let E=!1;return(async()=>{const ke=await Rt();if(!E)if(ke&&ke.isSupported()){const we=new ke({enableWorker:!0});f.current=we,we.loadSource(Z),we.attachMedia(a),a.play().catch(()=>M(!1))}else a.src=Z,a.load(),a.volume=pe.current,a.play().catch(()=>M(!1))})(),()=>{E=!0,de(),a.removeAttribute("src"),b()}}else a.src=Z;return a.load(),a.volume=pe.current,a.play().catch(()=>M(!1)),()=>{de(),a.removeAttribute("src"),b()}},[Z,Te,de,J,i,n]),N(()=>()=>de(),[de]),N(()=>{const a=()=>{document.visibilityState==="hidden"&&ve.current()},r=()=>ve.current();return document.addEventListener("visibilitychange",a),window.addEventListener("pagehide",r),()=>{document.removeEventListener("visibilitychange",a),window.removeEventListener("pagehide",r)}},[]),N(()=>{if(!re||be.current===L||!(d>0))return;const a=re.currentTime||0,r=re.duration||d;a>=10&&r-a>=15&&Q.current<a?(be.current=L,Re(a),fe(!0)):be.current=L},[re,d,L]),N(()=>{const a=C.current;a&&(a.volume=H)},[H]),N(()=>{if(h)return document.body.classList.add("asmr-player-open"),()=>document.body.classList.remove("asmr-player-open")},[h]),N(()=>{Y(0)},[o]),N(()=>{h&&$(!0)},[h]),N(()=>{D&&$(!0)},[D]);const Ae=V(a=>{if(!s||g.length===0)return;const r=g[i],b=r?`${r.resolutionStr} (${i+1}/${g.length})`:"",E=C.current,ke=E?E.currentTime:0,we=E&&E.duration||0,ft=o[0]||"";Ee.discord.asmrPresence.mutate({title:s,trackLabel:b,isPlaying:a,thumbnail:ft,thumbnails:o,currentTime:ke,duration:we,isAdult:!!v,rjCode:A||"",sessionId:ne.current}).catch(()=>{}),Ee.discord.heartbeat.mutate({sessionId:ne.current}).catch(()=>{})},[s,g,i,o,v,A]);N(()=>{Ae(w)},[Ae,w,i,s,h]),N(()=>{if(!w)return;const a=window.setInterval(()=>Ae(!0),15e3);return()=>window.clearInterval(a)},[w,Ae]),N(()=>{const a=ne.current,r=()=>kt(a),b=()=>r(),E=()=>{document.visibilityState==="hidden"&&r()};return window.addEventListener("pagehide",b),window.addEventListener("beforeunload",b),document.addEventListener("visibilitychange",E),()=>{window.removeEventListener("pagehide",b),window.removeEventListener("beforeunload",b),document.removeEventListener("visibilitychange",E),r()}},[]);const Me=V(a=>{oe(r=>{if(r.has(a))return r;const b=new Set(r);return b.add(a),b})},[]),at=V((a,r)=>{a&&a.complete&&a.naturalWidth>0&&Me(r)},[Me]);N(()=>{if(!h)return;const a=r=>{if(r.key==="Escape"){D?ae(!1):B(!1);return}!x||o.length<2||(r.key==="ArrowLeft"&&Y(b=>Math.max(0,b-1)),r.key==="ArrowRight"&&Y(b=>Math.min(o.length-1,b+1)))};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[h,x,o.length,D,B]);const nt=()=>{const a=C.current;a&&(a.paused?a.play().catch(()=>{}):a.pause())},rt=a=>{const r=C.current;if(!r||!d)return;const b=parseFloat(a.target.value);r.currentTime=b,u(b)},st=()=>{z(!0),i<g.length-1?T(i+1):G(!0)},lt=a=>{const r=a.currentTarget.currentTime;Q.current=r,u(r),W.current&&clearTimeout(W.current),W.current=setTimeout(()=>ve.current(),5e3)},ot=()=>{M(!1),ve.current()},it=a=>{const r=a.currentTarget.duration;ce.current=Number.isFinite(r)?r:0,P(a.currentTarget.duration)},ct=V(()=>{const a=C.current;a&&U>0&&(a.currentTime=U,Q.current=U,a.play().catch(()=>{})),fe(!1)},[U]),je=V(()=>{fe(!1)},[]),dt=V(()=>{J&&ie.mutate({rjCode:J,title:s,thumbnail:o[0]||"",status:"Completed",isAdult:!!v,silent:!0}),G(!1),R(),ge("/")},[J,ie,s,o,v,R,ge]),ut=S.reduce((a,r,b)=>l>=r.time?b:a,-1),mt=a=>{const r=C.current;r&&(r.currentTime=a,u(a))},Fe=a=>{const r=C.current;if(!r)return;const b=Number.isFinite(r.currentTime)?r.currentTime:l,E=Math.max(0,Math.min(d||1/0,b+a));r.currentTime=E,u(E),$(!0)},Oe=d?Math.min(100,l/d*100):0,ht=d?Math.min(100,Math.max(Oe,p/d*100)):0,pt=e(O,{children:[e("div",{className:t.playerButtons,children:[e("button",{className:t.playerBtn,onClick:()=>T(Math.max(0,i-1)),disabled:i===0,"aria-label":"Previous track",children:e(y,{name:"step-backward"})}),e("button",{className:`${t.playerBtn} ${t.seekBtn}`,onClick:()=>Fe(-10),"aria-label":"Seek back 10 seconds",title:"Back 10s",children:[e(y,{name:"undo"}),e("span",{className:t.seekBtnLabel,children:"10"})]}),e("button",{className:`${t.playerBtn} ${t.playBtn}`,onClick:nt,"aria-label":w?"Pause":"Play",children:w?e(y,{name:"pause"}):e(y,{name:"play"})}),e("button",{className:`${t.playerBtn} ${t.seekBtn}`,onClick:()=>Fe(10),"aria-label":"Seek forward 10 seconds",title:"Forward 10s",children:[e(y,{name:"redo"}),e("span",{className:t.seekBtnLabel,children:"10"})]}),e("button",{className:t.playerBtn,onClick:()=>T(Math.min(g.length-1,i+1)),disabled:i>=g.length-1,"aria-label":"Next track",children:e(y,{name:"step-forward"})})]}),e("div",{className:t.seekRow,children:[e("span",{className:t.timeLabel,children:ue(l)}),e("input",{className:t.seekBar,type:"range",min:0,max:d||0,step:.1,value:Math.min(l,d||0),onChange:rt,style:{"--played-percent":`${Oe}%`,"--buffered-percent":`${ht}%`},"aria-label":"Seek"}),e("span",{className:t.timeLabel,children:ue(d)})]})]}),De=e(O,{children:[e("button",{className:`${t.playerBtn} ${t.playerToggle}`,onClick:()=>B(!h),"aria-label":h?"Minimize player":"Expand player",title:h?"Minimize to browse":"Expand",children:h?e(y,{name:"chevron-down"}):e(y,{name:"chevron-up"})}),e("div",{className:t.playerInfo,children:[e("p",{className:t.playerTitle,title:s,children:k?k(s):s}),e("p",{className:t.playerTrack,children:[X?.resolutionStr||"",g.length>1?` (${i+1}/${g.length})`:""]})]}),e("div",{className:t.playerControls,children:pt}),e("div",{className:t.playerRight,children:[H===0?e(y,{name:"volume-mute",className:t.volumeIcon}):H<.5?e(y,{name:"volume-down",className:t.volumeIcon}):e(y,{name:"volume-up",className:t.volumeIcon}),e("input",{className:t.volumeBar,type:"range",min:0,max:1,step:.01,value:H,onChange:a=>{const r=parseFloat(a.target.value);Ne(r),localStorage.setItem("asmrVolume",String(r))},style:{"--volume-percent":`${H*100}%`},"aria-label":"Volume"})]}),e("div",{className:t.playerActions,children:[h&&c&&e("button",{className:t.playerBtn,onClick:()=>te(a=>!a),"aria-label":x?"Hide images":"Show images",title:x?"Hide images":"Show images",children:x?e(y,{name:"eye-slash"}):e(y,{name:"image"})}),h&&S.length>0&&e("button",{className:`${t.playerBtn} ${D?t.playerBtnActive:""}`,onClick:()=>ae(a=>!a),"aria-label":D?"Hide bookmarks":"Show bookmarks",title:"Timestamps",children:e(y,{name:"list-ol"})}),e("button",{className:t.playerBtn,onClick:R,"aria-label":"Close player",children:e(y,{name:"times"})})]})]}),He=e("audio",{ref:C,preload:"metadata",onPlay:()=>M(!0),onPause:ot,onTimeUpdate:lt,onLoadedMetadata:it,onProgress:a=>{const r=a.currentTarget;r.buffered.length>0&&q(r.buffered.end(r.buffered.length-1))},onEnded:st}),Ue=e(xe,{isOpen:Le,onClose:je,title:"Resume Listening",children:e("div",{style:{padding:"1rem",textAlign:"center"},children:[e("p",{children:["You were at ",e("strong",{children:ue(U)}),X?.resolutionStr?` in ${X.resolutionStr}`:""]}),e("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[e(me,{variant:"secondary",onClick:je,children:"Start from Beginning"}),e(me,{onClick:ct,children:"Resume"})]})]})}),qe=e(xe,{isOpen:Pe,onClose:()=>G(!1),title:"Finished!",children:e("div",{style:{padding:"1rem",textAlign:"center"},children:[e(y,{name:"check-circle",size:48,style:{color:"var(--accent-lighter)",marginBottom:"0.5rem"}}),e("p",{style:{fontSize:"1.1rem",fontWeight:600},children:k?k(s):s}),e("p",{style:{color:"var(--text-secondary)"},children:"You finished this work!"}),e("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[e(me,{variant:"secondary",onClick:()=>G(!1),children:"Close"}),e(me,{onClick:dt,children:"Mark Completed & Back to Home"})]})]})});if(!h)return Je(e(O,{children:[He,e("div",{className:t.playerBar,children:De}),Ue,qe]}),document.body);const ye=Math.min(F,Math.max(0,o.length-1)),We=o[ye],gt=x&&c&&!!We&&!_.has(We);return Je(e(O,{children:[He,Ue,qe,e("div",{className:`${t.npOverlay} ${he?"":t.npOverlayControlsHidden}`,children:[e("div",{className:`${t.npStage} ${!x||!c?t.npStageBlank:""}`,onClick:()=>$(a=>!a),children:x&&c&&e(O,{children:[e("div",{className:t.sliderViewport,children:[e("div",{className:t.sliderTrack,style:{transform:`translateX(-${ye*100}%)`},children:o.map(a=>e("div",{className:t.slide,children:e("img",{ref:r=>at(r,a),src:a,alt:`${k?k(s):s} — work image`,loading:"lazy",decoding:"async",draggable:!1,onLoad:()=>Me(a),onError:()=>Me(a),className:`${t.slideImg} ${_.has(a)?t.slideImgLoaded:""}`})},a))}),gt&&e("span",{className:t.slideSpinner,"aria-label":"Loading image"})]}),o.length>1&&e(O,{children:[e("button",{className:`${t.npArrow} ${t.npArrowLeft}`,onClick:a=>{a.stopPropagation(),Y(r=>Math.max(0,r-1)),$(!0)},disabled:ye===0,"aria-label":"Previous image",children:e(y,{name:"chevron-left"})}),e("button",{className:`${t.npArrow} ${t.npArrowRight}`,onClick:a=>{a.stopPropagation(),Y(r=>Math.min(o.length-1,r+1)),$(!0)},disabled:ye===o.length-1,"aria-label":"Next image",children:e(y,{name:"chevron-right"})}),e("span",{className:t.npImageCount,onClick:a=>a.stopPropagation(),children:[ye+1," / ",o.length]})]})]})}),e("div",{className:`${t.playerBar} ${t.playerBarDocked} ${he?"":t.playerBarDockedHidden}`,onClick:a=>a.stopPropagation(),children:[De,D&&e(O,{children:[e("div",{className:t.npBackdrop,onClick:()=>ae(!1)}),e("div",{className:t.chapterPanel,children:S.map((a,r)=>e("button",{className:`${t.chapterRow} ${r===ut?t.chapterRowActive:""}`,title:k?k(a.label):a.label,onClick:()=>{mt(a.time),ae(!1)},children:[e("span",{className:t.chapterRowTime,children:ue(a.time)}),e("span",{className:t.chapterRowLabel,title:k?k(a.label):a.label,children:k?k(a.label):a.label})]},`${a.time}-${r}`))})]})]})]})]}),document.body)},Bt="https://github.com/serifpersia/dango/releases/latest/download/dango-extension.zip",$t=s=>{try{return JSON.parse(s.detail)}catch{return null}},Et=({isOpen:s,onClose:o,onSuccess:S})=>{const[g,i]=m(1),[h,v]=m(typeof navigator<"u"?navigator.userAgent:""),[A,k]=m(""),[T,B]=m(!1),[R,C]=m(!1),f=j(null),w=typeof navigator<"u"?navigator.userAgent:"",M=/android/i.test(w),l=/firefox|fxios/i.test(w)&&!M,u=!l&&!M&&/chrome|chromium|edg|brave/i.test(w),d=l||u;N(()=>{s&&(i(1),v(typeof navigator<"u"?navigator.userAgent:""),k(""),B(!1),C(!1))},[s]),N(()=>()=>{f.current&&(window.removeEventListener("dango:jasmr-cookie",f.current),f.current=null)},[]);const P=async()=>{localStorage.setItem("jasmr_ua",h),window.open("https://japaneseasmr.com","_blank","noopener,noreferrer"),i(2)},p=()=>{if(R)return;C(!0);const x=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,te=window.setTimeout(()=>{C(!1),f.current&&(window.removeEventListener("dango:jasmr-cookie",f.current),f.current=null),le.error("Helper not detected — install it via about:debugging first.")},3e3),F=Y=>{const _=$t(Y);if(!(!_||_.requestId!==x))if(window.clearTimeout(te),window.removeEventListener("dango:jasmr-cookie",F),f.current=null,C(!1),_?.ok&&_.cookie)k(_.cookie),le.success("Cookie extracted from helper!");else if(_?.error==="NO_COOKIE"){const oe=_.debug?.stores?.length??0,D=_.debug?.names??[];le.error(`Helper found no cf_clearance (checked ${oe} stores, saw: ${D.join(", ")||"none"}) — solve the challenge on the JapaneseASMR tab first.`)}else le.error("Helper request failed — try again.")};f.current=F,window.addEventListener("dango:jasmr-cookie",F),window.dispatchEvent(new CustomEvent("dango:get-jasmr-cookie",{detail:{requestId:x}}))},q=async()=>{if(!A.trim()){le.error("Please enter the cf_clearance cookie");return}B(!0);try{localStorage.setItem("jasmr_cookie",A.trim()),le.success("Cookie updated successfully!"),S?.(),o()}catch{le.error("Failed to save cookie")}finally{B(!1)}};return e(xe,{isOpen:s,onClose:o,title:"JapaneseASMR Verification Required",children:e("div",{className:I.container,children:g===1?e(O,{children:[e("p",{children:["JapaneseASMR is protected by a Cloudflare challenge. Solve it once in your browser and paste the ",e("strong",{children:"cf_clearance"})," cookie so the app can load the site for you."]}),e("div",{className:I.field,children:[e("label",{children:"Your User-Agent (must match the browser you solve the challenge with):"}),e("textarea",{value:h,onChange:x=>v(x.target.value),rows:3,className:I.textarea})]}),e("div",{className:I.actions,children:[e("button",{className:I.secondaryButton,onClick:o,children:"Cancel"}),e("button",{className:I.button,onClick:P,children:"Start Verification (Opens JapaneseASMR)"})]})]}):e(O,{children:[e("p",{children:["1. Solve the challenge on the ",e("strong",{children:"JapaneseASMR tab"})," (keep that tab open).",e("br",{}),"2. Copy the ",e("strong",{children:"cf_clearance"})," cookie value using one of these:",e("br",{}),e("br",{}),e("strong",{children:"Chrome / Edge — DevTools:"})," press ",e("code",{children:"F12"})," →"," ",e("strong",{children:"Application"})," → ",e("strong",{children:"Cookies"})," →"," ",e("code",{children:"https://japaneseasmr.com"}),". Find ",e("strong",{children:"cf_clearance"}),", double-click its ",e("strong",{children:"Value"})," to select it, then copy.",e("br",{}),e("br",{}),e("strong",{children:"Firefox — Storage Inspector:"})," press ",e("code",{children:"F12"})," →"," ",e("strong",{children:"Storage"})," → ",e("strong",{children:"Cookies"})," →"," ",e("code",{children:"https://japaneseasmr.com"}),". Find ",e("strong",{children:"cf_clearance"}),", right-click the value → ",e("strong",{children:"Copy Value"}),".",e("br",{}),e("br",{}),e("strong",{children:"Either browser — extension:"})," open"," ",e("strong",{children:"Cookie Manager"})," while on the JapaneseASMR tab, find"," ",e("strong",{children:"cf_clearance"}),", and copy its value (or use the extension's export).",e("br",{}),e("br",{}),"3. Paste it below. Copy ",e("strong",{children:"only the value"})," — remove any"," ",e("code",{children:"cf_clearance="})," prefix or quotes if they were included."]}),d&&e("div",{className:I.hint,children:[e("strong",{children:"Dango helper (one-time setup):"})," ",l?e(O,{children:["type ",e("code",{children:"about:debugging"})," in the address bar →"," ",e("strong",{children:"This Firefox"})," → ",e("strong",{children:"Load Temporary Add-on"})," ","→ open the ",e("code",{children:"dango-extension/firefox"})," folder and pick"," ",e("code",{children:"manifest.json"}),". (Temporary helpers unload when Firefox closes — repeat after a restart.)"]}):e(O,{children:["type ",e("code",{children:"chrome://extensions"})," in the address bar → enable"," ",e("strong",{children:"Developer mode"})," → ",e("strong",{children:"Load unpacked"})," → open the ",e("code",{children:"dango-extension/chrome"})," folder. (Unpacked helpers show a developer-mode notice — expected.)"]})," ","Use this link to download the extension and extract it:"," ",e("a",{href:Bt,target:"_blank",rel:"noreferrer",className:I.link,children:"dango-extension.zip"}),". Then click Extract below and the field fills itself.",e("div",{className:I.actions,children:e("button",{className:I.button,onClick:p,disabled:R,type:"button",children:R?"Extracting…":"Extract cookie from helper"})})]}),e("div",{className:I.field,children:[e("label",{children:"cf_clearance cookie value:"}),e("input",{type:"text",value:A,onChange:x=>k(x.target.value),placeholder:"e.g. xxxxxxxx.xxxxxxxx.xxxxxxx-xxxxxxx",className:I.input})]}),e("div",{className:I.actions,children:[e("button",{className:I.secondaryButton,onClick:o,children:"Cancel"}),e("button",{className:I.secondaryButton,onClick:()=>i(1),children:"Back"}),e("button",{className:I.button,onClick:q,disabled:T,children:T?"Saving...":"Submit"})]})]})})})},tt="asmrTranslateCache",_t=10080*60*1e3;function jt(){try{const s=localStorage.getItem(tt);if(!s)return new Map;const o=JSON.parse(s);return new Map(Object.entries(o))}catch{return new Map}}function Ft(s){try{const o={};for(const[S,g]of s)o[S]=g;localStorage.setItem(tt,JSON.stringify(o))}catch{}}function Ke(s){return/[\u3040-\u309F\u30A0-\u30FF\u4E00-\u9FAF]/.test(s)}async function Ot(s){const o=s.map(i=>i.trim()).filter(Boolean);if(o.length===0)return new Map;const S=await Ee.settings.translate.mutate({texts:o,source:"ja",target:"en"}),g=new Map;for(const[i,h]of Object.entries(S.translations||{}))g.set(i,h);for(const i of o)g.has(i)||g.set(i,i);return g}function Dt(s,o){const[S,g]=m(new Map),[i,h]=m(!1),v=j(null),A=s.join("");return N(()=>{const T=A?A.split(""):[];if(!o||T.length===0){g(new Map),h(!1);return}const B=Array.from(new Set(T.map(l=>l.trim()).filter(Boolean).filter(Ke)));if(B.length===0){g(new Map);return}v.current||(v.current=jt());const R=Date.now(),C=new Map,f=[];for(const l of B){const u=v.current.get(l);u&&R-u.ts<_t?C.set(l,u.t):f.push(l)}if(f.length===0){g(C);return}let w=!1;h(!0);const M=[];for(let l=0;l<f.length;l+=15)M.push(f.slice(l,l+15));return(async()=>{const l=new Map;for(const d of M){try{const P=await Ot(d);for(const[p,q]of P)l.set(p,q)}catch{}await new Promise(P=>setTimeout(P,120))}if(w)return;if(v.current){for(const[d,P]of l)v.current.set(d,{t:P,ts:Date.now()});Ft(v.current)}const u=new Map([...C,...l]);g(u),h(!1)})(),()=>{w=!0}},[o,A]),{t:T=>!o||!T||!Ke(T)?T:S.get(T.trim())||T,map:S,isTranslating:i}}const Ht=[{label:"Date",options:[{value:"latest",label:"Latest"},{value:"oldest",label:"Oldest"}]},{label:"Title",options:[{value:"title_asc",label:"A → Z"},{value:"title_desc",label:"Z → A"}]},{label:"Popular (Views)",options:[{value:"popular_recent",label:"Recent"},{value:"popular_week",label:"Week"},{value:"popular_month",label:"Month"},{value:"popular_6_months",label:"6 Months"},{value:"popular_year",label:"Year"},{value:"popular",label:"All Time"}]},{label:"Most Commented",options:[{value:"comments_week",label:"Week"},{value:"comments_month",label:"Month"},{value:"comments_year",label:"Year"},{value:"comments",label:"All Time"}]},{label:"Other",options:[{value:"random",label:"Random"}]}],Ut=[{value:"",label:"All"},{value:"sfw",label:"SFW / 全年齢"},{value:"r-15",label:"R-15"},{value:"r-18",label:"NSFW / R18"},{value:"yuri",label:"Yuri / Girls love / 百合"},{value:"otokonoko",label:"Otoko no ko / 男の娘"},{value:"futanari",label:"Futanari / フタナリ"},{value:"r-18g",label:"R-18G / グロ"}],qt=[{value:"sfw",label:"SFW / 全年齢"}],Be="agreedToViewMature",ta=()=>{const{rj:s}=bt(),o=Ge(),[S,g]=vt(),[i,h]=m(()=>localStorage.getItem(Be)==="true"),[v,A]=m(!1),[k,T]=m(()=>S.get("q")||""),[B,R]=m(()=>S.get("q")||""),[C,f]=m("latest"),[w,M]=m("sfw"),[l,u]=m(1),[d,P]=m(null),[p,q]=m(null),[x,te]=m(!0),[F,Y]=m(()=>localStorage.getItem("asmrTranslateEN")==="true"),[_,oe]=m(!1),D=yt(),{toggle:ae,bookmarkedIds:he}=Ze(),{popup:$,openPopup:ne,scheduleClose:H,cancelClose:Ne,closePopup:pe}=xt();N(()=>wt("jasmr",()=>oe(!0)),[]),N(()=>{localStorage.setItem("asmrTranslateEN",String(F))},[F]),N(()=>{const n=()=>h(localStorage.getItem(Be)==="true");return window.addEventListener("focus",n),window.addEventListener("storage",n),()=>{window.removeEventListener("focus",n),window.removeEventListener("storage",n)}},[]);const ge=i,J=ge?w:"sfw",Ce=ge?Ut:qt,{data:ie,isLoading:Se,isError:Le,isFetching:fe}=Mt(B,l,C,J),U=$e.useMemo(()=>ie?.shows??[],[ie?.shows]),Re=ie?.hasNext??!1;N(()=>{if(!s){d&&!p&&P(null);return}const n=s.toUpperCase();if(p&&(p.work.id?.toUpperCase()===n||p.work._id?.toUpperCase()===n)){d&&P(null);return}const c=U.find(L=>(L.id||L._id)?.toUpperCase()===n);c?(!d||(d.id||d._id)!==(c.id||c._id))&&P(c):(!d||(d.id||d._id)?.toUpperCase()!==n)&&P({_id:n,id:n,name:n})},[s,U,p,d]);const Pe=V(()=>{o("/asmr")},[o]);N(()=>{!s&&p&&q(null)},[s,p]);const{data:G}=Qe(p&&p.work.id||null),be=p?[p.work.thumbnail,...G?.images||[]].filter(Boolean):[],W=[...U.map(n=>n.name),d?.name||"",p?.work.name||"",...G?.chapters?.map(n=>n.label)||[]].filter(Boolean),{t:K}=Dt(W,F);N(()=>{const n=p?p.work.name:d?d.name:s?s.toUpperCase():"",c=n?F?K(n):n:"",L=c?`${c} - dango`:"dango";document.title=L;try{window.history.replaceState(window.history.state,L,window.location.href)}catch{}},[d,p,s,F,K]);const Q=n=>{n.preventDefault(),R(k),u(1);const c=new URLSearchParams(S);k.trim()?c.set("q",k.trim()):c.delete("q"),c.delete("page"),g(c,{replace:!0})};N(()=>{const n=S.get("q")||"";T(c=>c===n?c:n),R(c=>c===n?c:n),u(1)},[S]);const ce=n=>{n.target.checked&&!i&&A(!0)},X=()=>{localStorage.setItem(Be,"true"),h(!0),A(!1),u(1)},Z=()=>{A(!1)},Te=V((n,c,L)=>{P(null),te(!0),q({work:n,tracks:c,index:L})},[]);return e("div",{className:`${t.page} ${p?t.pageWithPlayer:""}`,children:[!(p&&x)&&e(O,{children:[e("header",{className:t.header,children:[e("h1",{className:t.pageTitle,children:[e(y,{name:"headphones"})," ASMR"]}),e("form",{className:t.searchForm,onSubmit:Q,children:[e("input",{className:t.searchInput,type:"text",value:k,onChange:n=>T(n.target.value),placeholder:"Search works, circles, CV… (-word excludes)","aria-label":"Search ASMR works"}),e("button",{className:t.searchBtn,type:"submit","aria-label":"Search",children:e(y,{name:"search"})})]})]}),e("div",{className:t.filterBar,children:[e("label",{className:t.filterLabel,htmlFor:"asmr-sort",children:"Sort"}),e("select",{id:"asmr-sort",className:t.sortSelect,value:C,onChange:n=>{f(n.target.value),u(1)},children:Ht.map(n=>e("optgroup",{label:n.label,children:n.options.map(c=>e("option",{value:c.value,children:c.label},c.value))},n.label))}),e("label",{className:t.filterLabel,htmlFor:"asmr-rating",children:"Type"}),e("select",{id:"asmr-rating",className:t.sortSelect,value:w,onChange:n=>{M(n.target.value),u(1)},children:Ce.map(n=>e("option",{value:n.value,children:n.label},n.value))}),e("div",{className:t.filterTogglesGroup,children:[e("div",{className:t.translateToggleWrap,children:[e("span",{className:t.filterLabel,children:"JP"}),e(ze,{id:"asmr-translate-toggle",isChecked:F,onChange:n=>Y(n.target.checked)}),e("span",{className:t.filterLabel,children:"EN"})]}),!i&&e("div",{className:t.matureToggleWrap,children:[e("label",{className:t.matureLabel,htmlFor:"asmr-mature-toggle",children:"Mature"}),e(ze,{id:"asmr-mature-toggle",isChecked:!1,onChange:ce})]})]})]}),Le?e("p",{className:t.statusMsg,children:"Failed to load works. Please try again."}):Se&&U.length===0?e("div",{className:t.grid,"aria-hidden":!0,children:Array.from({length:12}).map((n,c)=>e("div",{className:t.skeletonCard,children:[e("div",{className:`${t.skeletonThumb} ${t.shimmer}`}),e("div",{className:`${t.skeletonLine} ${t.shimmer}`,style:{width:"88%"}}),e("div",{className:`${t.skeletonLine} ${t.shimmer}`,style:{width:"55%"}})]},c))}):U.length===0?e("p",{className:t.statusMsg,children:"No works found."}):e(O,{children:[e("div",{className:`${t.grid} ${fe?t.fetching:""}`,children:U.map(n=>{const c=F?{...n,name:K(n.name)}:n,L=Xe(n),re=Ye(L),ee=he.has(re),se=`/asmr/${encodeURIComponent(L)}`;return e("div",{className:t.asmrCardWrap,children:[e(Nt,{item:{id:re,title:c.name,thumbnail:n.thumbnail||"",typeBadge:L||void 0,isAdult:Ie(n)},linkTo:se,hoverIcon:"info",layout:"horizontal",showInfoButton:!0,display:{elements:{poster:{typeBadge:!0,chapterBadge:!1,adultBadge:!0},info:{title:!0,mobileBadges:!0,progress:!1,meta:!1}}},onOpenDetails:z=>ne(z,{rjCode:L,title:c.name,thumbnail:n.thumbnail||"",isAdult:Ie(n),rating:n.rating,listenTarget:se}),onPopupHoverIntent:z=>z?Ne():H(),rawThumbnail:!0}),e("button",{className:`${t.bookmarkBtn} ${ee?t.bookmarked:""}`,onClick:z=>{z.preventDefault(),z.stopPropagation(),ae({rjCode:L,title:n.name,thumbnail:n.thumbnail||"",isAdult:Ie(n)})},title:ee?"Remove from listening list":"Add to listening list","aria-label":ee?"Remove from listening list":"Add to listening list","aria-pressed":ee,children:e(y,{name:ee?"check":"plus",size:12})})]},n._id||n.id)})}),e("nav",{className:t.pagination,children:[e("button",{className:t.pageBtn,disabled:l<=1,onClick:()=>u(n=>Math.max(1,n-1)),children:"Previous"}),e("span",{className:t.pageIndicator,children:["Page ",l]}),e("button",{className:t.pageBtn,disabled:!Re,onClick:()=>u(n=>n+1),children:"Next"})]})]})]}),d&&e(Pt,{work:d,onClose:Pe,onPlay:Te,t:K}),$&&e(Lt,{data:$.data,anchorRect:$.rect,bookmarked:he.has(Ye($.data.rjCode)),onToggleBookmark:()=>ae({rjCode:$.data.rjCode,title:$.data.title,thumbnail:$.data.thumbnail||"",isAdult:$.data.isAdult}),onMouseEnter:Ne,onMouseLeave:H,onRequestClose:pe}),_&&e(Et,{isOpen:_,onClose:()=>oe(!1),onSuccess:()=>{D.invalidateQueries({queryKey:["asmrBrowse"]}),D.invalidateQueries({queryKey:["asmrWork"]})}}),v&&e(xe,{isOpen:v,title:"Content Warning",onClose:Z,children:e("div",{style:{padding:"var(--space-4)",textAlign:"center"},children:[e("p",{children:"This section contains mature content intended for adult audiences."}),e("p",{children:["By proceeding, you confirm that you are ",e("strong",{children:"18 years of age or older"})," (or the age of majority in your jurisdiction) and wish to view this content."]}),e("p",{style:{fontSize:"var(--font-size-xs)",color:"var(--text-secondary)",marginTop:"var(--space-4)"},children:["You can reset this preference at any time in the ",e("strong",{children:"Settings"})," page."]}),e("div",{style:{marginTop:"var(--space-4)",display:"flex",gap:"var(--space-2-5)",justifyContent:"center"},children:[e(me,{variant:"secondary",onClick:Z,children:"Go Back"}),e(me,{onClick:X,children:"I'm 18+, Continue"})]})]})}),p&&e(It,{title:p.work.name,images:be,chapters:G?.chapters||[],tracks:p.tracks,trackIndex:p.index,expanded:x,isAdult:!!p.work.isAdult,rjCode:p.work.id||p.work._id,t:K,onTrackChange:n=>q(c=>c&&{...c,index:n}),onExpandedChange:te,onClose:()=>{q(null),te(!0),s&&o("/asmr")}})]})};export{ta as default};
@@ -1 +1 @@
1
- import{d as a,u as i}from"./vendor-core-DfaOB3Rn.js";import{R as l}from"./ResetProgressModal-vFC6N-Qw.js";import{s as f,n as R}from"./useAsmr-DQyobNQX.js";const p=({workId:e,title:m,onClose:o})=>{const[r,s]=a(!1),t=f(),n=R();return i(l,{isOpen:!!e,itemName:m,progressKind:"listening",listLabel:"my listening list",alsoRemove:r,onAlsoRemoveChange:s,onClose:()=>{s(!1),o()},onConfirm:()=>{e&&(t.mutate({workId:e}),r&&n.mutate({id:e}),s(!1),o())}})};export{p as A};
1
+ import{d as a,u as i}from"./vendor-core-DfaOB3Rn.js";import{R as l}from"./ResetProgressModal-C6ukct_c.js";import{s as f,n as R}from"./useAsmr-Blk4v41t.js";const p=({workId:e,title:m,onClose:o})=>{const[r,s]=a(!1),t=f(),n=R();return i(l,{isOpen:!!e,itemName:m,progressKind:"listening",listLabel:"my listening list",alsoRemove:r,onAlsoRemoveChange:s,onClose:()=>{s(!1),o()},onConfirm:()=>{e&&(t.mutate({workId:e}),r&&n.mutate({id:e}),s(!1),o())}})};export{p as A};
@@ -1,4 +1,4 @@
1
- import{u as n,A as y,d as E,h as $,q as I,T as de,$ as Tt}from"./vendor-core-DfaOB3Rn.js";import{I as J}from"./vendor-icons-DrybRNxP.js";import{S as ge,h as Pt,Z as It,t as Ke,W as Nt,g as $t,B as le}from"./index-BWIWE3Qy.js";import{u as Mt}from"./vendor-query-BBT5_sHx.js";const Rt="_controls_endtv_1",At="_titleContainer_endtv_9",Ft="_scheduleInfo_endtv_15",Dt="_status_endtv_23",Ot="_nextEpisode_endtv_35",qt="_watchlistBtn_endtv_45",Ht="_inList_endtv_72",zt="_queueBtn_endtv_83",Wt="_queueActive_endtv_95",Vt="_modeToggleBtn_endtv_101",Ut="_modeToggleActive_endtv_108",Kt="_nativeToggleBtn_endtv_119",Gt="_nativeToggleActive_endtv_132",Xt="_markWatchedBtn_endtv_153",Qt="_markWatchedDone_endtv_167",jt="_completeSeriesBtn_endtv_178",Jt="_providerAndEpisodeRow_endtv_192",Yt="_episodeActions_endtv_199",Zt="_desktopEpisodeActions_endtv_206",en="_mobileEpisodeActions_endtv_213",tn="_episodeNavBtn_endtv_217",nn="_primary_endtv_247",rn="_secondary_endtv_257",on="_episodePickerBtn_endtv_261",sn="_queueCountdown_endtv_265",cn="_speedBoostBadge_endtv_280",an="_videoContainer_endtv_311",ln="_loadingOverlay_endtv_324",un="_loadingDots_endtv_338",dn="_dot_endtv_343",pn="_bounce_endtv_1",fn="_bufferingOverlay_endtv_372",mn="_bufferingSpinner_endtv_381",_n="_spin_endtv_921",vn="_videoIframe_endtv_396",hn="_videoElementHidden_endtv_419",gn="_upscalerCanvas_endtv_424",yn="_upscalerActive_endtv_437",bn="_upscalerStatusBadge_endtv_441",wn="_subtitleOverlay_endtv_456",Cn="_controlsOverlay_endtv_468",Sn="_hidden_endtv_498",kn="_centerPlayPause_endtv_504",En="_bottomControls_endtv_536",xn="_progressBarContainer_endtv_553",Ln="_progressBar_endtv_553",Bn="_scrubbing_endtv_576",Tn="_watchedBar_endtv_581",Pn="_bufferedBar_endtv_582",In="_thumb_endtv_604",Nn="_timeBubble_endtv_625",$n="_skipSegment_endtv_648",Mn="_op_endtv_662",Rn="_ed_endtv_666",An="_recap_endtv_670",Fn="_bottomControlsRow_endtv_674",Dn="_controlBtn_endtv_682",On="_timeDisplay_endtv_706",qn="_leftControls_endtv_715",Hn="_rightControls_endtv_716",zn="_middleControls_endtv_717",Wn="_skipControls_endtv_723",Vn="_skipBtn_endtv_729",Un="_volumeContainer_endtv_753",Kn="_volumeSlider_endtv_760",Gn="_settingsMenu_endtv_838",Xn="_slideUp_endtv_1",Qn="_qualityListInMenu_endtv_877",jn="_ccOptionsContainer_endtv_878",Jn="_qualityItemInMenu_endtv_886",Yn="_ccItem_endtv_887",Zn="_active_endtv_908",er="_sourceLoader_endtv_915",tr="_spinner_endtv_921",nr="_skipBubble_endtv_972",rr="_skipIcon_endtv_976",or="_skipText_endtv_979",sr="_watchBtn_endtv_991",cr="_errorOverlay_endtv_1037",ir="_retryButton_endtv_1047",ar="_skipIndicatorContainer_endtv_1074",lr="_leftSkip_endtv_1074",ur="_rightSkip_endtv_1077",dr="_sourceSelectionContainer_endtv_1082",pr="_slideUpIn_endtv_1",fr="_providerSelectContainer_endtv_1097",mr="_providerSelect_endtv_1097",_r="_sourceSelect_endtv_1082",vr="_sourceButtons_endtv_1153",hr="_sourceButton_endtv_1153",gr="_detailsBox_endtv_1185",yr="_detailsToggleBtn_endtv_1198",br="_detailsGridContainer_endtv_1222",wr="_fadeIn_endtv_1",Cr="_detailItem_endtv_1234",Sr="_animeStatus_endtv_1254",kr="_genresList_endtv_1267",Er="_genreTag_endtv_1274",xr="_loadingDetails_endtv_1292",Lr="_descriptionSection_endtv_1299",Br="_description_endtv_1299",Tr="_epJumpControls_endtv_1335",Pr="_epRangeButtons_endtv_1346",Ir="_metaTags_endtv_1352",Nr="_epRangeBtn_endtv_1359",$r="_epJumpInputGroup_endtv_1374",Mr="_fullscreenActive_endtv_1406",Rr="_skipRipple_endtv_1",Ar="_errorSubtext_endtv_1512",vs={controls:Rt,titleContainer:At,scheduleInfo:Ft,status:Dt,nextEpisode:Ot,watchlistBtn:qt,inList:Ht,queueBtn:zt,queueActive:Wt,modeToggleBtn:Vt,modeToggleActive:Ut,nativeToggleBtn:Kt,nativeToggleActive:Gt,markWatchedBtn:Xt,markWatchedDone:Qt,completeSeriesBtn:jt,providerAndEpisodeRow:Jt,episodeActions:Yt,desktopEpisodeActions:Zt,mobileEpisodeActions:en,episodeNavBtn:tn,primary:nn,secondary:rn,episodePickerBtn:on,queueCountdown:sn,speedBoostBadge:cn,videoContainer:an,loadingOverlay:ln,loadingDots:un,dot:dn,bounce:pn,bufferingOverlay:fn,bufferingSpinner:mn,spin:_n,videoIframe:vn,videoElementHidden:hn,upscalerCanvas:gn,upscalerActive:yn,upscalerStatusBadge:bn,subtitleOverlay:wn,controlsOverlay:Cn,hidden:Sn,centerPlayPause:kn,bottomControls:En,progressBarContainer:xn,progressBar:Ln,scrubbing:Bn,watchedBar:Tn,bufferedBar:Pn,thumb:In,timeBubble:Nn,skipSegment:$n,op:Mn,ed:Rn,recap:An,bottomControlsRow:Fn,controlBtn:Dn,timeDisplay:On,leftControls:qn,rightControls:Hn,middleControls:zn,skipControls:Wn,skipBtn:Vn,volumeContainer:Un,volumeSlider:Kn,settingsMenu:Gn,slideUp:Xn,qualityListInMenu:Qn,ccOptionsContainer:jn,qualityItemInMenu:Jn,ccItem:Yn,active:Zn,sourceLoader:er,spinner:tr,skipBubble:nr,skipIcon:rr,skipText:or,watchBtn:sr,errorOverlay:cr,retryButton:ir,skipIndicatorContainer:ar,leftSkip:lr,rightSkip:ur,sourceSelectionContainer:dr,slideUpIn:pr,providerSelectContainer:fr,providerSelect:mr,sourceSelect:_r,sourceButtons:vr,sourceButton:hr,detailsBox:gr,detailsToggleBtn:yr,detailsGridContainer:br,fadeIn:wr,detailItem:Cr,animeStatus:Sr,genresList:kr,genreTag:Er,loadingDetails:xr,descriptionSection:Lr,description:Br,epJumpControls:Tr,epRangeButtons:Pr,metaTags:Ir,epRangeBtn:Nr,epJumpInputGroup:$r,fullscreenActive:Mr,skipRipple:Rr,errorSubtext:Ar},Fr="_playerPageLayout_xfhzl_1",Dr="_episodeSidebar_xfhzl_15",Or="_playerMain_xfhzl_28",qr="_videoPlayerWrapper_xfhzl_36",Hr="_playerInfoHeader_xfhzl_52",zr="_playerAnimeCard_xfhzl_58",Wr="_playerInfoContainer_xfhzl_70",Vr="_videoTitleSection_xfhzl_94",Ur="_theaterMode_xfhzl_276",hs={playerPageLayout:Fr,episodeSidebar:Dr,playerMain:Or,videoPlayerWrapper:qr,playerInfoHeader:Hr,playerAnimeCard:zr,playerInfoContainer:Wr,videoTitleSection:Vr,theaterMode:Ur},Kr="_shell_41rxp_1",Gr="_stage_41rxp_37",Xr="_shellFill_41rxp_85",Qr="_shellFullscreen_41rxp_93",jr="_uiLayer_41rxp_107",Jr="_volumeWrap_41rxp_118",Yr="_volumeSlider_41rxp_124",oe={shell:Kr,stage:Gr,shellFill:Xr,shellFullscreen:Qr,uiLayer:jr,volumeWrap:Jr,volumeSlider:Yr},Zr=.8,eo=5,gs=2e3,Xe="autoplayEnabled",to=(e,r)=>r>0&&e>=r*Zr,ys=(e,r)=>e>eo&&!to(e,r),bs=()=>{try{return localStorage.getItem(Xe)==="true"}catch{return!1}},ws=e=>{try{localStorage.setItem(Xe,String(e))}catch{}},Cs=e=>e.seekInduced?"none":e.autoplayEnabled&&e.hasNext?"advance":e.hasNext?"prompt-next":e.isFinal?"prompt-complete":"none",no=e=>(e.language??e.lang??"").toLowerCase(),ro=e=>(e.label??"").toLowerCase(),oo=e=>`${e.language??e.lang??""}|||${e.label??""}`,so=e=>no(e).startsWith("en")||ro(e).includes("english");function Ss(e,r){if(e.length===0||r?.enabled===!1)return-1;const t=r?.lastKey??null;if(t){const o=e.findIndex(u=>oo(u)===t);if(o>=0)return o}const c=e.findIndex(so);return c>=0?c:0}const Z={fontSize:1.8,position:0,bgOpacity:.5,bgColor:"#000000",textColor:"#ffffff",edge:"shadow",bold:!1},xe=(e,r,t)=>Math.max(r,Math.min(t,e)),Le=e=>typeof e=="string"&&/^#[0-9a-fA-F]{6}$/.test(e),Se=(e,r,t,c)=>{try{const o=localStorage.getItem(e);if(o===null)return r;const u=parseFloat(o);return Number.isFinite(u)?xe(u,t,c):r}catch{return r}};function co(){let e=Z.edge,r=Z.bgColor,t=Z.textColor,c=Z.bold;try{const o=localStorage.getItem("subtitleEdge");(o==="shadow"||o==="outline"||o==="none")&&(e=o);const u=localStorage.getItem("subtitleBgColor");Le(u)&&(r=u);const v=localStorage.getItem("subtitleTextColor");Le(v)&&(t=v);const C=localStorage.getItem("subtitleBold");C!==null&&(c=C==="true")}catch{}return{fontSize:Se("subtitleFontSize",Z.fontSize,.5,10),position:Se("subtitlePosition",Z.position,0,100),bgOpacity:Se("subtitleBgOpacity",Z.bgOpacity,0,1),bgColor:r,textColor:t,edge:e,bold:c}}function Qe(e,r){const t=`rgba(0, 0, 0, ${xe(r,0,1)})`;if(!Le(e))return t;const c=parseInt(e.slice(1,3),16),o=parseInt(e.slice(3,5),16),u=parseInt(e.slice(5,7),16);return`rgba(${c}, ${o}, ${u}, ${xe(r,0,1)})`}function je(e,r){return e==="none"?r<=0?"0 1px 3px rgba(0, 0, 0, 0.9)":"none":e==="outline"?["-1px 0 0 black","1px 0 0 black","0 -1px 0 black","0 1px 0 black","-1px -1px 0 black","1px -1px 0 black","-1px 1px 0 black","1px 1px 0 black","0 0 6px rgba(0, 0, 0, 0.9)"].join(", "):"0 0 4px black, 0 1px 2px rgba(0, 0, 0, 0.8)"}function ks(e){return`
1
+ import{u as n,A as y,d as E,h as $,q as N,T as de,$ as Tt}from"./vendor-core-DfaOB3Rn.js";import{I as J}from"./vendor-icons-DrybRNxP.js";import{S as ge,h as Pt,Z as Nt,t as Ke,W as It,g as $t,B as le}from"./index-gMxawd-E.js";import{u as Mt}from"./vendor-query-BBT5_sHx.js";const At="_controls_ov6ol_1",Ft="_titleContainer_ov6ol_9",Rt="_scheduleInfo_ov6ol_15",Dt="_status_ov6ol_23",Ot="_nextEpisode_ov6ol_35",qt="_watchlistBtn_ov6ol_45",Ht="_inList_ov6ol_72",zt="_queueBtn_ov6ol_83",Wt="_queueActive_ov6ol_95",Vt="_modeToggleBtn_ov6ol_101",Ut="_modeToggleActive_ov6ol_108",Kt="_nativeToggleBtn_ov6ol_119",Gt="_nativeToggleActive_ov6ol_132",Xt="_markWatchedBtn_ov6ol_153",Qt="_markWatchedDone_ov6ol_167",jt="_completeSeriesBtn_ov6ol_178",Jt="_providerAndEpisodeRow_ov6ol_192",Yt="_episodeActions_ov6ol_199",Zt="_desktopEpisodeActions_ov6ol_206",en="_mobileEpisodeActions_ov6ol_213",tn="_episodeNavBtn_ov6ol_217",nn="_primary_ov6ol_247",rn="_secondary_ov6ol_257",on="_episodePickerBtn_ov6ol_261",sn="_queueCountdown_ov6ol_265",cn="_speedBoostBadge_ov6ol_280",an="_videoContainer_ov6ol_311",ln="_loadingOverlay_ov6ol_324",un="_loadingDots_ov6ol_338",dn="_dot_ov6ol_343",pn="_bounce_ov6ol_1",fn="_bufferingOverlay_ov6ol_372",mn="_bufferingSpinner_ov6ol_381",_n="_spin_ov6ol_921",vn="_videoIframe_ov6ol_396",hn="_videoElementHidden_ov6ol_419",gn="_upscalerCanvas_ov6ol_424",yn="_upscalerActive_ov6ol_437",bn="_upscalerStatusBadge_ov6ol_441",wn="_subtitleOverlay_ov6ol_456",Cn="_controlsOverlay_ov6ol_468",Sn="_hidden_ov6ol_498",kn="_centerPlayPause_ov6ol_504",En="_bottomControls_ov6ol_536",Ln="_progressBarContainer_ov6ol_553",xn="_progressBar_ov6ol_553",Bn="_scrubbing_ov6ol_576",Tn="_watchedBar_ov6ol_581",Pn="_bufferedBar_ov6ol_582",Nn="_thumb_ov6ol_604",In="_timeBubble_ov6ol_625",$n="_skipSegment_ov6ol_648",Mn="_op_ov6ol_662",An="_ed_ov6ol_666",Fn="_recap_ov6ol_670",Rn="_bottomControlsRow_ov6ol_674",Dn="_controlBtn_ov6ol_682",On="_timeDisplay_ov6ol_706",qn="_leftControls_ov6ol_715",Hn="_rightControls_ov6ol_716",zn="_middleControls_ov6ol_717",Wn="_skipControls_ov6ol_723",Vn="_skipBtn_ov6ol_729",Un="_volumeContainer_ov6ol_753",Kn="_volumeSlider_ov6ol_760",Gn="_settingsMenu_ov6ol_838",Xn="_slideUp_ov6ol_1",Qn="_qualityListInMenu_ov6ol_877",jn="_ccOptionsContainer_ov6ol_878",Jn="_qualityItemInMenu_ov6ol_886",Yn="_ccItem_ov6ol_887",Zn="_active_ov6ol_908",er="_sourceLoader_ov6ol_915",tr="_spinner_ov6ol_921",nr="_watchBtn_ov6ol_980",rr="_errorOverlay_ov6ol_1026",or="_retryButton_ov6ol_1036",sr="_sourceSelectionContainer_ov6ol_1064",cr="_slideUpIn_ov6ol_1",ir="_providerSelectContainer_ov6ol_1079",ar="_providerSelect_ov6ol_1079",lr="_sourceSelect_ov6ol_1064",ur="_sourceButtons_ov6ol_1135",dr="_sourceButton_ov6ol_1135",pr="_detailsBox_ov6ol_1167",fr="_detailsToggleBtn_ov6ol_1180",mr="_detailsGridContainer_ov6ol_1204",_r="_fadeIn_ov6ol_1",vr="_detailItem_ov6ol_1216",hr="_animeStatus_ov6ol_1236",gr="_genresList_ov6ol_1249",yr="_genreTag_ov6ol_1256",br="_loadingDetails_ov6ol_1274",wr="_descriptionSection_ov6ol_1281",Cr="_description_ov6ol_1281",Sr="_epJumpControls_ov6ol_1317",kr="_epRangeButtons_ov6ol_1328",Er="_metaTags_ov6ol_1334",Lr="_epRangeBtn_ov6ol_1341",xr="_epJumpInputGroup_ov6ol_1356",Br="_fullscreenActive_ov6ol_1388",Tr="_errorSubtext_ov6ol_1432",us={controls:At,titleContainer:Ft,scheduleInfo:Rt,status:Dt,nextEpisode:Ot,watchlistBtn:qt,inList:Ht,queueBtn:zt,queueActive:Wt,modeToggleBtn:Vt,modeToggleActive:Ut,nativeToggleBtn:Kt,nativeToggleActive:Gt,markWatchedBtn:Xt,markWatchedDone:Qt,completeSeriesBtn:jt,providerAndEpisodeRow:Jt,episodeActions:Yt,desktopEpisodeActions:Zt,mobileEpisodeActions:en,episodeNavBtn:tn,primary:nn,secondary:rn,episodePickerBtn:on,queueCountdown:sn,speedBoostBadge:cn,videoContainer:an,loadingOverlay:ln,loadingDots:un,dot:dn,bounce:pn,bufferingOverlay:fn,bufferingSpinner:mn,spin:_n,videoIframe:vn,videoElementHidden:hn,upscalerCanvas:gn,upscalerActive:yn,upscalerStatusBadge:bn,subtitleOverlay:wn,controlsOverlay:Cn,hidden:Sn,centerPlayPause:kn,bottomControls:En,progressBarContainer:Ln,progressBar:xn,scrubbing:Bn,watchedBar:Tn,bufferedBar:Pn,thumb:Nn,timeBubble:In,skipSegment:$n,op:Mn,ed:An,recap:Fn,bottomControlsRow:Rn,controlBtn:Dn,timeDisplay:On,leftControls:qn,rightControls:Hn,middleControls:zn,skipControls:Wn,skipBtn:Vn,volumeContainer:Un,volumeSlider:Kn,settingsMenu:Gn,slideUp:Xn,qualityListInMenu:Qn,ccOptionsContainer:jn,qualityItemInMenu:Jn,ccItem:Yn,active:Zn,sourceLoader:er,spinner:tr,watchBtn:nr,errorOverlay:rr,retryButton:or,sourceSelectionContainer:sr,slideUpIn:cr,providerSelectContainer:ir,providerSelect:ar,sourceSelect:lr,sourceButtons:ur,sourceButton:dr,detailsBox:pr,detailsToggleBtn:fr,detailsGridContainer:mr,fadeIn:_r,detailItem:vr,animeStatus:hr,genresList:gr,genreTag:yr,loadingDetails:br,descriptionSection:wr,description:Cr,epJumpControls:Sr,epRangeButtons:kr,metaTags:Er,epRangeBtn:Lr,epJumpInputGroup:xr,fullscreenActive:Br,errorSubtext:Tr},Pr="_playerPageLayout_xfhzl_1",Nr="_episodeSidebar_xfhzl_15",Ir="_playerMain_xfhzl_28",$r="_videoPlayerWrapper_xfhzl_36",Mr="_playerInfoHeader_xfhzl_52",Ar="_playerAnimeCard_xfhzl_58",Fr="_playerInfoContainer_xfhzl_70",Rr="_videoTitleSection_xfhzl_94",Dr="_theaterMode_xfhzl_276",ds={playerPageLayout:Pr,episodeSidebar:Nr,playerMain:Ir,videoPlayerWrapper:$r,playerInfoHeader:Mr,playerAnimeCard:Ar,playerInfoContainer:Fr,videoTitleSection:Rr,theaterMode:Dr},Or="_shell_41rxp_1",qr="_stage_41rxp_37",Hr="_shellFill_41rxp_85",zr="_shellFullscreen_41rxp_93",Wr="_uiLayer_41rxp_107",Vr="_volumeWrap_41rxp_118",Ur="_volumeSlider_41rxp_124",oe={shell:Or,stage:qr,shellFill:Hr,shellFullscreen:zr,uiLayer:Wr,volumeWrap:Vr,volumeSlider:Ur},Kr=.8,Gr=5,ps=2e3,Xe="autoplayEnabled",Xr=(e,r)=>r>0&&e>=r*Kr,fs=(e,r)=>e>Gr&&!Xr(e,r),ms=()=>{try{return localStorage.getItem(Xe)==="true"}catch{return!1}},_s=e=>{try{localStorage.setItem(Xe,String(e))}catch{}},Qr=["finished","completed","complete","ended"],vs=(e,r,t)=>e.length>0&&!!r&&e[e.length-1]===r&&Qr.some(c=>String(t||"").trim().toLowerCase().includes(c)),hs=e=>e.seekInduced?"none":e.autoplayEnabled&&e.hasNext?"advance":e.hasNext?"prompt-next":e.isFinal?"prompt-complete":"none",jr=e=>(e.language??e.lang??"").toLowerCase(),Jr=e=>(e.label??"").toLowerCase(),Yr=e=>`${e.language??e.lang??""}|||${e.label??""}`,Zr=e=>jr(e).startsWith("en")||Jr(e).includes("english");function gs(e,r){if(e.length===0||r?.enabled===!1)return-1;const t=r?.lastKey??null;if(t){const o=e.findIndex(u=>Yr(u)===t);if(o>=0)return o}const c=e.findIndex(Zr);return c>=0?c:0}const Z={fontSize:1.8,position:0,bgOpacity:.5,bgColor:"#000000",textColor:"#ffffff",edge:"shadow",bold:!1},Le=(e,r,t)=>Math.max(r,Math.min(t,e)),xe=e=>typeof e=="string"&&/^#[0-9a-fA-F]{6}$/.test(e),Se=(e,r,t,c)=>{try{const o=localStorage.getItem(e);if(o===null)return r;const u=parseFloat(o);return Number.isFinite(u)?Le(u,t,c):r}catch{return r}};function eo(){let e=Z.edge,r=Z.bgColor,t=Z.textColor,c=Z.bold;try{const o=localStorage.getItem("subtitleEdge");(o==="shadow"||o==="outline"||o==="none")&&(e=o);const u=localStorage.getItem("subtitleBgColor");xe(u)&&(r=u);const v=localStorage.getItem("subtitleTextColor");xe(v)&&(t=v);const C=localStorage.getItem("subtitleBold");C!==null&&(c=C==="true")}catch{}return{fontSize:Se("subtitleFontSize",Z.fontSize,.5,10),position:Se("subtitlePosition",Z.position,0,100),bgOpacity:Se("subtitleBgOpacity",Z.bgOpacity,0,1),bgColor:r,textColor:t,edge:e,bold:c}}function Qe(e,r){const t=`rgba(0, 0, 0, ${Le(r,0,1)})`;if(!xe(e))return t;const c=parseInt(e.slice(1,3),16),o=parseInt(e.slice(3,5),16),u=parseInt(e.slice(5,7),16);return`rgba(${c}, ${o}, ${u}, ${Le(r,0,1)})`}function je(e,r){return e==="none"?r<=0?"0 1px 3px rgba(0, 0, 0, 0.9)":"none":e==="outline"?["-1px 0 0 black","1px 0 0 black","0 -1px 0 black","0 1px 0 black","-1px -1px 0 black","1px -1px 0 black","-1px 1px 0 black","1px 1px 0 black","0 0 6px rgba(0, 0, 0, 0.9)"].join(", "):"0 0 4px black, 0 1px 2px rgba(0, 0, 0, 0.8)"}function ys(e){return`
2
2
  video::cue {
3
3
  font-size: ${e.fontSize}rem !important;
4
4
  color: ${e.textColor} !important;
@@ -6,5 +6,5 @@ import{u as n,A as y,d as E,h as $,q as I,T as de,$ as Tt}from"./vendor-core-Dfa
6
6
  font-weight: ${e.bold?"bold":"normal"} !important;
7
7
  text-shadow: ${je(e.edge,e.bgOpacity)} !important;
8
8
  }
9
- `}function Es(e){return[`font-size: ${e.fontSize}rem`,`color: ${e.textColor}`,`background-color: ${Qe(e.bgColor,e.bgOpacity)}`,`font-weight: ${e.bold?"700":"400"}`,`text-shadow: ${je(e.edge,e.bgOpacity)}`,"padding: 0.2em 0.5em","border-radius: 0.25em","text-align: center","position: absolute","left: 50%","transform: translateX(-50%)","max-width: 92%","white-space: pre-wrap","overflow-wrap: break-word","line-height: 1.4"].join(`;
10
- `)+";"}const io=new Set(["b","i","u","strong","em"]);function xs(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/&lt;(\/?)([a-zA-Z]+)&gt;/g,(t,c,o)=>io.has(o.toLowerCase())?`<${c}${o.toLowerCase()}>`:t)}function Ls(e){return e.replace(/<[^>]*>/g,"")}const Bs=["#ffffff","#ffff00","#7CFC00","#00e5ff","#ff9ff3","#ffa502"],Ts=["#000000","#1e272e","#2f3542","#3d0c02","#0c3d2e","#ffffff"];function Ps(e,r){const t=Number.isFinite(e)?e*16:Z.fontSize*16;return!Number.isFinite(r)||r<=0?t/16:Math.min(t,Math.max(13,r*.07))/16}function Is(e){const r=Math.abs(e/1e3).toFixed(1);return e>0?`+${r}s`:e<0?`-${r}s`:"0.0s"}function Ns(e,r){const t=e.clientWidth||0,c=e.clientHeight||0,o=e.videoWidth>0&&e.videoHeight>0?e.videoWidth/e.videoHeight:0;let u=c;o>0&&t>0&&c>0&&(u=t/c>o?c:t/o);const v=Math.max(0,(c-u)/2),C=Math.max(0,Math.min(100,Number(r)||0))/100*u;return v+C}const ao="_centerControls_61n7k_1",lo="_centerSkipBtn_61n7k_15",uo="_centerPlayPause_61n7k_40",po="_playIconOffset_61n7k_71",ue={centerControls:ao,centerSkipBtn:lo,centerPlayPause:uo,playIconOffset:po},$s=({isPlaying:e,onTogglePlay:r,onSkipBack:t,onSkipForward:c,skipSeconds:o=10})=>n("div",{className:ue.centerControls,onClick:u=>u.stopPropagation(),children:[n("button",{className:ue.centerSkipBtn,onClick:t,title:`Skip back ${o}s`,"aria-label":`Skip back ${o} seconds`,children:n(J,{name:"replay-10"})}),n("button",{className:ue.centerPlayPause,"data-speed-boost-ignore":"true",onClick:r,"aria-label":e?"Pause":"Play",children:e?n(J,{name:"pause"}):n(J,{name:"play",className:ue.playIconOffset})}),n("button",{className:ue.centerSkipBtn,onClick:c,title:`Skip forward ${o}s`,"aria-label":`Skip forward ${o} seconds`,children:n(J,{name:"forward-10"})})]}),Ms=({classes:e,videoRef:r,duration:t,formatTime:c,isScrubbing:o,buffered:u="auto",onSeek:v,onScrubStart:C,onScrubMove:i,onScrubEnd:h,timeLabelRef:l,children:P})=>{const f=y(null),x=y(null),p=y(null),_=y(null),S=y(null),a=y(!1),b=y(o);b.current=o;const g=y({onScrubMove:i,onScrubEnd:h});g.current={onScrubMove:i,onScrubEnd:h};const[M,R]=E({time:0,position:null});$(()=>{const d=r.current;if(!d)return;const m=j=>{const D=j/t*100||0;x.current&&(x.current.style.width=`${D}%`),p.current&&(p.current.style.left=`${D}%`),l?.current&&(l.current.innerText=`${c(j)} / ${c(t)}`)},F=()=>{o||m(d.currentTime)},V=()=>{if(u==="auto"&&d.buffered.length>0){const D=d.buffered.end(d.buffered.length-1)/t*100||0;_.current&&(_.current.style.width=`${D}%`)}};return m(d.currentTime),V(),d.addEventListener("timeupdate",F),d.addEventListener("progress",V),()=>{d.removeEventListener("timeupdate",F),d.removeEventListener("progress",V)}},[r,t,o,u,c,l]);const W=d=>{if(!f.current)return 0;const m=f.current.getBoundingClientRect();return Math.min(1,Math.max(0,(d-m.left)/m.width))},G=d=>{const m=d*t,F=m/t*100||0;x.current&&(x.current.style.width=`${F}%`),p.current&&(p.current.style.left=`${F}%`),l?.current&&(l.current.innerText=`${c(m)} / ${c(t)}`);const V=f.current?.getBoundingClientRect();R({time:m,position:V?d*V.width:null})};$(()=>{if(!o){S.current=null;return}const d=F=>{if(S.current!==null&&F.pointerId!==S.current||!t)return;const V=W(F.clientX);g.current.onScrubMove(V);const j=V*t,D=j/t*100||0;x.current&&(x.current.style.width=`${D}%`),p.current&&(p.current.style.left=`${D}%`),l?.current&&(l.current.innerText=`${c(j)} / ${c(t)}`);const ee=f.current?.getBoundingClientRect();R({time:j,position:ee?V*ee.width:null})},m=F=>{S.current!==null&&F.pointerId!==S.current||(S.current=null,a.current=!0,F.pointerType!=="mouse"&&R({time:0,position:null}),g.current.onScrubEnd())};return document.addEventListener("pointermove",d),document.addEventListener("pointerup",m),document.addEventListener("pointercancel",m),()=>{document.removeEventListener("pointermove",d),document.removeEventListener("pointerup",m),document.removeEventListener("pointercancel",m)}},[o,t,c,l]);const L=d=>{if(d.pointerType==="mouse"&&d.button!==0||!r.current||!t)return;d.preventDefault(),S.current=d.pointerId;try{f.current?.setPointerCapture(d.pointerId)}catch{}b.current||C();const m=W(d.clientX);i(m),G(m)},q=d=>{if(!t||b.current||d.pointerType!=="mouse")return;const m=W(d.clientX);R({time:m*t,position:d.clientX-(f.current?.getBoundingClientRect().left??0)})},U=d=>{if(!(S.current!==null&&d.pointerId!==S.current)&&b.current){S.current=null,a.current=!0,d.pointerType!=="mouse"&&R({time:0,position:null});try{f.current?.hasPointerCapture(d.pointerId)&&f.current.releasePointerCapture(d.pointerId)}catch{}h()}};return n("div",{className:`${e.container} ${o&&e.scrubbing?e.scrubbing:""}`,ref:f,role:"slider","aria-label":"Seek","aria-valuemin":0,"aria-valuemax":Math.round(t||0),"aria-valuenow":Math.round((Number(x.current?.style.width?.replace("%",""))||0)*(t||0)/100),tabIndex:0,onClick:d=>{if(a.current){a.current=!1;return}!r.current||isNaN(t)||t===0||v(W(d.clientX))},onPointerDown:L,onPointerMove:q,onPointerUp:U,onPointerCancel:U,onMouseMove:d=>{if(o||!t)return;const m=W(d.clientX);R({time:m*t,position:d.clientX-(f.current?.getBoundingClientRect().left??0)})},onMouseLeave:()=>{o||R({time:0,position:null})},onKeyDown:d=>{if(!(!r.current||!t)&&(d.key==="ArrowRight"||d.key==="ArrowLeft")){d.preventDefault();const m=(d.key==="ArrowRight"?5:-5)/t,F=r.current.currentTime/t||0;v(Math.min(1,Math.max(0,F+m)))}},children:[M.position!==null&&n("div",{className:e.timeBubble,style:{left:M.position},children:c(M.time)}),n("div",{className:e.bar,children:[n("div",{className:e.buffered,ref:_,style:u==="full"?{width:"100%"}:void 0}),n("div",{className:e.watched,ref:x}),n("div",{className:e.thumb,ref:p,onMouseDown:d=>{d.preventDefault(),r.current&&(b.current||C())}}),P]})]})};function ke(){try{if(typeof window>"u")return!1;const e=window.matchMedia?.("(pointer: coarse)").matches??!1,t=(navigator.maxTouchPoints??0)>0||"ontouchstart"in window;return e||t}catch{return!1}}function Je(){const[e,r]=E(ke);return $(()=>{r(ke());let t=null;const c=()=>r(ke());try{t=window.matchMedia("(pointer: coarse)"),t.addEventListener?t.addEventListener("change",c):t.addListener(c)}catch{}return window.addEventListener("touchstart",c,{passive:!0,once:!0}),()=>{try{t&&(t.removeEventListener?t.removeEventListener("change",c):t.removeListener(c))}catch{}window.removeEventListener("touchstart",c)}},[]),e}const Ge=280;function fo(e){return e?!!e.closest('button, input, select, textarea, a, [role="button"], [data-player-ui="true"]'):!1}const Rs=({player:e,topBar:r,centerControls:t,bottomBar:c,settingsPanel:o,overlays:u,isInteracting:v=!1,className:C,chromeDisabled:i=!1,children:h})=>{const{state:l,refs:P,actions:f}=e,x=P.playerContainerRef,_=Je()?5e3:3e3,S=y(0),a=y(null),b=y(v);b.current=v;const g=I(()=>{const L=f.inactivityTimer.current;L&&(window.clearTimeout(L),f.inactivityTimer.current=null)},[f]),M=I(()=>{g(),l.isPlaying&&(b.current||l.useNativeControls||(f.inactivityTimer.current=window.setTimeout(()=>{if(b.current)return;f.setShowControls(!1);const L=x.current;L&&l.isFullscreen&&(L.style.cursor="none")},_)))},[f,g,x,_,l.isFullscreen,l.isPlaying,l.useNativeControls]),R=I(()=>{const L=x.current;L&&(L.style.cursor="default"),!l.showControls&&!l.useNativeControls&&f.setShowControls(!0),M()},[f,x,M,l.showControls,l.useNativeControls]);$(()=>{if(l.showControls){if(!l.isPlaying){g();return}if(v||l.isScrubbing||l.showSettings||l.showVolumeSlider){f.setShowControls(!0),g();return}M()}},[f,g,v,M,l.isPlaying,l.isScrubbing,l.showControls,l.showSettings,l.showVolumeSlider]),$(()=>()=>g(),[g]);const W=I(L=>{const q=L.target;if(fo(q))return;const U=Date.now(),d=U-S.current<Ge;if(S.current=U,d){a.current&&(window.clearTimeout(a.current),a.current=null),f.toggleFullscreen();return}a.current&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,f.setShowControls(!l.showControls),l.showControls?M():R()},Ge)},[f,M,l.showControls,R]);$(()=>()=>{a.current&&window.clearTimeout(a.current)},[]);const G=l.showControls||l.isScrubbing||l.showSettings||l.showVolumeSlider;return n("div",{ref:x,className:`${oe.shell} ${l.isFullscreen?oe.shellFullscreen:""} ${C??""}`,onContextMenu:L=>L.preventDefault(),onPointerMove:L=>{L.pointerType==="mouse"&&R()},onMouseLeave:()=>{window.matchMedia?.("(hover: hover) and (pointer: fine)").matches&&l.isPlaying&&!b.current&&f.setShowControls(!1)},children:[n("div",{className:oe.stage,onClick:W,onContextMenu:L=>L.preventDefault(),children:h}),u,!i&&!l.useNativeControls&&n("div",{className:oe.uiLayer,onContextMenu:L=>L.preventDefault(),children:[n("div",{"data-player-ui":"true",children:r}),G&&t&&n("div",{"data-player-ui":"true",children:t}),n("div",{"data-player-ui":"true",children:c}),o&&n("div",{"data-player-ui":"true",children:o})]})]})},mo=450,As=({muted:e,volume:r,volumeIcon:t,buttonClassName:c,sliderClassName:o,onToggleMute:u,onVolumeChange:v,onExpandedChange:C})=>{const i=Je(),[h,l]=E(!1),P=y(null),f=y(!1),x=y(null),p=I(g=>{l(g),C?.(g)},[C]);$(()=>()=>{P.current&&window.clearTimeout(P.current)},[]),$(()=>{if(!h)return;const g=M=>{x.current&&!x.current.contains(M.target)&&p(!1)};return document.addEventListener("pointerdown",g),()=>document.removeEventListener("pointerdown",g)},[h,p]);const _=e?0:r,S=()=>{f.current=!1,P.current&&window.clearTimeout(P.current),P.current=window.setTimeout(()=>{f.current=!0,p(!0)},mo)},a=()=>{P.current&&(window.clearTimeout(P.current),P.current=null)},b=g=>{if(g.stopPropagation(),f.current){f.current=!1;return}if(i){h?u():p(!0);return}u()};return n("div",{ref:x,className:oe.volumeWrap,"data-expanded":h?"true":"false",onContextMenu:g=>g.preventDefault(),children:[n("button",{type:"button",className:c,onClick:b,onPointerDown:S,onPointerUp:a,onPointerLeave:a,onContextMenu:g=>g.preventDefault(),"aria-label":e?"Unmute":"Mute","aria-expanded":h,children:t}),n("input",{type:"range",min:"0",max:"1",step:"0.05",value:_,onChange:g=>v(parseFloat(g.target.value)),onClick:g=>g.stopPropagation(),onPointerDown:g=>g.stopPropagation(),onContextMenu:g=>g.preventDefault(),className:`${oe.volumeSlider} ${o??""}`,style:{"--volume-percent":`${_*100}%`},"aria-label":"Volume"})]})},_o="_statusArea_1xccu_1",vo="_toggleBtn_1xccu_20",ho="_shortcuts_1xccu_46",go="_shortcutGroup_1xccu_56",yo="_shortcut_1xccu_46",bo="_key_1xccu_70",wo="_label_1xccu_91",T={statusArea:_o,toggleBtn:vo,shortcuts:ho,shortcutGroup:go,shortcut:yo,key:bo,label:wo},Fs=({showTheater:e=!0})=>{const[r,t]=E(!1);return n("div",{className:T.statusArea,children:[n("button",{type:"button",className:T.toggleBtn,onClick:()=>t(c=>!c),"aria-expanded":r,"aria-controls":"player-shortcuts",children:[n(J,{name:"keyboard",size:14}),n("span",{children:"Keyboard Shortcuts"}),r?n(J,{name:"chevron-up",size:12}):n(J,{name:"chevron-down",size:12})]}),r&&n("div",{id:"player-shortcuts",className:T.shortcuts,children:[n("div",{className:T.shortcutGroup,children:[n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"↑"}),n("span",{className:T.key,children:"↓"}),n("span",{className:T.label,children:"Volume"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"←"}),n("span",{className:T.key,children:"→"}),n("span",{className:T.label,children:"Seek"})]})]}),n("div",{className:T.shortcutGroup,children:[n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"Space"}),n("span",{className:T.label,children:"Play/Pause"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"F"}),n("span",{className:T.label,children:"Fullscreen"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"M"}),n("span",{className:T.label,children:"Mute"})]}),e&&n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"T"}),n("span",{className:T.label,children:"Theater"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"N"}),n("span",{className:T.label,children:"Next"})]})]})]})]})},Co="_episodeListContainer_9tyin_1",So="_drawerContainer_9tyin_9",ko="_episodeListHeader_9tyin_14",Eo="_drawerHeader_9tyin_20",xo="_episodeListTitle_9tyin_29",Lo="_rangeSelector_9tyin_41",Bo="_rangeButton_9tyin_47",To="_active_9tyin_70",Po="_episodeList_9tyin_1",Io="_drawerList_9tyin_89",No="_episodeItem_9tyin_118",$o="_watched_9tyin_145",Mo="_episodeThumb_9tyin_167",Ro="_episodeText_9tyin_176",Ao="_episodeLabel_9tyin_184",Fo="_episodeSub_9tyin_189",N={episodeListContainer:Co,drawerContainer:So,episodeListHeader:ko,drawerHeader:Eo,episodeListTitle:xo,rangeSelector:Lo,rangeButton:Bo,active:To,episodeList:Po,drawerList:Io,episodeItem:No,watched:$o,episodeThumb:Mo,episodeText:Ro,episodeLabel:Ao,episodeSub:Fo},Do=({episodes:e,currentEpisode:r,watchedEpisodes:t=[],onEpisodeClick:c,variant:o="sidebar",title:u="Episodes",header:v})=>{const[C,i]=E(0),h=y(null),l=de(()=>e.map(p=>typeof p=="string"?{id:p,label:`Episode ${p}`}:p),[e]),P=de(()=>new Set(t),[t]);$(()=>{const p=h.current;if(!p)return;let _=p.parentElement;for(;_;){const b=window.getComputedStyle(_);if((b.overflowY==="auto"||b.overflowY==="scroll")&&_.scrollHeight>_.clientHeight)break;_=_.parentElement}if(!_)return;const S=_.getBoundingClientRect(),a=p.getBoundingClientRect();_.scrollTop+=a.top+a.height/2-(S.top+_.clientHeight/2)},[r,C]);const f=de(()=>{if(l.length<=100)return[];const p=[];for(let _=0;_<l.length;_+=100){const S=_+1,a=Math.min(_+100,l.length);p.push(`${S}-${a}`)}return p},[l]),x=de(()=>{if(f.length===0)return l;const p=f[C];if(!p)return l;const[_,S]=p.split("-"),a=parseInt(_,10),b=parseInt(S,10);return l.slice(a-1,b)},[l,f,C]);return n("div",{className:`${N.episodeListContainer} ${o==="drawer"?N.drawerContainer:""}`,children:[n("div",{className:`${N.episodeListHeader} ${o==="drawer"?N.drawerHeader:""}`,children:[v,n("h3",{className:N.episodeListTitle,children:u}),f.length>0&&n("div",{className:N.rangeSelector,children:f.map((p,_)=>n("button",{className:`${N.rangeButton} ${C===_?N.active:""}`,onClick:()=>i(_),children:p},p))})]}),n("div",{className:`${N.episodeList} ${o==="drawer"?N.drawerList:""}`,children:x.map(p=>{const _=p.id===r,S=P.has(p.id)||p.watched===!0;return n("div",{ref:_?h:void 0,className:`${N.episodeItem} ${S?N.watched:""} ${_?N.active:""}`,onClick:()=>c(p.id),children:[p.thumbnail&&n("img",{src:p.thumbnail,alt:"",loading:"lazy",decoding:"async",className:N.episodeThumb}),n("span",{className:N.episodeText,children:[n("span",{className:N.episodeLabel,children:p.label??`Episode ${p.id}`}),p.sublabel&&n("span",{className:N.episodeSub,children:p.sublabel})]})]},p.id)})})]})},Ds=({variant:e="sidebar",count:r=12})=>n("div",{className:`${N.episodeListContainer} ${e==="drawer"?N.drawerContainer:""}`,children:[n("div",{className:`${N.episodeListHeader} ${e==="drawer"?N.drawerHeader:""}`,children:[n("h3",{className:N.episodeListTitle,children:"Episodes"}),n("div",{className:N.rangeSelector,children:[n(ge,{width:"60px",height:"28px",variant:"rectangular"}),n(ge,{width:"60px",height:"28px",variant:"rectangular"}),n(ge,{width:"60px",height:"28px",variant:"rectangular"})]})]}),n("div",{className:`${N.episodeList} ${e==="drawer"?N.drawerList:""}`,children:Array.from({length:r}).map((t,c)=>n("div",{className:N.episodeItem,style:{border:"none",background:"transparent"},children:n(ge,{width:"120px",height:"1.2rem",variant:"text"})},c))})]}),Oo="_shell_cys6s_1",qo="_overlay_cys6s_10",Ho="_drawer_cys6s_21",zo="_handle_cys6s_56",Wo="_header_cys6s_64",Vo="_headerCopy_cys6s_73",Uo="_kicker_cys6s_79",Ko="_title_cys6s_87",Go="_closeBtn_cys6s_94",Xo="_body_cys6s_116",Q={shell:Oo,overlay:qo,drawer:Ho,handle:zo,header:Wo,headerCopy:Vo,kicker:Uo,title:Ko,closeBtn:Go,body:Xo};function Os({isOpen:e,onClose:r,episodes:t,currentEpisode:c,watchedEpisodes:o=[],onEpisodeClick:u,title:v,header:C}){return $(()=>{if(!e)return;const i=l=>{l.key==="Escape"&&r()},h=document.body.style.overflow;return document.body.style.overflow="hidden",document.addEventListener("keydown",i),()=>{document.body.style.overflow=h,document.removeEventListener("keydown",i)}},[e,r]),e?Tt(n("div",{className:Q.shell,role:"dialog","aria-modal":"true","aria-label":"Episode picker",children:[n("button",{className:Q.overlay,type:"button",onClick:r,"aria-label":"Close episodes"}),n("aside",{className:Q.drawer,children:[n("div",{className:Q.handle}),n("div",{className:Q.header,children:[n("div",{className:Q.headerCopy,children:[n("span",{className:Q.kicker,children:"Episode picker"}),n("h3",{className:Q.title,children:"Choose an episode"})]}),n("button",{className:Q.closeBtn,type:"button",onClick:r,"aria-label":"Close",children:n(J,{name:"times"})})]}),n("div",{className:Q.body,children:n(Do,{episodes:t,currentEpisode:c,watchedEpisodes:o,onEpisodeClick:u,variant:"drawer",title:v,header:C})})]})]}),document.body):null}function Te(){return document}function Ye(e){const r=Te();if(document.fullscreenElement)return document.fullscreenElement;if(r.webkitFullscreenElement)return r.webkitFullscreenElement;const t=e;return t?.webkitDisplayingFullscreen?t:null}function se(e){return Ye(e)!==null}async function Qo(e,r){if(Ye(r))return;const t=e;try{if(typeof e.requestFullscreen=="function"){await e.requestFullscreen();return}if(typeof t.webkitRequestFullscreen=="function"){await t.webkitRequestFullscreen();return}if(typeof t.webkitRequestFullScreen=="function"){await t.webkitRequestFullScreen();return}}catch{}const c=r;if(c&&typeof c.webkitEnterFullscreen=="function"){if(c.webkitSupportsFullscreen===!1)return;try{await c.webkitEnterFullscreen()}catch{}}}async function jo(e){const r=Te();try{if(document.fullscreenElement&&typeof document.exitFullscreen=="function"){await document.exitFullscreen();return}if(r.webkitFullscreenElement&&typeof r.webkitExitFullscreen=="function"){await r.webkitExitFullscreen();return}}catch{}const t=e;if(t?.webkitDisplayingFullscreen&&typeof t.webkitExitFullscreen=="function"){try{t.webkitExitFullscreen()}catch{}return}try{typeof r.webkitCancelFullScreen=="function"?r.webkitCancelFullScreen():!document.fullscreenElement&&typeof document.exitFullscreen=="function"&&(document.fullscreenElement??r.webkitFullscreenElement)&&await document.exitFullscreen()}catch{}}async function Jo(e,r){!e&&!r||(se(r)?await jo(r):e&&await Qo(e,r))}function Yo(e,r){const t=()=>{try{r(se(e()))}catch{}},c=Te(),o=t;c.addEventListener("fullscreenchange",t),c.addEventListener("webkitfullscreenchange",o),c.addEventListener("webkitbeginfullscreen",o,!0),c.addEventListener("webkitendfullscreen",o,!0);const u=e();return u?.addEventListener("webkitbeginfullscreen",o),u?.addEventListener("webkitendfullscreen",o),()=>{c.removeEventListener("fullscreenchange",t),c.removeEventListener("webkitfullscreenchange",o),c.removeEventListener("webkitbeginfullscreen",o,!0),c.removeEventListener("webkitendfullscreen",o,!0),u?.removeEventListener("webkitbeginfullscreen",o),u?.removeEventListener("webkitendfullscreen",o)}}const qs=({skipIntervals:e,showId:r,episodeNumber:t,episodeCount:c,sourceType:o,showMeta:u})=>{const v=Mt(),C=Pt(),i=y(null),h=y(null),l=y(null),P=y(null),f=y(!1),x=y(null),p=y(0),_=y(1),S=y({mouse:!1,keyboard:!1}),a=y(null),b=y(null),g=y(!1),M=y(Math.random().toString(36).substring(2)),[R,W]=E(!1),[G,L]=E(()=>{try{return localStorage.getItem("playerMuted")==="true"}catch{return!1}}),[q,U]=E(()=>{try{const s=parseFloat(localStorage.getItem("playerVolume")||"");return isNaN(s)?1:Math.max(0,Math.min(1,s))}catch{return 1}}),[d,m]=E(!1),[F,V]=E(0),[j,D]=E(!0),[ee,Pe]=E(!1),[Ze,Ie]=E({time:0,position:null}),[be,et]=E(localStorage.getItem("autoSkipEnabled")==="true"),[tt,we]=E(null),[nt,rt]=E(!1),[te]=E(co),[ot,st]=E(te.fontSize),[ct,it]=E(te.position),[at,lt]=E(te.bgOpacity),[ut,dt]=E(te.bgColor),[pt,ft]=E(te.textColor),[mt,_t]=E(te.edge),[vt,ht]=E(te.bold),[gt,yt]=E([]),[bt,wt]=E(null),[Ct,St]=E(!1),[kt,Et]=E(!1),[pe,X]=E(!1),[xt,fe]=E(!1),[Lt,Ne]=E(()=>{try{return localStorage.getItem("playerUseNativeControls")==="true"}catch{return!1}}),ce=y(!1),Ce=y(-1),me=I(()=>{const s=i.current;return!r||!t||!u?.name?null:{showId:r,episodeNumber:t,episodeCount:c,currentTime:s?s.currentTime:0,duration:s?s.duration:0,showName:u.name,showThumbnail:u.thumbnail,nativeName:u.names?.native,englishName:u.names?.english,genres:Array.isArray(u.genres)?u.genres.map(k=>typeof k=="string"?k:k?.name).filter(Boolean):void 0,popularityScore:u.score,type:u.type,isPlaying:s?!s.paused:!0,sessionId:M.current,isAdult:u.isAdult}},[r,t,c,u]),O=I((s=!1,k=!1)=>{if(ce.current)return!1;const B=me();if(!B)return!1;const w=i.current;if(!w&&o!=="iframe")return!1;const A=w?w.currentTime>=w.duration*.8:!1;let H=w?w.currentTime:0;if(s&&A&&(H=w?w.duration:0),!k){if(H===0&&!A)return!1;const K=w?Math.abs(H-Ce.current):0;if(!s&&w&&H!==w.duration&&K<5)return!1}return B.currentTime=H,Ce.current=H,s?(async()=>{try{await Ke.progress.updateProgress.mutate(B),v.invalidateQueries({queryKey:["video-sources",r,t]}),v.invalidateQueries({queryKey:["allContinueWatching"]}),v.invalidateQueries({queryKey:["thisWeekSchedule"]}),v.invalidateQueries(C.continueWatching.pathFilter())}catch(K){console.error("Failed to update progress:",K)}})():It("progress.updateProgress",B).catch(K=>console.error("Failed to update progress:",K)),!0},[me,o,v,r,t,C.continueWatching]);$(()=>{const s=i.current;s&&(s.volume=q,s.muted=G)},[i,q,G]),$(()=>{const s=()=>{ce.current||O(!0)};window.addEventListener("beforeunload",s);const k=x,B=P;return()=>{window.removeEventListener("beforeunload",s),ce.current||O(!0),k.current&&clearTimeout(k.current),B.current&&clearTimeout(B.current)}},[O]);const _e=I(()=>{const s=h.current;s&&Jo(s,i.current).catch(k=>{console.error(`Error attempting to toggle full-screen mode: ${k?.message} (${k?.name})`)})},[]),ve=I(()=>{i.current&&(i.current.paused?i.current.play().catch(()=>console.warn("Autoplay was prevented.")):(i.current.pause(),D(!0)))},[D]),ne=I(()=>{const s=i.current;if(!s)return;const k=S.current.mouse||S.current.keyboard;s.playbackRate=k?2:_.current},[]),ie=I(s=>{S.current.mouse!==s&&(S.current.mouse=s,fe(s||S.current.keyboard),ne())},[ne]),re=I(s=>{S.current.keyboard!==s&&(S.current.keyboard=s,fe(S.current.mouse||s),ne())},[ne]),ae=I(s=>{i.current&&(i.current.currentTime+=s,x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{O(!1,!0)},1500),D(!0))},[O,D]),he=I(()=>{if(!i.current)return;const s=!i.current.muted;i.current.muted=s,L(s),localStorage.setItem("playerMuted",String(s)),!s&&i.current.volume===0&&(i.current.volume=.5,U(.5),localStorage.setItem("playerVolume",String(.5))),D(!0)},[D]);$(()=>{const s=()=>i.current,k=Yo(s,B=>{m(B),B&&D(!0)});return m(se(s())),k},[D]),$(()=>{const s=B=>{if(!B.target.closest('input, textarea, button, select, a, [role="button"], [contenteditable="true"]')){if(B.code==="Space"){if(B.preventDefault(),g.current)return;g.current=!0,b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,g.current&&re(!0)},180);return}switch(B.key.toLowerCase()){case"f":_e();break;case"m":he();break;case"arrowright":ae(10);break;case"arrowleft":ae(-10);break;case"arrowup":if(B.preventDefault(),i.current){const A=Math.min(1,i.current.volume+.1);i.current.volume=A,U(A)}break;case"arrowdown":if(B.preventDefault(),i.current){const A=Math.max(0,i.current.volume-.1);i.current.volume=A,U(A)}break}}},k=B=>{if(B.code==="Space"){if(B.preventDefault(),g.current=!1,S.current.keyboard){re(!1);return}b.current&&(clearTimeout(b.current),b.current=null,ve())}};return document.addEventListener("keydown",s),document.addEventListener("keyup",k),()=>{document.removeEventListener("keydown",s),document.removeEventListener("keyup",k),b.current&&(clearTimeout(b.current),b.current=null),g.current=!1,re(!1),fe(!1)}},[re,ve,_e,he,ae]),$(()=>{const s=H=>H?!!H.closest('[data-speed-boost-ignore="true"], [data-player-ui="true"], button, input, select, textarea, a, [role="button"], [role="slider"], [contenteditable="true"]'):!0,k=H=>{if(H.button!==0)return;const Y=H.target;if(!Y||s(Y))return;const K=h.current;!K||!K.contains(Y)||(a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,ie(!0)},180))},B=H=>{const Y=H.target;if(!Y||s(Y))return;const K=h.current;!K||!K.contains(Y)||(a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,ie(!0)},180))},w=()=>{a.current&&(clearTimeout(a.current),a.current=null),ie(!1)},A=()=>{a.current&&(clearTimeout(a.current),a.current=null),g.current=!1,b.current&&(clearTimeout(b.current),b.current=null),re(!1),ie(!1),fe(!1)};return document.addEventListener("mousedown",k),document.addEventListener("mouseup",w),document.addEventListener("touchstart",B,{passive:!0}),document.addEventListener("touchend",w),document.addEventListener("touchcancel",w),document.addEventListener("pointerup",w),document.addEventListener("pointercancel",w),window.addEventListener("blur",A),()=>{document.removeEventListener("mousedown",k),document.removeEventListener("mouseup",w),document.removeEventListener("touchstart",B),document.removeEventListener("touchend",w),document.removeEventListener("touchcancel",w),document.removeEventListener("pointerup",w),document.removeEventListener("pointercancel",w),window.removeEventListener("blur",A),a.current&&(clearTimeout(a.current),a.current=null)}},[re,ie]);const $e=I(()=>{W(!0),X(!1),setTimeout(()=>O(!1,!0),50)},[O]),Me=I(()=>{W(!0),X(!1)},[]),Re=I(()=>{const s=i.current;s&&!s.paused&&s.readyState>=3&&!s.seeking||X(!0)},[]),Ae=I(()=>{X(!1)},[]),Fe=I(()=>{W(!1),X(!1),D(!0),setTimeout(()=>O(!1,!0),50)},[O]),De=y(!1);De.current=pe,$(()=>{if(!pe)return;let s=i.current?.currentTime??0,k=0;const B=window.setInterval(()=>{const w=i.current;if(!w)return;k+=1;const A=w.currentTime,H=A!==s;if(s=A,!(w.paused||w.seeking)){if(H||w.readyState>=3){X(!1);return}k>=24&&w.readyState>=2&&!w.ended&&X(!1)}},500);return()=>window.clearInterval(B)},[pe]),$(()=>{ce.current=!1,Ce.current=-1,p.current=0,M.current=Math.random().toString(36).substring(2),V(0),X(!1)},[r,t]);const Oe=I(()=>{V(0),X(!1)},[]);$(()=>{const s=M.current;return()=>{Nt(s)}},[r,t]),$(()=>{if(o!=="iframe")return;O(!1,!0);const s=setInterval(()=>{O(!1,!0)},6e4);return()=>clearInterval(s)},[o,O]);const qe=I(()=>{V(i.current?.duration||0),ne()},[ne]),He=I(()=>{if(i.current){const s=i.current.muted,k=i.current.volume;L(s),U(k),localStorage.setItem("playerMuted",String(s)),localStorage.setItem("playerVolume",String(k))}},[]),ze=I(()=>{},[]),We=I(()=>{const s=i.current;if(!s)return;De.current&&!s.paused&&!s.seeking&&X(!1);const k=s.currentTime||0,B=Date.now();B-p.current>6e4&&O()&&(p.current=B);const w=e.find(A=>k>=A.start_time&&k<A.end_time)||null;we(A=>A?.skip_id!==w?.skip_id?w:A),be&&w&&!s.paused&&(s.currentTime=w.end_time,we(null))},[e,be,O]),Ve=I(()=>{const s=me();s&&(s.currentTime=s.duration,Ke.progress.updateProgress.mutate(s).then(()=>{v.invalidateQueries({queryKey:["video-sources",r,t]}),v.invalidateQueries({queryKey:["allContinueWatching"]})}).catch(k=>console.error("Failed to send final progress:",k)))},[me,v,r,t]),Ue=I(()=>{ce.current=!0,Ve()},[Ve]);$(()=>{const s=()=>{ee&&(Pe(!1),Ie({time:0,position:null}),f.current&&i.current?.play(),O(!1,!0))};return ee&&(document.addEventListener("mouseup",s),document.addEventListener("pointerup",s),document.addEventListener("touchend",s),document.addEventListener("pointercancel",s),document.addEventListener("touchcancel",s)),()=>{document.removeEventListener("mouseup",s),document.removeEventListener("pointerup",s),document.removeEventListener("touchend",s),document.removeEventListener("pointercancel",s),document.removeEventListener("touchcancel",s)}},[ee,O]);const Bt=de(()=>({togglePlay:ve,seek:ae,toggleMute:he,toggleFullscreen:_e,onPlay:$e,onPause:Fe,onLoadedMetadata:qe,formatTime:$t,onVolumeChange:He,onProgress:ze,onTimeUpdate:We,onEnded:Ue,setShowControls:D,setIsScrubbing:Pe,setHoverTime:Ie,setIsAutoSkipEnabled:et,setCurrentSkipInterval:we,setShowCCMenu:rt,setSubtitleFontSize:st,setSubtitlePosition:it,setSubtitleBgOpacity:lt,setSubtitleBgColor:dt,setSubtitleTextColor:ft,setSubtitleEdge:_t,setSubtitleBold:ht,setAvailableSubtitles:yt,setActiveSubtitleTrack:wt,setShowSettings:St,setShowVolumeSlider:Et,wasPlayingBeforeScrub:f,inactivityTimer:P,setIsFullscreen:m,onWaiting:Re,onPlaying:Me,onCanPlay:Ae,sendProgressUpdate:O,setUseNativeControls:Ne,resetMediaState:Oe}),[ve,ae,he,_e,$e,Fe,qe,He,ze,We,Ue,m,Re,Me,Ae,O,Ne,Oe]);return{refs:{videoRef:i,playerContainerRef:h,progressBarRef:l},state:{isPlaying:R,isMuted:G,volume:q,isFullscreen:d,duration:F,showControls:j,isScrubbing:ee,hoverTime:Ze,isAutoSkipEnabled:be,currentSkipInterval:tt,showCCMenu:nt,subtitleFontSize:ot,subtitlePosition:ct,subtitleBgOpacity:at,subtitleBgColor:ut,subtitleTextColor:pt,subtitleEdge:mt,subtitleBold:vt,availableSubtitles:gt,activeSubtitleTrack:bt,showSettings:Ct,showVolumeSlider:kt,isBuffering:pe,isSpeedBoostActive:xt,useNativeControls:Lt},actions:Bt}};function Zo(){try{return typeof navigator<"u"&&/android/i.test(navigator.userAgent)}catch{return!1}}function Hs(e,r){const{refs:t,actions:c}=e,o=y(r);o.current=r;const u=y(!1),v=y(!1),C=i=>{try{if(i)return i.matches}catch{}try{return window.innerWidth>window.innerHeight}catch{return!1}};$(()=>{if(!Zo())return;let i=null;const h=()=>{const l=t.playerContainerRef.current;if(C(i)){if(!o.current||!l||se(t.videoRef.current)||v.current)return;u.current=!0,c.toggleFullscreen()}else v.current=!1,u.current&&(u.current=!1,se(t.videoRef.current)&&c.toggleFullscreen())};try{i=window.matchMedia("(orientation: landscape)"),i.addEventListener?i.addEventListener("change",h):i.addListener(h)}catch{}return h(),()=>{try{i&&(i.removeEventListener?i.removeEventListener("change",h):i.removeListener(h))}catch{}}},[c,t.playerContainerRef,t.videoRef,r]),$(()=>{const i=()=>{if(!se(t.videoRef.current)){u.current=!1;try{window.matchMedia("(orientation: landscape)").matches&&(v.current=!0)}catch{v.current=!0}}};return document.addEventListener("fullscreenchange",i),document.addEventListener("webkitfullscreenchange",i),()=>{document.removeEventListener("fullscreenchange",i),document.removeEventListener("webkitfullscreenchange",i)}},[t.videoRef])}const es=e=>Math.max(8,Math.min(40,Math.ceil(e/16.7)+4));function zs({videoRef:e,canvasRef:r,delayMs:t,enabled:c}){const o=y(t);o.current=t;const u=y([]),v=y(-1),C=y(-1),i=y(!1),h=y(0),l=y(null);$(()=>{const P=a=>{if(a)try{a.close()}catch{}},f=()=>{for(const a of u.current)P(a.bitmap);u.current=[]};if(!c){f(),v.current=-1,C.current=-1,i.current=!1,h.current=0;return}let x=!1;const p=()=>{l.current!==null&&(cancelAnimationFrame(l.current),l.current=null)},_=()=>{x||(p(),l.current=requestAnimationFrame(()=>{S()}))};async function S(){if(x)return;const a=e.current,b=r.current;if(!a||!b||a.videoWidth===0){_();return}if(a.paused||a.ended||document.hidden||a.readyState<HTMLMediaElement.HAVE_CURRENT_DATA){_();return}const g=a.getVideoPlaybackQuality().totalVideoFrames;if(g===v.current){_();return}(a.seeking||C.current>=0&&Math.abs(a.currentTime-C.current)>.5)&&(f(),i.current=!1,h.current=0,v.current=-1),C.current=a.currentTime,(b.width!==a.videoWidth||b.height!==a.videoHeight)&&(b.width=a.videoWidth,b.height=a.videoHeight);const M=Math.max(0,o.current||0);M>h.current&&(i.current=!1);try{const R=await createImageBitmap(a);if(x){P(R);return}v.current=g;const W=performance.now(),G=b.getContext("2d"),L=m=>{G&&G.drawImage(m,0,0,b.width,b.height)};if(M<=0){f(),i.current=!1,h.current=0,L(R),P(R),_();return}const q=u.current;q.push({bitmap:R,capture:W});const U=es(M);for(;q.length>U;)P(q.shift()?.bitmap);let d=-1;for(let m=q.length-1;m>=0;m--)if(W-q[m].capture>=M){d=m;break}if(d!==-1){for(let F=0;F<d;F++)P(q.shift()?.bitmap);const m=q.shift();m?(L(m.bitmap),P(m.bitmap),i.current=!0,h.current=M):L(R)}else if(!i.current)L(R);else{const m=q.shift();m?(L(m.bitmap),P(m.bitmap)):L(R)}}catch{}_()}return _(),()=>{x=!0,p();for(const a of u.current)try{a.bitmap.close()}catch{}u.current=[]}},[c,e,r])}const ts="_row_1fq55_1",ns="_rowHeader_1fq55_9",rs="_rowLabel_1fq55_17",os="_rowValue_1fq55_28",ss="_slider_1fq55_36",cs="_swatches_1fq55_99",is="_swatch_1fq55_99",as="_swatchPicked_1fq55_114",ls="_colorInput_1fq55_120",us="_segmented_1fq55_131",z={row:ts,rowHeader:ns,rowLabel:rs,rowValue:os,slider:ss,swatches:cs,swatch:is,swatchPicked:as,colorInput:ls,segmented:us},ds=({label:e,display:r,min:t,max:c,step:o,value:u,percent:v,onChange:C,onCommit:i})=>n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:[n("span",{className:z.rowLabel,children:e}),n("span",{className:z.rowValue,children:r})]}),n("input",{type:"range",className:z.slider,min:t,max:c,step:o,value:u,"aria-label":e,"data-speed-boost-ignore":"true",onInput:h=>C(Number(h.target.value)),onMouseDown:h=>h.stopPropagation(),onPointerDown:h=>h.stopPropagation(),onTouchStart:h=>h.stopPropagation(),onPointerUp:i,onPointerCancel:i,onTouchEnd:i,onKeyUp:i,onBlur:i,style:{"--slider-percent":`${v}%`}})]}),Ws=({label:e,colors:r,value:t,onChange:c})=>n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:n("span",{className:z.rowLabel,children:e})}),n("div",{className:z.swatches,children:[r.map(o=>n("button",{type:"button","aria-label":`${e} ${o}`,"aria-pressed":t.toLowerCase()===o.toLowerCase(),onClick:()=>c(o),className:`${z.swatch} ${t.toLowerCase()===o.toLowerCase()?z.swatchPicked:""}`,style:{backgroundColor:o}},o)),n("input",{type:"color","aria-label":`Custom ${e.toLowerCase()}`,className:z.colorInput,value:t,"data-speed-boost-ignore":"true",onInput:o=>c(o.target.value),onMouseDown:o=>o.stopPropagation(),onPointerDown:o=>o.stopPropagation(),onTouchStart:o=>o.stopPropagation()})]})]});function Vs({label:e,options:r,value:t,onChange:c}){return n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:n("span",{className:z.rowLabel,children:e})}),n("div",{className:z.segmented,role:"group","aria-label":e,children:r.map(o=>n("button",{type:"button","aria-pressed":t===o,onClick:()=>c(o),children:[n("span",{children:o}),t===o&&n(J,{name:"check",size:10})]},o))})]})}const ye=10,Be=500,Ee=e=>Math.max(0,Math.min(Be,Math.round(e))),Us=({isOpen:e,ms:r,onChange:t,onApply:c,onClose:o,testClipActive:u,onTestClip:v})=>e?n("div",{role:"dialog","aria-label":"Calibrate audio video sync","data-speed-boost-ignore":"true",onClick:C=>C.stopPropagation(),style:{position:"absolute",right:8,bottom:112,width:"min(260px, calc(100% - 16px))",maxHeight:"calc(100% - 124px)",overflowY:"auto",overflowX:"hidden",zIndex:60,display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:12,borderRadius:"var(--radius-lg)",border:"1px solid var(--glass-border)",background:"rgba(18, 18, 22, 0.95)",boxShadow:"var(--glass-shadow)",backdropFilter:"blur(14px)",WebkitBackdropFilter:"blur(14px)",boxSizing:"border-box"},children:[n("div",{style:{fontSize:"0.8rem",fontWeight:800,color:"var(--text-primary)"},children:"A/V sync"}),n("div",{children:n(le,{size:"sm",variant:"secondary",onClick:v,children:u?"Back to video":"Preview test clip"})}),n("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,flexWrap:"wrap"},children:[n(le,{size:"sm",onClick:()=>t(Ee(r-ye)),"aria-label":"Decrease delay by 10 milliseconds",children:["− ",ye,"ms"]}),n("div",{style:{fontSize:"1.1rem",fontWeight:800,minWidth:64,textAlign:"center"},children:[r,"ms"]}),n(le,{size:"sm",onClick:()=>t(Ee(r+ye)),"aria-label":"Increase delay by 10 milliseconds",children:["+ ",ye,"ms"]})]}),n(ds,{label:"Video delay",display:`${r}ms`,min:0,max:Be,step:5,value:r,percent:r/Be*100,onChange:C=>t(Ee(C))}),n("div",{style:{display:"flex",gap:8,justifyContent:"center",flexWrap:"wrap"},children:[n(le,{size:"sm",variant:"secondary",onClick:o,children:"Cancel"}),n(le,{size:"sm",onClick:c,children:["Apply ",r,"ms"]})]})]}):null;export{Us as A,Ts as B,$s as C,Z as D,Ds as E,ds as M,Fs as P,Ms as S,Bs as T,As as U,Rs as a,zs as b,Hs as c,ks as d,Es as e,Ps as f,Ns as g,Ls as h,to as i,hs as j,Do as k,bs as l,vs as m,oe as n,Os as o,Ss as p,ws as q,xs as r,oo as s,Is as t,qs as u,Cs as v,gs as w,ys as x,Ws as y,Vs as z};
9
+ `}function bs(e){return[`font-size: ${e.fontSize}rem`,`color: ${e.textColor}`,`background-color: ${Qe(e.bgColor,e.bgOpacity)}`,`font-weight: ${e.bold?"700":"400"}`,`text-shadow: ${je(e.edge,e.bgOpacity)}`,"padding: 0.2em 0.5em","border-radius: 0.25em","text-align: center","position: absolute","left: 50%","transform: translateX(-50%)","max-width: 92%","white-space: pre-wrap","overflow-wrap: break-word","line-height: 1.4"].join(`;
10
+ `)+";"}const to=new Set(["b","i","u","strong","em"]);function ws(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/&lt;(\/?)([a-zA-Z]+)&gt;/g,(t,c,o)=>to.has(o.toLowerCase())?`<${c}${o.toLowerCase()}>`:t)}function Cs(e){return e.replace(/<[^>]*>/g,"")}const Ss=["#ffffff","#ffff00","#7CFC00","#00e5ff","#ff9ff3","#ffa502"],ks=["#000000","#1e272e","#2f3542","#3d0c02","#0c3d2e","#ffffff"];function Es(e,r){const t=Number.isFinite(e)?e*16:Z.fontSize*16;return!Number.isFinite(r)||r<=0?t/16:Math.min(t,Math.max(13,r*.07))/16}function Ls(e){const r=Math.abs(e/1e3).toFixed(1);return e>0?`+${r}s`:e<0?`-${r}s`:"0.0s"}function xs(e,r){const t=e.clientWidth||0,c=e.clientHeight||0,o=e.videoWidth>0&&e.videoHeight>0?e.videoWidth/e.videoHeight:0;let u=c;o>0&&t>0&&c>0&&(u=t/c>o?c:t/o);const v=Math.max(0,(c-u)/2),C=Math.max(0,Math.min(100,Number(r)||0))/100*u;return v+C}const no="_centerControls_61n7k_1",ro="_centerSkipBtn_61n7k_15",oo="_centerPlayPause_61n7k_40",so="_playIconOffset_61n7k_71",ue={centerControls:no,centerSkipBtn:ro,centerPlayPause:oo,playIconOffset:so},Bs=({isPlaying:e,onTogglePlay:r,onSkipBack:t,onSkipForward:c,skipSeconds:o=10})=>n("div",{className:ue.centerControls,onClick:u=>u.stopPropagation(),children:[n("button",{className:ue.centerSkipBtn,onClick:t,title:`Skip back ${o}s`,"aria-label":`Skip back ${o} seconds`,children:n(J,{name:"replay-10"})}),n("button",{className:ue.centerPlayPause,"data-speed-boost-ignore":"true",onClick:r,"aria-label":e?"Pause":"Play",children:e?n(J,{name:"pause"}):n(J,{name:"play",className:ue.playIconOffset})}),n("button",{className:ue.centerSkipBtn,onClick:c,title:`Skip forward ${o}s`,"aria-label":`Skip forward ${o} seconds`,children:n(J,{name:"forward-10"})})]}),Ts=({classes:e,videoRef:r,duration:t,formatTime:c,isScrubbing:o,buffered:u="auto",onSeek:v,onScrubStart:C,onScrubMove:i,onScrubEnd:h,timeLabelRef:l,children:P})=>{const f=y(null),L=y(null),p=y(null),_=y(null),S=y(null),a=y(!1),b=y(o);b.current=o;const g=y({onScrubMove:i,onScrubEnd:h});g.current={onScrubMove:i,onScrubEnd:h};const[M,A]=E({time:0,position:null});$(()=>{const d=r.current;if(!d)return;const m=j=>{const D=j/t*100||0;L.current&&(L.current.style.width=`${D}%`),p.current&&(p.current.style.left=`${D}%`),l?.current&&(l.current.innerText=`${c(j)} / ${c(t)}`)},R=()=>{o||m(d.currentTime)},V=()=>{if(u==="auto"&&d.buffered.length>0){const D=d.buffered.end(d.buffered.length-1)/t*100||0;_.current&&(_.current.style.width=`${D}%`)}};return m(d.currentTime),V(),d.addEventListener("timeupdate",R),d.addEventListener("progress",V),()=>{d.removeEventListener("timeupdate",R),d.removeEventListener("progress",V)}},[r,t,o,u,c,l]);const W=d=>{if(!f.current)return 0;const m=f.current.getBoundingClientRect();return Math.min(1,Math.max(0,(d-m.left)/m.width))},G=d=>{const m=d*t,R=m/t*100||0;L.current&&(L.current.style.width=`${R}%`),p.current&&(p.current.style.left=`${R}%`),l?.current&&(l.current.innerText=`${c(m)} / ${c(t)}`);const V=f.current?.getBoundingClientRect();A({time:m,position:V?d*V.width:null})};$(()=>{if(!o){S.current=null;return}const d=R=>{if(S.current!==null&&R.pointerId!==S.current||!t)return;const V=W(R.clientX);g.current.onScrubMove(V);const j=V*t,D=j/t*100||0;L.current&&(L.current.style.width=`${D}%`),p.current&&(p.current.style.left=`${D}%`),l?.current&&(l.current.innerText=`${c(j)} / ${c(t)}`);const ee=f.current?.getBoundingClientRect();A({time:j,position:ee?V*ee.width:null})},m=R=>{S.current!==null&&R.pointerId!==S.current||(S.current=null,a.current=!0,R.pointerType!=="mouse"&&A({time:0,position:null}),g.current.onScrubEnd())};return document.addEventListener("pointermove",d),document.addEventListener("pointerup",m),document.addEventListener("pointercancel",m),()=>{document.removeEventListener("pointermove",d),document.removeEventListener("pointerup",m),document.removeEventListener("pointercancel",m)}},[o,t,c,l]);const x=d=>{if(d.pointerType==="mouse"&&d.button!==0||!r.current||!t)return;d.preventDefault(),S.current=d.pointerId;try{f.current?.setPointerCapture(d.pointerId)}catch{}b.current||C();const m=W(d.clientX);i(m),G(m)},q=d=>{if(!t||b.current||d.pointerType!=="mouse")return;const m=W(d.clientX);A({time:m*t,position:d.clientX-(f.current?.getBoundingClientRect().left??0)})},U=d=>{if(!(S.current!==null&&d.pointerId!==S.current)&&b.current){S.current=null,a.current=!0,d.pointerType!=="mouse"&&A({time:0,position:null});try{f.current?.hasPointerCapture(d.pointerId)&&f.current.releasePointerCapture(d.pointerId)}catch{}h()}};return n("div",{className:`${e.container} ${o&&e.scrubbing?e.scrubbing:""}`,ref:f,role:"slider","aria-label":"Seek","aria-valuemin":0,"aria-valuemax":Math.round(t||0),"aria-valuenow":Math.round((Number(L.current?.style.width?.replace("%",""))||0)*(t||0)/100),tabIndex:0,onClick:d=>{if(a.current){a.current=!1;return}!r.current||isNaN(t)||t===0||v(W(d.clientX))},onPointerDown:x,onPointerMove:q,onPointerUp:U,onPointerCancel:U,onMouseMove:d=>{if(o||!t)return;const m=W(d.clientX);A({time:m*t,position:d.clientX-(f.current?.getBoundingClientRect().left??0)})},onMouseLeave:()=>{o||A({time:0,position:null})},onKeyDown:d=>{if(!(!r.current||!t)&&(d.key==="ArrowRight"||d.key==="ArrowLeft")){d.preventDefault();const m=(d.key==="ArrowRight"?5:-5)/t,R=r.current.currentTime/t||0;v(Math.min(1,Math.max(0,R+m)))}},children:[M.position!==null&&n("div",{className:e.timeBubble,style:{left:M.position},children:c(M.time)}),n("div",{className:e.bar,children:[n("div",{className:e.buffered,ref:_,style:u==="full"?{width:"100%"}:void 0}),n("div",{className:e.watched,ref:L}),n("div",{className:e.thumb,ref:p,onMouseDown:d=>{d.preventDefault(),r.current&&(b.current||C())}}),P]})]})};function ke(){try{if(typeof window>"u")return!1;const e=window.matchMedia?.("(pointer: coarse)").matches??!1,t=(navigator.maxTouchPoints??0)>0||"ontouchstart"in window;return e||t}catch{return!1}}function Je(){const[e,r]=E(ke);return $(()=>{r(ke());let t=null;const c=()=>r(ke());try{t=window.matchMedia("(pointer: coarse)"),t.addEventListener?t.addEventListener("change",c):t.addListener(c)}catch{}return window.addEventListener("touchstart",c,{passive:!0,once:!0}),()=>{try{t&&(t.removeEventListener?t.removeEventListener("change",c):t.removeListener(c))}catch{}window.removeEventListener("touchstart",c)}},[]),e}const Ge=280;function co(e){return e?!!e.closest('button, input, select, textarea, a, [role="button"], [data-player-ui="true"]'):!1}const Ps=({player:e,topBar:r,centerControls:t,bottomBar:c,settingsPanel:o,overlays:u,isInteracting:v=!1,className:C,chromeDisabled:i=!1,children:h})=>{const{state:l,refs:P,actions:f}=e,L=P.playerContainerRef,_=Je()?5e3:3e3,S=y(0),a=y(null),b=y(v);b.current=v;const g=N(()=>{const x=f.inactivityTimer.current;x&&(window.clearTimeout(x),f.inactivityTimer.current=null)},[f]),M=N(()=>{g(),l.isPlaying&&(b.current||l.useNativeControls||(f.inactivityTimer.current=window.setTimeout(()=>{if(b.current)return;f.setShowControls(!1);const x=L.current;x&&l.isFullscreen&&(x.style.cursor="none")},_)))},[f,g,L,_,l.isFullscreen,l.isPlaying,l.useNativeControls]),A=N(()=>{const x=L.current;x&&(x.style.cursor="default"),!l.showControls&&!l.useNativeControls&&f.setShowControls(!0),M()},[f,L,M,l.showControls,l.useNativeControls]);$(()=>{if(l.showControls){if(!l.isPlaying){g();return}if(v||l.isScrubbing||l.showSettings||l.showVolumeSlider){f.setShowControls(!0),g();return}M()}},[f,g,v,M,l.isPlaying,l.isScrubbing,l.showControls,l.showSettings,l.showVolumeSlider]),$(()=>()=>g(),[g]);const W=N(x=>{const q=x.target;if(co(q))return;const U=Date.now(),d=U-S.current<Ge;if(S.current=U,d){a.current&&(window.clearTimeout(a.current),a.current=null),f.toggleFullscreen();return}a.current&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,f.setShowControls(!l.showControls),l.showControls?M():A()},Ge)},[f,M,l.showControls,A]);$(()=>()=>{a.current&&window.clearTimeout(a.current)},[]);const G=l.showControls||l.isScrubbing||l.showSettings||l.showVolumeSlider;return n("div",{ref:L,className:`${oe.shell} ${l.isFullscreen?oe.shellFullscreen:""} ${C??""}`,onContextMenu:x=>x.preventDefault(),onPointerMove:x=>{x.pointerType==="mouse"&&A()},onMouseLeave:()=>{window.matchMedia?.("(hover: hover) and (pointer: fine)").matches&&l.isPlaying&&!b.current&&f.setShowControls(!1)},children:[n("div",{className:oe.stage,onClick:W,onContextMenu:x=>x.preventDefault(),children:h}),u,!i&&!l.useNativeControls&&n("div",{className:oe.uiLayer,onContextMenu:x=>x.preventDefault(),children:[n("div",{"data-player-ui":"true",children:r}),G&&t&&n("div",{"data-player-ui":"true",children:t}),n("div",{"data-player-ui":"true",children:c}),o&&n("div",{"data-player-ui":"true",children:o})]})]})},io=450,Ns=({muted:e,volume:r,volumeIcon:t,buttonClassName:c,sliderClassName:o,onToggleMute:u,onVolumeChange:v,onExpandedChange:C})=>{const i=Je(),[h,l]=E(!1),P=y(null),f=y(!1),L=y(null),p=N(g=>{l(g),C?.(g)},[C]);$(()=>()=>{P.current&&window.clearTimeout(P.current)},[]),$(()=>{if(!h)return;const g=M=>{L.current&&!L.current.contains(M.target)&&p(!1)};return document.addEventListener("pointerdown",g),()=>document.removeEventListener("pointerdown",g)},[h,p]);const _=e?0:r,S=()=>{f.current=!1,P.current&&window.clearTimeout(P.current),P.current=window.setTimeout(()=>{f.current=!0,p(!0)},io)},a=()=>{P.current&&(window.clearTimeout(P.current),P.current=null)},b=g=>{if(g.stopPropagation(),f.current){f.current=!1;return}if(i){h?u():p(!0);return}u()};return n("div",{ref:L,className:oe.volumeWrap,"data-expanded":h?"true":"false",onContextMenu:g=>g.preventDefault(),children:[n("button",{type:"button",className:c,onClick:b,onPointerDown:S,onPointerUp:a,onPointerLeave:a,onContextMenu:g=>g.preventDefault(),"aria-label":e?"Unmute":"Mute","aria-expanded":h,children:t}),n("input",{type:"range",min:"0",max:"1",step:"0.05",value:_,onChange:g=>v(parseFloat(g.target.value)),onClick:g=>g.stopPropagation(),onPointerDown:g=>g.stopPropagation(),onContextMenu:g=>g.preventDefault(),className:`${oe.volumeSlider} ${o??""}`,style:{"--volume-percent":`${_*100}%`},"aria-label":"Volume"})]})},ao="_statusArea_1xccu_1",lo="_toggleBtn_1xccu_20",uo="_shortcuts_1xccu_46",po="_shortcutGroup_1xccu_56",fo="_shortcut_1xccu_46",mo="_key_1xccu_70",_o="_label_1xccu_91",T={statusArea:ao,toggleBtn:lo,shortcuts:uo,shortcutGroup:po,shortcut:fo,key:mo,label:_o},Is=({showTheater:e=!0})=>{const[r,t]=E(!1);return n("div",{className:T.statusArea,children:[n("button",{type:"button",className:T.toggleBtn,onClick:()=>t(c=>!c),"aria-expanded":r,"aria-controls":"player-shortcuts",children:[n(J,{name:"keyboard",size:14}),n("span",{children:"Keyboard Shortcuts"}),r?n(J,{name:"chevron-up",size:12}):n(J,{name:"chevron-down",size:12})]}),r&&n("div",{id:"player-shortcuts",className:T.shortcuts,children:[n("div",{className:T.shortcutGroup,children:[n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"↑"}),n("span",{className:T.key,children:"↓"}),n("span",{className:T.label,children:"Volume"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"←"}),n("span",{className:T.key,children:"→"}),n("span",{className:T.label,children:"Seek"})]})]}),n("div",{className:T.shortcutGroup,children:[n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"Space"}),n("span",{className:T.label,children:"Play/Pause"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"F"}),n("span",{className:T.label,children:"Fullscreen"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"M"}),n("span",{className:T.label,children:"Mute"})]}),e&&n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"T"}),n("span",{className:T.label,children:"Theater"})]}),n("div",{className:T.shortcut,children:[n("span",{className:T.key,children:"N"}),n("span",{className:T.label,children:"Next"})]})]})]})]})},vo="_episodeListContainer_9tyin_1",ho="_drawerContainer_9tyin_9",go="_episodeListHeader_9tyin_14",yo="_drawerHeader_9tyin_20",bo="_episodeListTitle_9tyin_29",wo="_rangeSelector_9tyin_41",Co="_rangeButton_9tyin_47",So="_active_9tyin_70",ko="_episodeList_9tyin_1",Eo="_drawerList_9tyin_89",Lo="_episodeItem_9tyin_118",xo="_watched_9tyin_145",Bo="_episodeThumb_9tyin_167",To="_episodeText_9tyin_176",Po="_episodeLabel_9tyin_184",No="_episodeSub_9tyin_189",I={episodeListContainer:vo,drawerContainer:ho,episodeListHeader:go,drawerHeader:yo,episodeListTitle:bo,rangeSelector:wo,rangeButton:Co,active:So,episodeList:ko,drawerList:Eo,episodeItem:Lo,watched:xo,episodeThumb:Bo,episodeText:To,episodeLabel:Po,episodeSub:No},Io=({episodes:e,currentEpisode:r,watchedEpisodes:t=[],onEpisodeClick:c,variant:o="sidebar",title:u="Episodes",header:v})=>{const[C,i]=E(0),h=y(null),l=de(()=>e.map(p=>typeof p=="string"?{id:p,label:`Episode ${p}`}:p),[e]),P=de(()=>new Set(t),[t]);$(()=>{const p=h.current;if(!p)return;let _=p.parentElement;for(;_;){const b=window.getComputedStyle(_);if((b.overflowY==="auto"||b.overflowY==="scroll")&&_.scrollHeight>_.clientHeight)break;_=_.parentElement}if(!_)return;const S=_.getBoundingClientRect(),a=p.getBoundingClientRect();_.scrollTop+=a.top+a.height/2-(S.top+_.clientHeight/2)},[r,C]);const f=de(()=>{if(l.length<=100)return[];const p=[];for(let _=0;_<l.length;_+=100){const S=_+1,a=Math.min(_+100,l.length);p.push(`${S}-${a}`)}return p},[l]),L=de(()=>{if(f.length===0)return l;const p=f[C];if(!p)return l;const[_,S]=p.split("-"),a=parseInt(_,10),b=parseInt(S,10);return l.slice(a-1,b)},[l,f,C]);return n("div",{className:`${I.episodeListContainer} ${o==="drawer"?I.drawerContainer:""}`,children:[n("div",{className:`${I.episodeListHeader} ${o==="drawer"?I.drawerHeader:""}`,children:[v,n("h3",{className:I.episodeListTitle,children:u}),f.length>0&&n("div",{className:I.rangeSelector,children:f.map((p,_)=>n("button",{className:`${I.rangeButton} ${C===_?I.active:""}`,onClick:()=>i(_),children:p},p))})]}),n("div",{className:`${I.episodeList} ${o==="drawer"?I.drawerList:""}`,children:L.map(p=>{const _=p.id===r,S=P.has(p.id)||p.watched===!0;return n("div",{ref:_?h:void 0,className:`${I.episodeItem} ${S?I.watched:""} ${_?I.active:""}`,onClick:()=>c(p.id),children:[p.thumbnail&&n("img",{src:p.thumbnail,alt:"",loading:"lazy",decoding:"async",className:I.episodeThumb}),n("span",{className:I.episodeText,children:[n("span",{className:I.episodeLabel,children:p.label??`Episode ${p.id}`}),p.sublabel&&n("span",{className:I.episodeSub,children:p.sublabel})]})]},p.id)})})]})},$s=({variant:e="sidebar",count:r=12})=>n("div",{className:`${I.episodeListContainer} ${e==="drawer"?I.drawerContainer:""}`,children:[n("div",{className:`${I.episodeListHeader} ${e==="drawer"?I.drawerHeader:""}`,children:[n("h3",{className:I.episodeListTitle,children:"Episodes"}),n("div",{className:I.rangeSelector,children:[n(ge,{width:"60px",height:"28px",variant:"rectangular"}),n(ge,{width:"60px",height:"28px",variant:"rectangular"}),n(ge,{width:"60px",height:"28px",variant:"rectangular"})]})]}),n("div",{className:`${I.episodeList} ${e==="drawer"?I.drawerList:""}`,children:Array.from({length:r}).map((t,c)=>n("div",{className:I.episodeItem,style:{border:"none",background:"transparent"},children:n(ge,{width:"120px",height:"1.2rem",variant:"text"})},c))})]}),$o="_shell_cys6s_1",Mo="_overlay_cys6s_10",Ao="_drawer_cys6s_21",Fo="_handle_cys6s_56",Ro="_header_cys6s_64",Do="_headerCopy_cys6s_73",Oo="_kicker_cys6s_79",qo="_title_cys6s_87",Ho="_closeBtn_cys6s_94",zo="_body_cys6s_116",Q={shell:$o,overlay:Mo,drawer:Ao,handle:Fo,header:Ro,headerCopy:Do,kicker:Oo,title:qo,closeBtn:Ho,body:zo};function Ms({isOpen:e,onClose:r,episodes:t,currentEpisode:c,watchedEpisodes:o=[],onEpisodeClick:u,title:v,header:C}){return $(()=>{if(!e)return;const i=l=>{l.key==="Escape"&&r()},h=document.body.style.overflow;return document.body.style.overflow="hidden",document.addEventListener("keydown",i),()=>{document.body.style.overflow=h,document.removeEventListener("keydown",i)}},[e,r]),e?Tt(n("div",{className:Q.shell,role:"dialog","aria-modal":"true","aria-label":"Episode picker",children:[n("button",{className:Q.overlay,type:"button",onClick:r,"aria-label":"Close episodes"}),n("aside",{className:Q.drawer,children:[n("div",{className:Q.handle}),n("div",{className:Q.header,children:[n("div",{className:Q.headerCopy,children:[n("span",{className:Q.kicker,children:"Episode picker"}),n("h3",{className:Q.title,children:"Choose an episode"})]}),n("button",{className:Q.closeBtn,type:"button",onClick:r,"aria-label":"Close",children:n(J,{name:"times"})})]}),n("div",{className:Q.body,children:n(Io,{episodes:t,currentEpisode:c,watchedEpisodes:o,onEpisodeClick:u,variant:"drawer",title:v,header:C})})]})]}),document.body):null}function Te(){return document}function Ye(e){const r=Te();if(document.fullscreenElement)return document.fullscreenElement;if(r.webkitFullscreenElement)return r.webkitFullscreenElement;const t=e;return t?.webkitDisplayingFullscreen?t:null}function se(e){return Ye(e)!==null}async function Wo(e,r){if(Ye(r))return;const t=e;try{if(typeof e.requestFullscreen=="function"){await e.requestFullscreen();return}if(typeof t.webkitRequestFullscreen=="function"){await t.webkitRequestFullscreen();return}if(typeof t.webkitRequestFullScreen=="function"){await t.webkitRequestFullScreen();return}}catch{}const c=r;if(c&&typeof c.webkitEnterFullscreen=="function"){if(c.webkitSupportsFullscreen===!1)return;try{await c.webkitEnterFullscreen()}catch{}}}async function Vo(e){const r=Te();try{if(document.fullscreenElement&&typeof document.exitFullscreen=="function"){await document.exitFullscreen();return}if(r.webkitFullscreenElement&&typeof r.webkitExitFullscreen=="function"){await r.webkitExitFullscreen();return}}catch{}const t=e;if(t?.webkitDisplayingFullscreen&&typeof t.webkitExitFullscreen=="function"){try{t.webkitExitFullscreen()}catch{}return}try{typeof r.webkitCancelFullScreen=="function"?r.webkitCancelFullScreen():!document.fullscreenElement&&typeof document.exitFullscreen=="function"&&(document.fullscreenElement??r.webkitFullscreenElement)&&await document.exitFullscreen()}catch{}}async function Uo(e,r){!e&&!r||(se(r)?await Vo(r):e&&await Wo(e,r))}function Ko(e,r){const t=()=>{try{r(se(e()))}catch{}},c=Te(),o=t;c.addEventListener("fullscreenchange",t),c.addEventListener("webkitfullscreenchange",o),c.addEventListener("webkitbeginfullscreen",o,!0),c.addEventListener("webkitendfullscreen",o,!0);const u=e();return u?.addEventListener("webkitbeginfullscreen",o),u?.addEventListener("webkitendfullscreen",o),()=>{c.removeEventListener("fullscreenchange",t),c.removeEventListener("webkitfullscreenchange",o),c.removeEventListener("webkitbeginfullscreen",o,!0),c.removeEventListener("webkitendfullscreen",o,!0),u?.removeEventListener("webkitbeginfullscreen",o),u?.removeEventListener("webkitendfullscreen",o)}}const As=({skipIntervals:e,showId:r,episodeNumber:t,episodeCount:c,sourceType:o,showMeta:u})=>{const v=Mt(),C=Pt(),i=y(null),h=y(null),l=y(null),P=y(null),f=y(!1),L=y(null),p=y(0),_=y(1),S=y({mouse:!1,keyboard:!1}),a=y(null),b=y(null),g=y(!1),M=y(Math.random().toString(36).substring(2)),[A,W]=E(!1),[G,x]=E(()=>{try{return localStorage.getItem("playerMuted")==="true"}catch{return!1}}),[q,U]=E(()=>{try{const s=parseFloat(localStorage.getItem("playerVolume")||"");return isNaN(s)?1:Math.max(0,Math.min(1,s))}catch{return 1}}),[d,m]=E(!1),[R,V]=E(0),[j,D]=E(!0),[ee,Pe]=E(!1),[Ze,Ne]=E({time:0,position:null}),[be,et]=E(localStorage.getItem("autoSkipEnabled")==="true"),[tt,we]=E(null),[nt,rt]=E(!1),[te]=E(eo),[ot,st]=E(te.fontSize),[ct,it]=E(te.position),[at,lt]=E(te.bgOpacity),[ut,dt]=E(te.bgColor),[pt,ft]=E(te.textColor),[mt,_t]=E(te.edge),[vt,ht]=E(te.bold),[gt,yt]=E([]),[bt,wt]=E(null),[Ct,St]=E(!1),[kt,Et]=E(!1),[pe,X]=E(!1),[Lt,fe]=E(!1),[xt,Ie]=E(()=>{try{return localStorage.getItem("playerUseNativeControls")==="true"}catch{return!1}}),ce=y(!1),Ce=y(-1),me=N(()=>{const s=i.current;return!r||!t||!u?.name?null:{showId:r,episodeNumber:t,episodeCount:c,currentTime:s?s.currentTime:0,duration:s?s.duration:0,showName:u.name,showThumbnail:u.thumbnail,nativeName:u.names?.native,englishName:u.names?.english,genres:Array.isArray(u.genres)?u.genres.map(k=>typeof k=="string"?k:k?.name).filter(Boolean):void 0,popularityScore:u.score,type:u.type,isPlaying:s?!s.paused:!0,sessionId:M.current,isAdult:u.isAdult}},[r,t,c,u]),O=N((s=!1,k=!1)=>{if(ce.current)return!1;const B=me();if(!B)return!1;const w=i.current;if(!w&&o!=="iframe")return!1;const F=w?w.currentTime>=w.duration*.8:!1;let H=w?w.currentTime:0;if(s&&F&&(H=w?w.duration:0),!k){if(H===0&&!F)return!1;const K=w?Math.abs(H-Ce.current):0;if(!s&&w&&H!==w.duration&&K<5)return!1}return B.currentTime=H,Ce.current=H,s?(async()=>{try{await Ke.progress.updateProgress.mutate(B),v.invalidateQueries({queryKey:["video-sources",r,t]}),v.invalidateQueries({queryKey:["allContinueWatching"]}),v.invalidateQueries({queryKey:["thisWeekSchedule"]}),v.invalidateQueries(C.continueWatching.pathFilter())}catch(K){console.error("Failed to update progress:",K)}})():Nt("progress.updateProgress",B).catch(K=>console.error("Failed to update progress:",K)),!0},[me,o,v,r,t,C.continueWatching]);$(()=>{const s=i.current;s&&(s.volume=q,s.muted=G)},[i,q,G]),$(()=>{const s=()=>{ce.current||O(!0)};window.addEventListener("beforeunload",s);const k=L,B=P;return()=>{window.removeEventListener("beforeunload",s),ce.current||O(!0),k.current&&clearTimeout(k.current),B.current&&clearTimeout(B.current)}},[O]);const _e=N(()=>{const s=h.current;s&&Uo(s,i.current).catch(k=>{console.error(`Error attempting to toggle full-screen mode: ${k?.message} (${k?.name})`)})},[]),ve=N(()=>{i.current&&(i.current.paused?i.current.play().catch(()=>console.warn("Autoplay was prevented.")):(i.current.pause(),D(!0)))},[D]),ne=N(()=>{const s=i.current;if(!s)return;const k=S.current.mouse||S.current.keyboard;s.playbackRate=k?2:_.current},[]),ie=N(s=>{S.current.mouse!==s&&(S.current.mouse=s,fe(s||S.current.keyboard),ne())},[ne]),re=N(s=>{S.current.keyboard!==s&&(S.current.keyboard=s,fe(S.current.mouse||s),ne())},[ne]),ae=N(s=>{i.current&&(i.current.currentTime+=s,L.current&&clearTimeout(L.current),L.current=setTimeout(()=>{O(!1,!0)},1500),D(!0))},[O,D]),he=N(()=>{if(!i.current)return;const s=!i.current.muted;i.current.muted=s,x(s),localStorage.setItem("playerMuted",String(s)),!s&&i.current.volume===0&&(i.current.volume=.5,U(.5),localStorage.setItem("playerVolume",String(.5))),D(!0)},[D]);$(()=>{const s=()=>i.current,k=Ko(s,B=>{m(B),B&&D(!0)});return m(se(s())),k},[D]),$(()=>{const s=B=>{if(!B.target.closest('input, textarea, button, select, a, [role="button"], [contenteditable="true"]')){if(B.code==="Space"){if(B.preventDefault(),g.current)return;g.current=!0,b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,g.current&&re(!0)},180);return}switch(B.key.toLowerCase()){case"f":_e();break;case"m":he();break;case"arrowright":ae(10);break;case"arrowleft":ae(-10);break;case"arrowup":if(B.preventDefault(),i.current){const F=Math.min(1,i.current.volume+.1);i.current.volume=F,U(F)}break;case"arrowdown":if(B.preventDefault(),i.current){const F=Math.max(0,i.current.volume-.1);i.current.volume=F,U(F)}break}}},k=B=>{if(B.code==="Space"){if(B.preventDefault(),g.current=!1,S.current.keyboard){re(!1);return}b.current&&(clearTimeout(b.current),b.current=null,ve())}};return document.addEventListener("keydown",s),document.addEventListener("keyup",k),()=>{document.removeEventListener("keydown",s),document.removeEventListener("keyup",k),b.current&&(clearTimeout(b.current),b.current=null),g.current=!1,re(!1),fe(!1)}},[re,ve,_e,he,ae]),$(()=>{const s=H=>H?!!H.closest('[data-speed-boost-ignore="true"], [data-player-ui="true"], button, input, select, textarea, a, [role="button"], [role="slider"], [contenteditable="true"]'):!0,k=H=>{if(H.button!==0)return;const Y=H.target;if(!Y||s(Y))return;const K=h.current;!K||!K.contains(Y)||(a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,ie(!0)},180))},B=H=>{const Y=H.target;if(!Y||s(Y))return;const K=h.current;!K||!K.contains(Y)||(a.current&&clearTimeout(a.current),a.current=window.setTimeout(()=>{a.current=null,ie(!0)},180))},w=()=>{a.current&&(clearTimeout(a.current),a.current=null),ie(!1)},F=()=>{a.current&&(clearTimeout(a.current),a.current=null),g.current=!1,b.current&&(clearTimeout(b.current),b.current=null),re(!1),ie(!1),fe(!1)};return document.addEventListener("mousedown",k),document.addEventListener("mouseup",w),document.addEventListener("touchstart",B,{passive:!0}),document.addEventListener("touchend",w),document.addEventListener("touchcancel",w),document.addEventListener("pointerup",w),document.addEventListener("pointercancel",w),window.addEventListener("blur",F),()=>{document.removeEventListener("mousedown",k),document.removeEventListener("mouseup",w),document.removeEventListener("touchstart",B),document.removeEventListener("touchend",w),document.removeEventListener("touchcancel",w),document.removeEventListener("pointerup",w),document.removeEventListener("pointercancel",w),window.removeEventListener("blur",F),a.current&&(clearTimeout(a.current),a.current=null)}},[re,ie]);const $e=N(()=>{W(!0),X(!1),setTimeout(()=>O(!1,!0),50)},[O]),Me=N(()=>{W(!0),X(!1)},[]),Ae=N(()=>{const s=i.current;s&&!s.paused&&s.readyState>=3&&!s.seeking||X(!0)},[]),Fe=N(()=>{X(!1)},[]),Re=N(()=>{W(!1),X(!1),D(!0),setTimeout(()=>O(!1,!0),50)},[O]),De=y(!1);De.current=pe,$(()=>{if(!pe)return;let s=i.current?.currentTime??0,k=0;const B=window.setInterval(()=>{const w=i.current;if(!w)return;k+=1;const F=w.currentTime,H=F!==s;if(s=F,!(w.paused||w.seeking)){if(H||w.readyState>=3){X(!1);return}k>=24&&w.readyState>=2&&!w.ended&&X(!1)}},500);return()=>window.clearInterval(B)},[pe]),$(()=>{ce.current=!1,Ce.current=-1,p.current=0,M.current=Math.random().toString(36).substring(2),V(0),X(!1)},[r,t]);const Oe=N(()=>{V(0),X(!1)},[]);$(()=>{const s=M.current;return()=>{It(s)}},[r,t]),$(()=>{if(o!=="iframe")return;O(!1,!0);const s=setInterval(()=>{O(!1,!0)},6e4);return()=>clearInterval(s)},[o,O]);const qe=N(()=>{V(i.current?.duration||0),ne()},[ne]),He=N(()=>{if(i.current){const s=i.current.muted,k=i.current.volume;x(s),U(k),localStorage.setItem("playerMuted",String(s)),localStorage.setItem("playerVolume",String(k))}},[]),ze=N(()=>{},[]),We=N(()=>{const s=i.current;if(!s)return;De.current&&!s.paused&&!s.seeking&&X(!1);const k=s.currentTime||0,B=Date.now();B-p.current>6e4&&O()&&(p.current=B);const w=e.find(F=>k>=F.start_time&&k<F.end_time)||null;we(F=>F?.skip_id!==w?.skip_id?w:F),be&&w&&!s.paused&&(s.currentTime=w.end_time,we(null))},[e,be,O]),Ve=N(()=>{const s=me();s&&(s.currentTime=s.duration,Ke.progress.updateProgress.mutate(s).then(()=>{v.invalidateQueries({queryKey:["video-sources",r,t]}),v.invalidateQueries({queryKey:["allContinueWatching"]})}).catch(k=>console.error("Failed to send final progress:",k)))},[me,v,r,t]),Ue=N(()=>{ce.current=!0,Ve()},[Ve]);$(()=>{const s=()=>{ee&&(Pe(!1),Ne({time:0,position:null}),f.current&&i.current?.play(),O(!1,!0))};return ee&&(document.addEventListener("mouseup",s),document.addEventListener("pointerup",s),document.addEventListener("touchend",s),document.addEventListener("pointercancel",s),document.addEventListener("touchcancel",s)),()=>{document.removeEventListener("mouseup",s),document.removeEventListener("pointerup",s),document.removeEventListener("touchend",s),document.removeEventListener("pointercancel",s),document.removeEventListener("touchcancel",s)}},[ee,O]);const Bt=de(()=>({togglePlay:ve,seek:ae,toggleMute:he,toggleFullscreen:_e,onPlay:$e,onPause:Re,onLoadedMetadata:qe,formatTime:$t,onVolumeChange:He,onProgress:ze,onTimeUpdate:We,onEnded:Ue,setShowControls:D,setIsScrubbing:Pe,setHoverTime:Ne,setIsAutoSkipEnabled:et,setCurrentSkipInterval:we,setShowCCMenu:rt,setSubtitleFontSize:st,setSubtitlePosition:it,setSubtitleBgOpacity:lt,setSubtitleBgColor:dt,setSubtitleTextColor:ft,setSubtitleEdge:_t,setSubtitleBold:ht,setAvailableSubtitles:yt,setActiveSubtitleTrack:wt,setShowSettings:St,setShowVolumeSlider:Et,wasPlayingBeforeScrub:f,inactivityTimer:P,setIsFullscreen:m,onWaiting:Ae,onPlaying:Me,onCanPlay:Fe,sendProgressUpdate:O,setUseNativeControls:Ie,resetMediaState:Oe}),[ve,ae,he,_e,$e,Re,qe,He,ze,We,Ue,m,Ae,Me,Fe,O,Ie,Oe]);return{refs:{videoRef:i,playerContainerRef:h,progressBarRef:l},state:{isPlaying:A,isMuted:G,volume:q,isFullscreen:d,duration:R,showControls:j,isScrubbing:ee,hoverTime:Ze,isAutoSkipEnabled:be,currentSkipInterval:tt,showCCMenu:nt,subtitleFontSize:ot,subtitlePosition:ct,subtitleBgOpacity:at,subtitleBgColor:ut,subtitleTextColor:pt,subtitleEdge:mt,subtitleBold:vt,availableSubtitles:gt,activeSubtitleTrack:bt,showSettings:Ct,showVolumeSlider:kt,isBuffering:pe,isSpeedBoostActive:Lt,useNativeControls:xt},actions:Bt}};function Go(){try{return typeof navigator<"u"&&/android/i.test(navigator.userAgent)}catch{return!1}}function Fs(e,r){const{refs:t,actions:c}=e,o=y(r);o.current=r;const u=y(!1),v=y(!1),C=i=>{try{if(i)return i.matches}catch{}try{return window.innerWidth>window.innerHeight}catch{return!1}};$(()=>{if(!Go())return;let i=null;const h=()=>{const l=t.playerContainerRef.current;if(C(i)){if(!o.current||!l||se(t.videoRef.current)||v.current)return;u.current=!0,c.toggleFullscreen()}else v.current=!1,u.current&&(u.current=!1,se(t.videoRef.current)&&c.toggleFullscreen())};try{i=window.matchMedia("(orientation: landscape)"),i.addEventListener?i.addEventListener("change",h):i.addListener(h)}catch{}return h(),()=>{try{i&&(i.removeEventListener?i.removeEventListener("change",h):i.removeListener(h))}catch{}}},[c,t.playerContainerRef,t.videoRef,r]),$(()=>{const i=()=>{if(!se(t.videoRef.current)){u.current=!1;try{window.matchMedia("(orientation: landscape)").matches&&(v.current=!0)}catch{v.current=!0}}};return document.addEventListener("fullscreenchange",i),document.addEventListener("webkitfullscreenchange",i),()=>{document.removeEventListener("fullscreenchange",i),document.removeEventListener("webkitfullscreenchange",i)}},[t.videoRef])}const Xo=e=>Math.max(8,Math.min(40,Math.ceil(e/16.7)+4));function Rs({videoRef:e,canvasRef:r,delayMs:t,enabled:c}){const o=y(t);o.current=t;const u=y([]),v=y(-1),C=y(-1),i=y(!1),h=y(0),l=y(null);$(()=>{const P=a=>{if(a)try{a.close()}catch{}},f=()=>{for(const a of u.current)P(a.bitmap);u.current=[]};if(!c){f(),v.current=-1,C.current=-1,i.current=!1,h.current=0;return}let L=!1;const p=()=>{l.current!==null&&(cancelAnimationFrame(l.current),l.current=null)},_=()=>{L||(p(),l.current=requestAnimationFrame(()=>{S()}))};async function S(){if(L)return;const a=e.current,b=r.current;if(!a||!b||a.videoWidth===0){_();return}if(a.paused||a.ended||document.hidden||a.readyState<HTMLMediaElement.HAVE_CURRENT_DATA){_();return}const g=a.getVideoPlaybackQuality().totalVideoFrames;if(g===v.current){_();return}(a.seeking||C.current>=0&&Math.abs(a.currentTime-C.current)>.5)&&(f(),i.current=!1,h.current=0,v.current=-1),C.current=a.currentTime,(b.width!==a.videoWidth||b.height!==a.videoHeight)&&(b.width=a.videoWidth,b.height=a.videoHeight);const M=Math.max(0,o.current||0);M>h.current&&(i.current=!1);try{const A=await createImageBitmap(a);if(L){P(A);return}v.current=g;const W=performance.now(),G=b.getContext("2d"),x=m=>{G&&G.drawImage(m,0,0,b.width,b.height)};if(M<=0){f(),i.current=!1,h.current=0,x(A),P(A),_();return}const q=u.current;q.push({bitmap:A,capture:W});const U=Xo(M);for(;q.length>U;)P(q.shift()?.bitmap);let d=-1;for(let m=q.length-1;m>=0;m--)if(W-q[m].capture>=M){d=m;break}if(d!==-1){for(let R=0;R<d;R++)P(q.shift()?.bitmap);const m=q.shift();m?(x(m.bitmap),P(m.bitmap),i.current=!0,h.current=M):x(A)}else if(!i.current)x(A);else{const m=q.shift();m?(x(m.bitmap),P(m.bitmap)):x(A)}}catch{}_()}return _(),()=>{L=!0,p();for(const a of u.current)try{a.bitmap.close()}catch{}u.current=[]}},[c,e,r])}const Qo="_row_1fq55_1",jo="_rowHeader_1fq55_9",Jo="_rowLabel_1fq55_17",Yo="_rowValue_1fq55_28",Zo="_slider_1fq55_36",es="_swatches_1fq55_99",ts="_swatch_1fq55_99",ns="_swatchPicked_1fq55_114",rs="_colorInput_1fq55_120",os="_segmented_1fq55_131",z={row:Qo,rowHeader:jo,rowLabel:Jo,rowValue:Yo,slider:Zo,swatches:es,swatch:ts,swatchPicked:ns,colorInput:rs,segmented:os},ss=({label:e,display:r,min:t,max:c,step:o,value:u,percent:v,onChange:C,onCommit:i})=>n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:[n("span",{className:z.rowLabel,children:e}),n("span",{className:z.rowValue,children:r})]}),n("input",{type:"range",className:z.slider,min:t,max:c,step:o,value:u,"aria-label":e,"data-speed-boost-ignore":"true",onInput:h=>C(Number(h.target.value)),onMouseDown:h=>h.stopPropagation(),onPointerDown:h=>h.stopPropagation(),onTouchStart:h=>h.stopPropagation(),onPointerUp:i,onPointerCancel:i,onTouchEnd:i,onKeyUp:i,onBlur:i,style:{"--slider-percent":`${v}%`}})]}),Ds=({label:e,colors:r,value:t,onChange:c})=>n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:n("span",{className:z.rowLabel,children:e})}),n("div",{className:z.swatches,children:[r.map(o=>n("button",{type:"button","aria-label":`${e} ${o}`,"aria-pressed":t.toLowerCase()===o.toLowerCase(),onClick:()=>c(o),className:`${z.swatch} ${t.toLowerCase()===o.toLowerCase()?z.swatchPicked:""}`,style:{backgroundColor:o}},o)),n("input",{type:"color","aria-label":`Custom ${e.toLowerCase()}`,className:z.colorInput,value:t,"data-speed-boost-ignore":"true",onInput:o=>c(o.target.value),onMouseDown:o=>o.stopPropagation(),onPointerDown:o=>o.stopPropagation(),onTouchStart:o=>o.stopPropagation()})]})]});function Os({label:e,options:r,value:t,onChange:c}){return n("div",{className:z.row,children:[n("div",{className:z.rowHeader,children:n("span",{className:z.rowLabel,children:e})}),n("div",{className:z.segmented,role:"group","aria-label":e,children:r.map(o=>n("button",{type:"button","aria-pressed":t===o,onClick:()=>c(o),children:[n("span",{children:o}),t===o&&n(J,{name:"check",size:10})]},o))})]})}const ye=10,Be=500,Ee=e=>Math.max(0,Math.min(Be,Math.round(e))),qs=({isOpen:e,ms:r,onChange:t,onApply:c,onClose:o,testClipActive:u,onTestClip:v})=>e?n("div",{role:"dialog","aria-label":"Calibrate audio video sync","data-speed-boost-ignore":"true",onClick:C=>C.stopPropagation(),style:{position:"absolute",right:8,bottom:112,width:"min(260px, calc(100% - 16px))",maxHeight:"calc(100% - 124px)",overflowY:"auto",overflowX:"hidden",zIndex:60,display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:12,borderRadius:"var(--radius-lg)",border:"1px solid var(--glass-border)",background:"rgba(18, 18, 22, 0.95)",boxShadow:"var(--glass-shadow)",backdropFilter:"blur(14px)",WebkitBackdropFilter:"blur(14px)",boxSizing:"border-box"},children:[n("div",{style:{fontSize:"0.8rem",fontWeight:800,color:"var(--text-primary)"},children:"A/V sync"}),n("div",{children:n(le,{size:"sm",variant:"secondary",onClick:v,children:u?"Back to video":"Preview test clip"})}),n("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,flexWrap:"wrap"},children:[n(le,{size:"sm",onClick:()=>t(Ee(r-ye)),"aria-label":"Decrease delay by 10 milliseconds",children:["− ",ye,"ms"]}),n("div",{style:{fontSize:"1.1rem",fontWeight:800,minWidth:64,textAlign:"center"},children:[r,"ms"]}),n(le,{size:"sm",onClick:()=>t(Ee(r+ye)),"aria-label":"Increase delay by 10 milliseconds",children:["+ ",ye,"ms"]})]}),n(ss,{label:"Video delay",display:`${r}ms`,min:0,max:Be,step:5,value:r,percent:r/Be*100,onChange:C=>t(Ee(C))}),n("div",{style:{display:"flex",gap:8,justifyContent:"center",flexWrap:"wrap"},children:[n(le,{size:"sm",variant:"secondary",onClick:o,children:"Cancel"}),n(le,{size:"sm",onClick:c,children:["Apply ",r,"ms"]})]})]}):null;export{qs as A,ks as B,Bs as C,Os as D,$s as E,Z as F,ss as M,Is as P,Ts as S,Ss as T,Ns as U,Ps as a,Rs as b,vs as c,Fs as d,ys as e,Es as f,bs as g,xs as h,Xr as i,Cs as j,ds as k,ms as l,Io as m,us as n,oe as o,gs as p,Ms as q,ws as r,Yr as s,_s as t,As as u,Ls as v,hs as w,ps as x,fs as y,Ds as z};
@@ -0,0 +1 @@
1
+ ._controls_ov6ol_1{display:flex;align-items:stretch;gap:1.25rem;flex-wrap:wrap;width:100%}._titleContainer_ov6ol_9{display:flex;flex-direction:column;gap:1rem}._scheduleInfo_ov6ol_15{display:flex;gap:1rem;font-size:.95rem;color:var(--text-tertiary);align-items:center}._status_ov6ol_23{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);padding:.35rem .85rem;border-radius:var(--radius-full);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}._nextEpisode_ov6ol_35{background:#ffffff0d;color:var(--text-secondary);padding:.35rem .85rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:600;border:1px solid var(--glass-border)}._watchlistBtn_ov6ol_45{background:#ffffff0d;color:var(--text-primary);border:1px solid rgba(255,255,255,.1);padding:.65rem 1.25rem;border-radius:var(--radius-full);font-weight:600;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:.6rem;font-size:.85rem;flex:0 1 auto;min-width:120px;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}._watchlistBtn_ov6ol_45:hover{background:#ffffff1f;border-color:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 12px #00000040}._watchlistBtn_ov6ol_45._inList_ov6ol_72{background:color-mix(in srgb,var(--color-success) 12%,transparent);border-color:color-mix(in srgb,var(--color-success) 35%,transparent);color:var(--color-success)}._watchlistBtn_ov6ol_45._inList_ov6ol_72:hover{background:color-mix(in srgb,var(--color-success) 18%,transparent);border-color:var(--color-success)}._queueBtn_ov6ol_83{background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent-light)}._queueBtn_ov6ol_83:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-lighter)}._queueActive_ov6ol_95{background:color-mix(in srgb,var(--accent) 15%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:var(--accent-lighter)}._modeToggleBtn_ov6ol_101{background:#ffffff0d;color:var(--text-primary);border-color:#ffffff1a;flex:0 1 auto}._modeToggleActive_ov6ol_108{background:color-mix(in srgb,var(--color-info) 12%,transparent);border-color:color-mix(in srgb,var(--color-info) 45%,transparent);color:#dbeafe}._modeToggleActive_ov6ol_108:hover{background:color-mix(in srgb,var(--color-info) 18%,transparent);border-color:color-mix(in srgb,var(--color-info) 65%,transparent)}._nativeToggleBtn_ov6ol_119{background:#ffffff0d;color:var(--text-primary);border-color:#ffffff1a;flex:0 1 auto}._nativeToggleBtn_ov6ol_119:hover{background:#ffffff1f;border-color:#ffffff40;transform:translateY(-2px)}._nativeToggleActive_ov6ol_132{background:color-mix(in srgb,var(--color-warning) 10%,transparent);border-color:color-mix(in srgb,var(--color-warning) 40%,transparent);color:var(--color-warning)}._nativeToggleActive_ov6ol_132:hover{background:color-mix(in srgb,var(--color-warning) 16%,transparent);border-color:color-mix(in srgb,var(--color-warning) 60%,transparent)}._watchlistBtn_ov6ol_45:disabled{opacity:.7;cursor:wait;transform:none}._watchlistBtn_ov6ol_45:disabled:hover{transform:none}._markWatchedBtn_ov6ol_153{background:color-mix(in srgb,var(--color-info) 8%,transparent);border-color:color-mix(in srgb,var(--color-info) 25%,transparent);color:#93c5fd;flex:0 1 auto;justify-content:center}._markWatchedBtn_ov6ol_153:hover{background:color-mix(in srgb,var(--color-info) 14%,transparent);border-color:color-mix(in srgb,var(--color-info) 45%,transparent);color:#dbeafe}._markWatchedDone_ov6ol_167{background:color-mix(in srgb,var(--color-success) 12%,transparent);border-color:color-mix(in srgb,var(--color-success) 35%,transparent);color:var(--color-success)}._markWatchedDone_ov6ol_167:hover{background:color-mix(in srgb,var(--color-success) 18%,transparent);border-color:var(--color-success)}._completeSeriesBtn_ov6ol_178{background:color-mix(in srgb,var(--color-success) 10%,transparent);border-color:color-mix(in srgb,var(--color-success) 30%,transparent);color:#d1fae5;flex:0 1 auto;justify-content:center}._completeSeriesBtn_ov6ol_178:hover{background:color-mix(in srgb,var(--color-success) 16%,transparent);border-color:color-mix(in srgb,var(--color-success) 45%,transparent);color:#ecfdf5}._providerAndEpisodeRow_ov6ol_192{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}._episodeActions_ov6ol_199{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0 .25rem}._desktopEpisodeActions_ov6ol_206{flex:1 1 320px;justify-content:flex-end;align-self:flex-end;margin:0}._mobileEpisodeActions_ov6ol_213{margin:.5rem 0 .25rem}._episodeNavBtn_ov6ol_217{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:.7rem 1rem;background:#ffffff0d;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:700;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}._episodeNavBtn_ov6ol_217:hover:not(:disabled){border-color:var(--text-secondary);background:#ffffff14}._episodeNavBtn_ov6ol_217:disabled{opacity:.45;cursor:not-allowed;transform:none}._episodeNavBtn_ov6ol_217._primary_ov6ol_247{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);border-color:transparent;color:#fff}._episodeNavBtn_ov6ol_217._primary_ov6ol_247:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-light) 0%,var(--accent) 100%)}._episodeNavBtn_ov6ol_217._secondary_ov6ol_257{background:#ffffff0a}._episodePickerBtn_ov6ol_261{display:none}._queueCountdown_ov6ol_265{position:absolute;left:50%;bottom:1.5rem;transform:translate(-50%);z-index:75;padding:.7rem 1rem;border:1px solid var(--glass-border);border-radius:var(--radius-md);background:#121216eb;color:#fff;font-weight:700;box-shadow:var(--glass-shadow)}._speedBoostBadge_ov6ol_280{position:absolute;top:1.5rem;left:50%;transform:translate(-50%);z-index:75;display:flex;align-items:center;gap:.7rem;padding:.65rem 1rem;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:var(--radius-md);background:#121216eb;color:#f5f3ff;font-weight:800;letter-spacing:.06em;text-transform:none;box-shadow:var(--glass-shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}._speedBoostBadge_ov6ol_280 span{line-height:1}._speedBoostBadge_ov6ol_280 svg{display:block;flex-shrink:0}._videoContainer_ov6ol_311{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;display:flex;justify-content:center;align-items:center;container-type:inline-size}._loadingOverlay_ov6ol_324{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:10;background:#00000080;border-radius:inherit}._loadingDots_ov6ol_338{display:flex;gap:10px}._dot_ov6ol_343{width:12px;height:12px;border-radius:50%;background-color:var(--accent);animation:_bounce_ov6ol_1 1.4s infinite ease-in-out both;box-shadow:0 0 10px var(--accent-glow)}._dot_ov6ol_343:nth-child(1){animation-delay:-.32s}._dot_ov6ol_343:nth-child(2){animation-delay:-.16s}@keyframes _bounce_ov6ol_1{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}._bufferingOverlay_ov6ol_372{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:20}._bufferingSpinner_ov6ol_381{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--accent);animation:_spin_ov6ol_921 1s ease-in-out infinite}@keyframes _spin_ov6ol_921{to{transform:rotate(360deg)}}._videoIframe_ov6ol_396{width:100%;height:100%;border:none;position:absolute;top:0;left:0;object-fit:cover;border-radius:inherit}._videoContainer_ov6ol_311 video{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:contain;background-color:#000;border-radius:inherit}._videoContainer_ov6ol_311 video._videoElementHidden_ov6ol_419{opacity:0;pointer-events:none}._upscalerCanvas_ov6ol_424{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;object-fit:contain;opacity:0;pointer-events:none;border-radius:inherit}._upscalerCanvas_ov6ol_424._upscalerActive_ov6ol_437{opacity:1}._upscalerStatusBadge_ov6ol_441{position:absolute;top:12px;right:12px;z-index:4;background:#000000a6;color:var(--text-primary);font-size:.75rem;font-weight:600;padding:.35em .8em;border-radius:999px;border:1px solid var(--glass-border);pointer-events:none}._subtitleOverlay_ov6ol_456{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:hidden;border-radius:inherit}._controlsOverlay_ov6ol_468{position:absolute;inset:0;opacity:1;transition:opacity .4s cubic-bezier(.4,0,.2,1);z-index:50;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;border-radius:inherit;background:linear-gradient(to bottom,rgba(0,0,0,.35) 0%,rgba(0,0,0,.2) 15%,transparent 40%,transparent 60%,rgba(0,0,0,.2) 85%,rgba(0,0,0,.35) 100%);will-change:opacity}._controlsOverlay_ov6ol_468>*{pointer-events:auto}._controlsOverlay_ov6ol_468._hidden_ov6ol_498{opacity:0;pointer-events:none;cursor:none}._centerPlayPause_ov6ol_504{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;background:#0f0f11d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:50%;color:#fff;width:90px;height:90px;font-size:2.8rem;cursor:pointer;padding-left:6px;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:none;will-change:transform}._centerPlayPause_ov6ol_504:hover{background:var(--accent);color:var(--accent-text);transform:translate(-50%,-50%) scale(1.1);border-color:var(--accent);box-shadow:0 0 40px var(--accent-glow)}._bottomControls_ov6ol_536{position:absolute;bottom:24px;left:24px;right:24px;display:flex;flex-direction:column;gap:0;background:#0f0f11f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:16px 24px;box-shadow:none}._progressBarContainer_ov6ol_553{width:100%;padding:10px 0;cursor:pointer;position:relative;touch-action:none;display:flex;align-items:center}._progressBar_ov6ol_553{width:100%;height:4px;background-color:#ffffff26;border-radius:4px;position:relative;transition:height .2s,background-color .2s;overflow:visible}._progressBarContainer_ov6ol_553:hover ._progressBar_ov6ol_553,._progressBarContainer_ov6ol_553._scrubbing_ov6ol_576 ._progressBar_ov6ol_553{height:6px;background-color:#ffffff40}._watchedBar_ov6ol_581,._bufferedBar_ov6ol_582{position:absolute;top:0;left:0;height:100%;border-radius:4px}._watchedBar_ov6ol_581{background:var(--accent);background:linear-gradient(90deg,var(--accent) 0%,var(--accent-light) 100%);z-index:2;box-shadow:0 0 15px var(--accent-glow);transition:width .3s linear;will-change:width}._bufferedBar_ov6ol_582{background-color:#ffffff4d;z-index:1}._thumb_ov6ol_604{position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);width:16px;height:16px;background-color:#fff;border-radius:50%;z-index:3;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),left .3s linear;box-shadow:0 0 0 4px #fff3;will-change:left}._progressBarContainer_ov6ol_553:hover ._thumb_ov6ol_604,._progressBarContainer_ov6ol_553._scrubbing_ov6ol_576 ._thumb_ov6ol_604{transform:translate(-50%,-50%) scale(1)}._timeBubble_ov6ol_625{position:absolute;bottom:35px;transform:translate(-50%);background:#000000e6;border:1px solid rgba(255,255,255,.1);color:#fff;padding:6px 10px;border-radius:8px;font-size:.85rem;font-weight:600;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap;box-shadow:0 4px 12px #0000004d}._progressBarContainer_ov6ol_553:hover ._timeBubble_ov6ol_625,._progressBarContainer_ov6ol_553._scrubbing_ov6ol_576 ._timeBubble_ov6ol_625{opacity:1}._skipSegment_ov6ol_648{position:absolute;top:0;height:100%;z-index:10;opacity:.5;transition:opacity .2s;border-radius:4px}._skipSegment_ov6ol_648:hover{opacity:.8}._skipSegment_ov6ol_648._op_ov6ol_662{background-color:var(--success)}._skipSegment_ov6ol_648._ed_ov6ol_666{background-color:var(--accent-blue)}._skipSegment_ov6ol_648._recap_ov6ol_670{background-color:var(--warning)}._bottomControlsRow_ov6ol_674{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:4px}._controlBtn_ov6ol_682{background:transparent;border:none;color:#ffffffe6;font-size:1.2rem;cursor:pointer;transition:all .2s;padding:10px;border-radius:12px;display:flex;align-items:center;justify-content:center}._controlBtn_ov6ol_682:hover{background:#ffffff1a;color:#fff;transform:translateY(-2px)}._controlBtn_ov6ol_682:active{transform:translateY(0)}._timeDisplay_ov6ol_706{font-size:.9rem;font-weight:500;color:#ffffffe6;font-variant-numeric:tabular-nums;margin-left:.5rem;opacity:.9}._leftControls_ov6ol_715,._rightControls_ov6ol_716,._middleControls_ov6ol_717{display:flex;align-items:center;gap:1.5rem}._skipControls_ov6ol_723{display:flex;align-items:center;gap:.25rem}._skipBtn_ov6ol_729{background:transparent;border:none;color:#fff;cursor:pointer;font-size:1.4rem;display:flex;align-items:center;justify-content:center;opacity:.7;transition:all .2s;padding:6px}._skipBtn_ov6ol_729:hover{opacity:1;transform:scale(1.1);color:var(--accent)}._skipBtn_ov6ol_729:active{transform:scale(.9)}._volumeContainer_ov6ol_753{display:flex;align-items:center;position:relative;padding-right:10px}._volumeSlider_ov6ol_760{width:0;opacity:0;transform:scaleX(0);transform-origin:left;transition:all .3s var(--ease-smooth);cursor:pointer;margin-left:6px;-webkit-appearance:none;appearance:none;background:transparent;height:30px}._volumeContainer_ov6ol_753:hover ._volumeSlider_ov6ol_760,._volumeSlider_ov6ol_760:focus{width:80px;opacity:1;transform:scaleX(1)}._volumeSlider_ov6ol_760::-webkit-slider-runnable-track{width:100%;height:4px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-percent, 100%),rgba(255,255,255,.25) var(--volume-percent, 100%),rgba(255,255,255,.25) 100%);border-radius:4px;border:none}._volumeSlider_ov6ol_760::-moz-range-track{width:100%;height:4px;background:#ffffff40;border-radius:4px;border:none}._volumeSlider_ov6ol_760::-moz-range-progress{height:4px;background:var(--accent);border-radius:4px}._volumeSlider_ov6ol_760::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;margin-top:-5px;box-shadow:0 0 10px #00000080;transition:transform .1s ease}._volumeSlider_ov6ol_760::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 15px var(--accent-glow)}._volumeSlider_ov6ol_760::-moz-range-thumb{width:14px;height:14px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;box-shadow:0 0 10px #00000080}._settingsMenu_ov6ol_838{position:absolute;bottom:50px;right:0;background:#0f0f0ffa;border:1px solid rgba(255,255,255,.1);color:#fff;padding:1rem;border-radius:12px;width:280px;z-index:var(--z-dropdown);box-shadow:0 10px 40px #00000080;animation:_slideUp_ov6ol_1 .2s cubic-bezier(.16,1,.3,1);transform-origin:bottom right}@keyframes _slideUp_ov6ol_1{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}._settingsMenu_ov6ol_838 h4{margin:0 0 1rem;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem;font-weight:600}._qualityListInMenu_ov6ol_877,._ccOptionsContainer_ov6ol_878{display:flex;flex-direction:column;gap:.25rem;max-height:300px;overflow-y:auto}._qualityItemInMenu_ov6ol_886,._ccItem_ov6ol_887{background:transparent;color:#fffc;border:none;padding:.75rem 1rem;border-radius:8px;cursor:pointer;text-align:left;font-size:.95rem;transition:all .2s;display:flex;justify-content:space-between;align-items:center}._qualityItemInMenu_ov6ol_886:hover,._ccItem_ov6ol_887:hover{background:#ffffff1a;color:#fff}._qualityItemInMenu_ov6ol_886._active_ov6ol_908,._ccItem_ov6ol_887._active_ov6ol_908{background:var(--accent);color:var(--accent-text);font-weight:600}._sourceLoader_ov6ol_915{padding:2rem;display:flex;justify-content:center}._spinner_ov6ol_921{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-left-color:var(--accent);border-radius:50%;animation:_spin_ov6ol_921 1s linear infinite}@media(max-width:768px){._bottomControls_ov6ol_536{padding:.75rem;bottom:8px;left:8px;right:8px;border-radius:12px}._leftControls_ov6ol_715,._rightControls_ov6ol_716{gap:.5rem}._controlBtn_ov6ol_682{padding:8px;font-size:1.1rem}._timeDisplay_ov6ol_706{font-size:.75rem;margin-left:.25rem}._centerPlayPause_ov6ol_504{width:64px;height:64px;font-size:2rem}._titleContainer_ov6ol_9 h1{font-size:1.25rem}._volumeSlider_ov6ol_760{width:0}._volumeContainer_ov6ol_753{display:flex}._episodeActions_ov6ol_199{margin-top:.25rem}._controls_ov6ol_1{gap:.5rem}._watchBtn_ov6ol_980,._watchlistBtn_ov6ol_45,._queueBtn_ov6ol_83,._markWatchedBtn_ov6ol_153,._completeSeriesBtn_ov6ol_178,._nativeToggleBtn_ov6ol_119,._modeToggleBtn_ov6ol_101{flex:1 1 calc(50% - .25rem);min-width:0;padding:.5rem .75rem;font-size:.78rem;gap:.4rem}._watchBtn_ov6ol_980{flex-basis:100%}._episodeNavBtn_ov6ol_217{flex:1 1 calc(50% - .25rem);min-width:0;padding:.45rem .75rem;font-size:.8rem;min-height:44px}._episodePickerBtn_ov6ol_261{display:inline-flex;flex-basis:100%;padding:.4rem .75rem;font-size:.78rem;min-height:44px}._desktopEpisodeActions_ov6ol_206{display:none}._mobileEpisodeActions_ov6ol_213{display:flex}._providerAndEpisodeRow_ov6ol_192{flex-direction:column}._errorOverlay_ov6ol_1026{padding:1rem;gap:.5rem;overflow-y:auto}._errorOverlay_ov6ol_1026 p{font-size:1rem}._retryButton_ov6ol_1036{padding:.5rem 1.25rem;font-size:.9rem;margin-top:0}}@media(min-width:769px){._mobileEpisodeActions_ov6ol_213{display:none}}@media(max-width:900px)and (orientation:landscape){._bottomControls_ov6ol_536{bottom:8px;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));padding:.5rem 1rem}._centerPlayPause_ov6ol_504{width:54px;height:54px;font-size:1.5rem}}._sourceSelectionContainer_ov6ol_1064{display:flex;flex-direction:column;gap:1.5rem;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:2rem;border-radius:var(--radius-xl);width:100%;box-shadow:var(--glass-shadow);animation:_slideUpIn_ov6ol_1 .6s var(--ease-smooth)}._providerSelectContainer_ov6ol_1079{display:flex;flex-direction:column;gap:.75rem;width:100%}._providerSelect_ov6ol_1079,._sourceSelect_ov6ol_1064{height:48px;padding:0 1.25rem;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-primary);font-size:.95rem;font-family:inherit;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2371717a' stroke-width='2' viewBox='0 0 12 12'%3E%3Cpolyline points='3 5 6 8 9 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.25rem center;transition:all var(--transition-fast);width:100%;max-width:400px}._providerSelect_ov6ol_1079:hover,._sourceSelect_ov6ol_1064:hover{border-color:var(--border-secondary);background-color:var(--bg-elevated)}._providerSelect_ov6ol_1079:focus,._sourceSelect_ov6ol_1064:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}._providerSelect_ov6ol_1079 option,._sourceSelect_ov6ol_1064 option{background:var(--bg-tertiary);color:var(--text-primary)}._sourceSelectionContainer_ov6ol_1064 h4,._providerSelectContainer_ov6ol_1079 h4{margin:0;color:var(--text-tertiary);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em}._sourceButtons_ov6ol_1135{display:flex;flex-wrap:wrap;gap:.75rem}._sourceButton_ov6ol_1135{background:#ffffff0d;color:var(--text-secondary);border:1px solid var(--glass-border);padding:.75rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-size:.95rem;font-weight:600;transition:all var(--transition-normal)}._sourceButton_ov6ol_1135:hover{background:#ffffff1a;border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}._sourceButton_ov6ol_1135._active_ov6ol_908{background:var(--accent);border-color:var(--accent);color:var(--accent-text);box-shadow:0 8px 20px var(--accent-glow)}._detailsBox_ov6ol_1167{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:2.5rem;border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:1.5rem;box-shadow:var(--glass-shadow)}._detailsToggleBtn_ov6ol_1180{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-secondary);padding:.75rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-size:.95rem;font-weight:600;transition:all var(--transition-normal);display:flex;align-items:center;gap:.75rem;margin-top:2rem;width:fit-content}._detailsToggleBtn_ov6ol_1180:hover{background:#ffffff1a;color:var(--text-primary);border-color:var(--text-primary);transform:translateY(-2px)}._detailsGridContainer_ov6ol_1204{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2rem;margin-top:2.5rem;background:#ffffff05;padding:2.5rem;border-radius:var(--radius-xl);border:1px solid var(--glass-border);animation:_fadeIn_ov6ol_1 .6s var(--ease-smooth)}._detailItem_ov6ol_1216{display:flex;flex-direction:column;gap:.5rem}._detailItem_ov6ol_1216 strong{color:var(--text-tertiary);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}._detailItem_ov6ol_1216 span{color:var(--text-primary);font-size:1rem;font-weight:500}._animeStatus_ov6ol_1236{display:inline-block;background:color-mix(in srgb,var(--color-success) 10%,transparent);color:var(--color-success);padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:1px solid color-mix(in srgb,var(--color-success) 20%,transparent)}._genresList_ov6ol_1249{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.25rem}._genreTag_ov6ol_1256{background:#ffffff0d;color:var(--text-secondary);padding:.4rem 1rem;border-radius:var(--radius-full);font-size:.85rem;font-weight:600;border:1px solid var(--glass-border);transition:all var(--transition-fast)}._genreTag_ov6ol_1256:hover{background:#ffffff1a;color:var(--text-primary);border-color:var(--text-secondary);transform:translateY(-1px)}._loadingDetails_ov6ol_1274{color:var(--text-muted);font-style:italic;text-align:center;padding:2rem}._descriptionSection_ov6ol_1281{margin-top:2.5rem;padding:2.5rem;background:#ffffff05;border-radius:var(--radius-xl);border:1px solid var(--glass-border)}._descriptionSection_ov6ol_1281 h3{font-size:1.25rem;font-weight:800;margin-bottom:1.5rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:.75rem}._descriptionSection_ov6ol_1281 h3:before{content:"";width:4px;height:20px;background:var(--accent);border-radius:var(--radius-full);box-shadow:0 0 10px var(--accent-glow)}._description_ov6ol_1281{line-height:1.8;color:var(--text-secondary);font-size:1.05rem;margin:0}._epJumpControls_ov6ol_1317{margin-bottom:1rem;padding:1rem;background:#ffffff08;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.8rem;border:1px solid var(--border-primary)}._epRangeButtons_ov6ol_1328{display:flex;flex-wrap:wrap;gap:.5rem}._metaTags_ov6ol_1334{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}._epRangeBtn_ov6ol_1341{background:transparent;border:1px solid var(--border-primary);color:var(--text-secondary);padding:.3rem .6rem;border-radius:4px;cursor:pointer;font-size:.8rem}._epRangeBtn_ov6ol_1341:hover{border-color:var(--accent);color:var(--accent)}._epJumpInputGroup_ov6ol_1356{display:flex;gap:.5rem}._epJumpInputGroup_ov6ol_1356 input{background:#0000004d;border:1px solid var(--border-primary);color:#fff;padding:.4rem .8rem;border-radius:4px;flex:1}._epJumpInputGroup_ov6ol_1356 input:focus{outline:none;border-color:var(--accent)}._epJumpInputGroup_ov6ol_1356 button{background:var(--accent);color:var(--accent-text);border:none;padding:.4rem 1rem;border-radius:4px;cursor:pointer}._epJumpInputGroup_ov6ol_1356 button:hover{background:var(--accent-dark)}._videoContainer_ov6ol_311._fullscreenActive_ov6ol_1388{cursor:none;border-radius:0}._videoContainer_ov6ol_311:fullscreen,._videoContainer_ov6ol_311:-webkit-full-screen{width:100vw;height:100vh;border-radius:0}._videoContainer_ov6ol_311:fullscreen video,._videoContainer_ov6ol_311:fullscreen canvas,._videoContainer_ov6ol_311:-webkit-full-screen video,._videoContainer_ov6ol_311:-webkit-full-screen canvas{border-radius:0}._errorOverlay_ov6ol_1026{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#000c;color:#fff;z-index:30;padding:2rem;text-align:center;gap:1rem;border-radius:inherit}._errorOverlay_ov6ol_1026 p{margin:0;font-size:1.2rem;font-weight:500}._errorSubtext_ov6ol_1432{color:var(--text-tertiary)!important;font-size:.9rem!important}._retryButton_ov6ol_1036{background:var(--accent);color:var(--accent-text);border:none;padding:.6rem 2rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem;box-shadow:0 4px 12px var(--accent-glow)}._retryButton_ov6ol_1036:hover{background:var(--accent-light);transform:translateY(-2px)}._playerPageLayout_xfhzl_1{display:grid;grid-template-columns:320px 1fr;gap:2.5rem;padding:2rem;width:100%;max-width:1800px;margin:0 auto;align-items:start;min-height:calc(100vh - var(--header-height));background-color:transparent;animation:_fadeIn_xfhzl_1 .8s var(--ease-smooth)}._episodeSidebar_xfhzl_15{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:visible;display:flex;flex-direction:column;box-shadow:var(--glass-shadow);animation:_slideUpIn_xfhzl_1 .8s var(--ease-smooth)}._playerMain_xfhzl_28{min-width:0;display:flex;flex-direction:column;gap:1.25rem;animation:_slideUpIn_xfhzl_1 .8s .1s var(--ease-smooth) both}._videoPlayerWrapper_xfhzl_36{width:100%;padding-top:56.25%;background-color:#000;border-radius:0;overflow:clip;isolation:isolate;position:relative;box-shadow:0 20px 50px #00000080;border:1px solid var(--glass-border)}._playerInfoHeader_xfhzl_52{display:flex;gap:2.5rem;align-items:flex-start}._playerAnimeCard_xfhzl_58{width:140px;flex-shrink:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--glass-border);transform:translateZ(0);aspect-ratio:2/3;height:auto}._playerInfoContainer_xfhzl_70{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:3rem;border-radius:var(--radius-2xl);box-shadow:var(--glass-shadow);display:flex;flex-direction:column}._playerAnimeCard_xfhzl_58 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.8,.2,1)}._playerAnimeCard_xfhzl_58:hover img{transform:scale(1.1)}._videoTitleSection_xfhzl_94{flex:1;display:flex;flex-direction:column;justify-content:flex-start;gap:1.5rem}._videoTitleSection_xfhzl_94 h1{margin:0;font-size:2.5rem;line-height:1.1;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}._videoDescription_xfhzl_111{color:var(--text-secondary);line-height:1.7;font-size:1.05rem}@keyframes _fadeIn_xfhzl_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUpIn_xfhzl_1{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1280px){._playerPageLayout_xfhzl_1{grid-template-columns:280px 1fr;padding:1.5rem;gap:1.5rem}}@media(max-width:1024px){._playerPageLayout_xfhzl_1{display:flex;flex-direction:column;gap:2rem}._episodeSidebar_xfhzl_15{width:100%;height:auto;max-height:500px;position:static;order:2;overflow-y:auto;-webkit-overflow-scrolling:touch}._playerMain_xfhzl_28{order:1;width:100%}._playerInfoHeader_xfhzl_52{padding:0}}@media(max-width:768px){._playerPageLayout_xfhzl_1{padding:1rem;gap:1.5rem}._episodeSidebar_xfhzl_15{display:none}._playerMain_xfhzl_28{gap:1.5rem}._videoPlayerWrapper_xfhzl_36{border-radius:0}._playerInfoContainer_xfhzl_70{border-radius:var(--radius-xl);padding:1.5rem}._playerInfoHeader_xfhzl_52{flex-direction:row;align-items:flex-start;text-align:left;gap:1.5rem}._videoTitleSection_xfhzl_94 h1{font-size:1.75rem}._playerAnimeCard_xfhzl_58{width:100px}._episodeSidebar_xfhzl_15{border-radius:var(--radius-lg)}}@media(max-width:480px){._playerInfoHeader_xfhzl_52{flex-direction:column;align-items:center;text-align:center}._playerAnimeCard_xfhzl_58{width:120px}}@media(max-width:480px)and (orientation:portrait){._videoPlayerWrapper_xfhzl_36{padding-top:100%;position:relative}}@media(min-width:481px)and (max-width:768px)and (orientation:portrait){._videoPlayerWrapper_xfhzl_36{padding-top:75%;position:relative}}@media(max-width:900px)and (orientation:landscape){._playerPageLayout_xfhzl_1{padding:0;gap:0}._videoPlayerWrapper_xfhzl_36{border-radius:0;height:100vh;padding-top:0}._playerInfoContainer_xfhzl_70{padding:1.5rem}}body.low-end ._playerPageLayout_xfhzl_1,body.low-end ._episodeSidebar_xfhzl_15,body.low-end ._playerInfoContainer_xfhzl_70{animation:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;background:var(--bg-secondary)!important}body.low-end ._videoPlayerWrapper_xfhzl_36{box-shadow:none!important;border-color:var(--border-primary)!important}body.low-end ._episodeSidebar_xfhzl_15{background:var(--bg-secondary)!important}._theaterMode_xfhzl_276{display:flex!important;justify-content:center!important;align-items:center!important;position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;min-height:100vh!important;max-width:none!important;padding:2.5rem!important;margin:0!important;background-color:var(--bg-main)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;animation:_fadeIn_xfhzl_1 .4s var(--ease-smooth)!important;overflow:hidden!important;z-index:var(--z-overlay)!important}._theaterMode_xfhzl_276 ._playerMain_xfhzl_28{width:90%!important;max-width:1200px!important;height:auto!important;aspect-ratio:16/9!important;gap:0!important;margin:auto!important;padding:0!important;animation:_scaleUpIn_xfhzl_1 .4s cubic-bezier(.25,1,.5,1)!important}._theaterMode_xfhzl_276 ._videoPlayerWrapper_xfhzl_36{width:100%!important;height:100%!important;padding-top:0!important;border-radius:0!important;border-color:#ffffff26!important;box-shadow:0 20px 60px color-mix(in srgb,var(--accent) 15%,transparent),0 0 100px #000000e6!important;overflow:hidden!important;position:relative!important}@keyframes _scaleUpIn_xfhzl_1{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}body.theater-mode header,body.theater-mode footer{display:none!important}body.theater-mode main{padding:0!important;max-width:none!important;margin:0!important;width:100vw!important;height:100vh!important}body.theater-mode{overflow:hidden!important;background:#000!important}@media(max-width:768px){._theaterMode_xfhzl_276{padding:1rem!important}._theaterMode_xfhzl_276 ._playerMain_xfhzl_28{width:100%!important;max-width:none!important}}._shell_41rxp_1{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:clip;isolation:isolate;border-radius:0;container-type:inline-size;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media(max-width:480px)and (orientation:portrait){._shell_41rxp_1{aspect-ratio:1 / 1}}@media(min-width:481px)and (max-width:768px)and (orientation:portrait){._shell_41rxp_1{aspect-ratio:4 / 3}}._shell_41rxp_1:fullscreen,._shell_41rxp_1:-webkit-full-screen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0}._shell_41rxp_1:fullscreen,._shell_41rxp_1:fullscreen ._stage_41rxp_37,._shell_41rxp_1:fullscreen ._stage_41rxp_37>video,._shell_41rxp_1:fullscreen ._stage_41rxp_37>canvas,._shell_41rxp_1:fullscreen ._stage_41rxp_37>iframe,._shell_41rxp_1:-webkit-full-screen,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>video,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>canvas,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>iframe{border-radius:0!important}@media(max-width:900px)and (orientation:landscape){._shell_41rxp_1{aspect-ratio:auto;height:100vh;border-radius:0}}._stage_41rxp_37{position:absolute;inset:0;z-index:1;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._stage_41rxp_37>video,._stage_41rxp_37>canvas,._stage_41rxp_37>iframe{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;display:block;background:#000;border:none;border-radius:inherit;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._shellFill_41rxp_85{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}._shellFullscreen_41rxp_93,._shellFullscreen_41rxp_93 ._stage_41rxp_37,._shellFullscreen_41rxp_93 ._stage_41rxp_37>video,._shellFullscreen_41rxp_93 ._stage_41rxp_37>canvas,._shellFullscreen_41rxp_93 ._stage_41rxp_37>iframe{border-radius:0!important}._shellFullscreen_41rxp_93{width:100vw;height:100vh;aspect-ratio:auto}._uiLayer_41rxp_107{position:absolute;inset:0;z-index:50;pointer-events:none}._uiLayer_41rxp_107>*{pointer-events:auto}._volumeWrap_41rxp_118{display:flex;align-items:center;position:relative}._volumeSlider_41rxp_124{width:0;opacity:0;transform:scaleX(0);transform-origin:left center;transition:width .25s ease,opacity .25s ease,transform .25s ease;cursor:pointer;margin-left:8px;-webkit-appearance:none;appearance:none;background:transparent;height:24px;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._volumeWrap_41rxp_118[data-expanded=true] ._volumeSlider_41rxp_124{width:84px;opacity:1;transform:scaleX(1)}@media(hover:hover)and (pointer:fine){._volumeWrap_41rxp_118:hover ._volumeSlider_41rxp_124,._volumeSlider_41rxp_124:focus-visible{width:84px;opacity:1;transform:scaleX(1)}}._volumeSlider_41rxp_124::-webkit-slider-runnable-track{width:100%;height:4px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-percent, 0%),rgba(255,255,255,.2) var(--volume-percent, 0%),rgba(255,255,255,.2) 100%);border-radius:4px}._volumeSlider_41rxp_124::-moz-range-track{width:100%;height:4px;background:#fff3;border-radius:4px}._volumeSlider_41rxp_124::-moz-range-progress{height:4px;background:var(--accent);border-radius:4px}._volumeSlider_41rxp_124::-webkit-slider-thumb{-webkit-appearance:none;height:12px;width:12px;border-radius:50%;background:#fff;margin-top:-4px;box-shadow:0 0 5px #00000080}@media(pointer:coarse){._volumeWrap_41rxp_118[data-expanded=true] ._volumeSlider_41rxp_124{width:96px;height:32px}}._centerControls_61n7k_1{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);display:flex;align-items:center;gap:3rem;gap:clamp(1rem,5cqw,3rem);z-index:10;pointer-events:auto;transition:transform .4s cubic-bezier(.2,.8,.2,1)}._centerSkipBtn_61n7k_15{background:transparent;border:none;border-radius:50%;color:#ffffffe6;width:56px;height:56px;width:clamp(2.5rem,6.5cqw,3.5rem);height:clamp(2.5rem,6.5cqw,3.5rem);font-size:1.8rem;font-size:clamp(1.1rem,2.8cqw,1.8rem);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85))}._centerSkipBtn_61n7k_15:hover{color:#fff;transform:scale(1.15);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85)) drop-shadow(0 0 14px var(--accent-glow))}._centerPlayPause_61n7k_40{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:#fff;width:76px;height:76px;width:clamp(3rem,8cqw,5rem);height:clamp(3rem,8cqw,5rem);font-size:2.2rem;font-size:clamp(1.4rem,3.4cqw,2.3rem);cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85))}@media(pointer:coarse){._centerSkipBtn_61n7k_15{width:clamp(2.75rem,7cqw,3.75rem);height:clamp(2.75rem,7cqw,3.75rem)}}._centerPlayPause_61n7k_40:hover{transform:scale(1.08);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85)) drop-shadow(0 0 16px var(--accent-glow))}._playIconOffset_61n7k_71{transform:translate(3px)}._statusArea_1xccu_1{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;background:var(--bg-secondary);border:1px solid var(--border-primary);padding:.75rem 1.25rem;border-radius:var(--radius-lg);margin-top:.5rem;margin-bottom:0;color:var(--text-secondary);box-shadow:var(--shadow-lg);width:fit-content;max-width:100%;-webkit-user-select:none;user-select:none;flex-wrap:wrap}._toggleBtn_1xccu_20{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-secondary);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;padding:.15rem .25rem;border-radius:var(--radius-sm);transition:color var(--transition-fast);pointer-events:auto}._toggleBtn_1xccu_20:hover{color:var(--text-primary)}._toggleBtn_1xccu_20 svg{color:var(--accent)}._shortcuts_1xccu_46{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;padding-top:.6rem;border-top:1px solid var(--border-primary);width:100%}._shortcutGroup_1xccu_56{display:flex;gap:1rem;align-items:center;flex-wrap:nowrap}._shortcut_1xccu_46{display:flex;align-items:center;gap:.3rem;white-space:nowrap}._key_1xccu_70{background:#ffffff14;padding:.15rem .4rem;border-radius:5px;border:1px solid rgba(255,255,255,.1);font-weight:800;color:var(--text-primary);font-size:.75rem;min-width:1.4rem;height:1.4rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);box-shadow:0 1.5px #0000004d}._key_1xccu_70+._key_1xccu_70{margin-left:-.15rem}._label_1xccu_91{color:var(--text-tertiary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}@media(max-width:768px){._statusArea_1xccu_1{display:none}}._episodeListContainer_9tyin_1{display:flex;flex-direction:column;height:100%;min-height:0;background:transparent}._drawerContainer_9tyin_9{height:auto;min-height:100%}._episodeListHeader_9tyin_14{background:transparent;padding:var(--space-6);border-bottom:1px solid var(--glass-border)}._drawerHeader_9tyin_20{position:sticky;top:0;z-index:5;background:#0c0c0ffa;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}._episodeListTitle_9tyin_29{margin:0 0 var(--space-5) 0;font-size:.85rem;font-weight:800;color:var(--text-tertiary);display:flex;align-items:center;gap:var(--space-3);letter-spacing:.1em;text-transform:uppercase}._rangeSelector_9tyin_41{display:flex;flex-wrap:wrap;gap:var(--space-2)}._rangeButton_9tyin_47{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-secondary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.8rem;font-weight:600;transition:all var(--transition-fast);cursor:pointer}._rangeButton_9tyin_47:hover{border-color:var(--text-secondary);color:var(--text-primary);background:#ffffff1a}._rangeButton_9tyin_47:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._rangeButton_9tyin_47._active_9tyin_70{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}._episodeList_9tyin_1{flex:1;display:flex;flex-direction:column;padding:var(--space-4);overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}._drawerList_9tyin_89{overflow:visible;-webkit-overflow-scrolling:auto;touch-action:pan-y}._episodeList_9tyin_1::-webkit-scrollbar{width:6px}._episodeList_9tyin_1::-webkit-scrollbar-track{background:transparent}._episodeList_9tyin_1::-webkit-scrollbar-thumb{background:#ffffff24;background-clip:padding-box;border-radius:var(--radius-full);border:2px solid transparent}._episodeList_9tyin_1:hover::-webkit-scrollbar-thumb{background-color:#ffffff47}._episodeList_9tyin_1::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}._episodeItem_9tyin_118{padding:var(--space-4) var(--space-5);margin-bottom:var(--space-2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);color:var(--text-secondary);font-weight:600;display:flex;justify-content:space-between;align-items:center;font-size:.9rem;border:1px solid transparent}._episodeItem_9tyin_118:hover{background:#ffffff0d;color:var(--text-primary);transform:translate(6px);border-color:var(--glass-border)}._episodeItem_9tyin_118:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._episodeItem_9tyin_118._watched_9tyin_145{color:var(--text-muted);opacity:.6}._episodeItem_9tyin_118._active_9tyin_70{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}._episodeItem_9tyin_118._active_9tyin_70:hover{transform:none;background:color-mix(in srgb,var(--accent) 15%,transparent)}._episodeItem_9tyin_118 span{display:flex;align-items:center;gap:var(--space-3)}._episodeThumb_9tyin_167{width:72px;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md);flex-shrink:0;background:#ffffff0f}._episodeText_9tyin_176{flex-direction:column!important;align-items:flex-start!important;gap:2px!important;min-width:0;flex:1}._episodeLabel_9tyin_184{font-weight:700;color:inherit}._episodeSub_9tyin_189{font-size:.78rem;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}._shell_cys6s_1{position:fixed;inset:0;z-index:var(--z-drawer);display:flex;align-items:flex-end;justify-content:center}._overlay_cys6s_10{position:absolute;inset:0;border:0;padding:0;background:#0000008f;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:_fadeIn_cys6s_1 .2s ease-out}._drawer_cys6s_21{position:relative;z-index:1;width:min(100vw,100%);max-height:86vh;background:#0c0c0ffa;border-radius:var(--radius-lg) var(--radius-lg) 0 0;border:1px solid var(--glass-border);border-bottom:none;display:flex;flex-direction:column;overflow:hidden;animation:_slideUpIn_cys6s_1 .25s ease-out}@keyframes _fadeIn_cys6s_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUpIn_cys6s_1{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}._handle_cys6s_56{width:52px;height:5px;border-radius:999px;background:#ffffff2e;margin:.7rem auto 0}._header_cys6s_64{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1rem .9rem;border-bottom:1px solid var(--glass-border)}._headerCopy_cys6s_73{display:flex;flex-direction:column;gap:.25rem}._kicker_cys6s_79{color:var(--text-tertiary);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}._title_cys6s_87{margin:0;font-size:1.1rem;font-weight:800;color:var(--text-primary)}._closeBtn_cys6s_94{width:38px;height:38px;border-radius:999px;border:1px solid var(--glass-border);background:#ffffff0d;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}._closeBtn_cys6s_94:hover{background:#ffffff1a}._closeBtn_cys6s_94:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._body_cys6s_116{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}._row_1fq55_1{display:flex;flex-direction:column;gap:.3rem;padding:.5rem .75rem .6rem;min-width:0}._rowHeader_1fq55_9{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;min-width:0}._rowLabel_1fq55_17{font-size:.68rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._rowValue_1fq55_28{font-size:.72rem;font-weight:600;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}._slider_1fq55_36{width:100%;min-width:8rem;cursor:pointer;-webkit-appearance:none;appearance:none;background:transparent;height:1.375rem;margin:0;touch-action:pan-y}._slider_1fq55_36::-webkit-slider-runnable-track{width:100%;height:4px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--slider-percent, 0%),rgba(255,255,255,.25) var(--slider-percent, 0%),rgba(255,255,255,.25) 100%);border-radius:4px;border:none}._slider_1fq55_36::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;margin-top:-4px;box-shadow:0 0 8px #00000080}._slider_1fq55_36::-moz-range-track{width:100%;height:4px;background:#ffffff40;border-radius:4px;border:none}._slider_1fq55_36::-moz-range-progress{height:4px;background:var(--accent);border-radius:4px}._slider_1fq55_36::-moz-range-thumb{width:10px;height:10px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;box-shadow:0 0 8px #00000080}._swatches_1fq55_99{display:flex;gap:.375rem;align-items:center}._swatch_1fq55_99{width:1.25rem;height:1.25rem;padding:0;border-radius:50%;cursor:pointer;flex:0 0 auto}._swatchPicked_1fq55_114{box-shadow:0 0 0 2px var(--panel-bg, #141416),0 0 0 3.5px var(--accent)}._colorInput_1fq55_120{width:1.75rem;height:1.25rem;padding:0;border:none;border-radius:.3rem;background:transparent;cursor:pointer;flex:0 0 auto}._segmented_1fq55_131{display:flex;gap:.25rem;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.2rem}._segmented_1fq55_131 button{flex:1 1 0;min-width:0;background:transparent;border:none;border-radius:calc(var(--radius-sm) - 2px);color:var(--text-secondary);font-size:.72rem;font-weight:700;text-transform:capitalize;padding:.3rem .25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.3rem;white-space:nowrap}._segmented_1fq55_131 button:hover{color:var(--text-primary)}._segmented_1fq55_131 button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent-light)}@media(pointer:coarse){._row_1fq55_1{gap:.4rem;padding:.6rem .85rem .7rem}._slider_1fq55_36{height:1.875rem}._slider_1fq55_36::-webkit-slider-thumb{width:16px;height:16px;margin-top:-6px}._slider_1fq55_36::-moz-range-thumb{width:14px;height:14px}._swatch_1fq55_99{width:1.5rem;height:1.5rem}._segmented_1fq55_131 button{padding:.5rem .25rem;min-height:2.5rem}}