/* Minoar Video Browser - v1.1.19 - CSS */

/* --- Admin Modal Styles (Complete) --- */
#minoar-video-browser-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 999999 !important; /* High z-index for admin context */
    display: none; /* Initially hidden, shown via JS */
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0; /* Start hidden for transition */
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s; /* Fade transition */
}

#minoar-video-browser-modal.visible {
    display: flex !important; /* Temporarily add !important */
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
}

/* Close button */
.minoar-video-browser-close-button {
    background: none;
    border: none;
    color: #666;
    font-size: 24px;
    cursor: pointer;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
}

.minoar-video-browser-close-button:hover {
    color: #000;
}

/* Main modal layout */
.minoar-video-browser-modal-content {
    width: 90%;
    height: 85%;
    max-width: 1200px;
    background: #fff;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

/* Modal Header */
.minoar-video-browser-header {
    padding: 15px 20px;
    border-bottom: 1px solid #ddd;
    display: flex;
    align-items: center;
    background: #f7f7f7; /* Light background for header */
    flex-shrink: 0; /* Prevent header from shrinking */
}

.minoar-video-browser-header h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1d2327; /* WP Admin dark gray */
}

.minoar-video-browser-tabs {
    display: flex;
    margin: 0 20px;
}

.minoar-tab {
    padding: 8px 15px; /* Slightly smaller padding */
    margin-right: 5px;
    text-decoration: none;
    color: #50575e; /* WP Admin gray */
    border-bottom: 3px solid transparent;
    font-weight: 500;
    transition: border-color 0.2s ease, color 0.2s ease;
}
.minoar-tab:hover {
    color: #1d2327;
}
.minoar-tab.active {
    font-weight: 600;
    border-bottom-color: #2271b1; /* WP Blue */
    color: #1d2327;
}

/* Modal Body */
.minoar-video-browser-body {
    flex: 1; /* Take remaining space */
    overflow: hidden; /* Prevent body overflow */
    display: flex; /* Use flex for layout */
    background: #fff;
}

/* Tab content */
.minoar-video-browser-tab-content {
    flex: 1;
    display: flex; /* Use flex */
    flex-direction: column;
    overflow: hidden; /* Hide overflow within tab */
}
/* Hide inactive tabs */
.minoar-video-browser-tab-content:not(.active) {
    display: none;
}

/* Filters area */
.minoar-video-browser-filters {
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #eee;
    background: #fdfdfd;
    flex-shrink: 0; /* Prevent shrinking */
}

.minoar-video-browser-filters input[type="search"],
.minoar-video-browser-filters select {
    height: 30px;
    padding: 0 8px;
    border-radius: 3px;
    border: 1px solid #ddd;
}
.minoar-video-browser-filters input[type="search"] {
    flex-grow: 1; /* Allow search to take space */
    max-width: 300px;
}

#minoar-refresh-videos {
    margin-left: auto; /* Push refresh button to the right */
}

/* Content area within browse tab */
.minoar-main-content-area {
    flex: 1; /* Take remaining space */
    display: flex;
    overflow: hidden; /* Important */
}

/* Sidebar */
.minoar-video-browser-sidebar {
    width: 230px; /* Slightly wider */
    min-width: 200px;
    border-right: 1px solid #ddd;
    overflow-y: auto; /* Allow scrolling only if needed */
    background: #f9f9f9;
    flex-shrink: 0;
}

.minoar-folders-container h3 {
    padding: 12px 15px;
    margin: 0;
    font-size: 13px; /* Smaller heading */
    font-weight: 600;
    color: #3c434a;
    border-bottom: 1px solid #eee;
}

.minoar-folders-list {
    margin: 0;
    padding: 5px 0; /* Add some padding */
    list-style: none;
}

.minoar-folder-item {
    padding: 10px 15px; /* More padding */
    cursor: pointer;
    display: flex;
    align-items: center;
    color: #1d2327;
    border-left: 3px solid transparent; /* Indicator for active */
    transition: background-color 0.15s ease, border-color 0.15s ease;
    font-size: 13px;
}

.minoar-folder-item:hover {
    background: #f0f0f1; /* WP subtle hover */
}

.minoar-folder-item.active {
    background: #f0f0f1;
    color: #1d2327;
    font-weight: 600;
    border-left-color: #2271b1; /* WP Blue */
}

.minoar-folder-item .dashicons {
    margin-right: 8px;
    color: #50575e; /* Icon color */
}
.minoar-folder-item.active .dashicons {
    color: #2271b1;
}


