.ab-video-player{width:100%;max-width:100%}.video-player-wrapper{position:relative;width:100%;background-color:var(--compass-black);border-radius:var(--radius-base);overflow:hidden}.video-player-video{width:100%;height:auto;display:block}.video-player-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:var(--space-3) var(--space-2) var(--space-2);display:flex;align-items:center;gap:var(--space-2);opacity:0;transition:opacity var(--transition-base)}.video-player-wrapper:hover .video-player-controls,.video-player-controls.visible{opacity:1}.video-control-btn{background:none;border:none;color:var(--compass-white);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color var(--transition-fast);flex-shrink:0}.video-control-btn:hover{background-color:#fff3}.video-control-btn:focus{outline:2px solid var(--compass-white);outline-offset:2px;background-color:#ffffff4d}.video-control-btn svg{width:24px;height:24px}.video-progress-container{flex:1;display:flex;align-items:center;gap:var(--space-2)}.video-progress-bar{flex:1;height:6px;background-color:#ffffff4d;border-radius:3px;cursor:pointer;position:relative;overflow:hidden}.video-progress-bar:hover{height:8px}.video-progress-filled{height:100%;background-color:var(--accent-primary);width:0;transition:width .1s linear}.video-time{color:var(--compass-white);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;min-width:80px;text-align:center}.video-volume-slider{width:80px;height:4px;border-radius:2px;background:#ffffff4d;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.video-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--compass-white);cursor:pointer;border:none}.video-volume-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--compass-white);cursor:pointer;border:none}.video-volume-slider:focus{outline:2px solid var(--compass-white);outline-offset:2px}@media(max-width:768px){.video-player-controls{padding:var(--space-2) var(--space-1);gap:var(--space-1)}.video-control-btn{padding:.375rem}.video-control-btn svg{width:20px;height:20px}.video-volume-slider{display:none}.video-time{font-size:var(--text-xs);min-width:70px}.video-progress-bar{height:4px}.video-progress-bar:hover{height:6px}}.video-player-wrapper:fullscreen{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center}.video-player-wrapper:fullscreen .video-player-video,.video-player-wrapper:-webkit-full-screen .video-player-video{max-width:100%;max-height:100%;width:auto;height:auto}.video-player-video[poster]{background-color:var(--compass-black)}.video-player-video::cue{background-color:#000c;color:var(--compass-white);font-size:var(--text-base);line-height:var(--leading-normal)}.video-player-mobile-fallback{position:relative;width:100%;background-color:var(--compass-black);border-radius:var(--radius-base);overflow:hidden;aspect-ratio:16 / 9}.video-fallback-poster{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.video-fallback-overlay,.video-fallback-message{display:none}.video-fallback-message svg{width:48px;height:48px;opacity:.7;flex-shrink:0}.video-fallback-message p{margin:0;font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-normal)}.ab-video-player[data-loading=true] .video-player-wrapper{min-height:300px;display:flex;align-items:center;justify-content:center;background:var(--compass-gray-100)}.ab-video-player[data-loading=true]:after{content:"Loading video...";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--compass-gray-600);font-size:var(--text-sm);font-weight:var(--weight-medium)}.ab-video-player[data-lazy=true] .video-player-video{background:var(--compass-gray-100);min-height:400px}.video-player-error{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);background:var(--compass-black);color:var(--compass-white);text-align:center;padding:var(--space-4)}.video-player-error svg{opacity:.6}.video-player-error p{margin:0;font-size:var(--text-base);font-weight:var(--weight-medium)}.video-error-retry{background:var(--compass-white);color:var(--compass-black);border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:opacity var(--transition-fast)}.video-error-retry:hover{opacity:.9}.video-error-retry:focus-visible{outline:2px solid var(--compass-white);outline-offset:2px}@media(max-width:768px){.video-player-mobile-fallback{aspect-ratio:16 / 9}.video-fallback-message{padding:var(--space-3);max-width:240px}.video-fallback-message svg{width:40px;height:40px}.video-fallback-message p{font-size:var(--text-xs)}}
