@serifpersia/dango 4.0.0 → 4.0.2

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 (69) hide show
  1. package/README.md +1 -1
  2. package/client/dist/assets/AnimeCard-B-3qrNhu.js +1 -0
  3. package/client/dist/assets/AnimeInfo-DXoNbSao.js +1 -0
  4. package/client/dist/assets/{AnimeInfoPage-DLf7SyVa.js → AnimeInfoPage-CRWoCwXo.js} +2 -2
  5. package/client/dist/assets/{Asmr-Dsuu6xgC.js → Asmr-z6PNn8Ld.js} +1 -1
  6. package/client/dist/assets/{AsmrPopup-CQC440HI.js → AsmrPopup-Cc-aIYXd.js} +1 -1
  7. package/client/dist/assets/{AsmrResetProgressModal-CEnhUV7K.js → AsmrResetProgressModal-D4Mp_-lx.js} +1 -1
  8. package/client/dist/assets/Home-9ZTaG1WX.js +1 -0
  9. package/client/dist/assets/Home-Bmc4hGfd.css +1 -0
  10. package/client/dist/assets/Insights-Bf92STPA.js +1 -0
  11. package/client/dist/assets/{LibraryListPage-DnwV1dP1.js → LibraryListPage-CNjzasIi.js} +1 -1
  12. package/client/dist/assets/{ListeningList-DR4z9phs.js → ListeningList-1mBIfxxH.js} +1 -1
  13. package/client/dist/assets/{Manga-Cd_q6M_o.js → Manga-B3_TdzgY.js} +1 -1
  14. package/client/dist/assets/MangaInfoPage-DnDwJDWC.js +1 -0
  15. package/client/dist/assets/{MangaReadPage-Dh4rEwtO.js → MangaReadPage-Cq4NYq31.js} +1 -1
  16. package/client/dist/assets/{MangaResetProgressModal-DVJbgVwK.js → MangaResetProgressModal-DaZmK9CX.js} +1 -1
  17. package/client/dist/assets/{Mature-DCBXh2Dl.js → Mature-CbQWqjUS.js} +1 -1
  18. package/client/dist/assets/{MatureConsentModal-D34i8744.js → MatureConsentModal-CEoZ_OA0.js} +1 -1
  19. package/client/dist/assets/MediaCard-B-TmXdgl.js +1 -0
  20. package/client/dist/assets/MediaCard-BfQaS9n5.css +1 -0
  21. package/client/dist/assets/{OptionListMenu-BjsiUrW1.js → OptionListMenu-ArbsAjlv.js} +1 -1
  22. package/client/dist/assets/{Player-Cy24aKqh.js → Player-4wh-a_ee.js} +3 -3
  23. package/client/dist/assets/{PlayerProvider-BbsS7ai1.js → PlayerProvider-CbamWD19.js} +1 -1
  24. package/client/dist/assets/{PlayerSettings-cJWnEwcK.js → PlayerSettings-DehU56D4.js} +1 -1
  25. package/client/dist/assets/{QueueOptionsButton-JAUAWTzf.js → QueueOptionsButton-DqoDQST5.js} +1 -1
  26. package/client/dist/assets/QueueRail-ClrcV9LL.js +1 -0
  27. package/client/dist/assets/{ReadingList-EboHnXxk.js → ReadingList-Cy1BKzJs.js} +1 -1
  28. package/client/dist/assets/{ResetProgressModal-Daj-RqHv.js → ResetProgressModal-BdcBPlC1.js} +1 -1
  29. package/client/dist/assets/{Search-83zyS4iX.js → Search-5PvZ8pAC.js} +1 -1
  30. package/client/dist/assets/Settings-O0oOrEUd.js +21 -0
  31. package/client/dist/assets/{SkeletonGrid-D2FNyELs.js → SkeletonGrid-DqN0laN_.js} +1 -1
  32. package/client/dist/assets/{Trackers-Da4Q2-ta.js → Trackers-DxBWYwss.js} +2 -2
  33. package/client/dist/assets/{Tv-lRDoqQLs.js → Tv-Ox6p6iEx.js} +3 -3
  34. package/client/dist/assets/TvInfo-DjPQ7BZn.js +1 -0
  35. package/client/dist/assets/{TvPopup-vBayJw7b.js → TvPopup-CCTQiS84.js} +1 -1
  36. package/client/dist/assets/{TvSearch-Vg-ncyei.js → TvSearch-Baig87wj.js} +1 -1
  37. package/client/dist/assets/{TvWatchlist-CEt3I21U.js → TvWatchlist-D-yxvaKC.js} +1 -1
  38. package/client/dist/assets/{VirtualKeyboard-CADCu5f_.js → VirtualKeyboard-Bf7wvuX3.js} +1 -1
  39. package/client/dist/assets/{WatchAlong-Cc2HhkiG.js → WatchAlong-D9NsqbWz.js} +1 -1
  40. package/client/dist/assets/{WatchAlongPanel-D3FLPJz0.js → WatchAlongPanel-DRsYyjM7.js} +1 -1
  41. package/client/dist/assets/{Watchlist-CUFpDT9-.js → Watchlist-oYAx_dFL.js} +1 -1
  42. package/client/dist/assets/{index-B9fL2VIP.js → index-CPhXtUuw.js} +5 -5
  43. package/client/dist/assets/index-YxVpiwVZ.css +1 -0
  44. package/client/dist/assets/{libraryInvalidation-Cnx2xRQb.js → libraryInvalidation-hcASRQHn.js} +1 -1
  45. package/client/dist/assets/{playbackCompletion-CKlwK8SG.js → playbackCompletion-D1Gm0GbH.js} +1 -1
  46. package/client/dist/assets/{useAnimeInfoData-hTms4q2e.js → useAnimeInfoData-BsFz9uiF.js} +1 -1
  47. package/client/dist/assets/{useMangaLibrary-CUNeIgcg.js → useMangaLibrary-DbvnlYV9.js} +1 -1
  48. package/client/dist/assets/{useMangaPopup-s5QTNQMd.js → useMangaPopup-2lqmdmS5.js} +1 -1
  49. package/client/dist/assets/{useProviders-twwSG5Ji.js → useProviders-BgAgACS8.js} +1 -1
  50. package/client/dist/assets/{useTv-CmriRQC3.js → useTv-OX_q_uaI.js} +1 -1
  51. package/client/dist/assets/{useTvLibrary-abNJVIr4.js → useTvLibrary-DaLHYFID.js} +1 -1
  52. package/client/dist/assets/useWatchAlongPlayer-B7Yj2s3s.js +10 -0
  53. package/client/dist/index.html +2 -2
  54. package/package.json +2 -2
  55. package/server/dist/server.js +1 -1
  56. package/server/package.json +1 -1
  57. package/client/dist/assets/AnimeCard-SI0B6et0.js +0 -1
  58. package/client/dist/assets/AnimeInfo-SoCwFMy3.js +0 -1
  59. package/client/dist/assets/Home-D_Hd4SUo.css +0 -1
  60. package/client/dist/assets/Home-ioBgiYqI.js +0 -1
  61. package/client/dist/assets/Insights-DZx-ZzP2.js +0 -1
  62. package/client/dist/assets/MangaInfoPage-DVGzzTOa.js +0 -1
  63. package/client/dist/assets/MediaCard-CJ-18Ma8.css +0 -1
  64. package/client/dist/assets/MediaCard-JRLogrma.js +0 -1
  65. package/client/dist/assets/QueueRail-Ck96ehEp.js +0 -1
  66. package/client/dist/assets/Settings-Bv8Y_ao5.js +0 -21
  67. package/client/dist/assets/TvInfo-9UDA16_u.js +0 -1
  68. package/client/dist/assets/index-B8IsmFl4.css +0 -1
  69. package/client/dist/assets/useWatchAlongPlayer-CtnbRVOZ.js +0 -10