/* Video Content area (right side) */
.minoar-video-browser-content {
    flex: 1; /* Take remaining space */
    display: flex;
    flex-direction: column;
    overflow: hidden; /* Important */
}

.minoar-videos-container {
    flex: 1; /* Allow grid to take space */
    overflow-y: auto; /* Scroll grid area */
    padding: 15px;
}

.minoar-videos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); /* Slightly smaller min */
    gap: 15px;
    width: 100%;
}
.minoar-videos-grid .loading,
.minoar-videos-grid .error,
.minoar-videos-grid .empty {
    grid-column: 1 / -1; /* Span full width */
    text-align: center;
    padding: 20px;
    color: #50575e;
}

.minoar-video-item {
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    display: flex;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07);
    height: auto; /* Let content define height */
    position: relative; /* For potential absolute elements inside */
}
.minoar-video-item:focus {
    outline: 1px dashed #2271b1;
    outline-offset: 2px;
}

.minoar-video-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-color: #ccc;
}

.minoar-video-item.selected {
    border-color: #2271b1;
    box-shadow: 0 0 0 2px #2271b1, 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Video thumbnail */
.minoar-video-thumbnail {
    /* Use aspect-ratio for modern browsers */
    aspect-ratio: 16 / 9;
    background: #f0f0f1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.minoar-video-thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Cover is usually better for thumbs */
}

.minoar-video-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #f0f0f1;
    position: absolute; /* Overlay on thumbnail area */
    top: 0; left: 0;
}
.minoar-thumbnail-generated img {
     object-fit: contain; /* Contain for generated thumbs */
}

.minoar-video-placeholder .dashicons {
    font-size: 36px;
    width: 36px;
    height: 36px;
    color: #888;
}

/* Video info */
.minoar-video-info {
    padding: 10px;
    flex-grow: 1;
    overflow: hidden;
    background: #fff;
    border-top: 1px solid #eee;
}

.minoar-video-title {
    margin: 0 0 5px;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #1d2327;
    line-height: 1.3;
}

.minoar-video-meta {
    display: flex;
    font-size: 11px;
    color: #666;
    gap: 10px; /* More gap */
    flex-wrap: wrap; /* Allow wrapping */
}

/* Video preview area (bottom of browse tab) */
.minoar-video-preview {
    padding: 15px;
    border-top: 1px solid #ddd;
    display: flex;
    align-items: flex-start;
    gap: 15px;
    background: #f9f9f9;
    flex-shrink: 0; /* Prevent shrinking */
}

.minoar-preview-video-container {
    flex: 0 0 320px; /* Fixed width */
    max-width: 40%; /* Limit width */
}

.minoar-preview-video-container video {
    width: 100%;
    display: block;
    background: #000;
    border: 1px solid #ccc;
}

.minoar-preview-info {
    flex: 1;
    min-width: 0; /* Allow shrinking */
}

.minoar-preview-info h3 {
    margin: 0 0 10px;
    font-size: 15px;
    font-weight: 600;
    color: #1d2327;
    word-break: break-word;
}

.minoar-preview-meta {
    margin-bottom: 10px;
    display: flex;
    gap: 15px;
    color: #50575e;
    font-size: 12px;
    flex-wrap: wrap;
}
.minoar-preview-meta span {
    background: #eee;
    padding: 2px 6px;
    border-radius: 3px;
}

.minoar-preview-path {
    color: #555;
    font-family: monospace;
    font-size: 12px;
    word-break: break-all;
    background: #eee;
    padding: 5px;
    border-radius: 3px;
    margin-top: 10px;
}

/* Upload tab */
.minoar-upload-container {
    padding: 25px;
    max-width: 650px;
    margin: 20px auto; /* Center in tab */
    overflow-y: auto; /* Allow scrolling if content overflows */
    flex-grow: 1;
}

.minoar-upload-field {
    margin-bottom: 20px;
}

.minoar-upload-field label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #1d2327;
    font-size: 13px;
}

.minoar-upload-field select,
.minoar-upload-field input[type="file"],
.minoar-upload-field input[type="text"] { /* Added text for consistency */
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #8c8f94; /* WP input border */
    border-radius: 3px;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.07);
    font-size: 14px;
}
.minoar-upload-field input[type="file"] {
    padding: 5px; /* Different padding for file input */
}
.minoar-upload-field .description {
    font-size: 12px;
    color: #50575e;
    margin-top: 5px;
}

