.wp3dmv-error {
    display:block;
    background:red;
    color: white;
    text-align: center;
    padding:10px;
}

.wp3dmv-error h3 {
    color: #fff;
}

.wp3dmv_openBtn, .wp3dmv_closeBtn, .wp3dmv-ar-button, .wp3dmv-gal-controls {
    position:absolute;
    cursor: pointer;
}

.wp3dmv_info_icn {
    margin-left:10px;
}

.wp3dmv_prev_icn {
    display:inline-block;
}

.wp3dmv_openBtn {
    left:20px;
    bottom:20px;
}

.wp3dmv_closeBtn {
    right:20px;
    top:20px;
}

.wp3dmv_info_close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    background: none;
    border: none;
    display: flex; /* For centering the 'X' */
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.wp3dmv-ar-button {
    left:108px;
    bottom:20px;
    margin: 0px;
    padding:0px;
    background:none;
    align-items: center;
    justify-content: center;
}

.wp3dmv_model {
    width:100%;
    height:100%;
}

.wp3dmv_viewer_parent {
    position:relative;
    width: 100%;
    height:100%;
    display:flex;
    margin: 0;
    padding:0;
    justify-content: center;
    align-items: center;
}

.wp3dmv_fullscreen {
    height:100vh !important;
    max-height: 100% !important;
}

.wp3dmv_hide, .wp3dmv_hidden_templates {
    display:none !important;
}

model-viewer .wp3dmv-poster-wrapper {
    height:100%;
    width:100%;
    margin:0px;
    padding:0px;
    position:relative;
    text-align:center;
    cursor: pointer;
}

model-viewer .wp3dmv-poster-wrapper img {
    max-width:100%;
    height:auto;
}

model-viewer .wp3dmv_reveal_button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin:0px;
    padding:0px;
    width:128px;
    height:128px;
}

/* Gallery Styling Settings */

.wp3dmv-gal-controls {
    right:20px;
    bottom:20px;
    height:24px;
}

model-viewer .wp3dmv-gal-btn {
    display:inline-block;
    width:24px;
    height:24px;
    margin-left:10px;
}

model-viewer .wp3dmv-gal-btn.inactiv {
    fill: #c7c7c7;
}

/* START Gallery info section */

.wp3dmv_viewer_info_icn {
    position: absolute;
    display: flex;
    left:64px;
    bottom:20px;
    cursor: pointer;
}

.wp3dmv_viewer_info_icn, .wp3dmv_slide_info_icn {
    margin-right:10px;
}

.wp3dmv_info_wrapper {
    display: flex;
    flex-direction: column;
    width: 100%; /* Stretches 100% horizontally */
    height: 100%;
    padding: 3rem; /* p-4 */
    background-color: rgba(0,0,0,.5);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); /* shadow-xl */
    /* Removed max-width here, it will now expand fully */
    box-sizing: border-box; /* Include padding in the element's total width and height */
    /* Add align-items: center; to the main-container to center the child blocks */
    align-items: center;
}

.wp3dmv_viewer_info, .wp3dmv_slide_info {
    background:#fff;
    width: 50%; /* w-1/2 - takes 50% of parent's width, which is now 100% of viewport */
    min-width: 18rem;
    max-width: 48rem; /* Added: Constrains the maximum width of each block for readability */
    flex-grow: 1; /* flex-grow */
    padding: 1.5rem; /* p-6 */
    border-radius: 0.375rem; /* rounded-md */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); /* shadow-md */
    display: flex;
    flex-direction: column;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffffff;
    box-sizing: border-box;
    overflow-y: auto;
    z-index:9999;
}

.wp3dmv_viewer_descr p, .wp3dmv-slide-descr p  {
    color: initial;
    font-weight:normal;
}

/* END Gallery info section */