.modern-video-container{position:relative;width:100%;background:rgb(var(--surface-primary));overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.08);transition:all .3s ease}.modern-video-container:hover{box-shadow:0 8px 32px rgba(0,0,0,.12)}.video-element{width:100%;height:100%}.video-js{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:rgb(var(--surface-primary));color:var(--text-primary);overflow:hidden}.video-js .vjs-control-bar{border-top:1px solid rgb(var(--surface-elevated));height:48px;padding:0 5px}.video-js .vjs-big-play-button,.video-js .vjs-control-bar{background:rgba(var(--surface-primary),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center}.video-js .vjs-big-play-button{width:64px!important;height:64px!important;border-radius:50%;border:none;color:var(--text-primary);font-size:20px;transition:all .3s ease;justify-content:center;opacity:1}.video-js .vjs-big-play-button .vjs-icon-placeholder:before{display:flex;justify-content:center;align-items:center}.video-js.vjs-has-started .vjs-big-play-button{opacity:0;visibility:hidden;pointer-events:none}.video-js .vjs-big-play-button:hover{background:rgba(var(--surface-secondary),.6);transform:scale(1.05)}.video-js .vjs-big-play-button .vjs-icon-placeholder:before{color:var(--text-primary);font-size:20px}.video-js .vjs-control{color:var(--text-secondary);transition:all .2s ease}.video-js .vjs-control:hover{color:var(--text-primary)}.video-js .vjs-button{width:36px;height:30px;border-radius:8px;transition:all .2s ease}.video-js .vjs-button,.video-js .vjs-control.vjs-button{display:flex;align-items:center;justify-content:center}.video-js .vjs-current-time,.video-js .vjs-duration,.video-js .vjs-time-divider{color:var(--text-secondary);font-size:13px;font-weight:500;line-height:1}.video-js .vjs-current-time-display,.video-js .vjs-duration-display{color:var(--text-secondary)}.video-js .vjs-load-progress{background:red!important}.video-js .vjs-progress-control{flex:1;height:32px;display:flex;align-items:center}.video-js .vjs-progress-holder{height:4px;background:rgb(var(--surface-muted));border-radius:2px;transition:height .2s ease;cursor:pointer}.video-js .vjs-progress-control:hover .vjs-progress-holder{height:6px}.video-js .vjs-load-progress,.video-js .vjs-load-progress div{background:var(--primary-color-green)!important;border-radius:0}.video-js .vjs-play-progress{background:var(--primary-color-sky-blue);border-radius:0;position:relative}.video-js .vjs-play-progress:before{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:12px;height:12px;background:var(--accent-color);border-radius:50%;opacity:0;transition:opacity .2s ease}.video-js .vjs-progress-control:hover .vjs-play-progress:before{opacity:1}.video-js .vjs-volume-control{display:flex;align-items:center;gap:8px}.video-js .vjs-volume-bar{width:60px;height:4px;background:rgb(var(--surface-muted));border-radius:2px}.video-js .vjs-volume-level{background:var(--accent-color);border-radius:2px;height:100%}.vjs-remaining-time.vjs-time-control.vjs-control{padding-top:7px!important}.video-js .vjs-playback-rate .vjs-playback-rate-value{color:var(--text-secondary)!important;font-size:12px;font-weight:500;min-width:32px;text-align:center;padding-top:1px}.video-js .vjs-button:hover .vjs-playback-rate{color:var(--text-primary)!important}.video-js .vjs-playback-rate .vjs-menu{bottom:0}.video-js .vjs-playback-rate .vjs-menu .vjs-menu-content{background:rgba(var(--surface-tertiary),.9);backdrop-filter:blur(40px)!important;-webkit-backdrop-filter:blur(20px);border-radius:8px;padding:4px;min-width:80px}.video-js .vjs-playback-rate .vjs-menu .vjs-menu-item{color:var(--text-secondary);padding:6px 12px;border-radius:4px;font-size:13px;transition:all .2s ease}.video-js .vjs-playback-rate .vjs-menu .vjs-menu-item:focus,.video-js .vjs-playback-rate .vjs-menu .vjs-menu-item:hover{background:rgb(var(--surface-muted));color:var(--text-primary)}.video-js .vjs-playback-rate .vjs-menu .vjs-menu-item.vjs-selected{background:var(--primary-color-sky-blue)}.video-js .vjs-playback-rate .vjs-menu .vjs-menu-item.vjs-selected span{color:#fff}.quality-overlay{position:absolute;top:16px;right:16px;z-index:1000}.quality-selector-wrapper{position:relative}.quality-toggle{display:flex;align-items:center;gap:6px;padding:8px 12px;background:rgba(var(--surface-primary),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgb(var(--surface-elevated));border-radius:8px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.quality-toggle:hover{background:rgba(var(--surface-secondary),.6);color:var(--text-primary);transform:translateY(-1px)}.quality-toggle.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.quality-menu{position:absolute;top:calc(100% + 8px);right:0;background:rgba(var(--surface-secondary),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgb(var(--surface-elevated));border-radius:8px;padding:8px;min-width:140px;box-shadow:0 8px 24px rgba(0,0,0,.12);animation:fadeInUp .2s ease}.quality-header{color:var(--text-tertiary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;margin-bottom:4px}.quality-list{display:flex;flex-direction:column;gap:2px}.quality-item{display:flex;align-items:center;justify-content:space-between;padding:8px;border-radius:6px;color:var(--text-secondary);font-size:13px;transition:all .2s ease;cursor:pointer;border:none;background:transparent}.quality-item:hover{background:rgb(var(--surface-tertiary));color:var(--text-primary)}.quality-item.active{background:var(--accent-color);color:#fff}.quality-badge{font-size:11px;color:var(--text-muted);font-weight:500}.quality-item.active .quality-badge{color:hsla(0,0%,100%,.8)}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(var(--surface-primary),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:12px}.loading-content{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-secondary)}.loading-spinner{width:32px;height:32px;position:relative}.spinner-ring{width:100%;height:100%;border-top:2px solid rgb(var(--surface-muted));border:2px solid rgb(var(--surface-muted));border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.error-state{position:absolute;inset:0;justify-content:center;background:rgba(var(--surface-primary),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:12px}.error-content,.error-state{display:flex;align-items:center}.error-content{flex-direction:column;gap:16px;text-align:center;padding:32px;max-width:300px}.error-content svg{color:var(--text-muted)}.error-content h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.error-content p{color:var(--text-tertiary);font-size:14px;margin:0;line-height:1.5}.retry-button{padding:10px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:var(--accent-hover);transform:translateY(-1px)}.video-js .vjs-icon-placeholder:before,.video-js svg{color:var(--text-secondary);transition:color .2s ease}.video-js .vjs-control:hover .vjs-icon-placeholder:before,.video-js .vjs-control:hover svg{color:var(--text-primary)}.video-js.vjs-fullscreen,.video-js.vjs-fullscreen .vjs-control-bar{border-radius:0}@media (max-width:768px){.video-js .vjs-control-bar{padding:0 12px;height:44px}.quality-overlay{top:12px;right:12px}.quality-toggle{padding:6px 10px;font-size:11px}.quality-menu{min-width:120px}.video-js .vjs-big-play-button{width:56px;height:56px;font-size:18px}.modern-video-container{border-radius:8px}.error-content{padding:24px}}@media (max-width:480px){.video-js .vjs-control-bar{gap:4px;padding:0 8px}.video-js .vjs-button{width:32px;height:32px}.video-js .vjs-volume-control{display:none}.quality-toggle{padding:4px 8px}.modern-video-container{border-radius:6px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.quality-item:focus,.quality-toggle:focus,.retry-button:focus,.video-js .vjs-control:focus{outline:2px solid var(--accent-color);outline-offset:2px}.vjs-volume-panel{display:flex;align-items:center}.error-state,.loading-overlay,.quality-menu,.quality-toggle,.video-js .vjs-control-bar{transition:all .3s cubic-bezier(.4,0,.2,1)}.video-js .vjs-menu-button-popup .vjs-menu{display:none}.quality-overlay{z-index:100}.error-state,.loading-overlay{z-index:200}.vjs-quality-selector{display:flex;justify-content:center;align-items:center;padding-top:5px}.vjs-quality-selector :before{font-size:17px}[data-theme=dark] .modern-video-container{box-shadow:0 4px 24px rgba(0,0,0,.4)}[data-theme=dark] .modern-video-container:hover{box-shadow:0 8px 32px rgba(0,0,0,.6)}[data-theme=dark] .quality-menu,[data-theme=dark] .video-js .vjs-playback-rate .vjs-menu .vjs-menu-content{box-shadow:0 8px 24px rgba(0,0,0,.6)}