/* Upload Progress */
.minoar-upload-progress {
    margin: 20px 0;
}
.minoar-progress-bar {
    height: 8px; /* Slimmer bar */
    background: #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
    position: relative;
}
.minoar-progress-fill {
    height: 100%;
    background: #2271b1; /* WP Blue */
    width: 0%;
    transition: width 0.3s ease;
    border-radius: 4px;
}
.minoar-progress-text {
    text-align: right;
    margin-top: 5px;
    font-size: 12px;
    color: #50575e;
    font-weight: 500;
}

/* Upload Status Messages */
.minoar-upload-status {
    margin: 20px 0;
    padding: 10px 15px;
    display: none; /* Hidden by default */
    border-radius: 3px;
    border-width: 1px;
    border-style: solid;
    font-size: 13px;
}
/* Using WP Admin notice colors */
.minoar-upload-status.success { /* notice-success */
    background: #f0f8ff;
    border-color: #cce7fe;
    color: #004085;
}
.minoar-upload-status.error { /* notice-error */
    background: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

/* Thumbnail preview styles */
.minoar-thumbnail-preview {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}
.minoar-thumbnail-preview > label { /* Style the main label */
    display: block;
    margin-bottom: 10px;
    font-weight: 600;
    color: #1d2327;
    font-size: 13px;
}

.minoar-thumbnail-container {
    max-width: 320px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
    background: #f5f5f5;
}

#minoar-thumbnail-canvas {
    display: block;
    width: 100%;
    height: auto; /* Let aspect ratio define height */
    background: #000;
}

.minoar-thumbnail-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background: #f7f7f7;
    border-top: 1px solid #eee;
}

#minoar-video-seekbar {
    flex: 1;
    height: 5px; /* Slimmer seekbar */
}

#minoar-video-timestamp {
    min-width: 45px;
    text-align: right;
    font-family: monospace;
    font-size: 12px;
    color: #3c434a;
}

.minoar-upload-actions {
    margin-top: 25px;
    text-align: right;
}


/* Footer */
.minoar-video-browser-footer {
    padding: 15px 20px;
    border-top: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    background: #f7f7f7;
    align-items: flex-start; /* Align items to top */
    flex-shrink: 0;
}

/* Footer: Shortcode Options (Classic Editor) */
.minoar-shortcode-options {
    flex: 3; /* Take more space */
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    min-width: 0; /* Allow shrinking */
}

.minoar-option-group {
    flex: 1 1 150px; /* Allow growing and shrinking, base width 150px */
    min-width: 120px; /* Minimum width before wrapping */
}

.minoar-option-group label:not(.minoar-option-checkbox label) { /* Exclude checkbox labels */
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
    color: #3c434a;
    font-size: 12px;
}

.minoar-option-group select,
.minoar-option-group input[type="text"],
.minoar-option-group input[type="hidden"] {
    width: 100%;
    height: 30px;
    padding: 0 8px;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 13px;
}
.minoar-option-group input[type="checkbox"] {
    margin-right: 5px;
    vertical-align: middle;
}
.minoar-option-checkbox label {
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #3c434a;
    cursor: pointer;
}

/* Poster Selection */
.minoar-poster-selection {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 5px;
}
.minoar-poster-preview {
    width: 60px;
    height: 34px; /* 16:9 approx */
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}
.minoar-poster-preview img {
    max-width: 100%;
    max-height: 100%;
    display: block;
}
.minoar-poster-preview .no-poster {
    font-size: 10px;
    color: #666;
    text-align: center;
    line-height: 1.2;
}
.minoar-poster-selection .button {
    padding: 4px 10px;
    font-size: 12px;
    height: auto;
    line-height: 1.4;
}


/* Footer: Shortcode Actions (Classic Editor) */
.minoar-shortcode-actions {
    flex: 2; /* Take less space */
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 250px; /* Min width */
}

#minoar-shortcode-preview {
    padding: 8px 10px;
    background: #f0f0f1;
    border: 1px solid #ddd;
    border-radius: 3px;
    word-break: break-all;
    font-family: monospace;
    font-size: 11px;
    color: #333;
    min-height: 40px; /* Min height */
    line-height: 1.4;
}

/* Footer: Elementor Actions */
.minoar-elementor-actions {
    flex: 1;
    font-size: 13px;
    color: #50575e;
}
.minoar-elementor-actions p {
    margin: 0 0 10px;
}

/* Footer: Action Buttons (Common) */
.minoar-action-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: auto; /* Push buttons to bottom if space allows */
}