@@ -1 +0,0 @@
1
- ._fadeImage_1bp3x_1{opacity:0;transition:opacity .4s ease}._fadeImage_1bp3x_1._loaded_1bp3x_6{opacity:1}._overlay_5hzq9_1{position:fixed;inset:0;background-color:#0009;z-index:var(--z-modal);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:_fadeIn_5hzq9_1 .2s ease-out}._content_5hzq9_11{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:calc(var(--z-modal) + 1);background-color:var(--bg-secondary);padding:var(--space-6);border-radius:var(--radius-lg);width:100%;max-width:min(500px,calc(100vw - 2 * var(--space-4)));max-height:calc(100vh - 2 * var(--space-4));overflow-y:auto;box-shadow:var(--shadow-xl);border:1px solid var(--border-primary);animation:_modalIn_5hzq9_1 .2s var(--ease-smooth)}._sm_5hzq9_29{max-width:min(400px,calc(100vw - 2 * var(--space-4)))}._md_5hzq9_33{max-width:min(500px,calc(100vw - 2 * var(--space-4)))}._lg_5hzq9_37{max-width:min(700px,calc(100vw - 2 * var(--space-4)))}._title_5hzq9_41{margin:0 0 var(--space-4);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}._closeButton_5hzq9_48{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;opacity:.6;transition:opacity .15s ease,background-color .15s ease}._closeButton_5hzq9_48:hover{opacity:1;background-color:var(--bg-tertiary)}._body_5hzq9_74{color:var(--text-secondary)}._footer_5hzq9_78{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-primary)}._footer_5hzq9_78>*{flex:0 1 auto;min-width:0;max-width:100%}@media(max-width:480px){._content_5hzq9_11{padding:var(--space-4)}._footer_5hzq9_78{flex-direction:column;align-items:stretch;justify-content:flex-start}._footer_5hzq9_78>*{flex:1 1 auto;width:100%}}@keyframes _fadeIn_5hzq9_1{0%{opacity:0}to{opacity:1}}@keyframes _modalIn_5hzq9_1{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}._container_jzirm_1{position:relative;display:flex;align-items:center}._bellBtn_jzirm_7{background:var(--header-btn-bg, rgba(255, 255, 255, .05));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--header-control-border, rgba(255, 255, 255, .08));color:var(--text-primary);font-size:1.25rem;cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),background var(--transition-fast);position:relative;width:50px;height:50px;border-radius:50%}._bellBtn_jzirm_7:hover{background:var(--header-btn-bg-hover, rgba(0, 0, 0, .25));border-color:#ffffff59;transform:translateY(-1px)}._bellBtn_jzirm_7:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._badge_jzirm_39{position:absolute;top:6px;right:6px;background-color:var(--color-danger);color:#fff;font-size:.62rem;font-weight:700;min-width:18px;height:18px;padding:0 4px;border-radius:999px;display:flex;align-items:center;justify-content:center;text-align:center;border:none;pointer-events:none;animation:_badgePulse_jzirm_1 1.8s ease-in-out 2;line-height:1}@keyframes _badgePulse_jzirm_1{50%{box-shadow:0 0 0 4px var(--accent-subtle)}}._dropdown_jzirm_67{position:fixed;top:calc(var(--vv-top, 0px) + var(--header-height, 64px) + var(--space-3));right:max(var(--space-4),calc((100vw - var(--max-width)) / 2 + var(--space-8)));width:min(420px,calc(100vw - 2rem));max-height:min(620px,calc(100vh - var(--header-height, 64px) - 2rem));background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-header);overflow:hidden;display:flex;flex-direction:column;animation:_slideIn_jzirm_1 .18s ease-out}@keyframes _slideIn_jzirm_1{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}._dropdownHeader_jzirm_98{padding:var(--space-4);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-primary)}._headerSubtitle_jzirm_106{display:block;margin-top:2px;font-size:var(--font-size-xs);color:var(--text-muted)}._headerActions_jzirm_113{display:flex;align-items:center;gap:var(--space-2)}._closeBtn_jzirm_119{display:none;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:var(--radius-full);color:var(--text-secondary);background:#ffffff0f;cursor:pointer}._sectionHeading_jzirm_132{margin:0;padding:var(--space-3) var(--space-4) var(--space-2);color:var(--text-muted);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}._dropdownHeader_jzirm_98 h4{margin:0;font-size:1rem;color:var(--text-primary)}._clearAllBtn_jzirm_148{background:none;border:1px solid var(--border-secondary);color:var(--accent-light);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);transition:all var(--transition-fast)}._clearAllBtn_jzirm_148:hover{background:var(--accent-subtle);border-color:var(--border-accent);color:var(--accent-lighter)}._discoveryStatusRow_jzirm_166{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:.72rem;color:var(--text-muted);background:#ffffff08;border-bottom:1px solid var(--border-primary)}._statusDot_jzirm_177{width:8px;height:8px;border-radius:50%;flex-shrink:0}._statusDotRunning_jzirm_184{background:var(--accent);animation:_statusPulse_jzirm_1 1.2s ease-in-out infinite}._statusDotOk_jzirm_189{background:var(--color-success)}._statusDotInfo_jzirm_193{background:var(--color-info)}._statusDotError_jzirm_197{background:var(--color-danger)}._statusDotIdle_jzirm_201{background:var(--text-muted)}@keyframes _statusPulse_jzirm_1{0%,to{opacity:1}50%{opacity:.35}}._list_jzirm_216{overflow-y:auto;flex:1}._list_jzirm_216::-webkit-scrollbar{width:4px}._list_jzirm_216::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:2px}._item_jzirm_230{display:flex;align-items:center;padding:var(--space-3) var(--space-4);gap:var(--space-3);text-decoration:none;transition:background var(--transition-fast);border-bottom:1px solid var(--border-primary);position:relative}._itemTitleLink_jzirm_241{display:block;text-decoration:none;border-radius:var(--radius-sm)}._itemTitleLink_jzirm_241:focus-visible,._systemItemMeta_jzirm_248:focus-visible,._removeItem_jzirm_249:focus-visible,._clearAllBtn_jzirm_148:focus-visible,._modalButton_jzirm_251:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._item_jzirm_230:hover{background:#ffffff0d}._systemItem_jzirm_248{background:#ffffff06}._systemIcon_jzirm_264{width:42px;height:42px;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--accent-light);background:var(--accent-subtle);flex-shrink:0}._thumbWrap_jzirm_275{width:48px;height:64px;border-radius:var(--radius-sm);background:var(--bg-tertiary);flex-shrink:0;overflow:hidden}._thumbnail_jzirm_284{width:48px;height:64px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;box-shadow:0 2px 8px #0000004d}._itemInfo_jzirm_293{flex:1;min-width:0}._itemTitle_jzirm_241{display:block;font-size:.85rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:var(--space-1)}._itemMeta_jzirm_309{display:inline-block;font-size:.7rem;background:var(--accent);color:var(--accent-text);padding:1px 6px;border-radius:var(--radius-sm);font-weight:600}._systemItemMeta_jzirm_248{display:inline-block;font-size:.7rem;background:none;color:var(--text-muted);padding:0;text-align:left;font:inherit;font-size:var(--font-size-xs);line-height:1.5;border:0;cursor:pointer;transition:background var(--transition-fast)}._systemItemMeta_jzirm_248:hover{color:var(--text-primary)}._systemItemMeta_jzirm_248 span{color:var(--accent-light);white-space:nowrap}._removeItem_jzirm_249{background:none;border:none;color:var(--text-muted);font-size:var(--font-size-xs);cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;opacity:0;border-radius:var(--radius-sm);transition:opacity var(--transition-fast),color var(--transition-fast)}._item_jzirm_230:hover ._removeItem_jzirm_249{opacity:1}@media(hover:none),(pointer:coarse){._removeItem_jzirm_249{opacity:1}}._removeItem_jzirm_249:hover{color:var(--color-danger)}._queueItem_jzirm_374:hover{color:var(--color-success)}._modalButton_jzirm_251{background:var(--accent);color:var(--accent-text);border:0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;font-weight:600}._fullMessage_jzirm_388{margin:0;line-height:1.6;white-space:pre-wrap}._emptyState_jzirm_394{min-height:260px;padding:var(--space-10) var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2)}._emptyState_jzirm_394 strong{color:var(--text-primary);font-size:var(--font-size-base)}._emptyIcon_jzirm_412{width:48px;height:48px;margin-bottom:var(--space-2);border-radius:var(--radius-full);display:grid;place-items:center;color:var(--accent-light);background:var(--accent-subtle)}@media(max-width:768px){._dropdown_jzirm_67{position:fixed;top:calc(var(--header-height, 64px) + env(safe-area-inset-top,0px));left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);width:auto;height:calc(100dvh - var(--header-height, 64px) - env(safe-area-inset-top,0px));max-height:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);animation:_mobileSheetIn_jzirm_1 .2s ease-out;padding-bottom:env(safe-area-inset-bottom,0px)}._removeItem_jzirm_249{padding:var(--space-2);min-width:36px;min-height:36px}._badge_jzirm_39{top:5px;right:6px;font-size:.58rem;min-width:16px;height:16px;padding:0 3px}._list_jzirm_216{overscroll-behavior:contain}._dropdownHeader_jzirm_98,._discoveryStatusRow_jzirm_166{flex-shrink:0}._closeBtn_jzirm_119{display:flex}}@media(max-width:480px){._bellBtn_jzirm_7{width:42px;height:42px}}@keyframes _mobileSheetIn_jzirm_1{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){._dropdown_jzirm_67,._bellBtn_jzirm_7,._badge_jzirm_39,._statusDotRunning_jzirm_184{animation:none;transition:none}}._notificationDivider_jzirm_495{height:1px;flex-shrink:0;margin:var(--space-2) 0;background:var(--border-primary)}.skeleton{position:relative;overflow:hidden;background-color:var(--bg-tertiary);border-radius:var(--radius-sm)}.skeleton:after{position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#ffffff0d 20%,#ffffff1f 60%,#fff0);animation:shimmer 1.8s infinite ease-in-out;content:""}.skeleton-text{border-radius:var(--radius-sm);height:1em}.skeleton-circular{border-radius:50%}.skeleton-rectangular{border-radius:var(--radius-md)}.skeleton-card{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}@keyframes shimmer{to{transform:translate(100%)}}._logo_hls4o_1{height:var(--logo-height, 75px);display:inline-flex;align-items:center;gap:calc(var(--logo-height, 75px) * .18);overflow:visible;flex-shrink:0}._img_hls4o_10{height:calc(var(--logo-height, 75px) * var(--logo-scale, 1.9));width:auto;display:block;object-fit:contain;-webkit-user-select:none;user-select:none;align-self:flex-end;margin-bottom:calc(var(--logo-height, 75px) * var(--logo-drop, -.7));flex-shrink:0}._word_hls4o_21{font-family:var(--font-family);font-size:calc(var(--logo-height, 75px) * .68);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--text-primary);transition:color var(--transition-fast);white-space:nowrap;flex-shrink:0}._logo_hls4o_1:hover ._word_hls4o_21{color:var(--accent)}._header_19a0e_1{height:var(--header-height);--logo-height: 42px;--header-control-bg: rgba(255, 255, 255, .045);--header-control-border: rgba(255, 255, 255, .07);--header-btn-bg: rgba(255, 255, 255, .045);background:transparent;border-bottom:1px solid transparent;position:fixed;top:var(--vv-top, 0px);left:0;right:0;z-index:var(--z-header);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-slow),background-color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}._header_19a0e_1._hidden_19a0e_24{transform:translateY(-100%)}._header_19a0e_1._scrolled_19a0e_28{background-color:#13151dd9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #00000073;--header-btn-bg-hover: rgba(255, 255, 255, .1)}._logo_19a0e_37{display:flex;align-items:center;justify-content:center;padding:6px 12px;background:var(--header-btn-bg, rgba(255, 255, 255, .05));border:1px solid var(--header-control-border, rgba(255, 255, 255, .08));border-radius:var(--radius-full);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:opacity var(--transition-base),transform var(--transition-fast)}._logo_19a0e_37:hover{opacity:.9;transform:translate(2px)}._logoCollapsed_19a0e_57{display:none}._logoFull_19a0e_61,._logoCollapsed_19a0e_57{--logo-scale: 1.7;--logo-drop: -.29}._headerInner_19a0e_67{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-8);display:flex;align-items:center;justify-content:space-between}._leftSection_19a0e_77{display:flex;align-items:center;gap:var(--space-2)}._desktopNav_19a0e_83{display:flex;align-items:center;gap:var(--space-1);margin-left:var(--space-6);padding:4px 6px;background:var(--header-btn-bg, rgba(255, 255, 255, .05));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--header-control-border, rgba(255, 255, 255, .08));border-radius:var(--radius-full)}._navLink_19a0e_96{color:var(--text-muted);font-weight:500;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);text-decoration:none;transition:all var(--transition-fast);position:relative;letter-spacing:.01em;background:none;z-index:1}._navLink_19a0e_96:hover{color:var(--text-primary);background:#ffffff08}._navLinkActive_19a0e_115{color:#fff;font-weight:600;background:transparent}._navPill_19a0e_121{position:absolute;top:4px;bottom:4px;background:#ffffff12;border-radius:var(--radius-full);transition:left .25s cubic-bezier(.22,1,.36,1),width .25s cubic-bezier(.22,1,.36,1),opacity .2s ease;pointer-events:none;z-index:0}._navLinkActive_19a0e_115:after{display:none}._rightSection_19a0e_139{display:flex;align-items:center;gap:var(--space-3)}._searchWrapper_19a0e_145{position:relative;display:flex;align-items:center;background:var(--header-btn-bg, rgba(255, 255, 255, .05));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--header-control-border, rgba(255, 255, 255, .08));border-radius:var(--radius-full);height:50px;padding:0 10px 0 14px;gap:8px;transition:all var(--transition-base);cursor:text}._searchWrapper_19a0e_145:hover{background:var(--header-btn-bg-hover, rgba(255, 255, 255, .08));border-color:#ffffff38}._searchWrapper_19a0e_145:focus-within{background:#0f1118f2;border-color:#ffffff59;box-shadow:0 4px 20px #00000059}._searchIconButton_19a0e_172{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:none;color:inherit;cursor:pointer;flex-shrink:0}._searchIcon_19a0e_172{font-size:.95rem;color:#fff9;flex-shrink:0;transition:color var(--transition-fast)}._searchIconButton_19a0e_172:hover ._searchIcon_19a0e_172{color:var(--accent)}._searchWrapper_19a0e_145:focus-within ._searchIcon_19a0e_172{color:#fff}._searchInput_19a0e_199{width:160px;opacity:1;padding:0;border:none;background:transparent;color:var(--text-primary);font-size:var(--font-size-sm);font-family:inherit;height:100%;pointer-events:auto;outline:none;transition:width var(--transition-base)}._searchInput_19a0e_199:focus,._searchInput_19a0e_199:focus-visible,input._searchInput_19a0e_199:focus,input._searchInput_19a0e_199:focus-visible{outline:none!important;outline-offset:0!important;box-shadow:none!important;border:none!important}._searchInput_19a0e_199::placeholder{color:#ffffff8c}._searchWrapper_19a0e_145:focus-within ._searchInput_19a0e_199{width:230px}._searchKbd_19a0e_232{display:inline-flex;align-items:center;justify-content:center;padding:3px 6px;font-size:.68rem;font-weight:700;color:var(--text-muted);background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);letter-spacing:.02em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity var(--transition-fast)}._searchKbdHidden_19a0e_250{opacity:0;pointer-events:none}._searchButton_19a0e_255{display:none;cursor:pointer}._searchButton_19a0e_255:hover{opacity:.9;transform:translateY(-1px)}._profileBtn_19a0e_265{height:50px;border-radius:var(--radius-full);gap:var(--space-2);padding-right:var(--space-3);text-decoration:none;overflow:hidden;border:1px solid var(--header-control-border, rgba(255, 255, 255, .08));cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--header-btn-bg, rgba(255, 255, 255, .05));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-primary)}._profileBtn_19a0e_265:hover{border-color:#ffffff59;transform:translateY(-1px);background:var(--header-btn-bg-hover, rgba(0, 0, 0, .25))}._profileBtn_19a0e_265:active{transform:scale(.95)}._profileBtn_19a0e_265 svg{color:var(--text-primary);font-size:1.1rem}._profileAvatar_19a0e_300{width:50px;height:50px;display:flex;flex-shrink:0}._profileName_19a0e_307{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:500}._hamburgerBtn_19a0e_316{background:transparent;border:none;color:var(--text-primary);font-size:1.25rem;padding:var(--space-2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;height:40px;width:40px;flex-shrink:0}._hamburgerBtn_19a0e_316:hover{background:var(--header-btn-bg-hover, rgba(255, 255, 255, .08))}._searchButton_19a0e_255:focus-visible,._profileBtn_19a0e_265:focus-visible,._hamburgerBtn_19a0e_316:focus-visible,._logo_19a0e_37:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._searchDropdown_19a0e_344{position:absolute;top:calc(100% + var(--space-8));left:0;right:0;width:auto;max-height:min(520px,calc(100vh - var(--header-height, 64px) - 2rem));background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-header);overflow:hidden;display:flex;flex-direction:column;animation:_slideIn_19a0e_1 .18s ease-out}@media(max-width:1200px){._searchDropdown_19a0e_344{position:fixed;top:calc(var(--header-height, 64px) + env(safe-area-inset-top,0px) + 56px);left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);width:auto;max-height:calc(100dvh - var(--header-height, 64px) - env(safe-area-inset-top,0px) - 56px);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding-bottom:env(safe-area-inset-bottom,0px)}._searchDropdownNoBar_19a0e_376{top:calc(var(--header-height, 64px) + env(safe-area-inset-top,0px) + var(--space-3));max-height:calc(100dvh - var(--header-height, 64px) - env(safe-area-inset-top,0px) - var(--space-3))}}._searchDropdownHeader_19a0e_384{padding:var(--space-4);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-primary)}._searchDropdownQuery_19a0e_392{font-size:.85rem;font-weight:600;color:var(--text-primary)}._searchDropdownSeeAll_19a0e_398{background:none;border:none;color:var(--accent-light);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);transition:all var(--transition-fast)}._searchDropdownSeeAll_19a0e_398:hover{background:var(--accent-subtle);color:var(--accent-lighter)}._searchDropdownList_19a0e_415{overflow-y:auto;flex:1}._searchDropdownList_19a0e_415::-webkit-scrollbar{width:4px}._searchDropdownList_19a0e_415::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:2px}._searchDropdownItem_19a0e_429{display:flex;align-items:center;padding:var(--space-3) var(--space-4);gap:var(--space-3);background:none;border:none;border-bottom:1px solid var(--border-primary);cursor:pointer;text-align:left;transition:background var(--transition-fast);width:100%}._searchDropdownItem_19a0e_429:hover{background:#ffffff0d}._searchDropdownThumb_19a0e_447{width:48px;height:64px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;box-shadow:0 2px 8px #0000004d}._searchDropdownItemInfo_19a0e_456{display:flex;flex-direction:column;gap:2px;min-width:0}._searchDropdownItemTitle_19a0e_463{font-size:.85rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._searchDropdownItemMeta_19a0e_472{font-size:.7rem;color:var(--text-muted);white-space:nowrap}@keyframes _slideIn_19a0e_1{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}._logo_19a0e_37:active,._searchButton_19a0e_255:active,._profileBtn_19a0e_265:active,._hamburgerBtn_19a0e_316:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){._logo_19a0e_37,._searchButton_19a0e_255,._profileBtn_19a0e_265,._hamburgerBtn_19a0e_316,._searchIcon_19a0e_172{transition:none}}._hamburgerBtn_19a0e_316:active{transform:scale(.95)}._mobileSearchBar_19a0e_511{display:none}@media(max-width:1200px){._searchWrapper_19a0e_145{background:transparent;border:1px solid transparent;padding:0;height:auto;cursor:default;backdrop-filter:none;-webkit-backdrop-filter:none}._searchWrapper_19a0e_145:hover{background:transparent;border-color:transparent}._searchWrapper_19a0e_145:focus-within{background:transparent;box-shadow:none;border-color:transparent}._searchIconButton_19a0e_172,._searchIcon_19a0e_172,._searchInput_19a0e_199{display:none}._searchWrapper_19a0e_145:focus-within ._searchInput_19a0e_199{display:none}._searchKbd_19a0e_232{display:none}._searchButton_19a0e_255{display:flex;background:var(--header-btn-bg, rgba(255, 255, 255, .05));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid transparent;color:var(--text-primary);padding:0;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;width:50px;height:50px;border-radius:50%;transition:all var(--transition-base);flex-shrink:0}._searchButton_19a0e_255:hover{background:var(--header-btn-bg-hover, rgba(0, 0, 0, .25));border-color:#ffffff59;transform:translateY(-1px)}._searchIconMobile_19a0e_582{font-size:1rem;color:#fff;transition:all var(--transition-base)}._searchButton_19a0e_255:hover ._searchIconMobile_19a0e_582{color:var(--accent)}._mobileSearchBar_19a0e_511{display:block;position:absolute;top:100%;left:0;right:0;background:#0c0c0feb;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.07);padding:var(--space-2) var(--space-3);animation:_slideDown_19a0e_1 .2s ease;transition:transform var(--transition-base),opacity var(--transition-base)}._mobileSearchBarHidden_19a0e_609{transform:translateY(-100%);opacity:0;pointer-events:none}@keyframes _slideDown_19a0e_1{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}._mobileSearchInner_19a0e_627{display:flex;align-items:center;background:#ffffff14;border:none;border-radius:var(--radius-full);padding:0 var(--space-4);height:40px}._mobileSearchInner_19a0e_627:focus-within{border:none;outline:none;box-shadow:0 0 0 2px var(--accent)}._mobileSearchIcon_19a0e_643{color:#ffffff80;font-size:.85rem;flex-shrink:0;margin-right:var(--space-2)}._mobileSearchInput_19a0e_650{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:var(--font-size-sm);font-family:inherit;height:100%}._mobileSearchInput_19a0e_650::placeholder{color:#ffffff80}._mobileSearchInput_19a0e_650:focus,input._mobileSearchInput_19a0e_650:focus,._mobileSearchInput_19a0e_650:focus-visible,input._mobileSearchInput_19a0e_650:focus-visible{outline:none!important;box-shadow:none!important;border:none}}@media(max-width:920px){._profileBtn_19a0e_265{width:50px;height:50px;padding:0}._profileName_19a0e_307{display:none}}@media(max-width:805px){._desktopNav_19a0e_83{display:none}}@media(max-width:542px){._rightSection_19a0e_139{gap:4px}._hamburgerBtn_19a0e_316{height:38px;width:38px;font-size:1rem}}@media(max-width:480px){._logoFull_19a0e_61{display:none}._logoCollapsed_19a0e_57{display:inline-flex}._logo_19a0e_37{padding:6px 12px;border-radius:var(--radius-full)}._searchButton_19a0e_255,._profileBtn_19a0e_265,._profileAvatar_19a0e_300{width:42px;height:42px}}._sidebar_1wvzm_1{position:fixed;top:0;left:0;width:280px;max-width:85vw;height:100%;transition:transform var(--transition-normal);z-index:var(--z-sidebar);padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;overflow-y:auto;transform:translate(-100%);background-color:#0a0a0cf2;color:var(--text-primary);border-right:1px solid var(--border-primary)}._sidebar_1wvzm_1._open_1wvzm_20{transform:translate(0);box-shadow:20px 0 60px #00000080}._sidebarHeader_1wvzm_25{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-10);position:relative}._closeBtn_1wvzm_33{position:absolute;top:0;right:0;background:none;border:none;font-size:1.25rem;line-height:1;cursor:pointer;color:var(--text-tertiary);transition:color var(--transition-base);display:flex;align-items:center;justify-content:center;padding:var(--space-1);width:32px;height:32px;border-radius:var(--radius-sm)}._closeBtn_1wvzm_33:hover{color:var(--text-primary)}._logo_1wvzm_57{display:flex;align-items:center;text-decoration:none;--logo-height: 50px;--logo-scale: 1.7;--logo-drop: -.5;transition:opacity var(--transition-base)}._logo_1wvzm_57:hover{opacity:.8}._navSection_1wvzm_71{display:flex;flex-direction:column;gap:var(--space-1)}._navLink_1wvzm_77{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-base);color:var(--text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);border-left:2px solid transparent;margin-left:var(--space-2)}._navLink_1wvzm_77 svg{font-size:1rem;width:20px;text-align:center;flex-shrink:0;transition:color var(--transition-base)}._navLink_1wvzm_77:hover{background-color:#ffffff0a;color:var(--text-primary);border-left-color:#ffffff26}._navLink_1wvzm_77:hover svg{color:var(--text-primary)}._navLink_1wvzm_77._active_1wvzm_110{background-color:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-light);border-left-color:var(--accent)}._navLink_1wvzm_77._active_1wvzm_110 svg{color:var(--accent)}._overlay_1wvzm_120{position:fixed;inset:0;background-color:#0009;z-index:calc(var(--z-sidebar) - 1);animation:_fadeIn_1wvzm_1 .3s ease-out}@keyframes _fadeIn_1wvzm_1{0%{opacity:0}to{opacity:1}}._versionInfo_1wvzm_140{margin-top:auto;padding-top:var(--space-8);font-size:1rem;color:var(--text-secondary);text-align:left;display:flex;align-items:center;gap:var(--space-2)}._versionInfo_1wvzm_140:before{content:"";display:block;width:5px;height:5px;border-radius:50%;background-color:var(--color-success)}@media(max-width:768px){._sidebar_1wvzm_1{width:260px;padding:var(--space-6) var(--space-4)}._sidebarHeader_1wvzm_25{margin-bottom:var(--space-8)}._logo_1wvzm_57{--logo-height: 48px}._navLink_1wvzm_77{padding:var(--space-3) var(--space-3)}}._footer_n8m6y_1{width:100%;position:relative;z-index:2;padding:0 var(--space-8) var(--space-8);overflow:visible;border-top:1px solid rgba(255,255,255,.08);margin-top:auto;background:linear-gradient(180deg,#0a0a0c99,#050507f2);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--text-tertiary);font-size:var(--font-size-sm)}._footerInner_n8m6y_16{width:100%;max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:start;gap:var(--space-12);padding-bottom:var(--space-8);border-bottom:1px solid rgba(255,255,255,.06)}._brandSection_n8m6y_28{grid-column:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left;max-width:320px;position:relative;padding-top:0;margin-top:-30px}._logoRow_n8m6y_40{display:flex;align-items:center;gap:14px;--logo-height: 60px}._logoRow_n8m6y_40 a{display:flex;align-items:flex-end;height:calc(var(--logo-height) * 1.9);margin-top:calc(var(--logo-height) * -.9)}._logoText_n8m6y_54{--logo-height: 60px;--logo-scale: 1.5;--logo-drop: -.075;width:auto}._brandMeta_n8m6y_61{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);flex-wrap:wrap;margin-top:10px}._brandTagline_n8m6y_70{color:var(--text-secondary);font-size:.88rem;line-height:1.5;margin:0}._statusPill_n8m6y_77{display:inline-flex;align-items:center;gap:var(--space-2);padding:4px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-full);font-size:.78rem;color:var(--text-secondary);width:fit-content}._statusDot_n8m6y_90{width:7px;height:7px;border-radius:50%;background:var(--color-success);box-shadow:0 0 8px var(--color-success)}._linksGrid_n8m6y_98{grid-column:2;display:flex;gap:var(--space-8);justify-content:flex-end;padding-top:var(--space-8)}._linkColumn_n8m6y_106{display:flex;flex-direction:column;gap:var(--space-2)}._columnTitle_n8m6y_112{color:var(--text-primary);font-size:.9rem;font-weight:700;margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.05em}._footer_n8m6y_1 a{color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:.88rem;transition:all var(--transition-fast);display:inline-flex;align-items:center}._footer_n8m6y_1 a:hover{color:var(--accent);transform:translate(2px)}._bottomBar_n8m6y_136{position:relative;width:100%;max-width:var(--max-width);margin:var(--space-6) auto 0;display:flex;align-items:center;justify-content:center}._copyright_n8m6y_146{margin:0;color:var(--text-muted);font-size:.85rem;display:flex;align-items:center;justify-content:center;gap:4px;text-align:center}._brand_n8m6y_28{color:var(--accent);font-weight:700}._heartIcon_n8m6y_162{color:var(--color-danger);margin:0 2px}._backToTop_n8m6y_167{position:absolute;right:0;display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-full);color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}._backToTop_n8m6y_167:hover{background:#ffffff1f;color:#fff;border-color:var(--accent);transform:translateY(-2px)}@media(max-width:768px){._footer_n8m6y_1{padding:0 var(--space-4) var(--space-6)}._footerInner_n8m6y_16{grid-template-columns:1fr;gap:var(--space-5);align-items:center;justify-items:center}._brandSection_n8m6y_28{grid-column:1;align-items:center;text-align:center;padding-top:0;justify-content:center;margin-top:-26px}._logoRow_n8m6y_40{flex-direction:column;align-items:center;gap:6px;--logo-height: 52px}._logoText_n8m6y_54{--logo-height: 52px}._brandMeta_n8m6y_61{flex-direction:column;align-items:center;gap:var(--space-1);justify-content:center;margin-top:8px}._linksGrid_n8m6y_98{grid-column:1;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);text-align:center}._linkColumn_n8m6y_106{align-items:center;gap:var(--space-1)}._columnTitle_n8m6y_112{margin:0 0 var(--space-1);font-size:.78rem}._footer_n8m6y_1 a{font-size:.82rem}._bottomBar_n8m6y_136{flex-direction:column;gap:var(--space-3);text-align:center}._copyright_n8m6y_146{font-size:.78rem}._backToTop_n8m6y_167{position:static}}._container_e96gf_1{display:flex;flex-direction:column;gap:1rem;color:var(--text-primary);max-width:400px}._field_e96gf_9{display:flex;flex-direction:column;gap:.5rem}._field_e96gf_9 label{font-size:.9rem;opacity:.8}._textarea_e96gf_20{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary);padding:.5rem;border-radius:4px;resize:vertical;font-family:inherit}._textarea_e96gf_20:hover{border-color:var(--border-secondary)}._textarea_e96gf_20:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-input-focus)}._input_e96gf_40{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary);padding:.6rem;border-radius:4px}._input_e96gf_40:hover{border-color:var(--border-secondary)}._input_e96gf_40:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-input-focus)}._button_e96gf_58{background:var(--accent);color:var(--text-primary);border:none;padding:.7rem;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}._button_e96gf_58:hover{opacity:.9}._button_e96gf_58:disabled{opacity:.5;cursor:not-allowed}._secondaryButton_e96gf_78{background:transparent;border:1px solid var(--border-primary);color:var(--text-primary);padding:.7rem;border-radius:4px;cursor:pointer;transition:background .2s,border-color .2s}._secondaryButton_e96gf_78:hover{background:#ffffff0d;border-color:var(--border-secondary)}._actions_e96gf_95{display:flex;gap:.5rem}._actions_e96gf_95 ._button_e96gf_58{flex:1}._hint_e96gf_104{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:4px;padding:.6rem;font-size:.85rem;line-height:1.5}._hint_e96gf_104 ._actions_e96gf_95{margin-top:.6rem}._link_e96gf_117{color:var(--accent);text-decoration:underline;font-weight:600}._link_e96gf_117:hover{opacity:.85}.top-progress-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;overflow:hidden;pointer-events:none;background:transparent}.top-progress-bar:after{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;border-radius:0 3px 3px 0;background:linear-gradient(90deg,transparent,var(--accent),var(--accent-light),transparent);animation:top-progress-slide 1.1s infinite ease-in-out}@keyframes top-progress-slide{0%{transform:translate(-100%)}to{transform:translate(280%)}}@media(prefers-reduced-motion:reduce){.top-progress-bar:after{animation:none;width:100%;border-radius:0}}._screen_1pca0_1{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100%;background-color:var(--bg-secondary);color:var(--text-primary);text-align:center;padding:2rem}._icon_1pca0_14{font-size:4rem;color:var(--color-danger);margin-bottom:1rem}._title_1pca0_20{margin-bottom:1rem}._text_1pca0_24{color:var(--text-secondary);margin-bottom:2rem}._button_1pca0_29{padding:.8rem 1.5rem;background-color:var(--accent);color:var(--accent-text);border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:1rem;transition:background-color .2s}._button_1pca0_29:hover{background-color:var(--accent-light)}._container_88bss_1{display:flex;flex-direction:column;gap:1rem;color:var(--text-primary)}._field_88bss_8{display:flex;flex-direction:column;gap:.5rem}._field_88bss_8 label{font-size:.9rem;opacity:.8}._input_88bss_19{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary);padding:.6rem;border-radius:4px}._input_88bss_19:hover{border-color:var(--border-secondary)}._input_88bss_19:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-input-focus)}._actions_88bss_37{display:flex;gap:.5rem;justify-content:flex-end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;border:none;outline:none;font-family:inherit;position:relative;white-space:nowrap;font-size:var(--font-size-base);background:transparent;color:var(--text-primary);padding:var(--space-3) var(--space-6);min-height:44px;transition:background-color .15s ease,color .15s ease,transform .1s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);color:var(--accent-text);box-shadow:0 4px 12px var(--accent-glow)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-light) 0%,var(--accent) 100%);transform:translateY(-1px);box-shadow:0 6px 16px var(--accent-glow)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:#ffffff14;border:1px solid var(--border-secondary);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff40}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:#ffffff14;color:var(--text-primary)}.btn-danger{background:var(--color-danger);color:var(--color-danger-text)}.btn-danger:hover:not(:disabled){background:var(--color-danger-dark)}.btn-sm{min-height:36px;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{min-height:52px;padding:var(--space-4) var(--space-8);font-size:var(--font-size-md);border-radius:var(--radius-lg)}.btn-block{width:100%}.btn-loading{color:transparent;pointer-events:none}.btn-spinner{position:absolute;width:16px;height:16px;border:2px solid rgba(128,128,128,.35);border-top-color:var(--accent-text);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}._notice_1d75r_1{position:fixed;right:max(var(--space-4),env(safe-area-inset-right));bottom:max(var(--space-4),env(safe-area-inset-bottom));z-index:10000;display:flex;align-items:center;gap:var(--space-2);max-width:calc(100vw - 2 * var(--space-4));padding:var(--space-2-5) var(--space-3);border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg);color:var(--text-secondary);box-shadow:0 4px 16px #00000029;font-family:var(--font-family);font-size:var(--font-size-xs);font-weight:400;line-height:1.5;pointer-events:none;animation:_appear_1d75r_1 2.6s ease both}._notice_1d75r_1 svg{color:var(--text-tertiary);flex-shrink:0}@keyframes _appear_1d75r_1{0%{opacity:0;transform:translateY(4px)}8%,88%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(2px)}}@media(prefers-reduced-motion:reduce){._notice_1d75r_1{animation:none}}:root{--accent: #6d5dfc;--logo-ink: #140f15;--accent-light: #897cff;--accent-lighter: #b3a8ff;--accent-dark: #5646db;--accent-text: #ffffff;--accent-subtle: rgba(109, 93, 252, .12);--accent-glow: rgba(109, 93, 252, .18);--accent-h: 245;--accent-s: 96%;--accent-l: 68%;--color-danger: #ef4444;--color-error: var(--color-danger);--color-danger-dark: #dc2626;--color-danger-text: #ffffff;--color-success: #10b981;--color-success-text: #ffffff;--color-warning: #f59e0b;--color-warning-text: #17171c;--color-info: #3b82f6;--color-info-text: #ffffff;--badge-info-bg: var(--accent);--badge-info-text: var(--accent-text);--palette-gold: #d8b56b;--palette-silver: #c3c9d1;--palette-bronze: #c08d5f;--secondary-h: 180;--secondary-s: 85%;--secondary-l: 50%;--accent-blue: hsl(var(--secondary-h), var(--secondary-s), var(--secondary-l));--accent-blue-light: hsl(var(--secondary-h), var(--secondary-s), 70%);--bg-main: #0c0d12;--bg-primary: #13151d;--bg-secondary: #13151d;--bg-tertiary: #191c27;--bg-elevated: #202433;--header-bg: rgba(12, 13, 18, .85);--text-primary: #ffffff;--text-secondary: #b4b4bd;--text-tertiary: #8f8f98;--text-muted: #b4b4bd;--border-primary: rgba(255, 255, 255, .08);--border-secondary: rgba(255, 255, 255, .12);--border-accent: hsla(var(--accent-h), var(--accent-s), var(--accent-l), .3);--border: var(--border-primary);--control-border: #4b5570;--control-border-hover: #647093;--control-text: #ffffff;--card-radius: var(--radius-lg);--border-light: var(--border-secondary);--danger-color: var(--color-danger);--shadow-input-focus: 0 0 0 2px var(--accent-subtle);--shadow-focus: 0 0 0 2px var(--accent-subtle);--glass-bg: rgba(20, 20, 22, .95);--glass-border: var(--border-primary);--glass-highlight: rgba(255, 255, 255, .05);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .36);--bg-hover: rgba(255, 255, 255, .08);--bg-hover-strong: rgba(255, 255, 255, .1);--bg-overlay: rgba(0, 0, 0, .55);--bg-overlay-strong: rgba(0, 0, 0, .6);--bg-overlay-heavy: rgba(0, 0, 0, .7);--bg-scrim: rgba(10, 10, 12, .55);--bg-scrim-strong: rgba(10, 10, 12, .8);--bg-dark: #0a0a0c;--bg-black: #000000;--border-strong: rgba(255, 255, 255, .14);--track-bg: rgba(255, 255, 255, .1);--track-buffered: rgba(255, 255, 255, .25);--shimmer-highlight: rgba(255, 255, 255, .07);--bg-selected: rgba(255, 255, 255, .06);--shadow-scrim: 0 4px 16px rgba(0, 0, 0, .45);--shadow-panel: 0 12px 32px rgba(0, 0, 0, .5);--color-danger-bg: rgba(153, 42, 42, .9);--font-family: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-size-2xs: .4375rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.5rem;--font-size-xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-px: 1px;--space-2px: 2px;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--size-22: 22px;--size-42: 42px;--size-44: 44px;--size-48: 48px;--size-34: 34px;--size-36: 36px;--size-140: 140px;--size-180: 180px;--size-220: 220px;--size-250: 250px;--size-440: 440px;--size-480: 480px;--size-720: 720px;--size-84: 84px;--size-52: 52px;--size-90: 90px;--size-240: 240px;--size-320: 320px;--size-420: 420px;--size-900: 900px;--layout-asmr-max-width: 1400px;--layout-page-offset: 120px;--layout-player-mobile: 175px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 32px -4px rgba(0, 0, 0, .6);--shadow-active: 0 0 0 1px var(--border-accent), 0 8px 24px -4px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .2);--shadow-thumb: 0 0 5px rgba(0, 0, 0, .5);--blur-sm: 4px;--blur-md: 6px;--blur-lg: 12px;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-drawer: 300;--z-sidebar: 500;--z-header: 400;--z-modal: 600;--z-popover: 700;--z-toast: 800;--z-overlay: 900;--header-height: 80px;--max-width: 1600px;--sidebar-width: 280px;--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-emphasized: cubic-bezier(.32, .72, 0, 1);--transition-fast: .2s var(--ease-smooth);--transition-base: .3s var(--ease-smooth);--transition-normal: .4s var(--ease-smooth);--transition-slow: .5s var(--ease-smooth);--transition-emphasized: .42s var(--ease-emphasized);--transition-quick: .09s var(--ease-smooth);--duration-shimmer: 1.6s;--duration-spin: .9s;--focus-ring-color: var(--accent-light);--focus-ring-glow: 0 0 0 3px rgba(109, 93, 252, .35);--focus-scale: scale(1.05)}@media(min-width:1920px){:root{--font-size-base: 1.125rem;--max-width: 2000px}}html[data-theme=mochi]{--accent: #e3e1ee;--accent-light: #f4f3fa;--accent-lighter: #ffffff;--accent-dark: #b3b1c6;--accent-text: #17171c;--accent-subtle: rgba(227, 225, 238, .12);--accent-glow: rgba(227, 225, 238, 0);--accent-h: 248;--accent-s: 18%;--accent-l: 89%;--bg-main: #131316;--bg-primary: #1b1b1f;--bg-secondary: #1b1b1f;--bg-tertiary: #232329;--bg-elevated: #2b2b32;--header-bg: rgba(19, 19, 22, .88);--text-primary: #f2f2f5;--text-secondary: #a9a9b3;--text-tertiary: #85858f;--text-muted: #a9a9b3;--border-primary: #2c2c33;--border-secondary: #3a3a43;--control-border: #4c4c59;--control-border-hover: #666675;--control-text: #f2f2f5;--glass-bg: rgba(27, 27, 31, .96);--badge-info-bg: var(--accent);--badge-info-text: var(--accent-text);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-active: 0 0 0 1px var(--border-secondary);--shadow-xl: none;--focus-ring-color: var(--accent);--focus-ring-glow: 0 0 0 3px rgba(227, 225, 238, .25)}html[data-theme=sakura]{--accent: #d9a3d9;--accent-light: #eccbec;--accent-lighter: #f9e8f9;--accent-dark: #a978a9;--accent-text: #fff;--accent-subtle: rgba(217, 163, 217, .12);--accent-glow: rgba(217, 163, 217, 0);--accent-h: 300;--accent-s: 45%;--accent-l: 74%;--bg-main: #141116;--bg-primary: #1c171e;--bg-secondary: #1c171e;--bg-tertiary: #241e26;--bg-elevated: #2e262f;--header-bg: rgba(20, 17, 22, .88);--text-primary: #f3eaf3;--text-secondary: #b3a3b5;--text-tertiary: #8d7c8f;--text-muted: #b3a3b5;--border-primary: #322a34;--border-secondary: #403640;--control-border: #524458;--control-border-hover: #6b5872;--control-text: #f3eaf3;--glass-bg: rgba(28, 23, 30, .96);--badge-info-bg: var(--accent-dark);--badge-info-text: #ffffff;--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-active: 0 0 0 1px var(--border-secondary);--shadow-xl: none;--focus-ring-color: var(--accent);--focus-ring-glow: 0 0 0 3px rgba(217, 163, 217, .25)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark;scrollbar-gutter:stable;overflow-x:hidden;overflow-x:clip;max-width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html:has(:fullscreen),html:has(:-webkit-full-screen){scrollbar-gutter:auto}body{margin:0;padding:0;font-family:var(--font-family);background:var(--bg-main);color:var(--text-primary);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overflow-x:clip;max-width:100%;color-scheme:dark}html,body,.app-container,.posterWrapper,.dot,.genreTag{--darkreader-inline-bgcolor: none !important;--darkreader-inline-bgimage: none !important;--darkreader-inline-bordercolor: none !important;--darkreader-inline-color: none !important;background-color:transparent}body{overflow-x:hidden;overflow-x:clip}body:before{display:none!important}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);letter-spacing:-.02em}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus-ring-color)!important;outline-offset:3px!important;box-shadow:var(--focus-ring-glow)!important;transition:outline-offset var(--transition-fast),transform var(--transition-fast)}a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),[tabindex]:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}a,button,input,select,textarea,[tabindex]{-webkit-tap-highlight-color:transparent}@media(min-width:1200px){a:focus-visible,button:focus-visible{transform:var(--focus-scale)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.text-gradient{background:linear-gradient(135deg,#fff,#a5a5a5);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-gradient-accent{background:linear-gradient(135deg,var(--accent-light) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.app-container{display:flex;flex-direction:column;min-height:100vh}main{flex:1;width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-8) var(--space-16);position:relative;z-index:1}.main-content{padding-top:var(--header-height)}@media(max-width:1024px){.main-content{padding-top:calc(var(--header-height) + 52px)}}@media(max-width:848px){main{padding:0 var(--space-4) var(--space-12)}.main-content{padding-top:116px}}.badge{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-full);border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);white-space:nowrap}.badge-primary{border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-subtle);color:var(--accent-light)}.badge-secondary{border-color:var(--border-secondary);background:var(--bg-secondary);color:var(--text-secondary)}.badge-danger{border-color:color-mix(in srgb,var(--color-danger) 35%,transparent);background:color-mix(in srgb,var(--color-danger) 12%,transparent);color:var(--color-danger)}.section-title{font-size:1.75rem;font-weight:800;margin-bottom:var(--space-8);color:var(--text-primary);letter-spacing:-.02em;line-height:1}.section-eyebrow{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-light);margin:0;line-height:1.4}.section-eyebrow:before{content:"";width:18px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-light) 100%);box-shadow:0 0 10px var(--accent-glow);flex:none}.title-stack{display:flex;flex-direction:column;gap:4px;min-width:0;justify-content:center}html[data-theme=mochi] .section-eyebrow,html[data-theme=sakura] .section-eyebrow{color:var(--accent)}@media(max-width:768px){.section-title{font-size:1.5rem;margin-bottom:var(--space-6)}}.grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-6);width:100%}@media(max-width:1024px){.grid-container{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-4)}}@media(max-width:768px){.grid-container{grid-template-columns:repeat(3,1fr);gap:var(--space-2)}}@media(max-width:480px){.grid-container{grid-template-columns:repeat(3,1fr);gap:8px}}footer{text-align:center;padding:var(--space-12);color:var(--text-muted);border-top:1px solid var(--border-primary);margin-top:var(--space-16);background:var(--bg-secondary)}footer a{color:var(--accent);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}footer a:hover{color:var(--accent-light);text-shadow:0 0 8px var(--accent-glow)}select{appearance:none;-webkit-appearance:none;cursor:pointer;background-color:var(--bg-tertiary)!important;border-color:var(--border-primary)!important}select:hover{background-color:var(--bg-tertiary)!important;border-color:var(--border-secondary)!important}select:focus{background-color:var(--bg-tertiary)!important;border-color:var(--accent)!important;outline:none}select:active{background-color:var(--bg-tertiary)!important}body.low-end{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol!important;--transition-fast: 0s !important;--transition-base: 0s !important;--transition-normal: 0s !important;--transition-slow: 0s !important;scroll-behavior:auto!important}body.low-end,body.low-end *{transition:none!important;animation:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;text-shadow:none!important}body.low-end:before{display:none!important}body.low-end .text-gradient,body.low-end .text-gradient-accent{background:none!important;-webkit-background-clip:initial!important;-webkit-text-fill-color:initial!important;color:var(--text-primary)!important}body.low-end .text-gradient-accent{color:var(--accent)!important}body.low-end [class*=banner],body.low-end [class*=bannerContainer],body.low-end [class*=bannerOverlay],body.low-end [class*=heroSection]{background-image:none!important;background-color:var(--bg-main)!important;min-height:auto!important}body.low-end [class*=infoGlass]{background:var(--bg-secondary)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:1px solid var(--border-primary)!important;box-shadow:none!important}.skeleton{position:relative;overflow:hidden;background-color:var(--bg-tertiary)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#ffffff0d 20%,#ffffff1f 60%,#fff0);animation:skeleton-wave 1.8s infinite ease-in-out}@keyframes skeleton-wave{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-container{width:100%;animation:page-fade-in var(--transition-smooth)}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.error-message{padding:var(--space-4);text-align:center;color:var(--color-danger)}._gate_1ex8w_1{min-height:100dvh;min-height:100svh;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow-y:auto;padding:max(env(safe-area-inset-top),var(--space-5)) max(env(safe-area-inset-right),var(--space-4)) max(env(safe-area-inset-bottom),var(--space-5)) max(env(safe-area-inset-left),var(--space-4));background:radial-gradient(circle at 50% 0%,var(--accent-subtle),transparent 55%),var(--bg-main);color:var(--text-primary);animation:_gateFadeIn_1ex8w_1 .35s var(--ease-smooth);transition:opacity var(--transition-base),transform var(--transition-base)}._gateExiting_1ex8w_21{opacity:0;transform:translateY(-8px);pointer-events:none}._appEntering_1ex8w_27{animation:_appEnter_1ex8w_27 .4s var(--ease-smooth)}@keyframes _gateFadeIn_1ex8w_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes _appEnter_1ex8w_27{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes _panelSlideIn_1ex8w_1{0%{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes _cardIn_1ex8w_1{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes _dotPulse_1ex8w_1{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes _breathe_1ex8w_1{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.04);opacity:1}}._gateInner_1ex8w_100{width:min(100%,880px);margin:clamp(2rem,12vh,7rem) auto auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-6);animation:_gateFadeIn_1ex8w_1 .35s var(--ease-smooth)}._connecting_1ex8w_110{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding-top:clamp(2rem,8vh,4rem)}._connectingLogo_1ex8w_118{width:72px;height:72px;border-radius:var(--radius-full);background:radial-gradient(circle at 35% 30%,var(--accent-light, var(--accent)),transparent 60%),var(--accent);animation:_breathe_1ex8w_1 1.6s ease-in-out infinite}._connectingDots_1ex8w_128{display:inline-flex;gap:6px}._connectingDots_1ex8w_128 span{width:7px;height:7px;border-radius:var(--radius-full);background:var(--text-secondary);animation:_dotPulse_1ex8w_1 1.1s ease-in-out infinite}._connectingDots_1ex8w_128 span:nth-child(2){animation-delay:.15s}._connectingDots_1ex8w_128 span:nth-child(3){animation-delay:.3s}._gateTitle_1ex8w_149{margin:0;font-size:clamp(1.75rem,5vw,3rem);font-weight:700;letter-spacing:-.02em;text-align:center}._profileGrid_1ex8w_157{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(104px,100%),148px));justify-content:center;gap:var(--space-5) var(--space-4);width:100%}._profileCard_1ex8w_165{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);min-width:0;min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;animation:_cardIn_1ex8w_1 .35s var(--ease-smooth) backwards}._profileCard_1ex8w_165:nth-child(1){animation-delay:.03s}._profileCard_1ex8w_165:nth-child(2){animation-delay:.07s}._profileCard_1ex8w_165:nth-child(3){animation-delay:.11s}._profileCard_1ex8w_165:nth-child(4){animation-delay:.15s}._profileCard_1ex8w_165:nth-child(5){animation-delay:.19s}._profileCard_1ex8w_165:nth-child(6){animation-delay:.23s}._profileCard_1ex8w_165:nth-child(7){animation-delay:.27s}._profileCard_1ex8w_165:nth-child(8){animation-delay:.31s}._profileCard_1ex8w_165:disabled{cursor:default;opacity:.6}._profileCard_1ex8w_165:focus-visible{outline:none}._profileCardAvatar_1ex8w_216{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;overflow:hidden;border:2px solid transparent;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}._profileCard_1ex8w_165:hover ._profileCardAvatar_1ex8w_216,._profileCard_1ex8w_165:focus-visible ._profileCardAvatar_1ex8w_216{transform:translateY(-3px) scale(1.02);border-color:var(--accent);box-shadow:0 12px 32px var(--accent-glow)}._profileCard_1ex8w_165:active ._profileCardAvatar_1ex8w_216{transform:scale(.98)}._addAvatar_1ex8w_245{border:2px dashed var(--border-secondary);background:var(--bg-tertiary)}._profileCard_1ex8w_165:hover ._addAvatar_1ex8w_245{border-color:var(--accent);color:var(--accent)}._profileCardName_1ex8w_255{max-width:100%;overflow:hidden;font-size:var(--font-size-sm);font-weight:600;text-align:center;text-overflow:ellipsis;white-space:nowrap}._ownerTag_1ex8w_265{display:block;margin-top:var(--space-1);font-size:var(--font-size-xs);font-weight:500;color:var(--text-tertiary)}._lockBadge_1ex8w_273{position:absolute;right:var(--space-2);bottom:var(--space-2);display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-full);background:#000000a6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}._gatePanel_1ex8w_288{width:min(100%,420px);margin:auto;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);background:var(--bg-tertiary);box-shadow:0 24px 64px #00000059;animation:_panelSlideIn_1ex8w_1 .35s var(--ease-smooth)}._panelAvatar_1ex8w_302{align-self:center;width:96px;height:96px}._panelTitle_1ex8w_308{margin:0;font-size:var(--font-size-lg);text-align:center}._gateForm_1ex8w_314{display:flex;flex-direction:column;gap:var(--space-4)}._gateField_1ex8w_320{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}._gateField_1ex8w_320 input{width:100%;min-height:44px;padding:var(--space-3);border:1px solid var(--border-secondary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:16px}._gateField_1ex8w_320 input:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-input-focus)}._gateHint_1ex8w_346{max-width:42ch;margin:0;color:var(--text-secondary);text-align:center}._gateError_1ex8w_353{margin:0;color:var(--danger-color);text-align:center}._backButton_1ex8w_359{display:inline-flex;align-items:center;align-self:flex-start;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-md);background:none;color:var(--text-secondary);font:inherit;cursor:pointer;touch-action:manipulation}._backButton_1ex8w_359:hover{background:var(--bg-hover);color:var(--text-primary)}._backButton_1ex8w_359:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:640px){._gateInner_1ex8w_100{gap:var(--space-5)}._profileGrid_1ex8w_157{grid-template-columns:repeat(auto-fit,minmax(min(96px,100%),128px));gap:var(--space-4) var(--space-3)}._profileCard_1ex8w_165{min-height:44px}._gatePanel_1ex8w_288{padding:var(--space-5);gap:var(--space-3)}._panelAvatar_1ex8w_302{width:80px;height:80px}}@media(max-width:380px){._profileGrid_1ex8w_157{grid-template-columns:repeat(auto-fit,minmax(min(86px,100%),108px));gap:var(--space-4) var(--space-2)}._gatePanel_1ex8w_288{padding:var(--space-4)}}@media(prefers-reduced-motion:reduce){._gate_1ex8w_1,._gateInner_1ex8w_100,._gatePanel_1ex8w_288,._profileCard_1ex8w_165,._appEntering_1ex8w_27,._connectingLogo_1ex8w_118,._connectingDots_1ex8w_128 span{animation:none;transition:none}._profileCardAvatar_1ex8w_216{transition:none}._profileCard_1ex8w_165:hover ._profileCardAvatar_1ex8w_216,._profileCard_1ex8w_165:focus-visible ._profileCardAvatar_1ex8w_216,._profileCard_1ex8w_165:active ._profileCardAvatar_1ex8w_216{transform:none}}._form_1ex8w_444{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-3);margin:var(--space-4) 0}._form_1ex8w_444 h3,._form_1ex8w_444 p{flex-basis:100%}._field_1ex8w_457{display:flex;flex-direction:column;gap:var(--space-2);max-width:100%}._field_1ex8w_457 input,._field_1ex8w_457 select{padding:var(--space-3);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);min-width:0}._avatarRow_1ex8w_474{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4)}._avatarRow_1ex8w_474>:first-child{width:72px;height:72px}._uploadButton_1ex8w_486{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border-secondary);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-primary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}._uploadButton_1ex8w_486:hover{background:var(--bg-elevated);border-color:var(--accent)}._uploadButton_1ex8w_486:focus-within{outline:2px solid var(--accent);outline-offset:2px}._fileInput_1ex8w_515{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}._fileInput_1ex8w_515:disabled{cursor:not-allowed}._profileList_1ex8w_528{list-style:none;padding:0}._profileList_1ex8w_528 li{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-secondary)}._smallAvatar_1ex8w_541{width:36px;height:36px;flex-shrink:0}._profileName_1ex8w_546{flex:1;min-width:0;overflow-wrap:anywhere}
@@ -1,10 +0,0 @@
1
- import{u as t,A as C,q as A,h as F,d as P,T as te,$ as ct}from"./vendor-core-DfaOB3Rn.js";import{p as M,al as lt,Q as He,B as X,a3 as se,o as dt,am as Re,q as U,ac as ut,t as pt,h as ft,a6 as ht,an as Fe,ao as mt}from"./index-B9fL2VIP.js";import{I as j}from"./vendor-icons-C1Pj_eSX.js";import{S as De,a as gt,s as G,f as ze,m as yt,h as _t,d as bt,k as vt,u as St,n as ie}from"./PlayerProvider-BbsS7ai1.js";import{u as wt}from"./vendor-query-BBT5_sHx.js";import{i as ce,d as Ct}from"./playbackCompletion-CKlwK8SG.js";const kt="_controls_1ne4g_1",xt="_titleContainer_1ne4g_9",Tt="_scheduleInfo_1ne4g_15",Lt="_status_1ne4g_23",Nt="_nextEpisode_1ne4g_35",Pt="_watchlistBtn_1ne4g_45",Bt="_inList_1ne4g_73",At="_queueBtn_1ne4g_84",Et="_queueActive_1ne4g_96",$t="_modeToggleBtn_1ne4g_102",It="_modeToggleActive_1ne4g_109",Mt="_markWatchedBtn_1ne4g_130",Rt="_markWatchedDone_1ne4g_144",Ft="_streamPanel_1ne4g_155",Dt="_desktopEpisodeActions_1ne4g_169",Ot="_sourceLoader_1ne4g_175",qt="_episodeActions_1ne4g_188",Ht="_mobileEpisodeActions_1ne4g_202",zt="_episodeNavBtn_1ne4g_206",Wt="_primary_1ne4g_235",Vt="_secondary_1ne4g_245",Kt="_episodePickerBtn_1ne4g_249",Ut="_queueCountdown_1ne4g_253",Qt="_speedBoostBadge_1ne4g_268",Gt="_videoContainer_1ne4g_299",jt="_loadingOverlay_1ne4g_312",Yt="_loadingDots_1ne4g_326",Xt="_dot_1ne4g_331",Jt="_bounce_1ne4g_1",Zt="_bufferingOverlay_1ne4g_348",en="_bufferingSpinner_1ne4g_357",tn="_spin_1ne4g_459",nn="_videoIframe_1ne4g_381",rn="_videoElementHidden_1ne4g_404",sn="_upscalerCanvas_1ne4g_409",an="_upscalerActive_1ne4g_422",on="_upscalerStatusBadge_1ne4g_426",cn="_subtitleOverlay_1ne4g_441",ln="_spinner_1ne4g_459",dn="_errorOverlay_1ne4g_526",un="_retryButton_1ne4g_536",pn="_detailsToggleBtn_1ne4g_549",fn="_descriptionSection_1ne4g_572",hn="_synopsisFlat_1ne4g_580",mn="_fullscreenActive_1ne4g_614",gn="_errorSubtext_1ne4g_657",yn="_watchedOverlay_1ne4g_680",_n="_watchedTitle_1ne4g_702",bn="_watchedSubtext_1ne4g_708",vn="_watchedActions_1ne4g_714",Sn="_watchedActionsCentered_1ne4g_732",es={controls:kt,titleContainer:xt,scheduleInfo:Tt,status:Lt,nextEpisode:Nt,watchlistBtn:Pt,inList:Bt,queueBtn:At,queueActive:Et,modeToggleBtn:$t,modeToggleActive:It,markWatchedBtn:Mt,markWatchedDone:Rt,streamPanel:Ft,desktopEpisodeActions:Dt,sourceLoader:Ot,episodeActions:qt,mobileEpisodeActions:Ht,episodeNavBtn:zt,primary:Wt,secondary:Vt,episodePickerBtn:Kt,queueCountdown:Ut,speedBoostBadge:Qt,videoContainer:Gt,loadingOverlay:jt,loadingDots:Yt,dot:Xt,bounce:Jt,bufferingOverlay:Zt,bufferingSpinner:en,spin:tn,videoIframe:nn,videoElementHidden:rn,upscalerCanvas:sn,upscalerActive:an,upscalerStatusBadge:on,subtitleOverlay:cn,spinner:ln,errorOverlay:dn,retryButton:un,detailsToggleBtn:pn,descriptionSection:fn,synopsisFlat:hn,fullscreenActive:mn,errorSubtext:gn,watchedOverlay:yn,watchedTitle:_n,watchedSubtext:bn,watchedActions:vn,watchedActionsCentered:Sn},wn="_playerPageLayout_1rxx0_1",Cn="_noSidebar_1rxx0_15",kn="_episodeSidebar_1rxx0_19",xn="_playerMain_1rxx0_32",Tn="_videoPlayerWrapper_1rxx0_40",Ln="_playerInfoHeader_1rxx0_56",Nn="_playerAnimeCard_1rxx0_62",Pn="_playerInfoContainer_1rxx0_74",Bn="_infoColumns_1rxx0_104",An="_videoTitleSection_1rxx0_134",En="_theaterMode_1rxx0_308",ts={playerPageLayout:wn,noSidebar:Cn,episodeSidebar:kn,playerMain:xn,videoPlayerWrapper:Tn,playerInfoHeader:Ln,playerAnimeCard:Nn,playerInfoContainer:Pn,infoColumns:Bn,videoTitleSection:An,theaterMode:En},$n={fontSize:"subtitleFontSize",position:"subtitlePosition",bgOpacity:"subtitleBgOpacity",bgColor:"subtitleBgColor",textColor:"subtitleTextColor",edge:"subtitleEdge",bold:"subtitleBold"},Q={fontSize:1.8,position:0,bgOpacity:.5,bgColor:"#000000",textColor:"#ffffff",edge:"shadow",bold:!1},fe=(e,n,s)=>Math.max(n,Math.min(s,e)),he=e=>typeof e=="string"&&/^#[0-9a-fA-F]{6}$/.test(e),le=(e,n,s,o)=>{try{const r=M.getItem(e);if(r===null)return n;const c=parseFloat(r);return Number.isFinite(c)?fe(c,s,o):n}catch{return n}};function In(){let e=Q.edge,n=Q.bgColor,s=Q.textColor,o=Q.bold;try{const r=M.getItem("subtitleEdge");(r==="shadow"||r==="outline"||r==="none")&&(e=r);const c=M.getItem("subtitleBgColor");he(c)&&(n=c);const i=M.getItem("subtitleTextColor");he(i)&&(s=i);const d=M.getItem("subtitleBold");d!==null&&(o=d==="true")}catch{}return{fontSize:le("subtitleFontSize",Q.fontSize,.5,10),position:le("subtitlePosition",Q.position,0,100),bgOpacity:le("subtitleBgOpacity",Q.bgOpacity,0,1),bgColor:n,textColor:s,edge:e,bold:o}}function We(e,n){const s=`rgba(0, 0, 0, ${fe(n,0,1)})`;if(!he(e))return s;const o=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),c=parseInt(e.slice(5,7),16);return`rgba(${o}, ${r}, ${c}, ${fe(n,0,1)})`}function Ve(e,n){return e==="none"?n<=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 ns(e){return`
2
- video::cue {
3
- font-size: ${e.fontSize}rem !important;
4
- color: ${e.textColor} !important;
5
- background-color: ${We(e.bgColor,e.bgOpacity)} !important;
6
- font-weight: ${e.bold?"bold":"normal"} !important;
7
- text-shadow: ${Ve(e.edge,e.bgOpacity)} !important;
8
- }
9
- `}function rs(e){return[`font-size: ${e.fontSize}rem`,`color: ${e.textColor}`,`background-color: ${We(e.bgColor,e.bgOpacity)}`,`font-weight: ${e.bold?"700":"400"}`,`text-shadow: ${Ve(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 Mn=new Set(["b","i","u","strong","em"]);function ss(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/&lt;(\/?)([a-zA-Z]+)&gt;/g,(s,o,r)=>Mn.has(r.toLowerCase())?`<${o}${r.toLowerCase()}>`:s)}function as(e){return e.replace(/<[^>]*>/g,"")}const os=["#ffffff","#ffff00","#7CFC00","#00e5ff","#ff9ff3","#ffa502"],is=["#000000","#1e272e","#2f3542","#3d0c02","#0c3d2e","#ffffff"];function cs(e,n){const s=Number.isFinite(e)?e*16:Q.fontSize*16;return!Number.isFinite(n)||n<=0?s/16:Math.min(s,Math.max(13,n*.07))/16}function ls(e){const n=Math.abs(e/1e3).toFixed(1);return e>0?`+${n}s`:e<0?`-${n}s`:"0.0s"}function ds(e,n){const s=e.clientWidth||0,o=e.clientHeight||0,r=e.videoWidth>0&&e.videoHeight>0?e.videoWidth/e.videoHeight:0;let c=o;r>0&&s>0&&o>0&&(c=s/o>r?o:s/r);const i=Math.max(0,(o-c)/2),d=Math.max(0,Math.min(100,Number(n)||0))/100*c;return i+d}const us=({isOpen:e,onClose:n,title:s,heading:o,message:r,children:c})=>t(He,{isOpen:e,onClose:n,title:s,width:"sm",children:t("div",{style:{padding:"1rem",textAlign:"center"},children:[t("button",{type:"button",className:lt.closeButton,onClick:n,"aria-label":"Close",children:t(j,{name:"times",size:16})}),t(j,{name:"check-circle",size:48,style:{color:"var(--accent-lighter)",marginBottom:"0.5rem"}}),t("p",{style:{fontSize:"1.1rem",fontWeight:600},children:o}),t("p",{style:{color:"var(--text-secondary)"},children:r}),c&&t("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center",flexWrap:"wrap"},children:c})]})}),ps=({isOpen:e,onClose:n,title:s,message:o,resumeLabel:r="Resume",restartLabel:c="Start Over",onResume:i,onRestart:d})=>t(He,{isOpen:e,onClose:n,title:s,width:"sm",children:t("div",{style:{padding:"1rem",textAlign:"center"},children:[t("p",{children:o}),t("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[t(X,{variant:"secondary",onClick:d,children:c}),t(X,{onClick:i,children:r})]})]})}),Rn="_centerControls_1oa5h_1",Fn="_centerSkipBtn_1oa5h_14",Dn="_centerPlayPause_1oa5h_15",ae={centerControls:Rn,centerSkipBtn:Fn,centerPlayPause:Dn},fs=()=>t("div",{className:ae.centerControls,onClick:e=>e.stopPropagation(),children:[t(De,{seconds:-10,className:ae.centerSkipBtn}),t(gt,{className:ae.centerPlayPause,"data-speed-boost-ignore":"true"}),t(De,{seconds:10,className:ae.centerSkipBtn})]}),hs=({visible:e,title:n,episode:s,server:o,mode:r,audio:c,subtitles:i,onBack:d,classes:a})=>t("div",{className:`${a.overlay} ${e?"":a.hidden} `,"data-speed-boost-ignore":"true",style:{pointerEvents:"none",background:"none"},children:t("div",{className:a.top,onClick:l=>l.stopPropagation(),children:[t("button",{className:a.backBtn,onClick:l=>{l.stopPropagation(),d()},title:"Back","aria-label":"Back",children:t(j,{name:"chevron-left"})}),t("div",{className:`${a.titleInfo} ${G.topBarTitleInfo}`,children:[t("span",{className:a.title,children:n}),s&&t("span",{className:a.episode,children:s}),(r||o||c||i)&&t("div",{className:G.streamDetails,children:[r&&t("span",{className:G.modeTag,children:r.toUpperCase()}),o&&t("span",{title:`Server: ${o}`,children:["Server: ",o]}),c&&t("span",{title:`Audio: ${c}`,children:["Audio: ",c]}),i&&t("span",{title:`Subs: ${i}`,children:["Subs: ",i]})]})]})]})});function On(e){return e instanceof Element&&!!e.closest('button, input, select, textarea, a, [role="button"], [role="slider"], [data-player-ui="true"]')}function ms({engine:e,topBar:n,centerControls:s,bottomBar:o,settingsPanel:r,overlays:c,isInteracting:i=!1,nativeControls:d=!1,chromeDisabled:a=!1,className:l,onStageClick:b,children:k}){const _=ze(e),E=yt(),u=C(void 0),p=C(void 0),x=C(0),f=C(i);f.current=i;const m=A(()=>{clearTimeout(u.current),u.current=void 0},[]),g=A(()=>{m();const N=e.getState();!N.isPlaying||N.isScrubbing||f.current||d||(u.current=setTimeout(()=>{const y=e.getState();f.current||y.isScrubbing||!y.isPlaying||e.setShowControls(!1)},E?5e3:3e3))},[e,E,d,m]),B=A(()=>{e.setShowControls(!0),g()},[e,g]);_t(e,B,!d&&!a),F(()=>(i||_.isScrubbing||!_.isPlaying?(e.setShowControls(!0),m()):g(),m),[e,i,_.isPlaying,_.isScrubbing,_.showControls,m,g]),F(()=>()=>{clearTimeout(p.current)},[]);const h=N=>{if(On(N.target)||d||a)return;b?.();const y=Date.now();if(y-x.current<280){clearTimeout(p.current),p.current=void 0,x.current=0,e.toggleFullscreen();return}x.current=y,clearTimeout(p.current),p.current=setTimeout(()=>{p.current=void 0,e.setShowControls(!e.getState().showControls),g()},280)},T=_.showControls||_.isScrubbing||i||!_.isPlaying;return t(bt,{engine:e,children:t("div",{ref:e.containerRef,"data-player-root":"true",className:`${G.shell} ${_.isFullscreen?G.shellFullscreen:""} ${l??""}`,style:{cursor:!T&&_.isFullscreen?"none":"default"},onContextMenu:N=>N.preventDefault(),onPointerMove:N=>{N.pointerType==="mouse"&&B()},onFocusIn:B,onMouseLeave:()=>{window.matchMedia?.("(hover: hover) and (pointer: fine)").matches&&e.getState().isPlaying&&!f.current&&e.setShowControls(!1)},children:[t("div",{className:G.stage,onClick:h,children:k}),c,(_.error||_.playBlocked)&&t("div",{className:G.engineStatus,"data-player-ui":"true",children:t(vt,{})}),!a&&!d&&t("div",{className:G.uiLayer,children:[t("div",{"data-player-ui":"true",children:n}),T&&s&&t("div",{"data-player-ui":"true",children:s}),t("div",{"data-player-ui":"true",children:o}),r&&t("div",{"data-player-ui":"true",children:r})]})]})})}const qn=e=>(e.language??e.lang??"").toLowerCase(),Hn=e=>(e.label??"").toLowerCase(),zn=e=>`${e.language??e.lang??""}|||${e.label??""}`,Wn=e=>qn(e).startsWith("en")||Hn(e).includes("english");function gs(e,n){if(e.length===0||n?.enabled===!1)return-1;const s=n?.lastKey??null;if(s){const r=e.findIndex(i=>zn(i)===s);if(r>=0)return r;const c=s.indexOf("|||");if(c>=0){const i=s.slice(0,c),d=s.slice(c+3),a=e.findIndex(l=>{const b=l.language??l.lang??"",k=l.label??"";return d!==""&&k===d||i!==""&&i!=="undefined"&&(b===i||k===i)});if(a>=0)return a}else{const i=e.findIndex(d=>d.label===s||d.language===s||d.lang===s);if(i>=0)return i}}const o=e.findIndex(Wn);return o>=0?o:0}const Vn="_statusArea_1xccu_1",Kn="_toggleBtn_1xccu_20",Un="_shortcuts_1xccu_46",Qn="_shortcutGroup_1xccu_56",Gn="_shortcut_1xccu_46",jn="_key_1xccu_70",Yn="_label_1xccu_91",S={statusArea:Vn,toggleBtn:Kn,shortcuts:Un,shortcutGroup:Qn,shortcut:Gn,key:jn,label:Yn},ys=({showTheater:e=!0})=>{const[n,s]=P(!1);return t("div",{className:S.statusArea,children:[t("button",{type:"button",className:S.toggleBtn,onClick:()=>s(o=>!o),"aria-expanded":n,"aria-controls":"player-shortcuts",children:[t(j,{name:"keyboard",size:14}),t("span",{children:"Keyboard Shortcuts"}),n?t(j,{name:"chevron-up",size:12}):t(j,{name:"chevron-down",size:12})]}),n&&t("div",{id:"player-shortcuts",className:S.shortcuts,children:[t("div",{className:S.shortcutGroup,children:[t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"↑"}),t("span",{className:S.key,children:"↓"}),t("span",{className:S.label,children:"Volume"})]}),t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"←"}),t("span",{className:S.key,children:"→"}),t("span",{className:S.label,children:"Seek"})]})]}),t("div",{className:S.shortcutGroup,children:[t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"Space"}),t("span",{className:S.label,children:"Play/Pause"})]}),t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"F"}),t("span",{className:S.label,children:"Fullscreen"})]}),t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"M"}),t("span",{className:S.label,children:"Mute"})]}),e&&t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"T"}),t("span",{className:S.label,children:"Theater"})]}),t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"P"}),t("span",{className:S.label,children:"Previous"})]}),t("div",{className:S.shortcut,children:[t("span",{className:S.key,children:"N"}),t("span",{className:S.label,children:"Next"})]})]})]})]})},Xn="_episodeListContainer_11isr_1",Jn="_drawerContainer_11isr_9",Zn="_episodeListHeader_11isr_14",er="_drawerHeader_11isr_20",tr="_episodeListTitle_11isr_29",nr="_rangeSelector_11isr_41",rr="_rangeButton_11isr_47",sr="_active_11isr_70",ar="_episodeList_11isr_1",or="_drawerList_11isr_90",ir="_episodeItem_11isr_119",cr="_watched_11isr_147",lr="_episodeThumb_11isr_175",dr="_episodeText_11isr_185",ur="_episodeLabel_11isr_193",pr="_episodeSub_11isr_198",L={episodeListContainer:Xn,drawerContainer:Jn,episodeListHeader:Zn,drawerHeader:er,episodeListTitle:tr,rangeSelector:nr,rangeButton:rr,active:sr,episodeList:ar,drawerList:or,episodeItem:ir,watched:cr,episodeThumb:lr,episodeText:dr,episodeLabel:ur,episodeSub:pr},fr=({episodes:e,currentEpisode:n,watchedEpisodes:s=[],onEpisodeClick:o,variant:r="sidebar",title:c="Episodes",header:i})=>{const[d,a]=P(0),l=C(null),b=te(()=>e.map(u=>typeof u=="string"?{id:u,label:`Episode ${u}`}:u),[e]),k=te(()=>new Set(s),[s]);F(()=>{const u=l.current;if(!u)return;let p=u.parentElement;for(;p;){const m=window.getComputedStyle(p);if((m.overflowY==="auto"||m.overflowY==="scroll")&&p.scrollHeight>p.clientHeight)break;p=p.parentElement}if(!p)return;const x=p.getBoundingClientRect(),f=u.getBoundingClientRect();p.scrollTop+=f.top+f.height/2-(x.top+p.clientHeight/2)},[n,d]);const _=te(()=>{if(b.length<=100)return[];const u=[];for(let p=0;p<b.length;p+=100){const x=p+1,f=Math.min(p+100,b.length);u.push(`${x}-${f}`)}return u},[b]),E=te(()=>{if(_.length===0)return b;const u=_[d];if(!u)return b;const[p,x]=u.split("-"),f=parseInt(p,10),m=parseInt(x,10);return b.slice(f-1,m)},[b,_,d]);return t("div",{className:`${L.episodeListContainer} ${r==="drawer"?L.drawerContainer:""}`,children:[t("div",{className:`${L.episodeListHeader} ${r==="drawer"?L.drawerHeader:""}`,children:[i,t("h3",{className:L.episodeListTitle,children:c}),_.length>0&&t("div",{className:L.rangeSelector,children:_.map((u,p)=>t("button",{className:`${L.rangeButton} ${d===p?L.active:""}`,onClick:()=>a(p),children:u},u))})]}),t("div",{className:`${L.episodeList} ${r==="drawer"?L.drawerList:""}`,children:E.map(u=>{const p=u.id===n,x=k.has(u.id)||u.watched===!0;return t("div",{ref:p?l:void 0,className:`${L.episodeItem} ${x?L.watched:""} ${p?L.active:""}`,onClick:()=>o(u.id),children:[u.thumbnail&&t("img",{src:u.thumbnail,alt:"",loading:"lazy",decoding:"async",className:L.episodeThumb}),t("span",{className:L.episodeText,children:[t("span",{className:L.episodeLabel,children:u.label??`Episode ${u.id}`}),u.sublabel&&t("span",{className:L.episodeSub,children:u.sublabel})]})]},u.id)})})]})},_s=({variant:e="sidebar",count:n=12})=>t("div",{className:`${L.episodeListContainer} ${e==="drawer"?L.drawerContainer:""}`,children:[t("div",{className:`${L.episodeListHeader} ${e==="drawer"?L.drawerHeader:""}`,children:[t("h3",{className:L.episodeListTitle,children:"Episodes"}),t("div",{className:L.rangeSelector,children:[t(se,{width:"60px",height:"28px",variant:"rectangular"}),t(se,{width:"60px",height:"28px",variant:"rectangular"}),t(se,{width:"60px",height:"28px",variant:"rectangular"})]})]}),t("div",{className:`${L.episodeList} ${e==="drawer"?L.drawerList:""}`,children:Array.from({length:n}).map((s,o)=>t("div",{className:L.episodeItem,style:{border:"none",background:"transparent"},children:t(se,{width:"120px",height:"1.2rem",variant:"text"})},o))})]}),hr="_shell_cys6s_1",mr="_overlay_cys6s_10",gr="_drawer_cys6s_21",yr="_handle_cys6s_56",_r="_header_cys6s_64",br="_headerCopy_cys6s_73",vr="_kicker_cys6s_79",Sr="_title_cys6s_87",wr="_closeBtn_cys6s_94",Cr="_body_cys6s_116",V={shell:hr,overlay:mr,drawer:gr,handle:yr,header:_r,headerCopy:br,kicker:vr,title:Sr,closeBtn:wr,body:Cr};function bs({isOpen:e,onClose:n,episodes:s,currentEpisode:o,watchedEpisodes:r=[],onEpisodeClick:c,title:i,header:d}){return F(()=>{if(!e)return;const a=b=>{b.key==="Escape"&&n()},l=document.body.style.overflow;return document.body.style.overflow="hidden",document.addEventListener("keydown",a),()=>{document.body.style.overflow=l,document.removeEventListener("keydown",a)}},[e,n]),e?ct(t("div",{className:V.shell,role:"dialog","aria-modal":"true","aria-label":"Episode picker",children:[t("button",{className:V.overlay,type:"button",onClick:n,"aria-label":"Close episodes"}),t("aside",{className:V.drawer,children:[t("div",{className:V.handle}),t("div",{className:V.header,children:[t("div",{className:V.headerCopy,children:[t("span",{className:V.kicker,children:"Episode picker"}),t("h3",{className:V.title,children:"Choose an episode"})]}),t("button",{className:V.closeBtn,type:"button",onClick:n,"aria-label":"Close",children:t(j,{name:"times"})})]}),t("div",{className:V.body,children:t(fr,{episodes:s,currentEpisode:o,watchedEpisodes:r,onEpisodeClick:c,variant:"drawer",title:i,header:d})})]})]}),document.body):null}const kr="_sourceSelectionContainer_g7xev_1",xr="_providerSelectContainer_g7xev_14",Tr="_providerSelect_g7xev_14",Lr="_sourceSelect_g7xev_1",Nr="_sourceButtons_g7xev_70",Pr="_sourceButton_g7xev_70",Br="_active_g7xev_95",vs={sourceSelectionContainer:kr,providerSelectContainer:xr,providerSelect:Tr,sourceSelect:Lr,sourceButtons:Nr,sourceButton:Pr,active:Br},Ss=({skipIntervals:e,showId:n,episodeNumber:s,episodeCount:o,sourceType:r,showMeta:c})=>{const i=wt(),d=dt(),{engine:a,mediaRef:l}=St({volumeKey:"playerVolume",mutedKey:"playerMuted"}),{isPlaying:b,isMuted:k,volume:_,duration:E,isScrubbing:u,isBuffering:p,isFullscreen:x,isSpeedBoostActive:f,showControls:m,playbackLocked:g}=ze(a),B=a.containerRef,h=C(null),T=C(0),N=C(Math.random().toString(36).substring(2)),y=a.setShowControls,[I,q]=P(M.getItem("autoSkipEnabled")==="true"),[K,$]=P(null),[z]=P(In),[Ke,ge]=P(z.fontSize),[Ue,ye]=P(z.position),[Qe,_e]=P(z.bgOpacity),[Ge,be]=P(z.bgColor),[je,ve]=P(z.textColor),[Ye,Se]=P(z.edge),[Xe,we]=P(z.bold),Ce=A((v,R)=>{if({fontSize:w=>typeof w!="number"?!1:(ge(w),!0),position:w=>typeof w!="number"?!1:(ye(w),!0),bgOpacity:w=>typeof w!="number"?!1:(_e(w),!0),bgColor:w=>typeof w!="string"?!1:(be(w),!0),textColor:w=>typeof w!="string"?!1:(ve(w),!0),edge:w=>w!=="shadow"&&w!=="outline"&&w!=="none"?!1:(Se(w),!0),bold:w=>typeof w!="boolean"?!1:(we(w),!0)}[v](R))try{M.setItem($n[v],String(R))}catch{}},[]),[Je,Ze]=P([]),[et,tt]=P(null),[nt,rt]=P(!1),[st,at]=P(!1),[ot,ke]=P(()=>{try{return M.getItem("playerUseNativeControls")==="true"}catch{return!1}}),J=C(!1),ne=C(-1),re=A(()=>{const v=l.current;return!n||!s||!c?.name?null:{showId:n,episodeNumber:s,episodeCount:o,currentTime:a.getTimeline().currentTime,duration:a.getState().duration,showName:c.name,showThumbnail:c.thumbnail,nativeName:c.names?.native,englishName:c.names?.english,genres:Array.isArray(c.genres)?c.genres.map(R=>typeof R=="string"?R:R?.name).filter(Boolean):void 0,popularityScore:c.score,type:c.type,isPlaying:v?!v.paused:r==="iframe",sessionId:N.current,isAdult:c.isAdult}},[a,l,n,s,o,c,r]),D=A((v=!1,R=!1)=>{if(J.current)return!1;const H=re();if(!H)return!1;const w=l.current;if(!w&&!v&&r!=="iframe"||r!=="iframe"&&H.duration<=0)return!1;const W=a.getTimeline().currentTime;if(!R){if(W===0)return!1;const ee=w?Math.abs(W-ne.current):0;if(!v&&w&&W!==w.duration&&ee<5)return!1}return H.currentTime=W,ne.current=W,v?(async()=>{try{await Re("progress.updateProgress",H),i.invalidateQueries({queryKey:[U.playerData,n]}),i.invalidateQueries({queryKey:[U.videoSources,n,s]}),i.invalidateQueries({queryKey:[U.continueWatching]}),i.invalidateQueries({queryKey:[U.thisWeekSchedule]}),i.invalidateQueries(d.continueWatching.pathFilter())}catch(ee){console.error("Failed to update progress:",ee)}})():Re("progress.updateProgress",H).then(()=>{ce(H.currentTime,H.duration)&&i.invalidateQueries({queryKey:[U.playerData,n]})}).catch(ee=>console.error("Failed to update progress:",ee)),!0},[a,re,r,i,n,s,d.continueWatching,l]);F(()=>{const v=()=>{J.current||D(!0)};window.addEventListener("beforeunload",v),window.addEventListener("pagehide",v);const R=()=>{document.visibilityState==="hidden"&&v()};document.addEventListener("visibilitychange",R);const H=h;return()=>{window.removeEventListener("beforeunload",v),window.removeEventListener("pagehide",v),document.removeEventListener("visibilitychange",R),J.current||D(!0),H.current&&clearTimeout(H.current)}},[D]);const xe=A(()=>a.setShowControls(!0),[a]),Te=a.toggleFullscreen,Le=A(()=>{a.togglePlay(),y(!0)},[a,y]),Ne=A(()=>{a.toggleMute(),y(!0)},[a,y]),Pe=A(v=>{a.seekRelative(v),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>D(!1,!0),1500),y(!0)},[a,D,y]),Be=A(()=>{J.current=!1,D(!1,!0)},[D]),Ae=A(()=>{y(!0),D(!1,!0)},[D,y]);F(()=>{J.current=!1,ne.current=-1,T.current=0,N.current=Math.random().toString(36).substring(2),a.reset()},[a,n,s]);const Ee=a.reset;F(()=>{const v=N.current;return()=>{ut(v)}},[a,n,s]),F(()=>{if(r!=="iframe")return;D(!1,!0);const v=setInterval(()=>{D(!1,!0)},6e4);return()=>clearInterval(v)},[r,D]);const $e=A(()=>{const v=l.current;if(!v)return;const R=v.currentTime||0,H=Date.now(),w=ce(R,v.duration)&&!ce(ne.current,v.duration);(w||H-T.current>6e4)&&D(!1,w)&&(T.current=H);const W=e.find(Z=>R>=Z.start_time&&R<Z.end_time)||null;$(Z=>Z?.skip_id!==W?.skip_id?W:Z),I&&W&&!v.paused&&!a.getState().playbackLocked&&(a.seek(W.end_time),$(null))},[l,e,I,D,a]),Ie=A(()=>{const v=re();v&&(v.currentTime=v.duration,pt.progress.updateProgress.mutate(v).then(()=>{i.invalidateQueries({queryKey:[U.playerData,n]}),i.invalidateQueries({queryKey:[U.videoSources,n,s]}),i.invalidateQueries({queryKey:[U.continueWatching]})}).catch(R=>console.error("Failed to send final progress:",R)))},[re,i,n,s]),Me=A(()=>{J.current=!0,Ie()},[Ie]),it=te(()=>({togglePlay:Le,seek:Pe,toggleMute:Ne,toggleFullscreen:Te,onPlay:Be,onPause:Ae,formatTime:ft,onTimeUpdate:$e,onEnded:Me,setShowControls:y,setIsAutoSkipEnabled:q,setCurrentSkipInterval:$,setSubtitleFontSize:ge,setSubtitlePosition:ye,setSubtitleBgOpacity:_e,setSubtitleBgColor:be,setSubtitleTextColor:ve,setSubtitleEdge:Se,setSubtitleBold:we,setSubtitleStyle:Ce,setAvailableSubtitles:Ze,setActiveSubtitleTrack:tt,setShowSettings:rt,setShowVolumeSlider:at,flashControls:xe,sendProgressUpdate:D,setUseNativeControls:ke,resetMediaState:Ee}),[Le,Pe,Ne,Te,Be,Ae,$e,Me,D,ke,Ee,xe,Ce,y]);return{engine:a,refs:{videoRef:l,playerContainerRef:B},state:{playbackLocked:g,isPlaying:b,isMuted:k,volume:_,isFullscreen:x,duration:E,showControls:m,isScrubbing:u,isAutoSkipEnabled:I,currentSkipInterval:K,subtitleFontSize:Ke,subtitlePosition:Ue,subtitleBgOpacity:Qe,subtitleBgColor:Ge,subtitleTextColor:je,subtitleEdge:Ye,subtitleBold:Xe,availableSubtitles:Je,activeSubtitleTrack:et,showSettings:nt,showVolumeSlider:st,isBuffering:p,isSpeedBoostActive:f,useNativeControls:ot},actions:it}};function Ar(){try{return typeof navigator<"u"&&/android/i.test(navigator.userAgent)}catch{return!1}}function ws(e,n){const{refs:s,actions:o}=e,r=C(n);r.current=n;const c=C(!1),i=C(!1),d=a=>{try{if(a)return a.matches}catch{}try{return window.innerWidth>window.innerHeight}catch{return!1}};F(()=>{if(!Ar())return;let a=null;const l=()=>{const b=s.playerContainerRef.current;if(d(a)){if(!r.current||!b||ie(s.videoRef.current)||i.current)return;c.current=!0,o.toggleFullscreen()}else i.current=!1,c.current&&(c.current=!1,ie(s.videoRef.current)&&o.toggleFullscreen())};try{a=window.matchMedia("(orientation: landscape)"),a.addEventListener?a.addEventListener("change",l):a.addListener(l)}catch{}return l(),()=>{try{a&&(a.removeEventListener?a.removeEventListener("change",l):a.removeListener(l))}catch{}}},[o,s.playerContainerRef,s.videoRef,n]),F(()=>{const a=()=>{if(!ie(s.videoRef.current)){c.current=!1;try{window.matchMedia("(orientation: landscape)").matches&&(i.current=!0)}catch{i.current=!0}}};return document.addEventListener("fullscreenchange",a),document.addEventListener("webkitfullscreenchange",a),()=>{document.removeEventListener("fullscreenchange",a),document.removeEventListener("webkitfullscreenchange",a)}},[s.videoRef])}const Er=e=>Math.max(8,Math.min(40,Math.ceil(e/16.7)+4));function Cs({videoRef:e,canvasRef:n,delayMs:s,enabled:o}){const r=C(s);r.current=s;const c=C([]),i=C(-1),d=C(-1),a=C(!1),l=C(0),b=C(null);F(()=>{const k=f=>{if(f)try{f.close()}catch{}},_=()=>{for(const f of c.current)k(f.bitmap);c.current=[]};if(!o){_(),i.current=-1,d.current=-1,a.current=!1,l.current=0;return}let E=!1;const u=()=>{b.current!==null&&(cancelAnimationFrame(b.current),b.current=null)},p=()=>{E||(u(),b.current=requestAnimationFrame(()=>{x()}))};async function x(){if(E)return;const f=e.current,m=n.current;if(!f||!m||f.videoWidth===0){p();return}if(f.paused||f.ended||document.hidden||f.readyState<HTMLMediaElement.HAVE_CURRENT_DATA){p();return}const g=f.getVideoPlaybackQuality().totalVideoFrames;if(g===i.current){p();return}(f.seeking||d.current>=0&&Math.abs(f.currentTime-d.current)>.5)&&(_(),a.current=!1,l.current=0,i.current=-1),d.current=f.currentTime,(m.width!==f.videoWidth||m.height!==f.videoHeight)&&(m.width=f.videoWidth,m.height=f.videoHeight);const B=Math.max(0,r.current||0);B>l.current&&(a.current=!1);try{const h=await createImageBitmap(f);if(E){k(h);return}i.current=g;const T=performance.now(),N=m.getContext("2d"),y=$=>{N&&N.drawImage($,0,0,m.width,m.height)};if(B<=0){_(),a.current=!1,l.current=0,y(h),k(h),p();return}const I=c.current;I.push({bitmap:h,capture:T});const q=Er(B);for(;I.length>q;)k(I.shift()?.bitmap);let K=-1;for(let $=I.length-1;$>=0;$--)if(T-I[$].capture>=B){K=$;break}if(K!==-1){for(let z=0;z<K;z++)k(I.shift()?.bitmap);const $=I.shift();$?(y($.bitmap),k($.bitmap),a.current=!0,l.current=B):y(h)}else if(!a.current)y(h);else{const $=I.shift();$?(y($.bitmap),k($.bitmap)):y(h)}}catch{}p()}return p(),()=>{E=!0,u();for(const f of c.current)try{f.bitmap.close()}catch{}c.current=[]}},[o,e,n])}const Oe=(e,n)=>{try{M.setItem("playerVideoDelayMs",String(e)),M.setItem("playerVideoDelayEnabled",String(n))}catch{}},qe=e=>{try{M.setItem("playerVideoDelayEnabled",String(e))}catch{}};function ks(e,n){const[s,o]=P(()=>{try{const g=Number(M.getItem("playerVideoDelayMs"));if(Number.isFinite(g)&&g>=0&&g<=500)return Math.round(g)}catch{}return 180}),[r,c]=P(()=>{try{return M.getItem("playerVideoDelayEnabled")==="true"}catch{return!1}}),[i,d]=P(!1),[a,l]=P(!1),b=C(null),k=C(null),_=g=>{const B=Math.max(0,Math.min(500,Math.round(g)));o(B);try{M.setItem("playerVideoDelayMs",String(B))}catch{}},E=g=>{c(g),qe(g)},u=A(()=>{l(!1),d(!1)},[]);return{videoDelayMs:s,videoDelayEnabled:r,setDelayEnabled:E,handleVideoDelayChange:_,isCalibrating:i,testClipActive:a,stopCalibration:u,openAvSyncCalibrator:()=>{b.current={enabled:r,ms:s},c(!0),qe(!0),n?.(),d(!0)},cancelAvSyncCalibrator:()=>{const g=b.current;b.current=null,g&&(o(g.ms),c(g.enabled),Oe(g.ms,g.enabled)),l(!1),d(!1)},applyAvSyncCalibrator:()=>{b.current=null,c(!0),Oe(s,!0),l(!1),d(!1)},toggleTestClip:()=>{if(a){l(!1);return}const g=e.current;g&&!isNaN(g.currentTime)&&(k.current=g.currentTime),l(!0)},calibReturnRef:k,effectiveVideoDelayMs:r?s:0}}function xs(){const[e,n]=P(()=>{try{return M.getItem("playerTheaterMode")==="true"}catch{return!1}});F(()=>{try{e?document.body.classList.add("theater-mode"):document.body.classList.remove("theater-mode")}catch(r){console.error(r)}return()=>{try{document.body.classList.remove("theater-mode")}catch(r){console.error(r)}}},[e]);const s=A(()=>{n(r=>{const c=!r;try{M.setItem("playerTheaterMode",c.toString())}catch{}return c})},[]),o=A(r=>{if(e&&r.target===r.currentTarget){n(!1);try{M.setItem("playerTheaterMode","false")}catch{}}},[e]);return{isTheaterMode:e,toggleTheaterMode:s,handleLayoutClick:o}}const Y={enabled:!0,blur:60,saturation:150,brightness:70,opacity:60};function $r(){try{const e=M.getItem("playerAmbientLight");if(!e)return Y;const n=JSON.parse(e),s=(o,r,c,i)=>{const d=Number(o);return Number.isFinite(d)?Math.max(c,Math.min(i,d)):r};return{enabled:n.enabled??Y.enabled,blur:s(n.blur,Y.blur,0,120),saturation:s(n.saturation,Y.saturation,0,200),brightness:s(n.brightness,Y.brightness,20,120),opacity:s(n.opacity,Y.opacity,10,100)}}catch{return Y}}function Ts(){const[e,n]=P($r),s=A(o=>{n(r=>{const c={...r,...o};try{M.setItem("playerAmbientLight",JSON.stringify(c))}catch{}return c})},[]);return{settings:e,update:s}}const Ir="_theaterAmbient_x9t0o_1",Mr={theaterAmbient:Ir},de=160,ue=90,Rr=120,Ls=({videoRef:e,active:n,settings:s,className:o})=>{const r=C(null);return F(()=>{if(!n)return;const c=r.current,i=e.current;if(!c||!i)return;const d=c.getContext("2d",{alpha:!1});if(!d)return;let a=0,l=0,b=!1;const k=()=>{if(!(i.readyState<2||!i.videoWidth))try{const p=i.videoWidth,x=i.videoHeight,f=de/ue,m=p/x;let g=p,B=x,h=0,T=0;m>f?(g=x*f,h=(p-g)/2):(B=p/f,T=(x-B)/2),d.drawImage(i,h,T,g,B,0,0,de,ue)}catch{}},_=p=>{b||i.paused||(a=requestAnimationFrame(_),!(p-l<Rr)&&(l=p,k()))},E=()=>{b||(cancelAnimationFrame(a),l=0,a=requestAnimationFrame(_))},u=()=>cancelAnimationFrame(a);return i.addEventListener("play",E),i.addEventListener("pause",u),i.addEventListener("seeked",k),i.addEventListener("loadeddata",k),a=requestAnimationFrame(_),()=>{b=!0,cancelAnimationFrame(a),i.removeEventListener("play",E),i.removeEventListener("pause",u),i.removeEventListener("seeked",k),i.removeEventListener("loadeddata",k)}},[n,e]),n?t("canvas",{ref:r,width:de,height:ue,"aria-hidden":"true",className:o??Mr.theaterAmbient,style:{filter:`blur(${s.blur}px) saturate(${s.saturation}%) brightness(${s.brightness}%)`,opacity:s.opacity/100}}):null},Fr="_row_1fq55_1",Dr="_rowHeader_1fq55_9",Or="_rowLabel_1fq55_17",qr="_rowValue_1fq55_28",Hr="_slider_1fq55_36",zr="_swatches_1fq55_99",Wr="_swatch_1fq55_99",Vr="_swatchPicked_1fq55_114",Kr="_colorInput_1fq55_120",Ur="_segmented_1fq55_131",O={row:Fr,rowHeader:Dr,rowLabel:Or,rowValue:qr,slider:Hr,swatches:zr,swatch:Wr,swatchPicked:Vr,colorInput:Kr,segmented:Ur},Qr=({label:e,display:n,min:s,max:o,step:r,value:c,percent:i,onChange:d,onCommit:a})=>t("div",{className:O.row,children:[t("div",{className:O.rowHeader,children:[t("span",{className:O.rowLabel,children:e}),t("span",{className:O.rowValue,children:n})]}),t("input",{type:"range",className:O.slider,min:s,max:o,step:r,value:c,"aria-label":e,"data-speed-boost-ignore":"true",onInput:l=>d(Number(l.target.value)),onMouseDown:l=>l.stopPropagation(),onPointerDown:l=>l.stopPropagation(),onTouchStart:l=>l.stopPropagation(),onPointerUp:a,onPointerCancel:a,onTouchEnd:a,onKeyUp:a,onBlur:a,style:{"--slider-percent":`${i}%`}})]}),Ns=({label:e,colors:n,value:s,onChange:o})=>t("div",{className:O.row,children:[t("div",{className:O.rowHeader,children:t("span",{className:O.rowLabel,children:e})}),t("div",{className:O.swatches,children:[n.map(r=>t("button",{type:"button","aria-label":`${e} ${r}`,"aria-pressed":s.toLowerCase()===r.toLowerCase(),onClick:()=>o(r),className:`${O.swatch} ${s.toLowerCase()===r.toLowerCase()?O.swatchPicked:""}`,style:{backgroundColor:r}},r)),t("input",{type:"color","aria-label":`Custom ${e.toLowerCase()}`,className:O.colorInput,value:s,"data-speed-boost-ignore":"true",onInput:r=>o(r.target.value),onMouseDown:r=>r.stopPropagation(),onPointerDown:r=>r.stopPropagation(),onTouchStart:r=>r.stopPropagation()})]})]});function Ps({label:e,options:n,value:s,onChange:o}){return t("div",{className:O.row,children:[t("div",{className:O.rowHeader,children:t("span",{className:O.rowLabel,children:e})}),t("div",{className:O.segmented,role:"group","aria-label":e,children:n.map(r=>t("button",{type:"button","aria-pressed":s===r,onClick:()=>o(r),children:[t("span",{children:r}),s===r&&t(j,{name:"check",size:10})]},r))})]})}const oe=10,me=500,pe=e=>Math.max(0,Math.min(me,Math.round(e))),Bs=({isOpen:e,ms:n,onChange:s,onApply:o,onClose:r,testClipActive:c,onTestClip:i})=>e?t("div",{role:"dialog","aria-label":"Calibrate audio video sync","data-speed-boost-ignore":"true",onClick:d=>d.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:[t("div",{style:{fontSize:"0.8rem",fontWeight:800,color:"var(--text-primary)"},children:"A/V sync"}),t("div",{children:t(X,{size:"sm",variant:"secondary",onClick:i,children:c?"Back to video":"Preview test clip"})}),t("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,flexWrap:"wrap"},children:[t(X,{size:"sm",onClick:()=>s(pe(n-oe)),"aria-label":"Decrease delay by 10 milliseconds",children:["− ",oe,"ms"]}),t("div",{style:{fontSize:"1.1rem",fontWeight:800,minWidth:64,textAlign:"center"},children:[n,"ms"]}),t(X,{size:"sm",onClick:()=>s(pe(n+oe)),"aria-label":"Increase delay by 10 milliseconds",children:["+ ",oe,"ms"]})]}),t(Qr,{label:"Video delay",display:`${n}ms`,min:0,max:me,step:5,value:n,percent:n/me*100,onChange:d=>s(pe(d))}),t("div",{style:{display:"flex",gap:8,justifyContent:"center",flexWrap:"wrap"},children:[t(X,{size:"sm",variant:"secondary",onClick:r,children:"Cancel"}),t(X,{size:"sm",onClick:o,children:["Apply ",n,"ms"]})]})]}):null;function As({videoRef:e,sourceType:n,resetKey:s,onEnd:o}){const r=C(!1),c=C(o);c.current=o,F(()=>{r.current=!1},[s]);const i=A(()=>{const a=e.current?.duration;!a||!Number.isFinite(a)||console.info(`[playback] duration ${a.toFixed(2)}s`)},[e]);return{checkEnd:A((a=!1)=>{const l=e.current;!l||n==="iframe"||r.current||!a&&!Ct(l.currentTime,l.duration)||(r.current=!0,console.info(`[playback] end reached at ${l.currentTime.toFixed(2)}s / ${l.duration.toFixed(2)}s`),c.current())},[n,e]),logDuration:i}}function Es(e,n,s){const o=ht(),r=C({watch:o,selection:n,loading:s});r.current={watch:o,selection:n,loading:s};const[c,i]=P(!1),d=C(""),a=C(""),l=C(""),b=C(!1),k=!!o.session&&!o.session.host;F(()=>(!o.session&&b.current&&e.applyRemotePlayback(void 0,!1,1),b.current=!!o.session,e.setPlaybackLocked(!!o.session&&(k||!o.connected)),o.session&&!o.connected&&e.applyRemotePlayback(void 0,!1,1),()=>e.setPlaybackLocked(!1)),[e,k,o.connected,o.session]);const _=A((E=!1)=>{const{watch:u,selection:p,loading:x}=r.current,f=e.mediaRef.current;if(!u.session||!u.room||!f)return;if(u.session.host){u.connected&&u.selfId!==l.current&&!x&&p&&f.readyState>=1&&(l.current=u.selfId,Fe(p,u.room.selection)&&e.applyRemotePlayback(u.room.position,!1,u.room.rate));return}const m=u.room,g=p&&Fe(p,m.selection);if(!u.connected||x||!g||f.readyState<1){e.applyRemotePlayback(void 0,!1,m.rate);return}const B=Date.now()+u.clock.offset-m.updatedAt<15e3;if(m.playing&&!B){e.applyRemotePlayback(void 0,!1,m.rate);return}const h=m.playing&&m.hostOnline&&B,T=Math.min(f.duration||1/0,mt({...m,playing:h},Date.now()+u.clock.offset)),N=T-f.currentTime,y=Math.abs(N)>(h?1.25:.15),I=h&&!y&&Math.abs(N)>.15?Math.min(4,Math.max(.25,m.rate*(N>0?1.03:.97))):m.rate,q=e.getState().playBlocked;e.applyRemotePlayback(y?T:void 0,h&&(!q||E),I),i(q&&h)},[e]);return F(()=>{if(!o.session)return;const E=()=>{const{watch:h,selection:T,loading:N}=r.current,y=e.mediaRef.current;if(!h.connected||!h.session?.host||!h.room)return;if(!T||N||!y||y.readyState<1){h.room.playing&&h.send({type:"update",...h.room,playing:!1});return}_();const I=e.getState(),q=!y.paused&&!y.ended&&!I.isBuffering,K={type:"update",selection:T,position:y.currentTime+(q?h.clock.latency/1e3*y.playbackRate:0),playing:q,rate:y.playbackRate},$=JSON.stringify(K);!q&&a.current===$||(a.current=$,h.send(K))},u=()=>{const{watch:h,selection:T,loading:N}=r.current,y=e.getState(),I=e.mediaRef.current,q=y.error||!N&&!T?"error":y.playBlocked?"blocked":N||!I||I.readyState<1?"loading":y.isBuffering?"buffering":"ready";h.connected&&`${h.selfId}:${q}`!==d.current&&(d.current=`${h.selfId}:${q}`,h.send({type:"status",status:q})),_()};let p=null;const x=["play","pause","seeked","ratechange","playing","waiting","canplay","ended"];let f;const m=()=>{clearTimeout(f),f=setTimeout(E,100)},g=setInterval(()=>{const h=e.mediaRef.current;p!==h&&(x.forEach(T=>p?.removeEventListener(T,m)),p=h,x.forEach(T=>p?.addEventListener(T,m))),u()},500),B=setInterval(E,3e3);return()=>{clearInterval(g),clearInterval(B),clearTimeout(f),x.forEach(T=>p?.removeEventListener(T,m));const{watch:h}=r.current;h.session?.host&&h.room&&h.connected&&h.send({type:"update",...h.room,playing:!1,position:e.mediaRef.current?.currentTime??h.room.position})}},[e,o.session,_]),F(()=>{_()},[o.room,o.connected,n,s,_]),{needsPlayback:c,enablePlayback:()=>_(!0)}}export{Ls as A,is as B,hs as C,Ps as D,_s as E,Q as F,Y as G,Qr as M,ms as P,ps as R,Ns as S,os as T,fs as a,vs as b,ns as c,rs as d,ds as e,cs as f,as as g,Es as h,ks as i,Cs as j,xs as k,As as l,ws as m,Ts as n,ts as o,gs as p,us as q,ss as r,zn as s,fr as t,Ss as u,es as v,Bs as w,ys as x,bs as y,ls as z};