.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.auth-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:32px;width:100%;max-width:450px;position:relative;max-height:90vh;overflow-y:auto}.auth-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.auth-modal-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.auth-modal h2{margin:0 0 12px;font-size:28px;color:var(--text-primary);text-align:center}.auth-subtitle{text-align:center;color:var(--text-secondary);font-size:15px;margin:0 0 28px;line-height:1.5}.auth-oauth-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.auth-oauth-button{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-primary);font-size:16px;font-weight:500;cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.auth-oauth-button svg{font-size:20px}.auth-oauth-button.google{color:#4285f4;border-color:#4285f4}.auth-oauth-button.google:hover{background:#4285f4;color:#fff}.auth-oauth-button.twitch{color:#9146ff;border-color:#9146ff}.auth-oauth-button.twitch:hover{background:#9146ff;color:#fff}.auth-note{text-align:center;color:var(--text-secondary);font-size:14px;margin-top:20px;line-height:1.4}.auth-modal.oauth-only{max-width:420px;padding:40px 32px}.auth-modal.oauth-only .auth-oauth-buttons{margin-bottom:0}.auth-divider{display:flex;align-items:center;text-align:center;margin:24px 0;color:var(--text-secondary)}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--border)}.auth-divider span{padding:0 16px;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-error{--danger: #ef4444;background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);padding:12px;border-radius:var(--radius-sm);font-size:14px;text-align:center}.auth-form-group{display:flex;flex-direction:column;gap:6px}.auth-form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.auth-form-group input{padding:12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:16px;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.auth-form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #ff6b6b3d;box-shadow:0 0 0 3px var(--accent-soft)}.auth-submit-button{padding:14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);margin-top:8px}.auth-submit-button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #ff6b6b52;box-shadow:0 4px 16px var(--accent-glow)}.auth-submit-button:disabled{opacity:.6;cursor:not-allowed}.auth-toggle{text-align:center;margin-top:24px;font-size:14px;color:var(--text-secondary)}.auth-toggle-button{background:none;border:none;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:14px}.auth-toggle-button:hover{color:var(--accent-hover)}.theme-controls{position:relative}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;gap:.25rem;width:40px;height:40px;border:1px solid transparent;background-color:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);font-size:1.2rem}.theme-toggle-btn:hover{background-color:var(--accent-soft);color:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.theme-icon{font-size:1.1rem}.theme-picker-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem;display:flex;gap:.75rem;box-shadow:var(--shadow-lg);z-index:1000;animation:slideDown var(--dur-med) var(--ease-out)}.picker-section{flex:1;min-width:180px}.picker-divider{width:1px;background:var(--border);align-self:stretch}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.picker-header{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.5rem;padding:0 .5rem}.mode-options,.color-options,.background-options{display:flex;flex-direction:column;gap:.25rem}.mode-option,.color-option,.background-option{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border:none;background-color:transparent;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);font-size:.9rem;width:100%;text-align:left}.mode-option:hover,.color-option:hover,.background-option:hover{background-color:var(--accent-soft)}.mode-option.active,.color-option.active,.background-option.active{background-color:var(--accent-soft);font-weight:600}.mode-icon{font-size:1.2rem;width:24px;text-align:center}.mode-name{flex:1}.color-preview{width:20px;height:20px;border-radius:50%;flex-shrink:0;border:2px solid var(--border)}.color-name,.background-name{flex:1}.checkmark{color:var(--accent);font-weight:700}@media (max-width: 768px){.theme-toggle-btn{width:36px;height:36px;font-size:1rem}.theme-picker-dropdown{right:-10px;flex-direction:column}.picker-section{min-width:180px}.picker-divider{width:100%;height:1px;align-self:auto}}.search-omnibox{position:relative;display:flex;align-items:center;flex-shrink:0}.search-toggle-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);font-size:1.2rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.search-omnibox.open .search-toggle-button{visibility:hidden}.search-toggle-button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.search-mobile-backdrop{display:none}.search-input-wrapper{position:absolute;top:0;right:0;display:flex;align-items:center;gap:.5rem;width:300px;height:40px;padding:0 .85rem;background:var(--bg-tertiary);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--accent);border-radius:var(--radius-pill);box-shadow:0 0 0 3px var(--accent-soft);animation:search-expand .18s ease-out;z-index:210}@keyframes search-expand{0%{width:40px;opacity:.4}to{width:300px;opacity:1}}.search-input-icon{color:var(--text-secondary);font-size:1.05rem;flex-shrink:0}.search-omnibox-input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.9rem;font-family:inherit}.search-omnibox-input::placeholder{color:var(--text-secondary)}.search-spinner{width:14px;height:14px;flex-shrink:0;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:search-spin .7s linear infinite}@keyframes search-spin{to{transform:rotate(360deg)}}.search-close-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;background:none;border:none;color:var(--text-secondary);font-size:1.15rem;cursor:pointer;padding:.15rem;border-radius:50%;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.search-close-button:hover{color:var(--accent);background:var(--accent-soft)}.search-results-panel{position:absolute;top:48px;right:0;width:340px;max-width:90vw;max-height:420px;overflow-y:auto;background:var(--bg-secondary);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;padding:.5rem 0}.search-group+.search-group{border-top:1px solid var(--border);margin-top:.35rem;padding-top:.35rem}.search-group-heading{padding:.4rem 1rem .3rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.search-result-row{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem 1rem;background:none;border:none;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.search-result-row:hover,.search-result-row.highlighted{background:var(--accent-soft)}.search-result-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--bg-tertiary)}.search-result-thumb{width:64px;height:36px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;background:var(--bg-tertiary)}.search-result-info{min-width:0;display:flex;flex-direction:column;gap:.15rem}.search-result-title{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-sub{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-empty{padding:1.25rem 1rem;text-align:center;color:var(--text-secondary);font-size:.85rem}@media (max-width: 768px){.search-toggle-button{width:34px;height:34px;font-size:1.05rem}.search-omnibox.open .search-mobile-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:199}.search-input-wrapper{position:fixed;top:0;left:0;right:0;width:auto;height:56px;border-radius:0;border-width:0 0 1px 0;box-shadow:none;padding:0 1rem;animation:none;z-index:210}.search-results-panel{position:fixed;top:56px;left:0;right:0;width:auto;max-width:none;max-height:calc(100vh - 56px);border-radius:0;border-width:0}}.header{--danger: #ef4444;--danger-soft: color-mix(in srgb, var(--danger) 14%, transparent);background:var(--chrome-bg);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border-bottom:1px solid var(--border);padding:1rem 2rem;position:sticky;top:0;z-index:100}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{text-decoration:none;color:var(--text-primary);transition:transform var(--dur-fast) var(--ease-out)}.logo:hover{transform:translateY(-1px)}.logo-content{display:flex;align-items:center;gap:.75rem}.logo-icon{width:32px;height:32px;color:var(--accent)}.logo-icon svg{width:100%;height:100%}.logo h1{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.logo-highlight{color:var(--accent);font-weight:800}.header-right{display:flex;align-items:center;gap:1.5rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap;padding-bottom:2px;border-bottom:2px solid transparent;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.nav-link:hover{color:var(--accent)}.nav-live-dot{display:inline-block;width:7px;height:7px;margin-left:.4rem;border-radius:50%;background:#ef4444;vertical-align:middle;animation:live-pulse 1.6s ease-in-out infinite}.header-stats{display:flex;align-items:center;gap:1rem}.watched-count{background:var(--accent-soft);color:var(--accent);padding:.5rem 1rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.header-auth{display:flex;align-items:center;gap:.75rem}.user-name{color:var(--text-secondary);font-size:.9rem;margin-right:.5rem}.auth-btn{padding:.5rem 1.25rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;text-decoration:none;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);cursor:pointer;border:none;font-family:inherit}.login-btn{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.login-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.register-btn{background:var(--primary-color);color:#fff}.register-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px #00000040;box-shadow:0 4px 16px var(--accent-glow)}.logout-btn{background:transparent;color:var(--danger);border:1px solid transparent}.logout-btn:hover{background:transparent;border-color:var(--danger)}.login-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.login-button:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #00000040;box-shadow:0 4px 16px var(--accent-glow)}.login-button svg{font-size:1.25rem}.surprise-me-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);font-size:1.2rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.surprise-me-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px) rotate(-8deg)}.surprise-me-button:disabled{opacity:.5;cursor:default}.user-menu-container{position:relative}.user-menu-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.user-menu-button:hover{background:var(--bg-secondary);border-color:var(--accent)}.user-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.user-icon{font-size:28px;color:var(--text-secondary)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);min-width:220px;box-shadow:var(--shadow-lg);overflow:hidden;z-index:1000}.user-menu-header{padding:1rem;border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.user-menu-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem;overflow-wrap:anywhere}.user-menu-email{font-size:.875rem;color:var(--text-secondary);overflow-wrap:anywhere}.user-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);text-align:left}.user-menu-item:hover{background:var(--accent-soft);color:var(--text-primary)}.user-menu-item svg{font-size:1.25rem;color:var(--text-secondary);transition:color var(--dur-fast) var(--ease-out)}.user-menu-item:hover svg{color:var(--accent)}.user-menu-item-danger:hover{background:var(--danger-soft);color:var(--danger)}.user-menu-item-danger:hover svg{color:var(--danger)}@media (max-width: 768px){.header{padding:.75rem 1rem}.header-content{gap:.5rem}.logo h1{font-size:1.1rem}.logo-icon{width:28px;height:28px}.header-right{gap:.5rem;flex-shrink:0}.header-stats{gap:.5rem}.nav-link{font-size:.8rem}.watched-count{font-size:.7rem;padding:.35rem .65rem;white-space:nowrap}.user-name{display:none}.auth-btn,.login-button{padding:.35rem .65rem;font-size:.75rem;gap:.25rem}.user-menu-button{padding:.35rem .65rem}.user-avatar{width:24px;height:24px}.user-icon{font-size:24px}.login-button svg{font-size:1rem}.surprise-me-button{width:34px;height:34px;font-size:1.05rem}}@media (max-width: 480px){.header{padding:.5rem .75rem}.logo h1{font-size:1rem}.logo-icon{width:24px;height:24px}.header-right{gap:.35rem}.nav-link{font-size:.7rem}.watched-count,.login-button span{display:none}.auth-btn,.login-button{padding:.4rem;min-width:36px}.surprise-me-button{width:30px;height:30px;font-size:.95rem}}.site-footer{background-color:var(--bg-secondary);border-top:1px solid var(--border);margin-top:4rem;padding:3rem 1.5rem 2.5rem}.footer-content{max-width:1200px;margin:0 auto;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-bottom:1.75rem}.footer-link{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color var(--dur-fast) var(--ease-out);white-space:nowrap}.footer-link:hover{color:var(--accent)}.footer-brand{font-weight:700;color:var(--text-primary);transition:color var(--dur-fast) var(--ease-out)}.footer-brand:hover{color:var(--accent)}.footer-separator{color:var(--border);-webkit-user-select:none;user-select:none}.footer-copyright{color:var(--text-secondary);font-size:.875rem}.footer-copyright p{margin:.25rem 0}.footer-note{font-style:italic;opacity:.7}@media (max-width: 768px){.site-footer{margin-top:3rem;padding:2rem 1rem 1.75rem}.footer-links{flex-direction:column;gap:.5rem}.footer-separator{display:none}.footer-link{font-size:.9rem}.footer-copyright{font-size:.8rem}}@media (max-width: 480px){.footer-links{gap:.75rem}.footer-link{font-size:.85rem}}.error-boundary{display:flex;align-items:center;justify-content:center;padding:4rem 1.5rem;min-height:50vh}.error-boundary-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);padding:2.5rem 2rem;max-width:420px;width:100%;text-align:center;box-shadow:var(--shadow-lg)}.error-boundary-title{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.error-boundary-text{margin:0 0 1.5rem;color:var(--text-secondary);font-size:1rem;line-height:1.6}.error-boundary-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-boundary-btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;border:1px solid transparent;transition:all var(--dur-fast) var(--ease-out);text-decoration:none;display:inline-block}.error-boundary-btn-primary{background:var(--accent);color:#fff}.error-boundary-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-glow)}.error-boundary-btn-ghost{background:transparent;color:var(--text-secondary);border-color:var(--border)}.error-boundary-btn-ghost:hover{color:var(--text-primary);border-color:var(--accent);background:var(--accent-soft)}@media (max-width: 768px){.error-boundary-card{padding:2rem 1.5rem}.error-boundary-actions{flex-direction:column}.error-boundary-btn{width:100%}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000a6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);max-width:500px;width:90%;box-shadow:var(--shadow-lg);animation:slideUp var(--dur-med) var(--ease-out)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text-primary);font-weight:700;letter-spacing:-.02em}.modal-body{padding:1.5rem}.modal-body p{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.6}.modal-footer{padding:1rem 1.5rem 1.5rem;display:flex;gap:1rem;justify-content:flex-end}.modal-btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border:1px solid transparent}.modal-btn-cancel{background:transparent;color:var(--text-secondary);border-color:var(--border)}.modal-btn-cancel:hover{color:var(--text-primary);border-color:var(--accent);background:var(--accent-soft)}.modal-btn-confirm{background:var(--accent);color:#fff;border-color:transparent}.modal-btn-confirm:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #ff6b6b52;box-shadow:0 4px 16px var(--accent-glow)}.modal-container.error{--danger: #ef4444}.modal-container.error .modal-header h3{color:var(--danger)}.modal-container.error .modal-btn-confirm{background:var(--danger);color:#fff}.modal-container.error .modal-btn-confirm:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 16px #ef444452;box-shadow:0 4px 16px color-mix(in srgb,var(--danger) 32%,transparent)}.modal-container.success .modal-header h3{color:var(--success)}.modal-container.success .modal-btn-confirm{background:var(--success);color:#fff}.modal-container.success .modal-btn-confirm:hover{background:#388e3c;transform:translateY(-1px);box-shadow:0 4px 16px #4caf5052;box-shadow:0 4px 16px color-mix(in srgb,var(--success) 32%,transparent)}@media (max-width: 768px){.modal-container{width:95%;max-width:none}.modal-header{padding:1.25rem 1.25rem .75rem}.modal-header h3{font-size:1.1rem}.modal-body{padding:1.25rem}.modal-body p{font-size:.95rem}.modal-footer{padding:.75rem 1.25rem 1.25rem;flex-direction:column-reverse}.modal-btn{width:100%;padding:.65rem 1rem}}.hermit-card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);text-align:center;padding:1.5rem;box-shadow:var(--shadow-sm)}.hermit-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.hermit-image-container{width:128px;height:128px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;background-color:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;position:relative;border:2px solid var(--border);transition:border-color var(--dur-med) var(--ease-out)}.hermit-card:hover .hermit-image-container{border-color:var(--accent)}.hermit-image{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease-out)}.hermit-card:hover .hermit-image{transform:scale(1.05)}.hermit-info{display:flex;flex-direction:column;gap:.5rem;align-items:center}.hermit-name{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0;overflow-wrap:anywhere;max-width:100%}.hermit-subs{font-size:.8rem;color:var(--text-secondary);margin-top:-.25rem}.episode-count-badge{background-color:var(--accent);color:#fff;padding:.3rem .8rem;border-radius:var(--radius-pill);font-size:.85rem;font-weight:600}.hermit-live-pill{--twitch-red: #ef4444;position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:.3rem;background:var(--twitch-red);color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.04em;padding:.25rem .55rem;border-radius:var(--radius-pill);z-index:10}.hermit-live-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:hermit-live-pulse 1.6s ease-in-out infinite}@keyframes hermit-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.follow-button{--danger: #ef4444;position:absolute;top:8px;right:8px;width:36px;height:36px;border:none;border-radius:50%;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);z-index:10;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:0}.follow-button svg{width:1.2em;height:1.2em;display:block}.follow-button:hover{background:#000c;color:var(--accent);transform:scale(1.1);box-shadow:0 0 0 2px #ffffff26;box-shadow:0 0 0 2px var(--accent-soft)}.follow-button.following{background:#ef4444e6;background:color-mix(in srgb,var(--danger) 90%,transparent);color:#fff}.follow-button.following:hover{background:#dc2626;background:color-mix(in srgb,var(--danger) 85%,black)}@media (max-width: 768px){.hermit-card{padding:.75rem .5rem}.hermit-image-container{width:70px;height:70px;margin-bottom:.5rem}.hermit-name{font-size:.8rem;line-height:1.2}.hermit-subs{font-size:.7rem}.episode-count-badge{font-size:.7rem;padding:.25rem .6rem}.hermit-live-pill{font-size:.55rem;padding:.2rem .45rem;top:4px;left:4px}.follow-button{width:30px;height:30px;font-size:1.1rem;top:4px;right:4px}.follow-button svg{width:1.1em;height:1.1em}}.season-card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 1rem;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);text-align:center;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.season-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at top right,var(--accent-soft) 0%,transparent 70%);opacity:0;transition:opacity var(--dur-med) var(--ease-out)}.season-card:hover:before{opacity:1}.season-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.season-number-display{display:flex;flex-direction:column;align-items:center;margin-bottom:.5rem}.season-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem}.season-number{font-size:3rem;font-weight:700;background:linear-gradient(135deg,var(--accent),var(--text-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;position:relative;z-index:1}.season-info{display:flex;flex-direction:column;gap:.5rem;align-items:center;width:100%;position:relative;z-index:1}.season-episode-count{display:flex;flex-direction:column;align-items:center}.count-number{font-size:1.5rem;font-weight:700;color:var(--accent)}.count-label{font-size:.875rem;color:var(--text-secondary)}.season-status{padding:.3rem .8rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.season-status.ongoing{background-color:var(--success);color:#fff}.season-status.complete{background-color:var(--bg-tertiary);color:var(--text-secondary)}@media (max-width: 768px){.season-card{padding:1rem .5rem;min-height:110px}.season-label{font-size:.7rem;margin-bottom:.125rem}.season-number{font-size:2rem}.count-number{font-size:1.1rem}.count-label{font-size:.75rem}.season-status{font-size:.65rem;padding:.25rem .5rem}}.episode-card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.episode-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.episode-card.watched{opacity:.7}.episode-thumbnail{position:relative;width:100%;padding-top:56.25%;background-color:var(--bg-tertiary);overflow:hidden}.episode-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease-out)}.episode-card:hover .episode-thumbnail img{transform:scale(1.05)}.episode-card.watched .episode-thumbnail img{filter:saturate(.6)}.episode-thumbnail:after{content:"▶";position:absolute;top:50%;left:50%;width:52px;height:52px;transform:translate(-50%,-50%) scale(.85);border-radius:50%;background:#0009;border:2px solid rgba(255,255,255,.8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;padding-left:3px;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);z-index:1}.episode-card:hover .episode-thumbnail:after{opacity:.9;transform:translate(-50%,-50%) scale(1)}.episode-progress-track{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#ffffff40;pointer-events:none;z-index:1}.episode-progress-fill{height:100%;background:var(--accent);pointer-events:none}.watched-overlay{position:absolute;top:10px;right:10px;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--success);padding:.3rem .7rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;z-index:2}.duration-badge{position:absolute;bottom:8px;left:8px;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:.25rem .6rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;line-height:1;z-index:2}.episode-info{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.4rem}.episode-title{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.35;letter-spacing:-.01em;min-height:2.7rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.watch-toggle{position:absolute;bottom:8px;right:8px;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:2px solid rgba(255,255,255,.3);color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.3rem;display:flex;align-items:center;justify-content:center;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);z-index:2;box-shadow:0 2px 8px #0000004d}.watch-toggle svg{width:22px;height:22px}.watch-toggle:hover{background:#000000e6;border-color:var(--accent);color:var(--accent);transform:scale(1.1);box-shadow:0 4px 12px #00000080}.watch-toggle.watched{background:var(--success);border-color:#ffffff80;color:#fff;box-shadow:0 3px 8px #0000004d;box-shadow:0 3px 8px color-mix(in srgb,var(--success) 35%,transparent)}.watch-toggle.watched:hover{background:var(--success);transform:scale(1.1);box-shadow:0 4px 12px #00000059;box-shadow:0 4px 12px color-mix(in srgb,var(--success) 45%,transparent)}.hermit-name{color:var(--accent);font-weight:600;font-size:.875rem;overflow-wrap:anywhere}.hermit-link{text-decoration:none;transition:color var(--dur-fast) var(--ease-out);cursor:pointer}.hermit-link:hover{text-decoration:underline;color:var(--accent-hover)}.episode-meta{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.875rem;overflow:visible}.season-badge,.episode-number{background-color:var(--bg-tertiary);padding:.25rem .5rem;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.7rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;line-height:1;white-space:nowrap;flex-shrink:0}.season-link{text-decoration:none;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);cursor:pointer}.season-link:hover{background-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px #0003}.episode-published{color:var(--text-secondary);font-size:.75rem}@media (max-width: 768px){.episode-card{border-radius:var(--radius-sm)}.episode-info{padding:.75rem}.episode-title{font-size:.875rem;line-height:1.3;min-height:2.275rem}.episode-meta{font-size:.75rem}.episode-published{font-size:.7rem}.watch-toggle{width:36px;height:36px;font-size:1.2rem;bottom:6px;right:6px}.watch-toggle svg{width:20px;height:20px}.watched-overlay{font-size:.7rem;padding:.25rem .5rem}.duration-badge{font-size:.7rem;padding:.2rem .4rem;bottom:6px;left:6px}.episode-thumbnail:after{width:44px;height:44px;font-size:.95rem}}.episode-rail-section{margin:2.5rem 0}.episode-rail-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.episode-rail-heading h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.25rem}.episode-rail-heading p{color:var(--text-secondary);font-size:.9rem}.episode-rail-arrows{display:flex;gap:.5rem;flex-shrink:0}.episode-rail-arrow{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.episode-rail-arrow:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.episode-rail-arrow:disabled{opacity:.35;cursor:default}.episode-rail-container{position:relative;margin:0 -1rem;padding:0 1rem}@media (min-width: 769px){.episode-rail-container:before,.episode-rail-container:after{content:"";position:absolute;top:0;bottom:0;width:80px;pointer-events:none;z-index:2;opacity:0;transition:opacity var(--dur-med) var(--ease-out)}.episode-rail-container.can-scroll-left:before{left:0;background:linear-gradient(to right,var(--bg-primary),transparent);opacity:1}.episode-rail-container.can-scroll-right:after{right:0;background:linear-gradient(to left,var(--bg-primary),transparent);opacity:1}}.episode-rail-track{display:flex;gap:1rem;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border) transparent;padding:16px 8px;margin:-8px -8px 0}.episode-rail-track::-webkit-scrollbar{height:8px}.episode-rail-track::-webkit-scrollbar-track{background:transparent}.episode-rail-track::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.episode-rail-track::-webkit-scrollbar-thumb:hover{background:var(--accent)}.episode-rail-track .episode-card{flex:0 0 280px;scroll-snap-align:start}@media (max-width: 768px){.episode-rail-track .episode-card{flex:0 0 260px}}.premiere-card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.premiere-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.premiere-thumbnail{position:relative;width:100%;padding-top:56.25%;background-color:var(--bg-tertiary);overflow:hidden}.premiere-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease-out)}.premiere-card:hover .premiere-thumbnail img{transform:scale(1.05)}.premiere-countdown{position:absolute;bottom:8px;left:8px;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:.3rem .7rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;line-height:1;white-space:nowrap;z-index:2}.premiere-countdown.live{color:var(--success)}.premiere-info{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.4rem}.premiere-hermit{color:var(--accent);font-weight:600;font-size:.875rem}.premiere-title{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.35;letter-spacing:-.01em;min-height:2.7rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 768px){.premiere-info{padding:.75rem}.premiere-title{font-size:.875rem;line-height:1.3;min-height:2.275rem}.premiere-hermit{font-size:.8rem}.premiere-countdown{font-size:.7rem;padding:.25rem .6rem;bottom:6px;left:6px}}.reddit-card{display:flex;align-items:center;gap:.75rem;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem;min-height:96px;box-sizing:border-box;text-decoration:none;color:inherit;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);box-shadow:var(--shadow-sm)}.reddit-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.reddit-thumbnail{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-sm);overflow:hidden;background-color:var(--bg-tertiary)}.reddit-thumbnail img{width:100%;height:100%;object-fit:cover}.reddit-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.reddit-title{font-size:.9rem;font-weight:600;color:var(--text-primary);line-height:1.3;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.reddit-meta{font-size:.75rem;color:var(--text-secondary);overflow-wrap:anywhere}.reddit-flair{align-self:flex-start;background-color:var(--accent-soft);color:var(--accent);font-size:.65rem;font-weight:600;padding:.15rem .5rem;border-radius:var(--radius-pill);white-space:nowrap}@media (max-width: 768px){.reddit-card{padding:.6rem;min-height:88px}.reddit-thumbnail{width:36px;height:36px}.reddit-title{font-size:.8rem}.reddit-meta{font-size:.7rem}}.search-bar{position:relative;width:100%;max-width:500px}.search-input{width:100%;padding:.75rem 3rem .75rem 1rem;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);font-size:1rem;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-input::placeholder{color:var(--text-secondary)}.search-icon{position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);font-size:1.1rem;color:var(--text-secondary);opacity:.6;pointer-events:none}@media (max-width: 768px){.search-bar{max-width:100%}}.hermit-filters{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;width:100%}.hermit-filters .search-bar{flex:1;max-width:none}.sort-dropdown-container{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.sort-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.sort-dropdown{padding:.75rem 1rem;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);font-size:1rem;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);min-width:150px}.sort-dropdown:hover{border-color:var(--accent)}.sort-dropdown:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}@media (max-width: 768px){.hermit-filters{flex-direction:column;align-items:stretch}.hermit-filters .search-bar{width:100%}.sort-dropdown-container{width:100%;justify-content:space-between}.sort-dropdown{flex:1;min-width:0}}.home{padding:2rem 0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;color:var(--text-secondary)}.hero{position:relative;margin-bottom:2.5rem;min-height:380px;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border);box-shadow:var(--shadow-lg);isolation:isolate}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-backdrop{display:block;width:100%;height:100%;object-fit:cover}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--scrim-left),var(--scrim-bottom)}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;height:100%;min-height:380px;max-width:640px;padding:2.5rem;gap:.9rem;animation:hero-rise .5s var(--ease-out) backwards}@keyframes hero-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-eyebrow{display:inline-flex;align-items:center;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .85rem;border-radius:var(--radius-pill)}.hero-title{margin:0;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;color:#fff;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 600px){.hero-title{-webkit-line-clamp:4;font-size:1.35rem}}.hero-meta{display:flex;flex-wrap:wrap;gap:.5rem}.hero-pill{background:#000000bf;color:#fff;font-size:.75rem;font-weight:600;padding:.3rem .75rem;border-radius:var(--radius-pill);white-space:nowrap}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.4rem}.hero-btn-primary,.hero-btn-secondary{display:inline-flex;align-items:center;gap:.4rem;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;padding:.75rem 1.5rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.hero-btn-primary{background:var(--accent);color:#fff;border:none}.hero-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);box-shadow:0 4px 16px var(--accent-glow)}.hero-btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.35)}.hero-btn-secondary:hover{background:#fff3;border-color:#fff9;transform:translateY(-1px)}.hero-skeleton{width:100%;height:380px;border-radius:var(--radius-xl)}.section-title-link{background:none;border:none;padding:0;font:inherit;color:inherit;letter-spacing:inherit;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.section-title-link:hover{color:var(--accent)}.section-title-link span{opacity:.5;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out);display:inline-block}.section-title-link:hover span{opacity:1;transform:translate(3px)}.selection-section{margin-bottom:3rem}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.section-heading h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.25rem}.section-heading p{color:var(--text-secondary);font-size:.9rem}.section-header-arrows{display:flex;gap:.5rem;flex-shrink:0}.season-carousel{display:flex;gap:1rem;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border) transparent;padding:16px 8px;margin:-8px -8px 0}.season-carousel::-webkit-scrollbar{height:8px}.season-carousel::-webkit-scrollbar-track{background:transparent}.season-carousel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.season-carousel::-webkit-scrollbar-thumb:hover{background:var(--accent)}.season-carousel .season-card,.season-carousel .season-card-skeleton{flex:0 0 150px;scroll-snap-align:start}.season-carousel .season-card-skeleton{min-height:150px}.hermit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem}.carousel-container{position:relative;margin:0 -1rem;padding:0 1rem}@media (min-width: 769px){.carousel-container:before,.carousel-container:after{content:"";position:absolute;top:0;bottom:0;width:80px;pointer-events:none;z-index:2;opacity:0;transition:opacity var(--dur-med) var(--ease-out)}.carousel-container.can-scroll-left:before{left:0;background:linear-gradient(to right,var(--bg-primary),transparent);opacity:1}.carousel-container.can-scroll-right:after{right:0;background:linear-gradient(to left,var(--bg-primary),transparent);opacity:1}}.carousel-arrow{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.carousel-arrow:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.carousel-arrow:disabled{opacity:.35;cursor:default}.episode-carousel{display:flex;gap:1rem;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border) transparent;padding:16px 8px;margin:-8px -8px 0}.episode-carousel::-webkit-scrollbar{height:8px}.episode-carousel::-webkit-scrollbar-track{background:transparent}.episode-carousel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.episode-carousel::-webkit-scrollbar-thumb:hover{background:var(--accent)}.episode-carousel .episode-card,.episode-carousel .episode-card-skeleton{flex:0 0 280px;scroll-snap-align:start}.episode-carousel .episode-card-skeleton{height:300px}.episode-carousel .premiere-card{flex:0 0 280px;scroll-snap-align:start}.episode-carousel .reddit-card,.episode-carousel .live-stream-card{flex:0 0 320px;scroll-snap-align:start}.live-stream-card{--twitch-red: #ef4444;display:flex;flex-direction:column;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:inherit;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.live-stream-card:hover{transform:translateY(-4px);border-color:var(--twitch-red);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px color-mix(in srgb,var(--twitch-red) 25%,transparent),0 12px 40px color-mix(in srgb,var(--twitch-red) 25%,transparent)}.live-stream-thumbnail{position:relative;width:100%;padding-top:56.25%;background-color:var(--bg-tertiary);overflow:hidden}.live-stream-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease-out)}.live-stream-card:hover .live-stream-thumbnail img{transform:scale(1.05)}.live-pill{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:.35rem;background:var(--twitch-red);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.3rem .65rem;border-radius:var(--radius-pill);z-index:2}.live-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.live-viewers{position:absolute;bottom:8px;left:8px;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:.25rem .6rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;line-height:1;z-index:2}.live-stream-info{padding:1rem;flex:1;display:flex;flex-direction:column;gap:.3rem}.live-stream-hermit{color:var(--twitch-red);font-weight:700;font-size:.95rem;margin:0}.live-stream-title{font-size:.875rem;color:var(--text-secondary);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 600px){.hermit-grid{grid-template-columns:repeat(3,1fr)!important;gap:.75rem}.episode-carousel .episode-card,.episode-carousel .episode-card-skeleton,.episode-carousel .premiere-card{flex:0 0 260px}.episode-carousel .reddit-card{flex:0 0 280px}.episode-carousel .live-stream-card{flex:0 0 260px}.live-stream-info{padding:.75rem}.live-stream-hermit{font-size:.85rem}.live-stream-title{font-size:.8rem}.season-carousel .season-card,.season-carousel .season-card-skeleton{flex:0 0 130px}}@media (max-width: 768px){.section-header-arrows{display:none}.hero{min-height:300px;margin-bottom:2rem}.hero-content{min-height:300px;max-width:100%;padding:1.25rem;gap:.6rem}.hero-eyebrow{font-size:.65rem;padding:.3rem .7rem}.hero-pill{font-size:.7rem;padding:.25rem .6rem}.hero-btn-primary,.hero-btn-secondary{padding:.6rem 1.1rem;font-size:.85rem}.hero-skeleton{height:300px}.section-heading h2{font-size:1.15rem}.section-heading p{font-size:.8rem}}.loading-progress{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:2rem;margin:2rem 0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.progress-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.progress-count{font-size:1rem;color:var(--text-secondary);font-weight:500}.progress-bar-container{width:100%;height:30px;background-color:var(--bg-tertiary);border-radius:var(--radius-pill);overflow:hidden;position:relative}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);transition:width 1s var(--ease-out);display:flex;align-items:center;justify-content:center;min-width:50px}.progress-percentage{color:#fff;font-weight:600;font-size:.875rem;text-shadow:0 1px 2px rgba(0,0,0,.5)}@media (max-width: 768px){.loading-progress{padding:1.5rem}.progress-header{flex-direction:column;align-items:flex-start;gap:.5rem}.progress-header h3{font-size:1rem}}.episode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-top:2rem}.no-episodes{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1.2rem}@media (max-width: 768px){.episode-grid{grid-template-columns:1fr;gap:1rem}}@media (min-width: 769px) and (max-width: 1024px){.episode-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.season-view{padding:1rem 0}.page-header{margin-bottom:2rem}.back-button{background-color:var(--bg-tertiary);border:2px solid var(--border);color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;margin-bottom:1rem;padding:.75rem 1.5rem;border-radius:8px;transition:all .2s}.back-button:hover{border-color:var(--accent);background-color:var(--bg-secondary);transform:translateY(-1px)}.page-header h1{font-size:2rem;margin-bottom:.5rem;display:flex;align-items:center;gap:1rem}.season-logo-inline{height:2.5rem;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));vertical-align:middle}.episode-count{color:var(--text-secondary);font-size:1rem}.season-description{background-color:var(--bg-secondary);border-left:4px solid var(--accent);padding:1.5rem;margin:2rem 0;border-radius:var(--radius-sm);line-height:1.8}.season-description p{color:var(--text-primary);font-size:1.05rem;margin:0 0 1rem}.season-description p:last-child{margin-bottom:0}.season-description a{color:var(--accent);text-decoration:none;transition:color .2s,text-decoration .2s}.season-description a:hover{text-decoration:underline;color:var(--accent-hover, var(--accent))}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:flex-end}.hermit-filter{display:flex;flex-direction:column;gap:.5rem}.hermit-filter label{font-size:.875rem;color:var(--text-secondary)}.hermit-select{padding:.75rem 1.25rem;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);min-width:200px}.hermit-select:hover{border-color:var(--accent)}.hermit-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #ff6b6b26;box-shadow:0 0 0 3px var(--accent-soft)}.hermit-select option{background-color:var(--bg-secondary);color:var(--text-primary)}.results-info{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem}.hermit-selection-info{text-align:center;margin:2rem 0 1.5rem}.hermit-selection-info p{color:var(--text-secondary);font-size:1.1rem}.hermit-section{margin-bottom:3rem}.section-title{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.hermit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem;margin-top:2rem}.hermit-count{color:var(--text-secondary);font-size:1rem}@media (max-width: 768px){.filters{flex-direction:column;align-items:stretch}.hermit-select,.mark-all-button{min-width:100%}.page-header h1{font-size:1.5rem}.hermit-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}}.hermit-view{padding:1rem 0}.season-selection-info{text-align:center;margin:2rem 0 1.5rem}.season-selection-info p{color:var(--text-secondary);font-size:1.1rem}.season-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:2rem}.season-count{color:var(--text-secondary);font-size:1rem}.hermit-profile{display:flex;align-items:flex-start;gap:1.5rem;margin:2rem 0}.hermit-profile-avatar{width:96px;height:96px;flex-shrink:0;border-radius:50%;object-fit:cover;background-color:var(--bg-tertiary);border:2px solid var(--border)}.hermit-profile-info{flex:1;min-width:0}.hermit-profile-name{font-size:2rem;font-weight:800;line-height:1.2;color:var(--text-primary);margin:0 0 .75rem}.hermit-profile-pills{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.hermit-status-pill,.hermit-subscriber-pill{display:inline-flex;align-items:center;padding:.3rem .85rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;white-space:nowrap}.hermit-live-pill-link{--twitch-red: #ef4444;display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .85rem;border-radius:var(--radius-pill);background-color:var(--twitch-red);color:#fff;font-size:.75rem;font-weight:700;text-decoration:none;white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.hermit-live-pill-link:hover{transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--twitch-red) 35%,transparent)}.hermit-live-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:hermit-view-live-pulse 1.6s ease-in-out infinite}@keyframes hermit-view-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.hermit-status-pill.active{color:var(--success);background-color:color-mix(in srgb,var(--success) 16%,transparent)}.hermit-status-pill.former,.hermit-subscriber-pill{color:var(--text-secondary);background-color:var(--bg-tertiary)}.hermit-next-upload-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .85rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;white-space:nowrap}.hermit-next-upload-pill.expected{color:var(--success);background-color:color-mix(in srgb,var(--success) 16%,transparent)}.hermit-next-upload-pill.due{color:var(--accent);background-color:var(--accent-soft)}.hermit-next-upload-pill.muted{color:var(--text-secondary);background-color:var(--bg-tertiary)}.hermit-bio-text a{color:var(--accent);text-decoration:none;word-break:break-all}.hermit-bio-text a:hover{color:var(--accent-hover);text-decoration:underline}.hermit-youtube-button{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;border-radius:var(--radius-pill);border:1px solid var(--border);background-color:transparent;color:var(--text-primary);font-size:.75rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.hermit-youtube-button:hover{border-color:var(--accent);background-color:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.hermit-bio{background-color:var(--bg-secondary);border-left:4px solid var(--accent);padding:1.5rem;margin:0;border-radius:var(--radius-sm);line-height:1.8}.hermit-bio-text{color:var(--text-primary);font-size:1.05rem;line-height:1.6;margin:0;white-space:pre-line}.hermit-bio-text.clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.hermit-bio-toggle{display:inline-block;margin-top:.5rem;padding:0;background:none;border:none;color:var(--accent);font-size:.9rem;font-weight:600;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.hermit-bio-toggle:hover{color:var(--accent-hover, var(--accent));text-decoration:underline}.season-filter{display:flex;flex-direction:column;gap:.5rem}.season-filter label{font-size:.875rem;color:var(--text-secondary)}.season-select{padding:.75rem 1.25rem;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);min-width:200px}.season-select:hover{border-color:var(--accent)}.season-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #ff6b6b26;box-shadow:0 0 0 3px var(--accent-soft)}.season-select option{background-color:var(--bg-secondary);color:var(--text-primary)}.mark-all-button{padding:.75rem 1.5rem;background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);white-space:nowrap}.mark-all-button:hover{border-color:var(--accent);background-color:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.mark-all-button.all-watched{background-color:var(--success);border-color:var(--success);color:#fff}.mark-all-button.all-watched:hover{background-color:var(--success);border-color:var(--success);filter:brightness(1.08)}@media (max-width: 768px){.filters{flex-direction:column;align-items:stretch}.season-select,.mark-all-button{min-width:100%}.page-header h1{font-size:1.5rem}.season-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.hermit-profile{flex-direction:column;align-items:center;text-align:center}.hermit-profile-avatar{width:84px;height:84px}.hermit-profile-name{font-size:1.5rem}.hermit-profile-pills{justify-content:center}}.video-player-container{position:relative;width:100%;padding-top:56.25%;background-color:var(--bg-secondary);overflow:hidden}.youtube-player{position:absolute;top:0;left:0;width:100%;height:100%}.youtube-player iframe{width:100%;height:100%;border:none}.no-video{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:1.2rem}.no-video.player-error{flex-direction:column;gap:1rem}.watch-on-youtube{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.4rem;background:var(--accent);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-weight:600;font-size:1rem;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.watch-on-youtube:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #0000004d;box-shadow:0 4px 16px var(--accent-glow)}.up-next-overlay{position:absolute;left:.5rem;right:.5rem;bottom:.5rem;z-index:5;display:flex;pointer-events:none}.up-next-card{pointer-events:auto;display:flex;align-items:center;gap:.6rem;width:100%;background:#121216f0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:.55rem;animation:up-next-in .25s var(--ease-out)}@keyframes up-next-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.up-next-thumbnail{width:56px;height:32px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;display:none}.up-next-info{display:flex;flex-direction:column;min-width:0;flex:1;gap:.1rem}.up-next-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff9}.up-next-title{margin:0;font-size:.8rem;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-next-meta{display:none;font-size:.7rem;color:#ffffffa6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-next-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.up-next-cancel{background:transparent;border:1px solid rgba(255,255,255,.25);color:#ffffffd9;border-radius:var(--radius-pill);padding:.35rem .6rem;font-size:.7rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.up-next-cancel:hover{background:#ffffff1a;border-color:#fff6}.up-next-play{position:relative;display:flex;align-items:center;gap:.35rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-pill);padding:.35rem .65rem .35rem .35rem;font-size:.7rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.up-next-play:hover{background:var(--accent-hover);transform:translateY(-1px)}.up-next-ring{width:20px;height:20px;flex-shrink:0;transform:rotate(-90deg)}.up-next-ring-track{fill:none;stroke:#ffffff4d;stroke-width:3}.up-next-ring-progress{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 1s linear}.up-next-countdown{font-variant-numeric:tabular-nums}.up-next-play-label{display:none}@media (min-width: 560px){.up-next-overlay{left:.75rem;right:.75rem;bottom:.75rem;justify-content:flex-end}.up-next-card{width:auto;max-width:420px;gap:.75rem;padding:.65rem}.up-next-thumbnail{display:block;width:80px;height:45px}.up-next-label{font-size:.65rem}.up-next-title{font-size:.85rem}.up-next-meta{display:block}.up-next-play-label{display:inline}}.episode-detail{padding:1rem 0;max-width:1200px;margin:0 auto}.error-message{text-align:center;padding:3rem}.error-message h2{margin-bottom:1rem;color:var(--text-secondary)}.home-button{background-color:var(--accent);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-pill);font-size:1rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.home-button:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm);box-shadow:var(--shadow-sm),0 4px 16px var(--accent-glow)}.video-section{margin:2rem 0}.theater-frame{border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-lg);box-shadow:var(--shadow-lg),0 0 80px var(--accent-glow)}.episode-hero{position:relative;border-radius:var(--radius-xl);overflow:hidden;isolation:isolate;padding:1rem 1rem 1.25rem}.episode-hero-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;filter:blur(44px) saturate(1.3);transform:scale(1.2);opacity:.38}.episode-hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:var(--scrim-left),var(--scrim-bottom)}.episode-hero-chips{position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem}.episode-hero-hermit{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .7rem .25rem .3rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);color:var(--text-primary);font-weight:700;font-size:.9rem;text-decoration:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform var(--dur-fast) var(--ease-out)}.episode-hero-hermit:hover{transform:translateY(-1px)}.episode-hero-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--bg-tertiary)}.episode-hero-badge{display:inline-flex;align-items:center;padding:.28rem .7rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);color:var(--text-secondary);font-size:.78rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.episode-hero-badge.subtle{opacity:.85}.episode-hero .theater-frame{position:relative;z-index:1}.youtube-title{margin-top:1rem;padding:1rem 0;border-top:1px solid var(--border)}.youtube-title h2{font-size:1.3rem;color:var(--text-primary);font-weight:600;line-height:1.4;margin:0}.episode-publish-meta{margin-top:.75rem;color:var(--text-secondary);font-size:.875rem;font-weight:500}.episode-info-section{margin:2rem 0}.episode-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.5rem}.title-section h1{font-size:2rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;line-height:1.3}.episode-meta{display:flex;gap:.75rem;flex-wrap:wrap;padding-bottom:.5rem;overflow:visible}.hermit-badge,.season-badge,.episode-badge{display:inline-flex;align-items:center;padding:.4rem .75rem;border-radius:var(--radius-pill);background-color:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);font-size:.8rem;font-weight:600;transition:all var(--dur-fast) var(--ease-out)}.hermit-badge.clickable,.season-badge.clickable{cursor:pointer}.hermit-badge.clickable:hover,.season-badge.clickable:hover{border-color:var(--accent);background-color:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.action-buttons{display:flex;flex-direction:column;gap:.75rem;align-items:flex-end}.watch-button{background:var(--accent);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-pill);font-size:1rem;font-weight:600;cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.watch-button:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm);box-shadow:var(--shadow-sm),0 4px 16px var(--accent-glow)}.watch-button.watched{background:var(--success)}.watch-button.watched:hover{background:var(--success);filter:brightness(1.08)}.view-season-button{background-color:transparent;color:var(--text-primary);border:1px solid var(--border);padding:.6rem 1.25rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--dur-fast) var(--ease-out)}.view-season-button:hover{border-color:var(--accent);background-color:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.description-section{margin:1.5rem 0;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.description-section h3{font-size:1.2rem;margin-bottom:.75rem;color:var(--text-primary)}.description-section p{color:var(--text-secondary);line-height:1.6}.links-section{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.wiki-link,.youtube-link{color:var(--accent);text-decoration:none;font-weight:500;transition:color var(--dur-fast) var(--ease-out)}.wiki-link:hover,.youtube-link:hover{color:var(--accent-hover);text-decoration:underline}.related-section{margin-top:3rem}.related-section h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.5rem}.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.related-episode{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.related-episode:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 24px var(--accent-glow)}.related-thumbnail{position:relative;width:100%;padding-top:56.25%;background-color:var(--bg-tertiary);overflow:hidden}.related-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-med) var(--ease-out)}.related-episode:hover .related-thumbnail img{transform:scale(1.06)}.related-duration-badge{position:absolute;bottom:8px;left:8px;background:#000000bf;color:#fff;padding:.2rem .6rem;border-radius:var(--radius-pill);font-size:.7rem;font-weight:600;line-height:1.4;z-index:2}.related-info{padding:1rem}.related-info h4{font-size:.9rem;margin-bottom:.25rem;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.related-info p{font-size:.75rem;color:var(--text-secondary)}@media (max-width: 768px){.episode-hero{padding:.6rem .6rem .85rem}.episode-hero-avatar{width:24px;height:24px}.description-section{padding:1.25rem}.episode-header{flex-direction:column;gap:1rem}.title-section h1{font-size:1.5rem}.action-buttons{width:100%;align-items:stretch}.watch-button,.view-season-button{width:100%}.related-grid{grid-template-columns:1fr}}.navigation-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.episode-navigation{display:flex;gap:1rem}.nav-button{padding:.65rem 1.25rem;background-color:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;font-size:.9rem;font-weight:600;transition:all var(--dur-fast) var(--ease-out)}.nav-button:hover{border-color:var(--accent);background-color:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}@media (max-width: 768px){.navigation-controls{flex-direction:column;align-items:stretch}.episode-navigation{width:100%;justify-content:space-between}.nav-button{flex:1}}.description-text{white-space:pre-line}.description-text a{color:var(--accent);text-decoration:none;word-break:break-all}.description-text a:hover{color:var(--accent-hover);text-decoration:underline}.description-text.clamped{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.description-toggle{background:none;border:none;color:var(--accent);font-weight:600;font-size:.875rem;cursor:pointer;padding:.4rem 0}.description-toggle:hover{color:var(--accent-hover);text-decoration:underline}.resume-badge{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.static-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.static-page-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--border)}.static-page-header h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--text-primary)}.last-updated{color:var(--text-secondary);font-size:.9rem;font-style:italic}.static-content{line-height:1.8;color:var(--text-primary)}.policy-section{margin-bottom:2.5rem}.policy-section h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;color:var(--accent);border-left:4px solid var(--accent);padding-left:1rem}.policy-section h3{font-size:1.3rem;font-weight:700;letter-spacing:-.02em;margin-top:1.5rem;margin-bottom:.75rem;color:var(--text-primary)}.policy-section p{margin-bottom:1rem;font-size:1.05rem}.policy-section ul{margin-left:2rem;margin-bottom:1rem}.policy-section li{margin-bottom:.5rem;font-size:1.05rem}.policy-section a{color:var(--accent);text-decoration:underline;transition:color .2s}.policy-section a:hover{color:var(--accent-hover)}.contact-info{background-color:var(--bg-secondary);padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border);border-left:4px solid var(--accent);box-shadow:var(--shadow-sm)}.contact-info a{font-weight:600;text-decoration:none}.contact-info a:hover{text-decoration:underline}@media (max-width: 768px){.static-page{padding:1.5rem 1rem}.static-page-header h1{font-size:2rem}.policy-section h2{font-size:1.5rem}.policy-section h3{font-size:1.2rem}.policy-section p,.policy-section li{font-size:1rem}.policy-section ul{margin-left:1.5rem}}.tagline{font-size:1.2rem;color:var(--text-secondary);font-weight:500;margin-top:.5rem}.about-section{margin-bottom:3rem}.about-section h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.25rem;color:var(--accent);border-left:4px solid var(--accent);padding-left:1rem}.about-section p{margin-bottom:1rem;font-size:1.05rem;line-height:1.8}.about-section a{color:var(--accent);font-weight:500;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s}.about-section a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.features-section{background-color:var(--bg-secondary);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1.5rem}.feature-card{background-color:var(--bg-tertiary);padding:1.5rem;border-radius:var(--radius-md);border:1px solid var(--border);transition:all var(--dur-med) var(--ease-out)}.feature-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md)}.feature-icon{font-size:2.5rem;margin-bottom:.75rem;display:block}.feature-card h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.feature-card p{font-size:.95rem;color:var(--text-secondary);margin-bottom:0;line-height:1.6}@media (max-width: 768px){.tagline{font-size:1.05rem}.about-section h2{font-size:1.5rem}.about-section p{font-size:1rem}.features-section{padding:1.5rem}.features-grid{grid-template-columns:1fr;gap:1rem}.feature-card{padding:1.25rem}.feature-icon{font-size:2rem}.feature-card h3{font-size:1.15rem}}.contact-section{margin-bottom:3rem}.contact-intro{text-align:center;max-width:700px;margin:0 auto 3rem}.contact-intro p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.8}.contact-card{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:#fff;padding:3rem 2rem;border-radius:var(--radius-lg);text-align:center;max-width:600px;margin:0 auto 3rem;box-shadow:var(--shadow-lg)}.contact-icon{font-size:3.5rem;margin-bottom:1rem}.contact-card h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;color:#fff}.contact-email{display:inline-block;font-size:1.3rem;font-weight:600;color:#fff;text-decoration:none;padding:.75rem 1.5rem;background-color:#fff3;border-radius:var(--radius-md);margin:1rem 0;transition:all var(--dur-med) var(--ease-out);border:2px solid transparent}.contact-email:hover{background-color:#ffffff4d;transform:translateY(-2px);box-shadow:var(--shadow-md)}.contact-note{font-size:.95rem;margin-top:1rem;color:#ffffffe6;font-style:italic}.contact-topics h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:2rem;color:var(--accent);text-align:center}.topics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.topic-item{background-color:var(--bg-secondary);padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);text-align:center;transition:all var(--dur-med) var(--ease-out)}.topic-item:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md)}.topic-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.topic-item h3{font-size:1.2rem;margin-bottom:.5rem;color:var(--text-primary)}.topic-item p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0}.social-section,.response-section{background-color:var(--bg-secondary);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.social-section h2,.response-section h2{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;color:var(--accent)}.social-section p,.response-section p{font-size:1.05rem;color:var(--text-primary);margin-bottom:1rem;line-height:1.8}.social-section ul{margin-left:2rem;margin-top:1rem}.social-section li{font-size:1.05rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.6}@media (max-width: 768px){.contact-card{padding:2rem 1.5rem}.contact-icon{font-size:2.5rem}.contact-card h2{font-size:1.5rem}.contact-email{font-size:1.1rem;padding:.6rem 1.2rem}.topics-grid{grid-template-columns:1fr;gap:1rem}.topic-item{padding:1.25rem}.topic-icon{font-size:2rem}.social-section,.response-section{padding:1.5rem}.social-section ul{margin-left:1.5rem}}.disclaimer-section{margin-bottom:2.5rem}.disclaimer-section h2{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;color:var(--accent);border-left:4px solid var(--accent);padding-left:1rem}.disclaimer-section h3{font-size:1.3rem;font-weight:700;letter-spacing:-.02em;margin-top:1.5rem;margin-bottom:.75rem;color:var(--text-primary)}.disclaimer-section p{margin-bottom:1rem;font-size:1.05rem;line-height:1.8;color:var(--text-primary)}.disclaimer-section ul{margin-left:2rem;margin-bottom:1rem}.disclaimer-section li{margin-bottom:.5rem;font-size:1.05rem;line-height:1.7;color:var(--text-secondary)}.disclaimer-section a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:all .2s}.disclaimer-section a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.disclaimer-section strong{color:var(--text-primary);font-weight:600}.disclaimer-footer{background-color:var(--bg-secondary);border:1px solid var(--border);border-left:4px solid var(--accent);padding:1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-top:3rem}.disclaimer-footer p{margin-bottom:.5rem;font-size:1rem;color:var(--text-primary)}.disclaimer-footer p:last-child{margin-bottom:0;font-style:italic;color:var(--text-secondary)}@media (max-width: 768px){.disclaimer-section h2{font-size:1.5rem}.disclaimer-section h3{font-size:1.2rem}.disclaimer-section p,.disclaimer-section li{font-size:1rem}.disclaimer-section ul{margin-left:1.5rem}.disclaimer-footer{padding:1.25rem}.disclaimer-footer p{font-size:.95rem}}.profile{max-width:1400px;margin:0 auto;padding:2rem 1rem}.profile-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--border)}.profile-user-info{display:flex;align-items:center;gap:1.5rem}.profile-avatar{width:80px;height:80px;border-radius:50%;border:3px solid var(--accent)}.profile h1{margin:0;font-size:2rem;color:var(--text-primary)}.profile-username{margin:.5rem 0 0;color:var(--text-secondary);font-size:1.1rem}.profile-content{margin-top:2rem}.stats-section{margin-bottom:1rem}.stats-section .section-header{margin-bottom:1.5rem}.stats-section .section-header h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem;color:var(--text-primary)}.stats-section .section-header p{margin:0;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-tile{display:flex;flex-direction:column;gap:.35rem;padding:1.25rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stat-tile-value{font-size:1.8rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary);line-height:1.1}.stat-tile-label{font-size:.8rem;color:var(--text-secondary);font-weight:600}.stat-tile-subtitle{font-size:.7rem;color:var(--text-secondary);opacity:.75;margin-top:-.2rem}.stat-tile.skeleton{min-height:96px;background:var(--bg-tertiary);border-color:transparent;box-shadow:none}.stats-empty-message{margin:0;padding:1.25rem;text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-lg)}.top-hermits-heading{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem}.top-hermits-list{display:flex;flex-direction:column;gap:.5rem}.top-hermit-row{position:relative;display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-secondary);cursor:pointer;overflow:hidden;transition:border-color var(--dur-fast) var(--ease-out)}.top-hermit-row:hover{border-color:var(--accent)}.top-hermit-bar{position:absolute;top:0;right:0;bottom:0;left:0;width:0;height:100%;background:var(--accent-soft);transition:width var(--dur-med) var(--ease-out);z-index:0}.top-hermit-rank,.top-hermit-name,.top-hermit-count,.top-hermit-hours{position:relative;z-index:1}.top-hermit-rank{font-size:.85rem;font-weight:700;color:var(--text-secondary);width:1.25rem;flex-shrink:0;text-align:center}.top-hermit-name{flex:1;min-width:0;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere;transition:color var(--dur-fast) var(--ease-out)}.top-hermit-row:hover .top-hermit-name{color:var(--accent)}.top-hermit-count,.top-hermit-hours{flex-shrink:0;min-width:3.5rem;font-size:.85rem;font-weight:500;color:var(--text-secondary);text-align:right}.followed-hermits-section .section-header{margin-bottom:2rem}.section-header-content{display:flex;justify-content:space-between;align-items:center;gap:2rem}.followed-hermits-section .section-header h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem;color:var(--text-primary)}.followed-hermits-section .section-header p{margin:0;color:var(--text-secondary)}.sync-progress-btn{padding:.75rem 1.5rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);white-space:nowrap}.sync-progress-btn:hover:not(:disabled){color:var(--text-primary);background:var(--accent-soft);border-color:var(--accent);transform:translateY(-1px)}.sync-progress-btn:disabled{opacity:.5;cursor:not-allowed}.clear-unfollowed-btn{--danger: #ef4444;padding:.75rem 1.5rem;background:var(--danger);color:#fff;border:1px solid transparent;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);white-space:nowrap}.clear-unfollowed-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 16px #ef444452;box-shadow:0 4px 16px color-mix(in srgb,var(--danger) 32%,transparent)}.clear-unfollowed-btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px dashed var(--border);box-shadow:var(--shadow-sm)}.empty-state p{margin:.5rem 0;color:var(--text-secondary);font-size:1.1rem}.empty-state .btn-primary{margin-top:1.5rem;padding:.75rem 1.5rem;font-size:1rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.empty-state .btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #ff6b6b52;box-shadow:0 4px 16px var(--accent-glow)}.followed-hermits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.hermit-progress-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:all var(--dur-fast) var(--ease-out)}.hermit-progress-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.hermit-progress-header{margin-bottom:1.5rem}.hermit-info{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.hermit-info>div{display:flex;flex-direction:column;align-items:center;gap:.5rem}.hermit-avatar{width:60px;height:60px;border-radius:50%;border:2px solid var(--accent)}.hermit-name{margin:0;font-size:1.3rem;color:var(--text-primary);cursor:pointer;transition:color .2s}.hermit-name:hover{color:var(--accent)}.hermit-status{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:600;text-transform:uppercase}.hermit-status.active{background:color-mix(in srgb,var(--success) 20%,transparent);color:var(--success)}.hermit-status.former{background:#94a3b833;color:#94a3b8}.seasons-list{display:flex;flex-direction:column;gap:.75rem}.season-item{padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);border:2px solid var(--border);transition:all var(--dur-fast) var(--ease-out);display:flex;align-items:center;gap:1rem}.season-item:hover{border-color:var(--accent)}.season-item-main{flex:1;display:flex;flex-direction:column}.season-item-main:hover{opacity:.8}.season-item.status-completed{border-color:#22c55e4d;background:#22c55e0d}.season-item.status-watching{border-color:#3b82f64d;background:#3b82f60d}.season-item.status-not-started{border-color:var(--border)}.season-info{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.season-status-icon{font-size:1.2rem;width:24px;text-align:center}.status-completed .season-status-icon{color:var(--success)}.status-watching .season-status-icon{color:#3b82f6}.status-not-started .season-status-icon{color:var(--text-secondary)}.season-name{font-weight:600;color:var(--text-primary);font-size:1rem}.season-progress{display:flex;flex-direction:column;gap:.5rem}.season-episodes{font-size:.875rem;color:var(--text-secondary);font-weight:500}.progress-bar{width:100%;height:8px;background:var(--border);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .3s ease;border-radius:var(--radius-sm)}.status-completed .progress-fill{background:var(--success)}.status-watching .progress-fill{background:#3b82f6}.season-toggle-btn{width:36px;height:36px;min-width:36px;border-radius:var(--radius-pill);border:2px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:1.1rem;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center;padding:0}.season-toggle-btn:hover:not(:disabled){transform:scale(1.1);border-color:var(--accent)}.season-toggle-btn.watched{background:color-mix(in srgb,var(--success) 10%,transparent);border-color:var(--success);color:var(--success)}.season-toggle-btn.unwatched{background:#94a3b81a;border-color:#94a3b880}.season-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:50px;height:50px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.profile{padding:1.5rem 1rem}.profile-header{margin-bottom:2rem}.profile-user-info{gap:1rem}.profile-avatar{width:60px;height:60px}.profile h1{font-size:1.5rem}.section-header-content{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-tile{padding:1rem}.top-hermit-row{padding:.6rem .75rem;gap:.5rem}.top-hermit-count,.top-hermit-hours{min-width:2.75rem;font-size:.8rem}.clear-unfollowed-btn{width:100%;padding:.65rem 1rem;font-size:.9rem}.followed-hermits-grid{grid-template-columns:1fr;gap:1rem}.hermit-progress-card{padding:1rem}.hermit-avatar{width:50px;height:50px}.hermit-name{font-size:1.1rem}}@media (max-width: 480px){.profile-user-info{flex-direction:column;text-align:center}.season-item{padding:.75rem}.season-info{gap:.5rem}.top-hermit-count,.top-hermit-hours{min-width:0}}.upload-heatmap{--hm-cell: 14px;--hm-gap: 3px;--hm-weekday-col: 26px}.upload-heatmap-scroll{overflow-x:auto;padding-bottom:.35rem}.upload-heatmap-inner{display:inline-flex;flex-direction:column;gap:4px}.upload-heatmap-months{display:flex;gap:var(--hm-gap);padding-left:calc(var(--hm-weekday-col) + var(--hm-gap))}.upload-heatmap-month-slot{width:var(--hm-cell);font-size:.68rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:visible}.upload-heatmap-body{display:flex;gap:var(--hm-gap)}.upload-heatmap-weekdays{display:flex;flex-direction:column;gap:var(--hm-gap);width:var(--hm-weekday-col);flex-shrink:0}.upload-heatmap-weekday{height:var(--hm-cell);line-height:var(--hm-cell);font-size:.62rem;color:var(--text-secondary);text-align:right;padding-right:2px}.upload-heatmap-weeks{display:flex;gap:var(--hm-gap)}.upload-heatmap-week{display:flex;flex-direction:column;gap:var(--hm-gap)}.upload-heatmap-cell{width:var(--hm-cell);height:var(--hm-cell);border-radius:3px;background:var(--bg-tertiary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 55%,transparent);flex-shrink:0}.upload-heatmap-cell[data-level="1"]{background:color-mix(in srgb,var(--accent) 24%,var(--bg-tertiary))}.upload-heatmap-cell[data-level="2"]{background:color-mix(in srgb,var(--accent) 46%,var(--bg-tertiary))}.upload-heatmap-cell[data-level="3"]{background:color-mix(in srgb,var(--accent) 70%,var(--bg-tertiary))}.upload-heatmap-cell[data-level="4"]{background:var(--accent);box-shadow:none}.upload-heatmap-cell.is-future{background:transparent;box-shadow:none;opacity:.4}.upload-heatmap-cell[role=img]{cursor:default;transition:outline-color var(--dur-fast) var(--ease-out);outline:2px solid transparent;outline-offset:1px}.upload-heatmap-cell[role=img]:hover{outline-color:var(--accent)}.upload-heatmap-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-top:.9rem}.upload-heatmap-summary{font-size:.85rem;color:var(--text-secondary)}.upload-heatmap-legend{display:flex;align-items:center;gap:4px;font-size:.72rem;color:var(--text-secondary)}.upload-heatmap-skeleton{height:150px;max-width:340px;border-radius:var(--radius-md)}@media (max-width: 768px){.upload-heatmap{--hm-cell: 13px}.upload-heatmap-summary{font-size:.8rem}}.schedule-page{padding:2rem 0}.schedule-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem}.schedule-heading h1{font-size:2rem;font-weight:800;letter-spacing:-.02em}.schedule-heading p{color:var(--text-secondary);margin-top:.5rem;font-size:1.05rem}.schedule-header-actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.schedule-ghost-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-primary);text-decoration:none;font-size:.875rem;font-weight:600;background:transparent;white-space:nowrap;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.schedule-ghost-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.schedule-rss-link{color:var(--text-secondary);text-decoration:none;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid transparent;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.schedule-rss-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.schedule-section{margin-bottom:3rem}.schedule-section-header{margin-bottom:1.5rem}.schedule-section-header h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.schedule-section-subtext{color:var(--text-secondary);font-size:.85rem;margin-top:.35rem}.schedule-live-link{color:var(--accent);font-weight:600;text-decoration:none;white-space:nowrap}.schedule-live-link:hover{text-decoration:underline}.schedule-subsection-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0 0 .85rem}.schedule-premiere-grid+.schedule-subsection-label{margin-top:2rem}.schedule-empty{color:var(--text-secondary);font-size:.95rem;padding:1.5rem;background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);text-align:center}.schedule-premiere-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem}.schedule-premiere-skeleton{border-radius:var(--radius-lg);height:230px}.schedule-pattern-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.schedule-pattern-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);text-decoration:none;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.schedule-pattern-card:hover,.schedule-pattern-card:focus-visible{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.schedule-pattern-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--bg-tertiary);flex-shrink:0}.schedule-pattern-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.schedule-pattern-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:.15rem;gap:.5rem}.schedule-pattern-name{font-size:.9rem;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.schedule-pattern-cadence{font-size:.78rem;color:var(--text-secondary);line-height:1.35}.schedule-pattern-pill{flex-shrink:0;font-size:.72rem;font-weight:600;padding:.3rem .65rem;border-radius:var(--radius-pill);white-space:nowrap}.schedule-pattern-pill-expected{color:var(--success);background:color-mix(in srgb,var(--success) 14%,transparent)}.schedule-pattern-pill-due{color:var(--accent);background:var(--accent-soft)}.schedule-pattern-pill-muted{color:var(--text-secondary);background:var(--bg-tertiary)}.schedule-pattern-skeleton{height:68px;border-radius:var(--radius-md)}.schedule-day{margin-bottom:1.75rem}.schedule-day:last-child{margin-bottom:0}.schedule-day-label{font-size:.85rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.schedule-row-list{display:flex;flex-direction:column;gap:.4rem}.schedule-row{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem .5rem .85rem;border-radius:var(--radius-md);border-left:3px solid transparent;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.schedule-row:hover,.schedule-row:focus-visible{background:var(--bg-tertiary);border-left-color:var(--accent)}.schedule-row-thumb{width:120px;height:67.5px;object-fit:cover;border-radius:var(--radius-md);background:var(--bg-tertiary);flex-shrink:0}.schedule-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.schedule-row-title{font-size:.95rem;font-weight:600;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.schedule-row-hermit{color:var(--accent);font-size:.825rem;font-weight:600;text-decoration:none;width:fit-content}.schedule-row-hermit:hover{text-decoration:underline}.schedule-row-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.schedule-duration-pill{background:var(--bg-tertiary);color:var(--text-secondary);font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:var(--radius-pill);white-space:nowrap}.schedule-row-time{color:var(--text-secondary);font-size:.8rem;font-variant-numeric:tabular-nums;min-width:2.75rem;text-align:right;white-space:nowrap}.schedule-row-skeleton{height:76px;border-radius:var(--radius-md)}@media (max-width: 768px){.schedule-heading h1{font-size:1.5rem}.schedule-header-actions{gap:.75rem}.schedule-ghost-btn{padding:.5rem 1rem;font-size:.8rem}.schedule-premiere-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.schedule-premiere-skeleton{height:180px}.schedule-pattern-grid{grid-template-columns:1fr;gap:.6rem}.schedule-pattern-card{padding:.6rem .75rem}.schedule-pattern-avatar{width:34px;height:34px}.schedule-pattern-name{font-size:.85rem}.schedule-pattern-cadence{font-size:.72rem}.schedule-pattern-pill{font-size:.68rem;padding:.25rem .55rem}.schedule-row{gap:.65rem;padding:.4rem .6rem}.schedule-row-thumb{width:88px;height:49.5px}.schedule-row-title{font-size:.85rem}.schedule-row-hermit{font-size:.75rem}.schedule-row-meta{gap:.5rem}.schedule-duration-pill{display:none}.schedule-row-time{font-size:.75rem;min-width:auto}}.resources-page{padding:2rem 0}.resources-header{margin-bottom:2.5rem}.resources-header h1{font-size:2rem;font-weight:800;letter-spacing:-.02em}.resources-header p{color:var(--text-secondary);margin-top:.5rem;font-size:1.05rem;max-width:640px}.resources-section{margin-bottom:3rem}.resources-section-header{margin-bottom:1.25rem}.resources-section-header h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.resource-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.resource-card:hover,.resource-card:focus-visible{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.resource-icon{flex-shrink:0;font-size:1.75rem;line-height:1}.resource-info{min-width:0;display:flex;flex-direction:column;gap:.3rem}.resource-title{font-size:1rem;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.resource-description{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.resource-domain{font-size:.72rem;font-weight:600;color:var(--accent);letter-spacing:.02em;margin-top:.1rem}.resources-events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.resource-event-card{display:flex;align-items:flex-start;gap:1.25rem;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.resource-event-card:hover,.resource-event-card:focus-visible{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-md);box-shadow:var(--shadow-md),0 0 0 1px var(--accent-soft),0 12px 40px var(--accent-glow)}.resource-event-icon{flex-shrink:0;font-size:2.25rem;line-height:1}.resource-event-info{min-width:0;display:flex;flex-direction:column;gap:.4rem}.resource-event-title{font-size:1.15rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.resource-event-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.resources-disclaimer{margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--border);text-align:center;font-size:.8rem;font-style:italic;color:var(--text-secondary);opacity:.75}@media (max-width: 768px){.resources-header h1{font-size:1.5rem}.resources-header p{font-size:.95rem}.resources-section-header h2{font-size:1.2rem}.resources-grid{grid-template-columns:1fr;gap:.85rem}.resource-card{padding:1rem}.resources-events-grid{grid-template-columns:1fr;gap:.85rem}.resource-event-card{padding:1.15rem;gap:1rem}.resource-event-icon{font-size:1.85rem}.resource-event-title{font-size:1.05rem}}.twitch-chat{width:100%;height:100%;display:flex;flex-direction:column;background:var(--bg-secondary)}.twitch-chat-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.3rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.twitch-chat-scroll::-webkit-scrollbar{width:8px}.twitch-chat-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.twitch-chat-status{margin:auto 0;padding:1rem;text-align:center;color:var(--text-secondary);font-size:.85rem}.twitch-chat-line{font-size:.86rem;line-height:1.45;color:var(--text-primary);overflow-wrap:anywhere}.twitch-chat-line.action{font-style:italic}.twitch-chat-name{font-weight:700;color:var(--accent)}.twitch-chat-colon{color:var(--text-secondary)}.twitch-chat-emote{height:1.75em;vertical-align:middle;margin:-.35em .05em}.twitch-chat-footer{flex:0 0 auto;border-top:1px solid var(--border);padding:.55rem .6rem;display:flex;flex-direction:column;gap:.4rem;background:var(--bg-secondary)}.twitch-chat-notice{font-size:.74rem;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:.35rem .5rem}.twitch-chat-composer{display:flex;gap:.4rem}.twitch-chat-input{flex:1 1 auto;min-width:0;padding:.5rem .65rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);font-size:.85rem;font-family:inherit}.twitch-chat-input:focus{outline:none;border-color:var(--accent)}.twitch-chat-input:disabled{opacity:.6}.twitch-chat-send{flex:0 0 auto;padding:.5rem .9rem;border:0;border-radius:var(--radius-md);background:var(--accent);color:#fff;font-weight:700;font-size:.82rem;cursor:pointer;font-family:inherit;transition:background-color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.twitch-chat-send:hover:not(:disabled){background:var(--accent-hover)}.twitch-chat-send:disabled{opacity:.5;cursor:default}.twitch-chat-identity{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.72rem;color:var(--text-secondary)}.twitch-chat-signout{background:none;border:0;color:var(--text-secondary);font-size:.72rem;font-weight:700;cursor:pointer;text-decoration:underline;font-family:inherit;padding:0}.twitch-chat-signout:hover{color:var(--accent)}.twitch-chat-signin{display:flex;flex-direction:column;gap:.4rem}.twitch-chat-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.6rem .9rem;border:0;border-radius:var(--radius-md);background:#9146ff;color:#fff;font-weight:700;font-size:.85rem;cursor:pointer;font-family:inherit;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.twitch-chat-signin-btn:hover:not(:disabled){background:#7d3ce6;transform:translateY(-1px)}.twitch-chat-signin-btn:disabled{opacity:.5;cursor:default}.twitch-chat-signin-hint{text-align:center;font-size:.72rem;color:var(--text-secondary);line-height:1.35}.mosaic-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:var(--bg-primary);display:flex;flex-direction:column;overflow:hidden}.mosaic-bar{flex:0 0 auto;display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.mosaic-bar-title{display:flex;flex-direction:column;line-height:1.15;flex-shrink:0}.mosaic-bar-title strong{font-size:1rem;font-weight:800}.mosaic-bar-count{font-size:.72rem;color:var(--text-secondary)}.mosaic-roster{flex:1 1 auto;display:flex;gap:.4rem;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.mosaic-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-tertiary);color:var(--text-secondary);font-family:inherit;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.mosaic-chip.on{color:#fff;background:var(--accent);border-color:var(--accent)}.mosaic-chip:disabled{opacity:.4;cursor:default}.mosaic-chip-dot{width:7px;height:7px;border-radius:50%;background:#ef4444}.mosaic-chip.on .mosaic-chip-dot{background:#fff}.mosaic-chip-viewers{display:inline-flex;align-items:center;gap:.2rem;font-weight:600;opacity:.85}.mosaic-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:1.3rem}.mosaic-close:hover{background:var(--border)}.mosaic-cap-note{flex:0 0 auto;padding:.4rem 1rem;font-size:.75rem;color:var(--text-secondary);background:var(--bg-tertiary);text-align:center}.mosaic-grid{flex:1 1 auto;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:.85rem;padding:.85rem 1rem 1.5rem;align-content:start}.mosaic-tile{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.mosaic-tile-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .5rem .4rem .6rem;border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.mosaic-tile-name{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mosaic-tile-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;flex-shrink:0}.mosaic-tile-dot.offline{background:var(--text-secondary)}.mosaic-tile-actions{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0}.mosaic-tile-viewers{display:inline-flex;align-items:center;gap:.2rem;font-size:.72rem;color:var(--text-secondary);font-weight:600}.mosaic-tile-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:1rem}.mosaic-tile-remove:hover{background:var(--border);color:var(--text-primary)}.mosaic-tile-video{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.mosaic-tile-video .live-player-iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.mosaic-tile-chat{position:relative;height:240px;border-top:1px solid var(--border)}@media (max-width: 768px){.mosaic-bar-title{display:none}.mosaic-grid{grid-template-columns:1fr;padding:.6rem .6rem 1.5rem}}.live-page{--twitch-red: #ef4444;padding:2rem 0 3rem}.live-page-header{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.live-watch-all{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.15rem;border:0;border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:inherit;font-weight:700;font-size:.9rem;cursor:pointer;flex-shrink:0;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.live-watch-all:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-glow)}.live-watch-all svg{font-size:1.1rem}.live-page-header h1{font-size:2rem;font-weight:800;letter-spacing:-.02em}.live-page-header p{color:var(--text-secondary);margin-top:.5rem;font-size:1.05rem}.live-empty{text-align:center;padding:4rem 1.5rem;background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-lg)}.live-empty-icon{font-size:2.75rem;color:var(--text-secondary);opacity:.6;margin-bottom:1rem}.live-empty h2{font-size:1.3rem;margin-bottom:.5rem}.live-empty p{color:var(--text-secondary);margin-bottom:1.5rem}.live-empty-cta{display:inline-flex;align-items:center;padding:.65rem 1.5rem;background:var(--accent);color:#fff;text-decoration:none;border-radius:var(--radius-pill);font-weight:600;font-size:.9rem;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.live-empty-cta:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-glow)}.live-empty-secondary{display:block;margin-top:.9rem;color:var(--text-secondary);text-decoration:none;font-size:.85rem;font-weight:600}.live-empty-secondary:hover{color:var(--accent);text-decoration:underline}.live-layout{display:grid;grid-template-columns:1fr;grid-template-areas:"player" "meta" "switcher" "chat";gap:1.5rem;align-items:start}@media (min-width: 1000px){.live-layout{grid-template-columns:7fr 3fr;grid-template-areas:"player chat" "meta   chat" "switcher switcher";gap:1.25rem;align-items:stretch}}.live-player-area{grid-area:player;min-width:0}.live-meta-area{grid-area:meta;min-width:0}.live-switcher-area{grid-area:switcher;min-width:0}.live-theater-frame{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border);background:var(--bg-tertiary);box-shadow:var(--shadow-lg);box-shadow:var(--shadow-lg),0 0 80px var(--accent-glow)}.live-player-iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.live-now-playing{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.live-now-playing-info h2{display:flex;align-items:center;gap:.6rem;font-size:1.25rem;font-weight:700;color:var(--twitch-red)}.live-now-playing-info{min-width:0}.live-now-playing-info p{color:var(--text-primary);margin-top:.35rem;font-size:.95rem;line-height:1.4;overflow-wrap:anywhere}.live-now-playing-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}.live-now-playing-pill{display:inline-flex;align-items:center;gap:.35rem;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.8rem;font-weight:600;padding:.3rem .7rem;border-radius:var(--radius-pill)}.live-offline-pill{background:var(--bg-tertiary);color:var(--text-secondary);font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.25rem .6rem;border-radius:var(--radius-pill)}.live-chat-area{grid-area:chat;min-width:0;position:relative;height:540px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);background:var(--bg-secondary)}@media (min-width: 1000px){.live-chat-area{height:auto}}.live-chat-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-height:0}.live-chat-titlebar{flex:0 0 auto;padding:.6rem .85rem;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border)}.live-chat-body{flex:1 1 auto;min-height:0;position:relative}.live-switcher-heading{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:.85rem}.live-switcher-rail{display:flex;gap:.85rem;overflow-x:auto;padding-bottom:.35rem;scroll-snap-type:x proximity}.live-switcher-card{flex:0 0 220px;scroll-snap-align:start;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;text-align:left;font-family:inherit;padding:0;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.live-switcher-card:hover{transform:translateY(-3px);border-color:var(--twitch-red);box-shadow:var(--shadow-sm)}.live-switcher-card.active{border-color:var(--twitch-red);box-shadow:0 0 0 2px color-mix(in srgb,var(--twitch-red) 45%,transparent)}.live-switcher-thumb{position:relative;width:100%;padding-top:56.25%;background:var(--bg-tertiary);overflow:hidden}.live-switcher-thumb img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.live-switcher-live-pill{position:absolute;top:6px;left:6px;display:inline-flex;align-items:center;gap:.3rem;background:var(--twitch-red);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.04em;padding:.22rem .5rem;border-radius:var(--radius-pill);z-index:2}.live-switcher-viewers{position:absolute;bottom:6px;left:6px;display:inline-flex;align-items:center;gap:.25rem;background:#000000bf;color:#fff;padding:.2rem .5rem;border-radius:var(--radius-pill);font-size:.68rem;font-weight:600;z-index:2}.live-switcher-info{padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.live-switcher-hermit{font-size:.875rem;font-weight:700;color:var(--twitch-red)}.live-switcher-title{font-size:.78rem;color:var(--text-secondary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.live-switcher-game{font-size:.7rem;color:var(--text-secondary);opacity:.8}@media (max-width: 768px){.live-page-header h1{font-size:1.5rem}.live-theater-frame,.live-chat-area{border-radius:var(--radius-md)}.live-chat-area{height:480px}.live-now-playing-info h2{font-size:1.05rem}.live-switcher-card{flex:0 0 180px}}.live-now-playing-source{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-shrink:0}.live-source-label{font-size:.72rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.live-source-switcher{display:inline-flex;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);padding:3px;gap:3px}.live-source-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .8rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.78rem;font-weight:700;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.live-source-btn:hover{color:var(--text-primary)}.live-source-btn.active.twitch{background:#9146ff;color:#fff}.live-source-btn.active.youtube{background:red;color:#fff}.live-source-switcher-sm .live-source-btn{padding:.25rem .6rem;font-size:.72rem}.live-switcher-simulcast{position:absolute;top:6px;right:6px;background:#ff0000eb;color:#fff;font-size:.56rem;font-weight:800;letter-spacing:.02em;padding:.2rem .45rem;border-radius:var(--radius-pill);z-index:2}.live-chat-tabs{flex:0 0 auto;display:flex;background:var(--bg-tertiary);border-bottom:1px solid var(--border)}.live-chat-tab{flex:1 1 0;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem .5rem;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.live-chat-tab svg{font-size:1rem}.live-chat-tab:hover{color:var(--text-primary)}.live-chat-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.live-chat-pane{position:absolute;top:0;right:0;bottom:0;left:0;display:none}.live-chat-pane.active{display:block}.live-youtube-chat{width:100%;height:100%;border:0;display:block}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:20px}@media (max-width: 768px){.main-content{padding:10px}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0a0a0d;--bg-secondary: #131318;--bg-tertiary: #1d1d24;--text-primary: #ffffff;--text-secondary: #a8a8b4;--accent: #ff6b6b;--accent-hover: #ff5252;--border: rgba(255, 255, 255, .08);--success: #4caf50;--primary-color: var(--accent);--primary-hover: var(--accent-hover);--input-bg: var(--bg-tertiary);--border-color: var(--border);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35), 0 12px 32px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .45), 0 24px 64px rgba(0, 0, 0, .35);--accent-soft: color-mix(in srgb, var(--accent) 14%, transparent);--accent-glow: color-mix(in srgb, var(--accent) 32%, transparent);--scrim-bottom: linear-gradient(to top, rgba(6, 6, 9, .92) 0%, rgba(6, 6, 9, .55) 45%, rgba(6, 6, 9, 0) 100%);--scrim-left: linear-gradient(to right, rgba(6, 6, 9, .92) 0%, rgba(6, 6, 9, .6) 45%, rgba(6, 6, 9, .05) 100%);--chrome-bg: rgba(12, 12, 16, .72);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-fast: .18s;--dur-med: .32s}[data-theme=light]{--bg-primary: #fafafa;--bg-secondary: #ffffff;--bg-tertiary: #efeff2;--text-primary: #17171c;--text-secondary: #5f5f6b;--border: rgba(0, 0, 0, .09);--success: #43a047;--shadow-sm: 0 1px 2px rgba(20, 20, 30, .06), 0 2px 8px rgba(20, 20, 30, .05);--shadow-md: 0 4px 12px rgba(20, 20, 30, .08), 0 12px 32px rgba(20, 20, 30, .07);--shadow-lg: 0 8px 24px rgba(20, 20, 30, .1), 0 24px 64px rgba(20, 20, 30, .1);--scrim-bottom: linear-gradient(to top, rgba(10, 10, 14, .88) 0%, rgba(10, 10, 14, .45) 45%, rgba(10, 10, 14, 0) 100%);--scrim-left: linear-gradient(to right, rgba(10, 10, 14, .88) 0%, rgba(10, 10, 14, .5) 45%, rgba(10, 10, 14, .05) 100%);--chrome-bg: rgba(255, 255, 255, .78)}[data-theme=aero]{--bg-primary: #0a0a0f;--bg-secondary: rgba(30, 30, 40, .7);--bg-tertiary: rgba(50, 50, 60, .7);--text-primary: #ffffff;--text-secondary: #b3b3b3;--border: rgba(255, 255, 255, .1);--success: #4caf50;--chrome-bg: rgba(18, 18, 26, .6)}[data-theme=aero] .header,[data-theme=aero] .hero,[data-theme=aero] .episode-card,[data-theme=aero] .hermit-card,[data-theme=aero] .season-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#1e1e2899!important;border:1px solid rgba(255,255,255,.1)}[data-theme=oled]{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #17171a;--text-primary: #ffffff;--text-secondary: #a8a8b4;--border: rgba(255, 255, 255, .1);--success: #4caf50;--chrome-bg: rgba(0, 0, 0, .78)}[data-theme=hermit]{--bg-primary: rgba(10, 10, 15, .85);--bg-secondary: rgba(30, 30, 40, .85);--bg-tertiary: rgba(50, 50, 60, .85);--text-primary: #ffffff;--text-secondary: #b3b3b3;--border: rgba(255, 255, 255, .15);--success: #4caf50;--chrome-bg: rgba(14, 14, 20, .65)}[data-theme=hermit] body{background-image:var(--hermit-bg);background-size:cover;background-position:center;background-attachment:fixed;background-repeat:no-repeat}[data-theme=hermit] body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0a0a0fb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:-1}[data-theme=hermit] .header,[data-theme=hermit] .hero,[data-theme=hermit] .episode-card,[data-theme=hermit] .hermit-card,[data-theme=hermit] .season-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#1e1e28cc!important;border:1px solid rgba(255,255,255,.1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh}h1,h2,h3{letter-spacing:-.02em;line-height:1.2;font-weight:700}*{transition-property:background-color,border-color,color;transition-duration:.3s;transition-timing-function:ease}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skeleton{position:relative;overflow:hidden;background:var(--bg-tertiary);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);animation:skeleton-shimmer 1.4s infinite}@keyframes skeleton-shimmer{to{transform:translate(100%)}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--border)}::selection{background-color:var(--accent);color:#fff}.ad-section{margin:2rem 0}.ad-section:empty{display:none;margin:0}.ad-section .adsbygoogle:empty{display:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width: 768px){body{font-size:14px}body{-webkit-text-size-adjust:100%}.ad-section{margin:.5rem 0}.ad-section-top{display:none}button,.button{padding:.5rem 1rem;font-size:.875rem;min-height:36px}a{min-height:36px}input,select{min-height:36px;font-size:.875rem;padding:.5rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media (min-width: 769px) and (max-width: 1024px){body{font-size:15px}}