.minoar-action-buttons .button {
    padding: 8px 16px;
    height: auto;
    line-height: 1.5;
    min-height: 36px;
}
.minoar-action-buttons .button[disabled] {
    cursor: not-allowed;
    opacity: 0.7;
}

/* --- Frontend Video Player Styles (v1.1.19) --- */

/* Base container for the video */
.minoar-video-container {
    position: relative; /* Needed for absolute positioning of video player */
    width: 100%;
    overflow: hidden; /* Hide anything spilling out */
    background-color: transparent; /* Ensure container background is transparent */
    line-height: 0; /* Prevent extra space below */
    min-height: 1px; /* Ensure it has some height even if empty initially */
    border-radius: inherit; /* Inherit border-radius from widget wrapper */
    mask-image: radial-gradient(white, black); /* Standard property */
    -webkit-mask-image: -webkit-radial-gradient(white, black); /* Fix for Safari border-radius/overflow */
}

/* Aspect Ratios - using padding-bottom trick */
.minoar-video-container.aspect-16-9 { padding-bottom: 56.25%; height: 0; }
.minoar-video-container.aspect-4-3  { padding-bottom: 75%; height: 0; }
.minoar-video-container.aspect-1-1  { padding-bottom: 100%; height: 0; }

/* Original Aspect Ratio - let video/poster define height */
.minoar-video-container.aspect-original {
    padding-bottom: 0; /* Remove padding trick */
    height: auto; /* Height is determined by content */
    /* Add a sensible min-height to prevent collapse before content loads */
    min-height: 150px; /* Adjust as needed */
}

/* Video.js player positioning within the container */
.minoar-video-container .video-js {
    /* Default to absolute positioning for aspect ratio trick */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent; /* Ensure player background is transparent */
}

/* Adjust Video.js player for original aspect ratio */
.minoar-video-container.aspect-original .video-js {
    position: relative; /* Change from absolute */
    width: 100%;
    height: auto; /* Height based on video/poster */
}

/* The actual <video> element styling (inside Video.js) */
.minoar-video-container .video-js .vjs-tech {
    /* Ensure it fills the Video.js container */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* object-fit is controlled by container class below */
    object-position: center center; /* Center the video */
    background-color: transparent; /* Ensure video element background is transparent */
}

/* --- Poster Image Styling (Keep robust rules from v1.1.16) --- */

/* Container for the poster image generated by Video.js */
.minoar-video-container .vjs-poster {
    position: absolute; /* Position absolutely within the .video-js container */
    top: 0;
    left: 0;
    right: 0; /* Use right/bottom instead of width/height 100% for robustness */
    bottom: 0;
    margin: 0;
    padding: 0;
    background-color: transparent; /* Ensure poster container itself is transparent */
    background-image: none !important; /* Hide VJS's own background attempt */
    overflow: hidden; /* Prevent potential overflow from the img */
    display: block; /* Ensure it takes up space */
    z-index: 1; /* Ensure poster is above tech but below controls */
}

/* The actual <img> tag used by Video.js for the poster */
.minoar-video-container .vjs-poster img {
    display: block; /* Remove potential inline spacing */
    /* Size: Fill the container */
    width: 100%;
    height: 100%;
    /* Positioning: Position absolutely within the .vjs-poster container */
    position: absolute;
    top: 0;
    left: 0;
    margin: 0; /* Reset margin */
    padding: 0; /* Reset padding */
    /* Fit: Controlled by parent container class */
    object-fit: cover; /* Default fit */
    object-position: center center;
    /* Ensure it's visually present */
    opacity: 1;
    visibility: visible;
    background-color: transparent; /* Ensure img background is transparent */
}

/* --- Video/Poster Fit Control --- */

/* Contain Fit */
.minoar-video-container.video-contain .vjs-tech { object-fit: contain; }
.minoar-video-container.video-contain .vjs-poster img { object-fit: contain; } /* Apply to image */

/* Cover Fit (Default, but explicit rules for clarity) */
.minoar-video-container.video-cover .vjs-tech { object-fit: cover; }
.minoar-video-container.video-cover .vjs-poster img { object-fit: cover; } /* Apply to image */


/* --- Fullwidth Fix (v1.1.19 - Negative Margin + User Class for Overflow) --- */
.minoar-video-container.fullwidth {
    width: 100%; /* Use 100% of parent */
    max-width: none; /* Allow it to exceed standard max-width */
    position: relative;
    /* Centering trick using negative margins relative to viewport width */
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    box-sizing: border-box;
}

