.layout{display:flex;min-height:100vh;min-height:100dvh;background:var(--bg-base)}.main{flex:1;padding:76px 28px 24px;margin-left:220px;min-width:0;transition:margin-left .2s ease}@media (min-width: 768px){.layout-sidebar-collapsed .main{margin-left:64px}}.top-bar{position:fixed;top:0;left:220px;right:0;height:52px;background:var(--bg-surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 28px;gap:16px;z-index:30;transition:left .2s ease}@media (min-width: 768px){.layout-sidebar-collapsed .top-bar{left:64px}}.top-bar-title{flex:1;color:var(--text-primary);font-size:15px;font-weight:600;letter-spacing:-.01em}.top-bar-search{display:flex;align-items:center;gap:8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;padding:6px 10px;cursor:pointer;color:var(--text-muted);font-size:13px;width:220px;transition:border-color .15s,color .15s}.top-bar-search:hover{border-color:var(--accent);color:var(--text-secondary)}.top-bar-search-icon{display:flex;align-items:center;flex-shrink:0;width:14px;height:14px}.top-bar-search-icon svg{width:14px;height:14px}.top-bar-search-placeholder{flex:1;text-align:left}.top-bar-search-kbd{font-family:inherit;font-size:11px;color:var(--text-muted);background:var(--bg-base);border:1px solid var(--border);border-radius:4px;padding:1px 5px;flex-shrink:0}.sync-toast{position:fixed;z-index:90;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);box-shadow:0 10px 24px #00000059;max-width:calc(100vw - 24px);font-size:.9rem;overflow:hidden;isolation:isolate}.sync-toast-message{color:var(--text-muted);font-size:.92rem;font-weight:400;letter-spacing:0}.sync-toast-message strong{color:var(--text-muted);font-weight:400}.sync-toast:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:color-mix(in oklab,var(--accent-text) 70%,transparent);transform-origin:left center;animation:sync-toast-countdown var(--sync-toast-duration, 4s) linear forwards}.sync-toast-undo{border:none;background:transparent;color:var(--accent-text);font-weight:600;cursor:pointer;padding:0;white-space:nowrap}@media (max-width: 640px){.sync-toast{width:calc(100vw - 16px);max-width:calc(100vw - 16px);padding:10px 12px;border-radius:12px;gap:12px}.sync-toast-message{flex:1;min-width:0;line-height:1.22}.sync-toast-undo{align-self:center;flex-shrink:0}}@keyframes sync-toast-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#000000a6;display:flex;align-items:flex-start;justify-content:center;padding-top:80px}.search-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;width:560px;max-width:calc(100vw - 32px);overflow:hidden;box-shadow:0 24px 48px #00000080}.search-overlay-embedded{width:100%}.search-modal-embedded{position:relative;z-index:45;width:100%;max-width:100%;overflow:visible;background:transparent;border:none;box-shadow:none}.search-modal-embedded .search-modal-header{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px}.search-modal-embedded:has(.search-modal-flyout) .search-modal-header{border-radius:12px 12px 0 0}.search-modal-flyout{position:absolute;top:100%;left:0;right:0;z-index:1;background:var(--bg-surface);border:1px solid var(--border);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 24px 48px #00000080;overflow:hidden}.search-page{max-width:980px}.search-page .search-results{margin-top:.75rem}.search-results-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:.75rem}.search-results .search-results-heading-row h2{margin:0;font-size:1.1rem;color:var(--text-primary)}.search-results-layout-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-elevated)}.search-results-layout-toggle button{border:none;background:transparent;padding:6px 14px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;font-family:inherit;transition:background .12s,color .12s}.search-results-layout-toggle button+button{border-left:1px solid var(--border)}.search-results-layout-toggle button:hover{color:var(--text-primary)}.search-results-layout-toggle button[aria-pressed=true]{background:var(--accent-subtle);color:var(--accent-text)}.search-result-grid-card-body{display:flex;flex-direction:column;gap:.5rem;min-height:0}.search-result-grid-card-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box}.search-modal-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.search-modal-icon{display:flex;align-items:center;color:var(--text-muted);flex-shrink:0}.search-modal-icon svg{width:18px;height:18px}.search-modal-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:16px;font-family:inherit}.search-input-clear-btn{border:none;background:transparent;color:var(--accent-text);font-family:inherit;cursor:pointer;flex-shrink:0;border-radius:8px;transition:background .15s,opacity .15s;font-size:14px;font-weight:600;padding:4px 6px}.search-input-clear-btn:hover{background:var(--bg-elevated);opacity:1}.search-input-close-btn{border:none;background:transparent;color:var(--text-muted);font-family:inherit;cursor:pointer;flex-shrink:0;border-radius:8px;transition:background .15s,opacity .15s;font-size:18px;line-height:1.1;display:inline-flex;align-items:center;justify-content:center;height:28px;width:28px;padding:0}.search-input-close-btn:hover{background:var(--bg-elevated);opacity:1}.search-modal-input::placeholder{color:var(--text-muted)}.search-modal-go{background:var(--accent);color:#fff;border:none;border-radius:5px;padding:4px 10px;font-size:13px;cursor:pointer;font-family:inherit}.search-modal-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.search-modal-results{list-style:none;margin:0;padding:6px;max-height:360px;overflow-y:auto;border-bottom:1px solid var(--border)}.search-results-list{display:flex;flex-direction:column;gap:6px}.search-result-item{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .1s;border:1px solid transparent}.search-result-item:hover,.search-result-item.active{background:var(--bg-elevated);border-color:var(--border)}.search-result-item-poster{width:36px;height:54px;border-radius:4px;overflow:hidden;flex-shrink:0;background:var(--bg-elevated)}.search-result-item-poster img{width:100%;height:100%;object-fit:cover;display:block}.search-result-item-poster-placeholder{width:100%;height:100%;background:var(--bg-elevated)}.search-result-item-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.search-result-item-title{color:var(--text-primary);font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-item-meta{color:var(--text-secondary);font-size:12px}.search-result-item-action{flex-shrink:0;width:min(8.75rem,34vw);min-width:7rem;display:flex;justify-content:flex-end;align-items:center}.search-result-item-action-btn{width:100%;box-sizing:border-box}.search-result-item-subscribed-action{display:inline-flex;align-items:center;justify-content:center;padding:.45rem 1rem;font-size:.8125rem;font-weight:600;line-height:1.25;border-radius:8px;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:background .15s,color .15s,border-color .15s,opacity .15s;white-space:nowrap;background:var(--accent-subtle);color:var(--accent-text)}.search-result-item-subscribed-action .search-result-item-subscribed-label-leave{display:none}@media (hover: hover){.search-result-item-subscribed-action:hover:not(:disabled),.search-result-item-subscribed-action:focus-visible:not(:disabled){background:var(--btn-outline-danger-hover-bg);color:var(--btn-outline-danger-text);border-color:var(--btn-outline-danger-border)}.search-result-item-subscribed-action:hover:not(:disabled) .search-result-item-subscribed-label-default,.search-result-item-subscribed-action:focus-visible:not(:disabled) .search-result-item-subscribed-label-default{display:none}.search-result-item-subscribed-action:hover:not(:disabled) .search-result-item-subscribed-label-leave,.search-result-item-subscribed-action:focus-visible:not(:disabled) .search-result-item-subscribed-label-leave{display:inline}}@media (hover: none){.search-result-item-subscribed-action:focus-visible:not(:disabled){background:var(--btn-outline-danger-hover-bg);color:var(--btn-outline-danger-text);border-color:var(--btn-outline-danger-border)}.search-result-item-subscribed-action:focus-visible:not(:disabled) .search-result-item-subscribed-label-default{display:none}.search-result-item-subscribed-action:focus-visible:not(:disabled) .search-result-item-subscribed-label-leave{display:inline}}.subscribed-action-touch-menu{padding:0;margin:0;background:transparent;border:none;box-shadow:none}.subscribed-action-touch-menu-item.btn-outline-danger{display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box}.search-result-item-subscribed-action:disabled{opacity:.5;cursor:not-allowed}.search-modal-empty{padding:20px 16px;color:var(--text-muted);font-size:13px;text-align:center}.search-modal-hint{padding:10px 16px;color:var(--text-muted);font-size:12px}.search-modal-hint kbd{font-family:inherit;background:var(--bg-elevated);border:1px solid var(--border);border-radius:3px;padding:1px 5px;font-size:11px}.sidebar{width:220px;background:var(--bg-surface);border-right:1px solid var(--border);position:fixed;top:0;left:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:visible;z-index:45;transition:width .2s ease}@media (min-width: 768px){.sidebar.sidebar-collapsed{width:64px}}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 16px 20px;flex-shrink:0}.sidebar-header--collapsed{justify-content:center;padding-left:10px;padding-right:10px}.sidebar-brand{display:flex;align-items:center;gap:10px;min-width:0}.sidebar-logo-icon{width:28px;height:28px;background:var(--accent);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.sidebar-logo-name{font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;min-width:0}@media (min-width: 768px){.sidebar.sidebar-collapsed .sidebar-logo-name{display:none}}.sidebar-rail-toggle{flex-shrink:0;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);background:var(--bg-base);color:var(--text-primary);cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s}.sidebar-rail-toggle:hover,.sidebar-rail-toggle:focus-visible{background:var(--bg-elevated);border-color:var(--text-muted)}.sidebar-rail-toggle:focus{outline:none}.sidebar-rail-toggle:focus-visible{box-shadow:0 0 0 2px #3b82f673}.sidebar-rail-expand-hit{position:relative;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:box-shadow .12s,border-color .12s}.sidebar-rail-expand-hit:hover,.sidebar-rail-expand-hit:focus-visible{box-shadow:0 0 0 2px #3b82f680;border-color:var(--border)}.sidebar-rail-expand-hit:focus{outline:none}.sidebar-rail-expand-stack{position:relative;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.sidebar-rail-expand-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:opacity .12s ease}.sidebar-rail-expand-face--panel{opacity:0;color:var(--text-primary)}.sidebar-rail-expand-hit:hover .sidebar-rail-expand-face--logo,.sidebar-rail-expand-hit:focus-visible .sidebar-rail-expand-face--logo{opacity:0}.sidebar-rail-expand-hit:hover .sidebar-rail-expand-face--panel,.sidebar-rail-expand-hit:focus-visible .sidebar-rail-expand-face--panel{opacity:1}.sidebar-rail-expand-face--logo .sidebar-logo-icon{margin:0}.sidebar-tooltip{position:relative;display:flex;align-items:center;justify-content:center}.sidebar-tooltip-bubble{position:absolute;z-index:120;display:flex;align-items:center;gap:8px;padding:8px 11px;font-size:13px;font-weight:500;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 20px #00000073;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s ease}[data-theme=light] .sidebar-tooltip-bubble{box-shadow:0 4px 20px #0f172a1a}.sidebar-tooltip-kbd{--shortcut-row-h: 1.35em;display:inline-flex;align-items:center;gap:2px;font-family:inherit;font-size:11px;color:var(--text-muted);background:var(--bg-base);border:1px solid var(--border);border-radius:4px;padding:1px 5px;line-height:1;flex-shrink:0}.sidebar-tooltip-kbd-mod,.sidebar-tooltip-kbd-key{display:inline-flex;align-items:center;justify-content:center;height:var(--shortcut-row-h);line-height:1}.sidebar-tooltip-kbd-mod{font-size:1.35em}.sidebar-tooltip-kbd-key{font-size:1em}.sidebar-tooltip--rail-collapse .sidebar-tooltip-bubble{top:calc(100% + 10px);left:50%;transform:translate(-50%)}.sidebar-tooltip--rail-collapse .sidebar-tooltip-bubble:before{content:"";position:absolute;z-index:0;bottom:100%;left:50%;transform:translate(-50%);width:0;height:0;border-style:solid;border-width:0 8px 8px 8px;border-color:transparent transparent var(--border) transparent}.sidebar-tooltip--rail-collapse .sidebar-tooltip-bubble:after{content:"";position:absolute;z-index:1;bottom:100%;left:50%;transform:translate(-50%,1px);width:0;height:0;border-style:solid;border-width:0 7px 7px 7px;border-color:transparent transparent var(--bg-elevated) transparent}.sidebar-tooltip--rail-collapse:hover .sidebar-tooltip-bubble,.sidebar-tooltip--rail-collapse:focus-within .sidebar-tooltip-bubble{opacity:1}.sidebar-tooltip--rail-expand .sidebar-tooltip-bubble{left:calc(100% + 12px);top:50%;transform:translateY(-50%)}.sidebar-tooltip--rail-expand .sidebar-tooltip-bubble:before{content:"";position:absolute;z-index:0;right:100%;top:50%;transform:translateY(-50%);width:0;height:0;border-style:solid;border-width:8px 8px 8px 0;border-color:transparent var(--border) transparent transparent}.sidebar-tooltip--rail-expand .sidebar-tooltip-bubble:after{content:"";position:absolute;z-index:1;right:100%;top:50%;transform:translate(1px,-50%);width:0;height:0;border-style:solid;border-width:7px 7px 7px 0;border-color:transparent var(--bg-elevated) transparent transparent}.sidebar-tooltip--rail-expand:hover .sidebar-tooltip-bubble,.sidebar-tooltip--rail-expand:focus-within .sidebar-tooltip-bubble{opacity:1}.sidebar-nav{flex:1;min-height:0;padding:0 8px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.sidebar-section{display:flex;flex-direction:column;gap:1px}.sidebar-section-label{font-size:15px;font-weight:600;color:var(--text-muted);padding:0 8px;margin-bottom:4px}@media (min-width: 768px){.sidebar.sidebar-collapsed .sidebar-section-label{display:none}}.nav-link{display:flex;align-items:center;padding:7px 10px;border-radius:6px;font-size:14px;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:background .12s,color .12s}.nav-link-icon{display:flex;align-items:center;flex-shrink:0;width:16px;height:16px;margin-right:9px}.nav-link-icon svg{width:16px;height:16px}@media (min-width: 768px){.sidebar.sidebar-collapsed .nav-link{justify-content:center;padding-left:8px;padding-right:8px}.sidebar.sidebar-collapsed .nav-link-icon{margin-right:0}.sidebar.sidebar-collapsed .nav-link-text{display:none}}.nav-link:hover{background:var(--bg-elevated);color:var(--text-primary);text-decoration:none}.nav-link.active,.nav-link.active:hover{background:var(--accent-subtle);color:var(--accent-text)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:12px 8px 16px;display:flex;flex-direction:column;gap:8px}.sidebar-account{position:relative;width:100%;min-width:0}.sidebar-account-trigger{display:flex;align-items:center;gap:10px;width:100%;min-width:0;padding:8px 10px;border:none;border-radius:10px;background:transparent;color:var(--text-primary);font:inherit;font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:background .12s ease}.sidebar-account-trigger:hover,.sidebar-account-trigger:focus-visible,.sidebar-account-trigger[aria-expanded=true]{background:var(--bg-elevated)}.sidebar-account-trigger .user-avatar{flex-shrink:0}.sidebar-account-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-chevron{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary)}.sidebar-account-chevron-svg{width:16px;height:16px;transition:transform .18s ease}.sidebar-account-chevron-svg.is-open{transform:rotate(180deg)}.sidebar-account-menu{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:50;padding:6px;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 8px 28px #00000038;display:flex;flex-direction:column;gap:2px}.sidebar-account-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font:inherit;font-size:13px;text-align:left;text-decoration:none;cursor:pointer;transition:background .1s ease}a.sidebar-account-menu-item:hover,button.sidebar-account-menu-item:hover{background:var(--bg-elevated);text-decoration:none;color:var(--text-primary)}.sidebar-account-menu-item.is-active{background:var(--accent-subtle);color:var(--accent-text)}.sidebar-account-menu-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;color:var(--text-primary)}.sidebar-account-menu-icon svg{width:16px;height:16px}.sidebar-account-menu-item--danger,.sidebar-account-menu-item--danger .sidebar-account-menu-icon{color:var(--btn-outline-danger-text)}.sidebar-account-menu-item--danger:hover{background:var(--btn-outline-danger-hover-bg);color:var(--btn-outline-danger-text)}.sidebar-logout{padding:6px 10px;border-radius:6px;font-size:12px;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;text-align:left;transition:background .12s,color .12s;display:flex;align-items:center;gap:8px}.sidebar-logout-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px;margin-right:9px}.sidebar-logout-icon svg{width:16px;height:16px}.sidebar-logout:hover{background:var(--bg-elevated);color:var(--text-primary)}@media (min-width: 768px){.sidebar.sidebar-collapsed .sidebar-logout{justify-content:center;padding-left:8px;padding-right:8px}.sidebar.sidebar-collapsed .sidebar-logout-icon{margin-right:0}.sidebar.sidebar-collapsed .sidebar-logout-text,.sidebar.sidebar-collapsed .sidebar-account-name,.sidebar.sidebar-collapsed .sidebar-account-chevron{display:none}.sidebar.sidebar-collapsed .sidebar-account-trigger{justify-content:center;padding-left:8px;padding-right:8px}.sidebar.sidebar-collapsed .sidebar-account-menu{left:0;right:auto;width:208px}}.mobile-top-bar{display:none}.top-bar{display:flex}.mobile-top-bar-search,.mobile-bottom-bar,.sidebar-backdrop,.mobile-drawer-edge{display:none}@media (max-width: 767px){.layout{display:block}.mobile-drawer-edge{display:block;position:fixed;left:0;top:0;bottom:0;width:24px;z-index:35;touch-action:none}.sidebar{transform:translate(-100%);width:280px;z-index:50;transition:transform .25s ease;touch-action:pan-y;overscroll-behavior:contain;height:100vh;height:100dvh;padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box}.sidebar.sidebar-open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:49}.main{margin-left:0;padding:24px 16px 16px;padding-top:calc(64px + env(safe-area-inset-top,0px));padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.mobile-ptr-gutter{display:flex;align-items:center;justify-content:center;position:fixed;left:0;right:0;z-index:39;pointer-events:none;background:var(--bg-base)}.mobile-ptr-gutter__icon-wrap{display:flex;will-change:transform}.mobile-ptr-gutter__icon{color:var(--accent-text)}.mobile-ptr-gutter--busy{height:40px;opacity:1;transition:opacity .15s ease}.mobile-ptr-gutter__icon-wrap--spinning{animation:mobile-ptr-spin .85s linear infinite}@keyframes mobile-ptr-spin{to{transform:rotate(360deg)}}.mobile-top-bar{display:flex;align-items:center;position:fixed;top:0;left:0;right:0;box-sizing:border-box;padding:0 16px;padding-top:env(safe-area-inset-top,0px);min-height:calc(48px + env(safe-area-inset-top,0px));background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:40}.mobile-top-bar-hamburger{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.top-bar{display:none}.mobile-top-bar-title{position:absolute;left:50%;transform:translate(-50%);font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.mobile-top-bar-search{display:flex;align-items:center;justify-content:center;margin-left:auto;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;width:32px;height:32px}.mobile-top-bar-search svg{width:18px;height:18px}.mobile-bottom-bar{display:flex;position:fixed;bottom:0;left:0;right:0;width:100%;max-width:100%;min-height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg-surface);border-top:1px solid var(--border);z-index:40}.mobile-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--text-muted);font-size:10px;transition:color .12s}.mobile-tab:hover{color:var(--text-secondary);text-decoration:none}.mobile-tab.active{color:var(--accent-text)}.mobile-tab svg{width:20px;height:20px}}.auth-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--bg-base)}.auth-card{width:100%;max-width:360px;background:var(--bg-surface);color:var(--text-primary);padding:2rem;border-radius:12px;border:1px solid var(--border);box-shadow:0 4px 24px #0006}.auth-title{margin:0 0 .25rem;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.auth-subtitle{margin:0 0 1.5rem;color:var(--text-secondary);font-size:.9rem}.auth-loading-hint{margin:0;color:var(--text-secondary);font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-error{padding:.5rem .75rem;background:#ef444426;border:1px solid rgba(239,68,68,.4);border-radius:6px;color:#fca5a5;font-size:.9rem}.auth-success{margin:0 0 1rem;padding:.5rem .75rem;background:var(--bg-elevated);border:1px solid var(--border);border-left:4px solid rgb(34 197 94);border-radius:6px;color:var(--text-primary);font-size:.9rem;line-height:1.45}.auth-forgot{margin:.75rem 0 0;text-align:center;font-size:.9rem}.auth-forgot a{color:var(--accent-text)}.auth-label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem;font-weight:500;color:var(--text-primary)}.auth-optional{font-weight:400;color:var(--text-secondary)}.auth-input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);font-size:1rem}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.auth-submit{margin-top:.25rem;padding:.6rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .15s}.auth-submit:hover:not(:disabled){opacity:.88}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-switch{margin:1.25rem 0 0;text-align:center;color:var(--text-secondary);font-size:.9rem}.auth-switch a{color:var(--accent-text)}.title-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}@media (min-width: 600px){.title-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media (min-width: 900px){.title-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}.title-card,.search-result-card{background:var(--bg-surface);border-radius:10px;border:1px solid var(--border);overflow:hidden}.search-result-card-clickable{cursor:pointer}.search-result-card-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.title-card-main-link{display:block;color:inherit;text-decoration:none}.title-card-main-link:hover,.title-card-main-link:focus-visible{text-decoration:none;color:inherit}.title-card--next-strip{display:flex;flex-direction:column;min-height:0}.title-card--next-strip .title-card-main-link{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.title-card--next-strip .title-card-body{flex:1 1 auto}.title-card--meta-stack{display:flex;flex-direction:column;min-height:0;height:100%}.title-card--meta-stack .title-card-main-link{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.title-card--meta-stack .title-card-poster{flex-shrink:0}.title-card--meta-stack .title-card-body,.title-card--meta-stack .title-card-meta-stack{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.title-card--meta-stack .title-card-meta-stack-row--provider{margin-top:auto}.title-card--meta-stack .title-card-meta-stack-row--provider:not(.title-card-meta-stack-row--provider-filled){min-height:0}.title-card-poster{position:relative;aspect-ratio:2/3;background:var(--bg-elevated)}.title-card-poster img{width:100%;height:100%;object-fit:cover}.title-card-poster-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.85rem;background:var(--bg-elevated)}.title-card-body{padding:.6rem .75rem .65rem}.title-card-name{margin:0 0 .25rem;font-size:.9rem;font-weight:600;line-height:1.3;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .12s}.title-card-meta{display:block;font-size:.8rem;color:var(--text-secondary)}.title-card-last-air{margin-top:.3rem;display:flex;flex-direction:column;gap:.1rem;line-height:1.15}.title-card-last-air-date{color:var(--text-secondary)}.title-card-last-air-relative{font-size:.72rem;color:var(--text-muted)}.title-card-meta-stack{display:flex;flex-direction:column;gap:.3rem;width:100%;min-width:0;margin-top:.05rem}.title-card-meta-stack-row{display:flex;align-items:center;min-width:0}.title-card-imdb{display:inline-flex;flex-direction:column;align-items:flex-end;gap:.12rem;line-height:1.1;flex-shrink:0;align-self:flex-start;text-align:right;padding-top:.04rem}.title-card-imdb-logo{display:inline-flex;flex-shrink:0;line-height:0}.title-card-imdb-num{font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);letter-spacing:-.02em}.title-card-meta-stack-row--provider{min-height:1.5rem}.title-card-meta-stack-row--provider-filled{margin-top:.05rem;padding-top:.38rem;border-top:1px solid var(--border)}.title-card-meta-stack-row--date-relative{display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;min-height:0;line-height:1.2;width:100%}.title-card-meta-stack-row--season-block{align-items:flex-start;justify-content:space-between;gap:.4rem}.title-card-meta-stack-row--season-block-with-imdb{align-items:flex-start}.title-card-season-block-main{min-width:0;flex:1 1 auto}.title-card-season-block-inner{display:flex;flex-direction:column;gap:.1rem;min-width:0}.title-card-season-block-range{font-size:.8rem;font-weight:600;color:var(--text-primary);line-height:1.25;letter-spacing:-.015em}.title-card-season-block-episodes{font-size:.73rem;font-weight:500;color:var(--text-secondary);line-height:1.25}.title-card-meta-stack .title-card-watch-provider,.title-card-meta-stack .title-card-next-air-date-only,.title-card-meta-stack .title-card-last-air{margin-top:0}.title-card-next-air{margin-top:.3rem;display:inline-flex;align-items:baseline;gap:.28rem;line-height:1}.title-card-next-air-count{font-size:1.35rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.title-card-next-air-days{font-size:.74rem;font-weight:500;color:var(--text-secondary);letter-spacing:.04em}.title-card-next-air-date{margin-left:.2rem;font-size:.76rem;color:var(--text-muted)}.title-card-next-air-date-only{margin-top:.3rem;font-size:.76rem;color:var(--text-muted)}.title-card-watch-provider{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--text-secondary)}.title-card-provider-logo{width:24px;height:24px;object-fit:contain;border-radius:4px}.title-card-provider-warning{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;font-size:.7rem;font-weight:700;color:#fca5a5;background:#ef444433;border-radius:50%}.title-card-progress{position:absolute;bottom:0;left:0;right:0;height:5px;background:#0006;overflow:hidden}.title-card-progress-fill{height:100%;background:#eab308;transition:width .2s ease}.title-card-next-strip{display:flex;align-items:center;gap:.4rem;padding:.35rem .75rem .55rem;margin-top:-.15rem;border-top:1px solid var(--border)}.title-card-next-strip-se{display:flex;align-items:baseline;gap:.35em;min-width:0;flex:1 1 auto;overflow:hidden;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary);letter-spacing:.02em}.title-card-next-strip-se-column{flex-direction:column;align-items:flex-start;gap:.12em}.title-card-next-strip-se-core{flex-shrink:0}.title-card-next-strip-host{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:500;line-height:1.25;letter-spacing:.01em;color:#64748b}[data-theme=dark] .title-card-next-strip-host{color:#94a3b8}.title-card-next-strip-runtime{font-size:.7rem;color:var(--text-muted)}.title-card-next-strip-days{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;line-height:1}.title-card-next-strip-days-num{font-size:1.25rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.title-card-next-strip-days-label{font-size:.68rem;font-weight:500;color:var(--text-secondary);letter-spacing:.03em}.list-message{color:var(--text-secondary);margin:2rem 0}.list-error{color:#fca5a5}.list-view-split{display:flex;flex-direction:column;gap:2rem}.list-view-group-title{margin:0 0 .75rem;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.list-view-group+.list-view-group{margin-top:.5rem}.list-view-rows-wrap,.list-view-rows{display:flex;flex-direction:column;gap:1.5rem}.list-view-backfill{margin:1.5rem 0 0;padding-top:1rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--text-secondary);display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.list-view-backfill-hint{color:var(--text-muted)}.dev-tools-header .settings-account-heading{margin-bottom:.35rem}.dev-tools-lede{margin:0;font-size:.875rem;line-height:1.45;color:var(--text-secondary)}.dev-tools-section{padding:1.25rem 0 0;margin-top:1.25rem;border-top:1px solid var(--border)}.dev-tools-section-title{margin:0 0 .35rem;font-size:1rem;font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}.dev-tools-section-desc{margin:0 0 .75rem;font-size:.875rem;line-height:1.45;color:var(--text-secondary)}.dev-tools-page .list-view-backfill.dev-tools-command-row{margin-top:0;padding-top:0;border-top:none}.collection-row{margin-bottom:0}.collection-row-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.collection-row-poster{width:48px;height:72px;object-fit:cover;border-radius:6px;flex-shrink:0}.collection-row-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.collection-row-cards{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch}.collection-row-cards::-webkit-scrollbar{height:6px}.collection-row-cards::-webkit-scrollbar-track{background:transparent}.collection-row-cards::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.collection-row-card-link{flex:0 0 120px;color:inherit;text-decoration:none}.collection-row-card-link:hover,.collection-row-card-link:focus-visible{text-decoration:none}.collection-row-card-link:hover .collection-row-card-name{color:var(--accent-text)}.collection-row-card{background:var(--bg-surface);border-radius:8px;border:1px solid var(--border);overflow:hidden}.collection-row-card-poster{aspect-ratio:2/3;background:var(--bg-elevated)}.collection-row-card-poster img{width:100%;height:100%;object-fit:cover}.collection-row-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.8rem}.collection-row-card-body{padding:.4rem .5rem}.collection-row-card-name{margin:0;font-size:.85rem;font-weight:600;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .12s}.collection-row-card-year{display:block;font-size:.8rem;color:var(--text-secondary);margin-top:.15rem}@media (min-width: 600px){.collection-row-card-link{flex:0 0 140px}}.search-view{max-width:800px}.search-suggestions-wrap{position:relative;margin-bottom:1rem}.search-form{display:flex;align-items:center;gap:.5rem}.search-input{flex:1;padding:.5rem .75rem;font-size:1rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.search-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:2px;max-height:70vh;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;z-index:50}.search-suggestions-loading{padding:.75rem 1rem;color:var(--text-secondary);font-size:.9rem}.search-suggestions-dropdown .search-result-item{border-radius:0;border:none;border-bottom:1px solid var(--border)}.search-suggestions-dropdown .search-result-item:last-child{border-bottom:none}.search-results-list .search-result-item{background:var(--bg-surface);border:1px solid var(--border)}.search-suggestion-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem;text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border);font:inherit;color:var(--text-primary);cursor:pointer}.search-suggestion-item:last-child{border-bottom:none}.search-suggestion-item:hover,.search-suggestion-item-active{background:var(--bg-elevated)}.search-suggestion-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.search-suggestion-poster{width:40px;height:60px;object-fit:cover;border-radius:4px;flex-shrink:0}.search-suggestion-poster-placeholder{background:var(--bg-elevated)}.search-suggestion-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.search-suggestion-title{font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-suggestion-title-btn{border:none;background:transparent;padding:0;text-align:left;font:inherit;color:var(--text-primary);cursor:pointer}.search-suggestion-title-btn:hover{color:var(--accent-text)}.search-suggestion-meta{font-size:.8rem;color:var(--text-secondary)}.title-subscribe-btn,.btn-outline-danger{flex-shrink:0;padding:.45rem 1rem;font-size:.8125rem;font-weight:600;line-height:1.25;border-radius:8px;cursor:pointer;border:1px solid transparent;font-family:inherit;transition:background .15s,color .15s,border-color .15s,opacity .15s;white-space:nowrap}.title-subscribe-btn{background:var(--accent);color:#fff;border-color:var(--accent)}.title-subscribe-btn:hover:not(:disabled){opacity:.85}.btn-outline-danger{background:transparent;color:var(--btn-outline-danger-text);border-color:var(--btn-outline-danger-border)}.btn-outline-danger:hover:not(:disabled){background:var(--btn-outline-danger-hover-bg)}.subscribed-action-touch-menu .btn-outline-danger{background:var(--bg-surface)}.subscribed-action-touch-menu .btn-outline-danger:hover:not(:disabled),.subscribed-action-touch-menu .btn-outline-danger:focus-visible:not(:disabled){background:var(--bg-elevated)}.title-subscribe-btn:disabled,.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed}.btn-outline-neutral{border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-muted);font-size:12px;font-weight:500;line-height:1.25;padding:4px 8px;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s,opacity .15s}.btn-outline-neutral:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.btn-outline-neutral:disabled{opacity:.65;cursor:not-allowed}.btn-outline-neutral--icon-only{padding:5px;min-width:2rem;min-height:2rem;display:inline-flex;align-items:center;justify-content:center;line-height:0}.btn-outline-neutral--micro{font-size:.72rem;padding:2px 8px;border-radius:4px;font-weight:500}.settings-custom-tag .btn-outline-neutral{padding:0 5px;min-width:1.35rem;min-height:1.35rem;margin:0 -2px 0 0;border-radius:6px;font-size:.95rem;line-height:1;font-weight:600}.list-view-backfill .list-view-backfill-btn.btn-outline-neutral{font-size:.9rem;padding:5px 10px}.friends-view .title-detail-section{margin-bottom:1.1rem}.friends-add-section{max-width:520px}.friends-add-form{display:flex;gap:.5rem}.friends-add-input{flex:1;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-family:inherit;font-size:.95rem}.friends-add-feedback{margin-top:.45rem}.friends-add-feedback-success{color:#34a853}.friends-list{list-style:none;padding:0;margin:0}.friends-list-row{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.friends-list-name{flex:1}.friends-list-email{color:var(--text-muted);font-size:.84rem}.friends-cards{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.65rem}.friend-card{display:flex;flex-direction:column;align-items:stretch;gap:.7rem;padding:.62rem .9rem .85rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface)}.friend-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;min-width:0}.friend-card-identity{display:flex;flex-direction:row;align-items:center;gap:.65rem;min-width:0;flex:1}.friend-card-identity-text{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;min-width:0}.friend-card-name{font-weight:600;color:var(--text-primary);flex:0 1 auto}.friend-card-email{color:var(--text-muted);font-size:.82rem;white-space:nowrap;flex:0 1 auto;min-width:0}.friend-card-defaults{display:flex;flex-direction:column;gap:.25rem;width:100%;align-items:stretch}.friend-default-line{display:flex;align-items:center;gap:.45rem;color:var(--text-secondary);font-size:.75rem}.friend-default-subtext{color:var(--text-muted);font-size:.75rem;font-style:italic;line-height:1.25;margin-top:.05rem}.friend-default-line-text{flex:0 1 auto;padding:.35rem .55rem;line-height:1.25;white-space:nowrap}.friend-default-line-you{color:var(--text-primary);flex-direction:column;align-items:flex-start;gap:.18rem}.friend-default-line-you-on{color:var(--text-primary)}.friend-default-line-you-main{display:flex;align-items:stretch;width:auto;max-width:100%;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:#f8f8fb}.friend-default-line-you-on .friend-default-line-you-main{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent-subtle) 70%,#f8f8fb)}.friend-default-line-toggle-wrap{display:flex;align-items:center;justify-content:center;padding:0 .45rem;border-left:1px solid var(--border);background:#f0f2f8}.friend-toggle{flex-shrink:0;position:relative;width:2rem;height:1.1rem;border:none;border-radius:999px;background:var(--border);cursor:pointer;padding:0;transition:background .15s ease}.friend-toggle-knob{position:absolute;top:2px;left:2px;width:.85rem;height:.85rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform .15s ease}.friend-toggle-on{background:var(--accent)}.friend-toggle-on .friend-toggle-knob{transform:translate(.9rem)}.friend-toggle:disabled{opacity:.6;cursor:not-allowed}.friend-default-saving{font-size:.68rem;color:var(--text-muted);margin-left:.35rem}.friend-card-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.45rem;flex-shrink:0}@media (max-width: 640px){.friend-card{padding:.62rem .75rem .78rem;gap:.65rem}.friend-default-line-you-main{width:100%;justify-content:space-between}.friend-default-line-text{flex:1 1 auto;min-width:0;white-space:normal;padding-right:.25rem}.friend-card-email{white-space:normal;overflow-wrap:anywhere}.friend-default-subtext{max-width:100%}}.friends-empty{margin-top:0}.search-button{padding:.5rem 1rem;font-size:1rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.search-button:hover:not(:disabled){opacity:.85}.search-button:disabled{opacity:.5;cursor:not-allowed}.search-error{color:#fca5a5;margin-bottom:1rem}.search-results h2{margin:0 0 .75rem;font-size:1.1rem;color:var(--text-primary)}.search-result-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.title-detail{max-width:720px}.title-detail-hero{display:flex;gap:1.5rem;margin-bottom:1.5rem}.title-detail-poster{flex-shrink:0;width:200px;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:var(--bg-elevated)}.title-detail-poster img{width:100%;height:100%;object-fit:cover}.title-detail-meta{flex:1;min-width:0}.title-detail-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.25rem}.title-detail-name{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.title-detail-header-action{margin-top:.15rem}.title-detail-header-subscription-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:11.5rem}.title-detail-subtitle{margin:0 0 .85rem;font-size:.9rem;font-weight:400;color:var(--text-secondary);line-height:1.3}@media (max-width: 720px){.title-detail-header-row{flex-direction:column;align-items:flex-start;gap:.6rem}.title-detail-header-action{margin-top:0}.title-detail-header-subscription-btn{width:100%;min-width:0}}.settings-page{max-width:900px}.settings-profile-row{display:flex;flex-direction:column;gap:.75rem}.settings-profile-preview{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.settings-profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.settings-profile-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-profile-hint{margin:0;font-size:.82rem;color:var(--text-muted)}.settings-profile-error{margin:0}.settings-account-stack{display:flex;flex-direction:column;align-items:stretch;gap:2.25rem;max-width:420px;width:100%}.settings-account-group{display:flex;flex-direction:column;gap:.65rem;min-width:0}.settings-account-heading{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.settings-account-lede{margin:0;font-size:.875rem;line-height:1.5;color:var(--text-secondary)}.settings-account-section-inner{gap:0}.settings-account-card{box-shadow:0 1px 2px #0000000a}.settings-row.settings-account-card{padding:1.35rem 1.4rem;border-radius:12px}[data-theme=light] .settings-row.settings-account-card{box-shadow:0 1px 3px #0f172a0f}.settings-profile-btn{font-size:.875rem}.settings-password-form{display:flex;flex-direction:column;gap:1.125rem;width:100%;max-width:none}.settings-password-form .auth-label{gap:.45rem;font-size:.8125rem;font-weight:600;color:var(--text-primary)}.settings-password-form .auth-input{width:100%;padding:.55rem .8rem;font-size:.9375rem}.settings-password-form .auth-submit{align-self:stretch;width:100%;margin-top:.35rem;padding:.65rem 1rem;font-size:.9375rem}.settings-password-form .settings-save-status{margin:0 0 .25rem}.settings-page.settings-layout{display:grid;grid-template-columns:1fr;gap:clamp(1rem,3vw,2rem);align-items:start;max-width:1180px;width:100%;min-width:0;box-sizing:border-box}@media (min-width: 768px){.settings-page.settings-layout{grid-template-columns:minmax(200px,260px) minmax(0,1fr)}}.settings-nav-card{position:static;top:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 3px #0000000f;overflow:hidden;max-width:100%;min-width:0;box-sizing:border-box}@media (min-width: 768px){.settings-nav-card{position:sticky;top:68px}}.settings-nav-header{padding:14px 18px;font-size:.95rem;font-weight:700;color:#fff;background:var(--accent);letter-spacing:-.02em}.settings-nav-list{display:flex;flex-direction:column;padding:8px;gap:2px}.settings-nav-item{display:block;width:100%;text-align:left;padding:10px 14px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:.9rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .12s,color .12s;text-decoration:none;box-sizing:border-box}.settings-nav-item:hover,.settings-nav-item:focus-visible,.settings-nav-item:active{background:var(--bg-elevated);text-decoration:none}.settings-nav-item-active{background:var(--accent-subtle);color:var(--accent-text)}.settings-main{min-width:0;max-width:100%;box-sizing:border-box}.settings-mobile-root{width:100%;min-width:0;box-sizing:border-box}.settings-mobile-menu{width:100%;min-width:0}.settings-mobile-menu-section-label{margin:0 0 .5rem .15rem;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.settings-mobile-menu-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.settings-mobile-menu-row{display:flex;align-items:center;gap:.75rem;padding:14px 16px;color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--border);font-size:.95rem;font-weight:500;-webkit-tap-highlight-color:transparent}.settings-mobile-menu-row:last-child{border-bottom:none}.settings-mobile-menu-row:hover,.settings-mobile-menu-row:focus-visible,.settings-mobile-menu-row:active{background:var(--bg-elevated);text-decoration:none}.settings-mobile-menu-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg-elevated);color:var(--text-secondary)}.settings-mobile-menu-icon svg{width:20px;height:20px}.settings-mobile-menu-row-text{flex:1;min-width:0}.settings-mobile-menu-chevron{flex-shrink:0;width:18px;height:18px;color:var(--text-muted)}.settings-mobile-subhead{margin:0 0 1rem}.settings-mobile-back{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .95rem;border:none;border-radius:999px;background:var(--bg-elevated);color:var(--accent-text);font-size:.875rem;font-weight:700;font-family:inherit;line-height:1.2;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .15s;box-sizing:border-box}.settings-mobile-back:link,.settings-mobile-back:visited,.settings-mobile-back:hover,.settings-mobile-back:focus-visible,.settings-mobile-back:active{text-decoration:none;color:var(--accent-text)}.settings-mobile-back:hover,.settings-mobile-back:focus-visible,.settings-mobile-back:active{background:color-mix(in srgb,var(--bg-elevated) 72%,var(--border) 28%)}.settings-mobile-back-icon{width:18px;height:18px;flex-shrink:0}.theme-toggle{display:flex;gap:4px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:3px}.theme-btn{padding:6px 18px;border:none;border-radius:6px;background:none;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}.theme-btn:hover{color:var(--text-primary)}.theme-btn-active{background:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 3px #0003}.settings-title{margin:0 0 .4rem;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.settings-intro{margin:0 0 1.25rem;color:var(--text-secondary);font-size:.9rem;max-width:560px}.settings-save-status{margin:0 0 1rem;font-size:.85rem;color:var(--accent-text)}.settings-section{display:flex;flex-direction:column;gap:1.5rem}.settings-row{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:1.25rem}.settings-password-alert{margin:0}.settings-row-header{margin-bottom:.75rem}.settings-row-title{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.settings-row-count{font-weight:400;color:var(--text-secondary)}.settings-row-country{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-row-label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.settings-country-select-wrap{display:flex}.settings-country-select{padding:.35rem .6rem;font-size:.9rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-primary);cursor:pointer}.settings-subscribed-strip{display:flex;flex-wrap:wrap;gap:.5rem;min-height:40px;align-items:center}.settings-subscribed-empty{font-size:.85rem;color:var(--text-muted)}.settings-subscribed-pill{padding:2px;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;transition:border-color .12s}.settings-subscribed-pill:hover{border-color:var(--accent)}.settings-providers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem}.settings-provider-tile{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:.6rem;cursor:pointer;text-align:left;transition:border-color .12s}.settings-provider-tile:hover{border-color:var(--text-secondary)}.settings-provider-tile-selected{border-color:var(--accent);background:var(--accent-subtle)}.settings-provider-tile-inner{display:flex;flex-direction:column;align-items:center;gap:.4rem}.settings-provider-logo{width:36px;height:36px;object-fit:contain;border-radius:6px}.settings-provider-logo-large{width:48px;height:48px;object-fit:contain;border-radius:8px}.settings-provider-logo-fallback,.settings-provider-logo-placeholder{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:var(--text-secondary);background:var(--bg-base);border-radius:8px;text-align:center}.settings-provider-name{font-size:.75rem;color:var(--text-secondary);text-align:center;word-break:break-word}.settings-provider-name-row{display:flex;align-items:center;gap:.3rem;justify-content:center}.settings-provider-variant-toggle{background:none;border:none;padding:0 2px;font-size:.7rem;color:var(--text-muted);cursor:pointer}.settings-provider-variant-toggle-on{color:var(--accent-text)}.settings-provider-variants-list{margin-top:.5rem;display:flex;flex-direction:column;gap:.3rem;border-top:1px solid var(--border);padding-top:.5rem}.settings-provider-variant-tile{border-radius:6px;padding:.4rem;cursor:pointer;border:1px solid transparent;transition:border-color .12s}.settings-provider-variant-tile:hover{border-color:var(--border)}.settings-provider-variant-tile-active{border-color:var(--accent);background:var(--accent-subtle)}.settings-provider-toggle-inline{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--border);vertical-align:middle}.settings-provider-toggle-inline-on{background:var(--accent)}.settings-custom{padding:0}.settings-custom-label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.settings-custom-row{display:flex;gap:.5rem}.settings-custom-input{flex:1}.settings-add-btn{padding:.5rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:opacity .15s}.settings-add-btn:hover:not(:disabled){opacity:.85}.settings-add-btn:disabled{opacity:.4;cursor:not-allowed}.settings-custom-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.settings-custom-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:20px;font-size:.85rem;color:var(--text-primary)}.settings-actions{margin-top:.5rem}.settings-saved-hint{font-size:.82rem;color:var(--text-muted)}.title-detail-meta-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.title-detail-meta-item{display:flex;flex-direction:column;gap:.15rem}.title-detail-meta-label{margin:0;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.title-detail-meta-value{margin:0;font-size:.95rem;color:var(--text-primary)}.title-detail-imdb-value{display:inline-flex;align-items:center;gap:.35rem}.title-detail-imdb-star{display:inline-flex;color:#f5c518;flex-shrink:0}.title-detail-imdb-rating-text{display:inline-flex;align-items:baseline}.title-detail-imdb-rating-num{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.title-detail-imdb-rating-ten{font-size:.9rem;font-weight:500;color:var(--text-secondary);margin-left:.05rem}.title-detail-trailer-link{font-size:.95rem;color:var(--accent);text-decoration:none;font-weight:500}.title-detail-trailer-link:hover{text-decoration:underline}.title-detail-watch-section .title-detail-watch-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem}.title-detail-watch-section .title-detail-watch-heading{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.title-detail-watch-providers-note{margin:0 0 .75rem;font-size:.8rem;color:var(--text-muted);letter-spacing:.01em}.title-detail-watch-providers-drift{margin:0 0 .75rem;padding:.6rem .75rem;background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);border-radius:6px}.title-detail-watch-providers-drift-msg{margin:0;font-size:.85rem;color:#fbbf24}.title-detail-watch-providers-drift-msg+.title-detail-watch-providers-drift-msg{margin-top:.35rem}.title-detail-watch-providers-drift-msg a{color:#b45309;font-weight:500}.title-detail-watch-providers-not-subscribed-msg{margin:0 0 .75rem;font-size:.85rem;color:var(--text-secondary)}.title-detail-watch-providers-not-subscribed-msg a{color:var(--accent);font-weight:500}.title-detail-watch-providers-not-subscribed-msg a:hover{text-decoration:underline}.title-detail-watch-preferred-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0 0 .75rem}.title-detail-watch-section .title-detail-watch-preferred-row:last-of-type{margin-bottom:0}.title-detail-watch-preferred-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.title-detail-watch-preferred-pill{display:inline-flex;align-items:center;gap:.5rem}.title-detail-watch-preferred-pill .title-detail-provider-logo{height:3rem}.title-detail-watch-preferred-pill .title-detail-provider-name{font-size:1rem;font-weight:500;color:var(--text-primary)}.title-detail-watch-preferred-change{padding:.2rem .5rem;font-size:.75rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.title-detail-watch-preferred-change:hover:not(:disabled){background:var(--bg-surface);border-color:var(--text-secondary);color:var(--text-primary)}.title-detail-watch-preferred-change:disabled{opacity:.6;cursor:default}.title-detail-watch-choose-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.9rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,color .15s ease}.title-detail-watch-choose-trigger:hover:not(:disabled){border-color:var(--text-secondary);color:var(--text-primary)}.title-detail-watch-choose-trigger-text{flex:1;text-align:left}.title-detail-provider-dropdown{position:relative;min-width:200px}.title-detail-provider-dropdown-trigger{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.9rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);cursor:pointer;list-style:none}.title-detail-provider-dropdown-trigger:hover{border-color:var(--text-secondary)}.title-detail-provider-dropdown-trigger-logo{height:1.25rem;width:auto;object-fit:contain}.title-detail-provider-dropdown-trigger-text{flex:1;text-align:left}.title-detail-provider-dropdown-chevron{color:var(--text-secondary);font-size:.75rem}.title-detail-provider-dropdown-list{position:absolute;top:100%;left:0;margin:.25rem 0 0;padding:.25rem 0;min-width:100%;max-height:280px;overflow-y:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0006;list-style:none;z-index:10}.title-detail-provider-dropdown-option{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.9rem;cursor:pointer}.title-detail-provider-dropdown-option:hover{background:var(--bg-base)}.title-detail-provider-dropdown-option[aria-selected=true]{background:var(--accent-subtle)}.title-detail-provider-dropdown-option-logo{height:1.25rem;width:auto;object-fit:contain;flex-shrink:0}.title-detail-provider-dropdown-option-text{flex:1;text-align:left}.title-detail-watch-providers-settings-hint{margin:0 0 .5rem;font-size:.85rem}.title-detail-watch-providers-settings-hint a{color:var(--accent)}.title-detail-watch-providers-settings-hint a:hover{text-decoration:underline}.title-detail-watch-providers{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.title-detail-watch-provider{display:inline-flex;align-items:center}.title-detail-provider-logo{height:1.75rem;width:auto;object-fit:contain}.title-detail-provider-name{font-size:.9rem;color:var(--text-secondary)}.title-detail-cast h2{margin-bottom:.75rem}.title-detail-cast-scroll{display:flex;gap:.75rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;margin-bottom:.5rem;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.title-detail-cast-scroll::-webkit-scrollbar{height:6px}.title-detail-cast-scroll::-webkit-scrollbar-track{background:var(--bg-base);border-radius:3px}.title-detail-cast-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.title-detail-cast-card{flex:0 0 140px;display:flex;flex-direction:column;background:var(--bg-elevated);border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0006;border:1px solid var(--border)}.title-detail-cast-photo{width:100%;aspect-ratio:1;overflow:hidden;background:var(--bg-base)}.title-detail-cast-photo img{width:100%;height:100%;object-fit:cover}.title-detail-cast-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--text-secondary);background:var(--bg-base)}.title-detail-cast-info{padding:.6rem .5rem;display:flex;flex-direction:column;gap:.15rem}.title-detail-cast-name{display:block;font-weight:600;font-size:.9rem;color:var(--text-primary);line-height:1.25}.title-detail-cast-role{display:block;font-size:.8rem;color:var(--text-secondary);line-height:1.3}.title-detail-cast-episodes{display:block;font-size:.8rem;color:var(--text-muted)}.title-detail-cast-full-link{font-size:.9rem;font-weight:600;color:var(--text-secondary);text-decoration:underline}.title-detail-cast-full-link:hover{color:var(--text-primary)}.title-detail-section{margin-bottom:1.5rem}.title-detail-section h2{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--text-secondary)}.title-detail-collection .title-detail-collection-name{margin:0 0 .75rem;font-size:1rem;color:var(--text-primary)}.title-detail-collection-parts{display:flex;flex-wrap:wrap;gap:1rem}.title-detail-collection-part{flex:0 0 120px;display:flex;flex-direction:column;background:var(--bg-elevated);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0006;border:1px solid var(--border)}.title-detail-collection-part-current{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.title-detail-collection-part-poster{width:100%;aspect-ratio:2/3;object-fit:cover;background:var(--bg-base)}.title-detail-collection-part-placeholder{display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--text-secondary)}.title-detail-collection-part-body{padding:.5rem .5rem .6rem;display:flex;flex-direction:column;gap:.2rem}.title-detail-collection-part-title{font-weight:600;font-size:.9rem;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.title-detail-collection-part-year{font-size:.8rem;color:var(--text-secondary)}.title-detail-collection-part-label{font-size:.85rem;color:var(--text-secondary);font-style:italic}.title-detail-collection-part-link{font-size:.9rem;color:var(--accent);font-weight:500}.title-detail-collection-part-link:hover{text-decoration:underline}.title-detail-collection-part .title-subscribe-btn{margin-top:.25rem;padding:.4rem .75rem;font-size:.75rem}.title-detail-overview,.title-detail-note{margin:0;line-height:1.6;color:var(--text-secondary)}.title-detail-note-empty{margin:0 0 .5rem;color:var(--text-muted);font-style:italic}.title-detail-btn-edit{margin-top:.5rem}.title-detail-edit .title-detail-section h2{margin-bottom:.75rem}.title-detail-field{display:block;margin-bottom:.75rem;font-size:.9rem;font-weight:500;color:var(--text-secondary)}.title-detail-field .title-detail-input{display:block;width:100%;margin-top:.25rem;padding:.5rem .75rem;font-size:1rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-base);color:var(--text-primary)}.title-detail-textarea{resize:vertical;min-height:4rem}.title-detail-actions{display:flex;gap:.5rem;margin-top:1rem}.title-detail-btn{padding:.5rem 1rem;font-size:.95rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer}.title-detail-btn:hover:not(:disabled){background:var(--bg-base)}.title-detail-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.title-detail-btn-primary:hover:not(:disabled){opacity:.88}.title-detail-btn:disabled{opacity:.7;cursor:not-allowed}.title-detail-watch-providers-more{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--border)}.title-detail-watch-providers-more-toggle{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;padding:.3rem 0;transition:color .15s ease}.title-detail-watch-providers-more-toggle:hover{color:var(--accent)}.title-detail-watch-providers-more-toggle:after{content:"";display:inline-block;width:.35em;height:.35em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:.2em;transition:transform .2s ease}.title-detail-watch-providers-more[data-open=true] .title-detail-watch-providers-more-toggle:after{transform:rotate(-135deg)}.title-detail-watch-providers-more-list{margin-top:.5rem}.title-detail-watch-section{margin-bottom:1.5rem}.title-detail-episodes .episodes-next-block{margin-bottom:1.25rem}.title-detail-episodes .episodes-next-heading{margin:0 0 .5rem;font-size:.95rem;font-weight:700;color:var(--text-primary)}.title-detail-episodes .episodes-episode-card--next{outline:2px solid #34a853;outline-offset:0;box-shadow:0 2px 8px #34a85333}.title-detail-episodes .episodes-episode-card--next-upcoming{outline-color:var(--text-secondary);box-shadow:0 2px 8px #64748b2e}.title-detail-episodes .episodes-container{background:var(--bg-elevated);border-radius:12px;padding:1rem;margin-top:.5rem}.title-detail-episodes .episodes-all-block{margin-bottom:1rem}.title-detail-episodes .episodes-header{display:flex;align-items:center;gap:.5rem;margin-bottom:0;padding:0 .25rem}.title-detail-episodes .episodes-never-previous-inline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .65rem;padding:.2rem .25rem 0;margin-top:.2rem;border-top:1px solid var(--border)}.title-detail-episodes .episodes-never-previous-inline-text{margin:0;flex:1 1 12rem;min-width:0;font-size:.72rem;line-height:1.35;color:var(--text-muted)}.title-detail-episodes .episodes-never-previous-inline-reset{flex-shrink:0}.title-detail-episodes .episodes-all-label{font-weight:600;font-size:1rem;color:var(--text-primary)}.title-detail-episodes .episodes-count{font-size:.9rem;color:var(--text-secondary);margin-left:auto;margin-right:.25rem}.title-detail-episodes .episodes-check,.title-card--next-strip .episodes-check{width:2rem;height:2rem;border-radius:50%;border:2px solid var(--border);background:var(--bg-elevated);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .12s ease;box-shadow:0 1px 2px #0006}.title-card--next-strip .episodes-check{margin-left:auto}.title-detail-episodes .episodes-check-placeholder{width:2rem;height:2rem;border-radius:50%;flex-shrink:0;display:inline-block;background:transparent}.title-detail-episodes .episodes-check-icon,.title-card--next-strip .episodes-check-icon{width:1.125rem;height:1.125rem;flex-shrink:0}.title-detail-episodes .episodes-check:disabled,.title-card--next-strip .episodes-check:disabled{cursor:not-allowed;opacity:.7}.title-detail-episodes .episodes-check-unwatched,.title-card--next-strip .episodes-check-unwatched{color:var(--text-secondary);border-color:var(--border);background:var(--bg-elevated)}.title-detail-episodes .episodes-check-unwatched:hover:not(:disabled),.title-card--next-strip .episodes-check-unwatched:hover:not(:disabled){border-color:var(--text-secondary);background:var(--bg-base);box-shadow:0 1px 3px #0006}.title-detail-episodes .episodes-check-unwatched:active:not(:disabled),.title-card--next-strip .episodes-check-unwatched:active:not(:disabled){background:var(--bg-base);transform:scale(.96)}.title-detail-episodes .episodes-check-watched,.title-card--next-strip .episodes-check-watched{color:#fff;background:#34a853;border-color:#34a853;box-shadow:0 2px 6px #0006}.title-detail-episodes .episodes-check-watched:hover:not(:disabled),.title-card--next-strip .episodes-check-watched:hover:not(:disabled){background:#2d9549;border-color:#2d9549;box-shadow:0 2px 8px #0006}.title-detail-episodes .episodes-check-watched:active:not(:disabled),.title-card--next-strip .episodes-check-watched:active:not(:disabled){background:#288a42;border-color:#288a42;transform:scale(.96)}.title-detail-episodes .episodes-check-watched .episodes-check-icon,.title-card--next-strip .episodes-check-watched .episodes-check-icon{color:#fff}.title-detail-episodes .episodes-seasons{display:flex;flex-direction:column;gap:.75rem}.title-detail-episodes .episodes-season-card{background:var(--bg-surface);border-radius:12px;box-shadow:0 1px 3px #0006;overflow:hidden}.title-detail-episodes .episodes-season-header{cursor:pointer;padding:0;border:none;background:none;width:100%;text-align:left}.title-detail-episodes .episodes-season-header-inner{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem}.title-detail-episodes .episodes-season-title{font-size:1rem;font-weight:700;color:var(--text-primary)}.title-detail-episodes .episodes-season-chevron-wrap{flex-shrink:0;width:2rem;height:2rem;min-width:2rem;min-height:2rem;border-radius:50%;border:2px solid var(--border);background:var(--bg-elevated);display:inline-flex;align-items:center;justify-content:center;margin-left:.125rem;transition:border-color .15s,background-color .15s,box-shadow .15s;box-shadow:0 1px 2px #0006}.title-detail-episodes .episodes-season-header:hover .episodes-season-chevron-wrap{border-color:var(--text-secondary);background:var(--bg-base)}.title-detail-episodes .episodes-season-chevron-wrap-open{background:var(--bg-base);border-color:var(--border)}.title-detail-episodes .episodes-season-header:hover .episodes-season-chevron-wrap-open{background:var(--bg-base);border-color:var(--text-secondary)}.title-detail-episodes .episodes-season-chevron{width:1.125rem;height:1.125rem;color:var(--text-secondary);flex-shrink:0;transition:transform .2s ease;transform:rotate(-90deg)}.title-detail-episodes .episodes-season-chevron-open{transform:rotate(0)}.title-detail-episodes .episodes-season-count{font-size:.9rem;font-weight:400;color:var(--text-secondary);margin-left:auto;margin-right:.5rem}.title-detail-episodes .episodes-season-progress{height:4px;background:var(--border);width:100%}.title-detail-episodes .episodes-season-progress-fill{height:100%;background:#16a34a;border-radius:0;transition:width .2s ease}.title-detail-episodes .episodes-season-list{padding:.5rem 1rem 1rem;display:flex;flex-direction:column;gap:.75rem;border-left:none}.title-detail-episodes .episodes-episode-card{display:flex;align-items:stretch;gap:1rem;background:var(--bg-elevated);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #0006;border:1px solid var(--border)}.title-detail-episodes .episodes-episode-thumb{flex-shrink:0;width:120px;min-width:120px;min-height:68px;background:var(--bg-base);display:flex;align-items:stretch}.title-detail-episodes .episodes-episode-thumb-img{width:100%;height:100%;min-height:68px;object-fit:cover;display:block;align-self:stretch}.title-detail-episodes .episodes-episode-thumb-placeholder{width:100%;min-height:68px;flex:1;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:var(--text-muted);background:var(--bg-base)}.title-detail-episodes .episodes-episode-body{flex:1;min-width:0;padding:.5rem .75rem .5rem 0;position:relative;display:flex;flex-direction:column}.title-detail-episodes .episodes-episode-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem}.title-detail-episodes .episodes-episode-id{font-size:.85rem;font-weight:700;color:var(--text-primary)}.title-detail-episodes .episodes-episode-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.title-detail-episodes .episodes-episode-meta{font-size:.8rem;color:var(--text-secondary);margin-left:auto}.title-detail-episodes .episodes-episode-desc-row{display:flex;align-items:flex-start;gap:.5rem;margin-top:.35rem;min-height:0}.title-detail-episodes .episodes-episode-overview{font-size:.85rem;color:var(--text-secondary);line-height:1.4;margin:0;flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.title-detail-episodes .episodes-episode-overview-empty{display:block;min-height:1.4em}.title-detail-episodes .episodes-check-inline{width:1.75rem;height:1.75rem;flex-shrink:0;margin-top:.1rem}.title-detail-episodes .episodes-check-inline .episodes-check-icon{width:1rem;height:1rem}.title-card--next-strip .episodes-check-inline{width:1.65rem;height:1.65rem;flex-shrink:0;margin-top:0}.title-card--next-strip .episodes-check-inline .episodes-check-icon{width:.9rem;height:.9rem}.title-detail-episodes .episodes-episode-days-until{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;text-align:right;margin-top:.1rem}.title-detail-episodes .episodes-episode-days-num{font-size:1.25rem;font-weight:700;line-height:1.2;color:var(--text-primary)}.title-detail-episodes .episodes-episode-days-label{font-size:.7rem;font-weight:400;color:var(--text-primary);letter-spacing:.02em}@media (min-width: 600px){.title-detail-episodes .episodes-episode-thumb{width:160px;min-width:160px}.title-detail-episodes .episodes-episode-thumb-img,.title-detail-episodes .episodes-episode-thumb-placeholder{min-height:90px}}[data-theme=light] .title-detail-episodes .episodes-container{background:#f1f5f9}[data-theme=light] .title-detail-episodes .episodes-season-card{box-shadow:0 1px 3px #00000014}[data-theme=light] .title-detail-episodes .episodes-episode-card{background:#fff;box-shadow:0 1px 2px #0000000f;border-color:#e2e8f0}[data-theme=light] .title-detail-episodes .episodes-never-previous-inline{border-top-color:#e2e8f0}[data-theme=light] .title-detail-episodes .episodes-check-unwatched,[data-theme=light] .title-card--next-strip .episodes-check-unwatched{background:#fff;border-color:#cbd5e1;box-shadow:0 1px 2px #0000000a}[data-theme=light] .title-detail-episodes .episodes-check-unwatched:hover:not(:disabled),[data-theme=light] .title-card--next-strip .episodes-check-unwatched:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;box-shadow:0 1px 3px #00000014}[data-theme=light] .title-detail-episodes .episodes-check-unwatched:active:not(:disabled),[data-theme=light] .title-card--next-strip .episodes-check-unwatched:active:not(:disabled){background:#f1f5f9}[data-theme=light] .title-detail-episodes .episodes-check-watched,[data-theme=light] .title-card--next-strip .episodes-check-watched{color:#fff;background:#34a853;border-color:#34a853;box-shadow:0 2px 6px #0000001f}[data-theme=light] .title-detail-episodes .episodes-check-watched .episodes-check-icon,[data-theme=light] .title-card--next-strip .episodes-check-watched .episodes-check-icon{color:#fff}[data-theme=light] .title-detail-episodes .episodes-check-watched:hover:not(:disabled),[data-theme=light] .title-card--next-strip .episodes-check-watched:hover:not(:disabled){background:#2d9549;border-color:#2d9549;box-shadow:0 2px 8px #00000024}[data-theme=light] .title-detail-episodes .episodes-check-watched:active:not(:disabled),[data-theme=light] .title-card--next-strip .episodes-check-watched:active:not(:disabled){background:#288a42;border-color:#288a42}[data-theme=light] .title-detail-episodes .episodes-season-chevron-wrap{background:#fff;border-color:#cbd5e1;box-shadow:0 1px 2px #0000000a}[data-theme=light] .title-detail-episodes .episodes-season-header:hover .episodes-season-chevron-wrap{border-color:#94a3b8;background:#f8fafc}[data-theme=light] .title-detail-episodes .episodes-season-chevron-wrap-open{background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .title-detail-episodes .episodes-season-header:hover .episodes-season-chevron-wrap-open{background:#e2e8f0;border-color:#94a3b8}[data-theme=light] .title-detail-episodes .episodes-season-progress,[data-theme=light] .title-detail-episodes .episodes-episode-thumb,[data-theme=light] .title-detail-episodes .episodes-episode-thumb-placeholder{background:#e2e8f0}[data-theme=light] .title-detail-cast-scroll::-webkit-scrollbar-track{background:#f1f5f9}[data-theme=light] .title-detail-cast-scroll::-webkit-scrollbar-thumb{background:#cbd5e1}[data-theme=light] .title-detail-cast-card{background:#fff;box-shadow:0 1px 3px #00000014;border-color:#e2e8f0}[data-theme=light] .title-detail-cast-photo,[data-theme=light] .title-detail-cast-placeholder{background:#e2e8f0}[data-theme=light] .title-detail-cast-placeholder{color:#94a3b8}[data-theme=light] .title-detail-cast-name{color:#1e293b}[data-theme=light] .title-detail-cast-role{color:#475569}[data-theme=light] .title-detail-cast-episodes{color:#94a3b8}[data-theme=light] .title-detail-cast-full-link{color:#334155}[data-theme=light] .title-detail-cast-full-link:hover{color:#1e293b}.title-detail-episodes{margin-bottom:1.5rem}.mark-previous-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172ab3;display:flex;align-items:center;justify-content:center;padding:1rem}.mark-previous-modal{width:100%;max-width:22.5rem;background:var(--bg-elevated);border-radius:14px;padding:1.25rem 1rem 0;box-shadow:0 8px 32px #0009}.mark-previous-modal-title{margin:0 0 1rem;padding:0 .25rem;font-size:1.05rem;font-weight:700;text-align:center;color:var(--text-primary);line-height:1.35}.mark-previous-modal-actions{display:flex;flex-direction:column;border-top:1px solid var(--border);margin:0 -1rem}.mark-previous-modal-btn{display:block;width:100%;padding:.85rem 1rem;border:none;border-bottom:1px solid var(--border);background:none;font-size:1.05rem;font-weight:400;color:var(--accent-text);cursor:pointer;transition:background-color .12s ease}.mark-previous-modal-btn:last-child{border-bottom:none;border-radius:0 0 14px 14px}.mark-previous-modal-btn:hover:not(:disabled){background:var(--bg-surface)}.mark-previous-modal-btn:disabled{opacity:.5;cursor:not-allowed}.mark-previous-modal-btn-never{color:#fbbf24;font-weight:500}.mark-previous-modal-btn-never:hover:not(:disabled){background:#f59e0b1f;color:#fbbf24}.co-watchers-empty{font-size:.875rem;color:var(--text-secondary);margin:0 0 12px}.co-watcher-list{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:6px}.co-watcher-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px}.user-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;overflow:hidden;vertical-align:middle;box-sizing:border-box}.user-avatar--sm{width:28px;height:28px}.user-avatar--md{width:36px;height:36px}.user-avatar--sidebar{width:22px;height:22px}.user-avatar--lg{width:72px;height:72px}.user-avatar--initial{background:var(--accent-subtle);color:var(--accent-text);font-weight:600;font-size:.75rem}.user-avatar--lg.user-avatar--initial{font-size:1.35rem}.user-avatar--md.user-avatar--initial{font-size:.82rem}.user-avatar--sidebar.user-avatar--initial{font-size:.62rem}.user-avatar img{width:100%;height:100%;object-fit:cover;display:block}.co-watcher-name{flex:1;font-size:.9rem;color:var(--text-primary)}.co-watcher-add{display:flex;flex-direction:column;gap:8px}.co-watcher-dropdown{position:relative;display:inline-block}.co-watcher-dropdown-trigger{display:flex;align-items:center;gap:6px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:.875rem;font-family:inherit;padding:7px 12px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.co-watcher-dropdown-trigger:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary);background:var(--bg-surface)}.co-watcher-dropdown-trigger:disabled{opacity:.5;cursor:not-allowed}.co-watcher-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;list-style:none;margin:0;padding:6px;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 32px #00000080;min-width:200px;overflow:hidden}.co-watcher-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:8px;color:var(--text-primary);font-size:.9rem;font-family:inherit;cursor:pointer;text-align:left;transition:background .1s}.co-watcher-dropdown-item:hover{background:var(--bg-elevated)}.ai-page{display:flex;flex-direction:column;gap:1.1rem;max-width:980px}.ai-surface-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.ai-surface-kicker{margin-bottom:.45rem}.ai-surface-title{margin:0;font-size:1.4rem;color:var(--text-primary)}.ai-surface-subtitle{margin:.35rem 0 0;max-width:62ch;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.ai-surface-actions{display:flex;align-items:center;gap:.65rem}.ai-surface-meta{font-size:.8rem;color:var(--text-secondary)}.ai-surface-action-btn{min-width:6.25rem;min-height:2rem}.ai-empty-state,.ai-chat-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px}.ai-empty-state{padding:1rem 1.05rem;color:var(--text-secondary)}.ai-empty-state h2{margin:0 0 .35rem;font-size:.98rem;color:var(--text-primary)}.ai-empty-state p{margin:0;line-height:1.55}.ai-empty-state-error{color:#fca5a5;border-color:#f871715c;background:#f8717114}.recommendation-card{display:flex;flex-direction:column;height:100%}.recommendation-card-body{display:flex;flex-direction:column;gap:.8rem;height:100%}.recommendation-card-copy{display:flex;flex-direction:column;gap:.35rem;flex:1 1 auto}.recommendation-card-name{margin-bottom:0}.recommendation-card-reason{margin:0;color:var(--text-primary);font-size:.83rem;line-height:1.45}.recommendation-card-providers{color:var(--text-secondary);font-size:.76rem;line-height:1.35}.recommendation-card-actions{display:flex;gap:.5rem;margin-top:auto}.recommendation-card-actions .recommendation-open-btn,.recommendation-card-actions .btn-outline-neutral,.recommendation-subscribe-btn{flex:1 1 0;box-sizing:border-box}.recommendation-open-btn{min-height:2rem}.recommendation-open-btn-full{flex-basis:100%}.ai-page-chat{max-width:100%}.ai-chat-panel{padding:1rem}.ai-chat-panel>h2{margin:0 0 .75rem;font-size:1rem;color:var(--text-secondary)}.ai-chat-layout{display:block}.ai-chat-main{display:flex;flex-direction:column;gap:1rem;min-width:0;max-width:900px;margin:0 auto}.ai-chat-shell{display:flex;flex-direction:column;min-height:calc(100vh - 188px);min-height:calc(100dvh - 188px);padding:0;overflow:visible;border-radius:18px}.ai-chat-thread-viewport{flex:1 1 auto;padding:1.2rem 1.2rem 1.25rem}.ai-chat-empty{display:flex;flex-direction:column;gap:1.1rem}.ai-chat-empty-copy{max-width:46rem}.ai-chat-empty-kicker{display:inline-block;margin-bottom:.55rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.ai-chat-empty h2{margin:0;font-size:1.2rem;color:var(--text-primary);letter-spacing:-.02em}.ai-chat-empty p{margin:.45rem 0 0;color:var(--text-secondary);line-height:1.6;max-width:44rem}.ai-chat-starters,.ai-chat-composer-shortcuts,.ai-chat-followups{display:flex;flex-wrap:wrap;gap:.7rem}.ai-chat-starter-btn,.ai-chat-followup-btn,.ai-chat-shortcut-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);border-radius:999px;padding:.55rem .88rem;font:inherit;font-size:.8rem;line-height:1.2;cursor:pointer;text-align:left;transition:border-color .15s,background .15s,transform .15s}.ai-chat-starter-btn:hover:not(:disabled),.ai-chat-followup-btn:hover:not(:disabled),.ai-chat-shortcut-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-subtle);transform:translateY(-1px)}.ai-chat-empty-guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.ai-chat-empty-guide{padding:.85rem .95rem;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:.8rem;line-height:1.45}.ai-chat-thread{display:flex;flex-direction:column;gap:1.35rem;min-height:14rem}.ai-chat-entry{display:flex;flex-direction:column;gap:.45rem;content-visibility:auto;contain-intrinsic-size:420px}.ai-chat-entry-user{align-items:flex-end}.ai-chat-entry-assistant{align-items:stretch}.ai-chat-entry-head{display:flex;align-items:center;gap:.55rem}.ai-chat-entry-label{font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.ai-chat-entry-pill{display:inline-flex;align-items:center;min-height:1.35rem;padding:0 .56rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:.71rem;font-weight:600}.ai-chat-bubble{max-width:min(760px,100%);padding:.82rem .94rem;border-radius:16px;font-size:.9rem;line-height:1.55;white-space:pre-wrap;border:1px solid transparent}.ai-chat-entry-user .ai-chat-bubble{max-width:min(560px,76%);border-top-right-radius:10px}.ai-chat-entry-assistant .ai-chat-bubble{border-top-left-radius:10px}.ai-chat-bubble-user{background:color-mix(in oklab,var(--accent) 12%,var(--bg-surface));border-color:color-mix(in oklab,var(--accent) 40%,var(--border));color:var(--text-primary)}.ai-chat-bubble-assistant{background:color-mix(in oklab,var(--bg-elevated) 82%,white 8%);color:var(--text-primary);border-color:var(--border)}.ai-chat-bubble-streaming:not(.ai-chat-bubble-pending):after{content:"";display:inline-block;width:.55rem;height:1.05rem;margin-left:.2rem;vertical-align:-.15rem;border-radius:999px;background:color-mix(in oklab,var(--accent) 58%,white 12%);animation:ai-chat-caret .9s steps(1,end) infinite}.ai-chat-bubble-pending{display:flex;flex-direction:column;gap:.55rem;color:var(--text-secondary)}.ai-chat-pending-line{display:inline-flex;align-items:center}.ai-chat-pending-dots{display:inline-flex;gap:.4rem}.ai-chat-pending-dots span{width:.42rem;height:.42rem;border-radius:999px;background:color-mix(in oklab,var(--accent) 55%,white 20%);animation:ai-chat-pulse 1s ease-in-out infinite}.ai-chat-pending-dots span:nth-child(2){animation-delay:.15s}.ai-chat-pending-dots span:nth-child(3){animation-delay:.3s}@keyframes ai-chat-pulse{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@keyframes ai-chat-caret{0%,45%{opacity:1}46%,to{opacity:0}}.ai-chat-recommendations{margin-top:.15rem}.ai-chat-thread-anchor{height:1px}.ai-chat-composer{position:sticky;bottom:0;display:flex;flex-direction:column;gap:.75rem;padding:.85rem 1.1rem calc(.95rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:color-mix(in oklab,var(--bg-surface) 95%,var(--bg-base));box-shadow:0 -10px 24px #0f172a0d;z-index:4}.ai-chat-composer-topline{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.ai-chat-composer-title{font-size:.8rem;font-weight:600;color:var(--text-primary)}.ai-chat-composer-meta{font-size:.74rem;color:var(--text-secondary)}.ai-chat-composer-shortcuts{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:none}.ai-chat-composer-shortcuts::-webkit-scrollbar{display:none}.ai-chat-input-wrap{border:1px solid var(--border);border-radius:18px;background:var(--bg-base);padding:.78rem .95rem;transition:border-color .15s,box-shadow .15s}.ai-chat-input-wrap:focus-within{border-color:color-mix(in oklab,var(--accent) 46%,var(--border));box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 14%,transparent)}.ai-chat-input{width:100%;min-height:24px;max-height:240px;border:none;background:transparent;color:var(--text-primary);font:inherit;font-size:.9rem;line-height:1.42;padding:0;resize:none}.ai-chat-input:focus{outline:none}.ai-chat-form-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ai-chat-form-buttons{display:flex;align-items:center;gap:.65rem}.ai-chat-stop-btn{min-height:2rem}.ai-chat-form-meta{display:flex;flex-wrap:wrap;gap:.55rem 1rem}.ai-chat-form-hint{font-size:.76rem;line-height:1.45;color:var(--text-secondary)}@media (max-width: 767px){.ai-chat-bubble{max-width:100%}.ai-page{gap:.9rem}.ai-surface-actions{width:100%;justify-content:space-between}.ai-chat-empty-guides{grid-template-columns:1fr}.ai-chat-thread-viewport{padding:.95rem .95rem 1.1rem}.ai-chat-entry-user .ai-chat-bubble{max-width:min(100%,24rem)}.ai-chat-composer-topline{align-items:flex-start;flex-direction:column;gap:.2rem}.ai-chat-form-actions{flex-direction:column;align-items:stretch}.ai-chat-form-meta{flex-direction:column;gap:.35rem}}@media (max-width: 640px){.ai-chat-shell{min-height:auto}.ai-chat-main{max-width:100%}.ai-chat-composer{padding-left:.95rem;padding-right:.95rem}}*,*:before,*:after{box-sizing:border-box}:root{--bg-base: #0f0f14;--bg-surface: #141418;--bg-elevated: #1a1a22;--border: #222228;--text-primary: #e2e8f0;--text-secondary: #6b7280;--text-muted: #3f3f50;--accent: #6366f1;--accent-subtle: rgba(99, 102, 241, .12);--accent-text: #a5b4fc;--btn-outline-danger-text: #fca5a5;--btn-outline-danger-border: rgba(248, 113, 113, .5);--btn-outline-danger-hover-bg: rgba(248, 113, 113, .12)}[data-theme=light]{--bg-base: #f4f5f7;--bg-surface: #ffffff;--bg-elevated: #eef0f3;--border: #dde1e7;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--accent: #6366f1;--accent-subtle: rgba(99, 102, 241, .08);--accent-text: #4f46e5;--btn-outline-danger-text: #9f1239;--btn-outline-danger-border: rgba(159, 18, 57, .42);--btn-outline-danger-hover-bg: rgba(159, 18, 57, .08)}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg-base);color:var(--text-primary)}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}
