/* Popout Window Styles */
.popout-window {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    max-width: 90vw;
    height: 400px;
    max-height: 80vh;
    background-color: #1f1f1f;
    border: 1px solid #3a3a3a;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    display: none;
    z-index: 10000;
    overflow: hidden;
}

.popout-window.active {
    display: block;
}

.popout-header {
    background-color: #2a2a2a;
    padding: 12px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #3a3a3a;
    cursor: grab;
    user-select: none;
}

.popout-header:active {
    cursor: grabbing;
}

.popout-close {
    background: none;
    border: none;
    color: #9ca3af;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: all 0.2s;
}

.popout-close:hover {
    background-color: #3a3a3a;
    color: #fff;
}

.popout-content {
    height: calc(100% - 48px);
    overflow: auto;
    background-color: #1a1a1a;
}

#popout-video-content {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#popout-video-content video,
#popout-video-content .video-container {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .popout-window {
        width: 95vw;
        height: 60vh;
    }
}