/* Class to be added MANUALLY by the user to the parent .elementor-section */
/* Use !important to ensure override */
.elementor-section.minoar-clip-overflow {
    overflow: hidden !important; /* Use shorthand overflow */
}


/* --- Background Video Specific Styles (No Controls/Poster) --- */
.minoar-background-video .vjs-control-bar,
.minoar-background-video .vjs-big-play-button,
.minoar-background-video .vjs-loading-spinner,
.minoar-background-video .vjs-error-display,
.minoar-background-video .vjs-modal-dialog,
.minoar-background-video .vjs-poster, /* Also hide poster element for background video */
.minoar-background-video .vjs-text-track-display {
    display: none !important;
}
/* Ensure the video itself is visible and covers */
.minoar-background-video .vjs-tech {
    display: block;
    object-fit: cover; /* Force cover for background */
}

/* --- Elementor Specific Overrides & Fixes --- */

/* Base widget wrapper */
.elementor-widget-minoar_video {
    width: 100%;
    position: relative;
    line-height: 0;
    /* Removed flex rule from v1.1.17 */
    /* flex: 0 0 100%; */
}
.elementor-widget-minoar_video .elementor-widget-container {
    line-height: 0;
}

/* Apply Elementor styles (border-radius handled by container now) */
/* Box shadow is applied directly via Elementor controls to {{WRAPPER}} .minoar-video-container */

/* Ensure controls are clickable */
.elementor-widget-minoar_video .video-js .vjs-control-bar {
    z-index: 2; /* Ensure controls are above poster/video */
    opacity: 1;
    visibility: visible;
}

/* Fix potential minimum height issues in editor */
.elementor-editor-active .elementor-widget-minoar_video .minoar-video-container {
    min-height: 150px; /* Ensure visible height in editor */
    background-color: #e0e0e0; /* Placeholder background in editor */
}
.elementor-editor-active .elementor-widget-minoar_video .minoar-video-container.aspect-original {
    min-height: 200px; /* Slightly taller min-height for original aspect in editor */
}

/* Style for the editor preview placeholder */
.minoar-video-elementor-preview {
    position: relative; width: 100%; background-color: #e9e9e9; min-height: 150px;
    display: flex; align-items: center; justify-content: center;
    border: 1px dashed #ccc;
    border-radius: inherit; /* Inherit from widget style */
    overflow: hidden; /* Match container overflow */
    background-size: cover; /* Apply fit to background preview */
    background-position: center center;
    background-repeat: no-repeat;
}
 .minoar-video-elementor-preview.aspect-16-9 { padding-bottom: 56.25%; height: 0; }
 .minoar-video-elementor-preview.aspect-4-3 { padding-bottom: 75%; height: 0; }
 .minoar-video-elementor-preview.aspect-1-1 { padding-bottom: 100%; height: 0; }
 .minoar-video-elementor-preview.aspect-original { padding-bottom: 0; height: auto; min-height: 150px; }
 .minoar-video-elementor-preview.video-contain { background-size: contain; }

.minoar-preview-overlay { text-align: center; color: #333; padding: 15px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; background: rgba(255,255,255,0.8); border-radius: 5px;}
 .minoar-preview-overlay i { font-size: 30px; margin-bottom: 10px; color: #666; }
 .minoar-preview-text { font-weight: 500; word-break: break-word; font-size: 13px; }
 .minoar-preview-text small { font-weight: normal; color: #555; display: block; margin-top: 5px; font-size: 11px; }
.minoar-preview-badge { background: rgba(0,0,0,0.6); color: white; font-size: 10px; padding: 2px 5px; border-radius: 3px; margin: 5px 2px 0; display: inline-block; vertical-align: middle; }


/* --- Utility --- */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* --- Final Checks --- */
/* Ensure no default browser styles interfere */
.minoar-video-container video::-webkit-media-controls-panel,
.minoar-video-container video::-webkit-media-controls-play-button,
.minoar-video-container video::-webkit-media-controls-start-playback-button {
    display: none !important;
    -webkit-appearance: none;
}

/* iOS Safari specific fixes - Kept from previous attempt */
@supports (-webkit-touch-callout: none) {
    /* Target Safari on iOS specifically */
    .minoar-video-container .vjs-poster img {
        /* Force hardware acceleration for smoother transitions */
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }

    /* Prevent iOS from applying unwanted sizing to the video */
    .minoar-video-container .video-js .vjs-tech {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        width: 100% !important;
        height: 100% !important;
    }
}
