.video-page{padding:1rem 0}.player-section{backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:.75rem;box-shadow:var(--shadow-lg);margin-bottom:1.5rem;overflow:hidden}@media(max-width:768px){.player-section{border-radius:0}}.player-header{align-items:center;background:linear-gradient(135deg,rgba(99,102,241,.1),rgba(139,92,246,.1));border-bottom:1px solid var(--border-color-light);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}@media(max-width:768px){.player-header{align-items:flex-start;flex-direction:column;padding:.75rem 1rem}}.player-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0}.player-title .title-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media(max-width:768px){.player-title{font-size:1.25rem}}.player-badge{background:var(--gradient-primary);border-radius:1rem;box-shadow:var(--shadow-glow);color:#fff;font-size:.75rem;font-weight:600;padding:.375rem .75rem}.player-container,.player-wrapper{background:#000;position:relative;width:100%}.player-container{aspect-ratio:16/9}.dplayer-container{height:100%;width:100%}.player-loading{align-items:center;background:#000;bottom:0;color:#fff;display:flex;flex-direction:column;gap:1rem;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1}.player-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid hsla(0,0%,100%,.1);border-radius:50%;border-top:4px solid var(--primary-500);height:48px;width:48px}.player-info{background:var(--bg-secondary);border-top:1px solid var(--border-color-light);padding:1rem 1.5rem}@media(max-width:768px){.player-info{padding:.75rem 1rem}}.player-tips{align-items:center;color:var(--text-tertiary);display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem;margin-bottom:1rem}.player-tips .tip-item{align-items:center;display:flex;gap:.375rem}.player-tips .tip-item strong{color:var(--text-secondary);font-weight:600}.player-tips .tip-item .tip-icon{height:16px;stroke:var(--primary-500);width:16px}.player-tips .divider{background:var(--border-color);height:16px;width:1px}.player-controls{align-items:center;display:flex;gap:1rem}@media(max-width:480px){.player-controls{align-items:stretch;flex-direction:column}}.next-episode-btn{align-items:center;background:var(--gradient-primary);border-radius:1.5rem;box-shadow:var(--shadow-glow);color:#fff;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;text-decoration:none;transition:all .3s}.next-episode-btn .btn-arrow,.next-episode-btn .btn-icon{height:16px;stroke:currentColor;width:16px}.next-episode-btn:hover{box-shadow:0 8px 20px rgba(99,102,241,.4);transform:translateY(-2px)}.auto-play-switch{align-items:center;cursor:pointer;display:inline-flex;gap:.625rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.auto-play-switch input[type=checkbox]{display:none}.auto-play-switch input[type=checkbox]:checked+.switch-slider{background:var(--gradient-primary)}.auto-play-switch input[type=checkbox]:checked+.switch-slider .slider-dot{transform:translateX(20px)}.auto-play-switch .switch-slider{background:var(--border-color);border-radius:12px;height:24px;position:relative;transition:background .3s;width:44px}.auto-play-switch .switch-slider .slider-dot{background:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.3);height:18px;left:3px;position:absolute;top:3px;transition:transform .3s;width:18px}.auto-play-switch .switch-label{align-items:center;color:var(--text-tertiary);display:flex;font-size:.875rem;font-weight:500;gap:.375rem}.auto-play-switch .switch-label .switch-icon{height:14px;stroke:currentColor;width:14px}.play-section{backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:.75rem;box-shadow:var(--shadow-lg);margin-bottom:1.5rem;padding:1.5rem}@media(max-width:768px){.play-section{border-radius:0;padding:1rem}}.section-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}@media(max-width:768px){.section-header{align-items:flex-start;flex-direction:column;gap:1rem}}.section-title{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:700;gap:.75rem}.section-title .title-icon svg{height:20px;stroke:var(--primary-500);width:20px}.test-speed-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:.5rem;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .3s;white-space:nowrap}.test-speed-btn .btn-icon{height:18px;stroke:currentColor;width:18px}@media(max-width:480px){.test-speed-btn .btn-text{display:none}}.test-speed-btn:hover{background:var(--bg-card-hover);border-color:var(--primary-500);color:var(--primary-500);transform:translateY(-1px)}.test-speed-btn:active{transform:translateY(0)}.test-speed-btn.testing{background:var(--gradient-primary);border-color:transparent;color:#fff;cursor:not-allowed;pointer-events:none}.test-speed-btn.testing .btn-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.source-tabs{border-bottom:1px solid var(--border-color-light);display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem}.source-tab{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color-light);border-radius:.5rem;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;position:relative;transition:all .3s}.source-tab .tab-icon svg{height:16px;stroke:currentColor;width:16px}.source-tab .speed-indicator{border-radius:.25rem;display:inline-block;font-size:.75rem;font-weight:500;margin-left:.25rem;padding:.125rem .375rem;transition:all .3s;white-space:nowrap}.source-tab .speed-indicator:not(.speed-success):not(.speed-info):not(.speed-error){background:hsla(220,9%,46%,.15);color:var(--text-tertiary)}.source-tab.active .speed-indicator:not(.speed-success):not(.speed-info):not(.speed-error){background:hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.8)}.source-tab .speed-indicator.speed-success{background:rgba(34,197,94,.2);border:1px solid rgba(34,197,94,.3);color:#22c55e}.source-tab .speed-indicator.speed-info{background:rgba(59,130,246,.2);border:1px solid rgba(59,130,246,.3);color:#3b82f6}.source-tab .speed-indicator.speed-error{background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.3);color:#ef4444}.source-tab:hover:not(.active){background:var(--bg-card-hover);border-color:var(--primary-500);color:var(--primary-500)}.source-tab.active{background:var(--gradient-primary);border-color:transparent;box-shadow:var(--shadow-glow);color:#fff}.source-tab.active .speed-indicator{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.3);color:#fff}.source-tab.active .speed-indicator.speed-success{background:hsla(0,0%,100%,.25);border-color:hsla(0,0%,100%,.3);color:#d1fae5}.source-tab.active .speed-indicator.speed-info{background:hsla(0,0%,100%,.22);border-color:hsla(0,0%,100%,.3);color:#bfdbfe}.source-tab.active .speed-indicator.speed-error{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.3);color:#fee2e2}.episodes-wrapper{position:relative}.episodes-panel.hidden{display:none}.episodes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.episodes-title{align-items:center;color:var(--text-secondary);display:flex;font-weight:600;gap:.5rem}.episodes-title .title-icon{height:18px;stroke:var(--primary-500);width:18px}.episode-count{font-weight:400}.episode-count,.sort-btn{color:var(--text-tertiary)}.sort-btn{align-items:center;background:transparent;border:1px solid var(--border-color-light);border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;gap:.375rem;padding:.375rem .75rem;transition:all .3s}.sort-btn .sort-icon{height:14px;stroke:currentColor;width:14px}.sort-btn:hover{background:var(--bg-card-hover);border-color:var(--primary-500);color:var(--primary-500)}.episode-link{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color-light);border-radius:.5rem;color:var(--text-secondary);display:flex;font-size:.875rem;justify-content:center;min-width:0;overflow:hidden;padding:.75rem;text-align:center;text-decoration:none;text-overflow:ellipsis;transition:all .3s;white-space:nowrap}.episode-link:hover{background:var(--bg-card-hover);border-color:var(--primary-500);box-shadow:var(--shadow-md);color:var(--primary-500);transform:translateY(-2px)}.episode-link.playing{background:var(--gradient-primary);border-color:transparent;box-shadow:var(--shadow-glow);color:#fff;font-weight:600;position:relative}.episode-link.playing .playing-icon{animation:pulse 1.5s ease-in-out infinite;height:16px;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.video-info-section{backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:.75rem;box-shadow:var(--shadow-lg);margin-bottom:1.5rem;padding:1.5rem}@media(max-width:768px){.video-info-section{border-radius:0;padding:1rem}}.video-info-card{background:var(--bg-secondary);border-radius:.5rem;padding:1.25rem}.video-info-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.video-info-grid .info-item.full-width{align-items:flex-start;grid-column:1/-1}.info-item{align-items:center;display:flex;font-size:.875rem;gap:.75rem}.info-item .info-icon{align-items:center;display:flex;justify-content:center}.info-item .info-icon svg{flex-shrink:0;height:18px;stroke:var(--primary-500);width:18px}.info-item .info-label{color:var(--text-tertiary);flex-shrink:0;font-weight:600}.info-item .info-value{color:var(--text-secondary);flex:1}.video-blurb{border-top:1px solid var(--border-color-light);display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem}.video-blurb .blurb-icon{align-items:flex-start;display:flex}.video-blurb .blurb-icon svg{flex-shrink:0;height:20px;margin-top:.25rem;stroke:var(--primary-500);width:20px}.video-blurb .blurb-text{color:var(--text-secondary);flex:1;font-size:.875rem;line-height:1.7}.recommend-section{backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:.75rem;box-shadow:var(--shadow-lg);padding:1.5rem}@media(max-width:768px){.recommend-section{border-radius:0;padding:1rem}}