@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
/* Default (light) mode variables */
:root {
    --background-color: #ffffff;
    --background-color-2: #cccccc;
    --background-color-3: #8d8d8d;
    --background-color-4: #8d8d8d;
    --text-color: #676767;
    --icons: #555;
    --accent-color: #ffbd07;
}

/* System-based dark mode variables */
@media (prefers-color-scheme: dark) {
    :root {
        --background-color: #000000;
        --background-color-2: #121212;
        --background-color-3: #434343;
        --background-color-4: #555555;
        --text-color: #ffffff;
        --icons: #8e8e8e;
        --accent-color: #ffbd07;
    }
}

/* Manual manual dark mode override */
:root.dark-mode {
    --background-color: #000000;
    --background-color-2: #121212;
    --background-color-3: #434343;
    --background-color-4: #555555;
    --text-color: #ffffff;
    --icons: #8e8e8e;
    --accent-color: #ffbd07;
}

/* Manual light mode override (if you wish to force light mode) */
:root.light-mode {
    --background-color: #ffffff;
    --background-color-2: #cccccc;
    --background-color-3: #8d8d8d;
    --background-color-4: #8d8d8d;
    --text-color: #676767;
    --icons: #555;
    --accent-color: #ffbd07;
}

/* Global element styling based on variables */
body {
    background-color: var(--background-color);
    color: var(--text-color);
}

/* Default styling for #yellow-div */
#yellow-div {
    position: relative;
    background-color: var(--background-color);
}
#yellow-div::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    filter: none;  /* default: no inversion */
    mix-blend-mode: normal;
    z-index: -1;
}

/* When system dark mode is active */
@media (prefers-color-scheme: dark) {
    #yellow-div {
        background-color: #222;
    }
    #yellow-div::before {
        filter: invert(100%);
        mix-blend-mode: multiply;
    }
}

/* When manual dark mode override is active */
:root.dark-mode #yellow-div {
    background-color: #222;
}
:root.dark-mode #yellow-div::before {
    filter: invert(100%);
    mix-blend-mode: multiply;
}

/* When manual light mode override is active */
:root.light-mode #yellow-div {
    background-color: var(--background-color);
}
:root.light-mode #yellow-div::before {
    filter: none;
    mix-blend-mode: normal;
}

input[type="text"],
input[type="number"] {
  background-color: var(--background-color);
  color: var(--text-color);
}

/* Global Styles */
body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    overflow: hidden;
    touch-action: manipulation; /* Prevents double-tap zoom while still allowing other gestures */
    -webkit-user-select: none; /* Prevents text selection on touch devices */
    user-select: none;
    font-family: 'Source Sans Pro', sans-serif; /* Applying the master font family */
    background-color: var(--background-color); /* Light grey background for the entire page */
}

/* Container */
#container {
    display: flex;
    height: 100vh;
    position: relative; /* Ensure proper positioning context */
    overflow-x: hidden;
}

/* Panels */
#red-panel {
    background-color: var(--background-color);
    height: 100dvh;
    width: 50%;
    position: relative;
    display: flex;
    flex-direction: column; /* Stack left-top-panel and left-bottom-panel */
    overflow: hidden;
    z-index: 1; /* Background of the red panel */
}

/* Initially hide the green overlay */
#paint-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 128, 0, 0.5); /* Green color with 50% opacity */
    pointer-events: none; /* Allows clicks to pass through */
    display: none; /* Hidden by default */
    z-index: 2; /* Ensure it's on top of the red panel content */
    mix-blend-mode: multiply;

}

#color-picker-container {
    z-index: 1100; /* Ensure it's above other elements */
}

#color-picker-options {
    z-index: 1100; /* Ensure it's above other elements */
    display: none;
}

#wall-color-button {
    position: relative;
    z-index: 1200;
}

/* Left Top Panel */
#left-top-panel {
    flex-grow: 1; /* Fills remaining space above left-bottom-panel */
    display: flex;
    justify-content: center; 
    align-items: center; 
    position: relative;
    height: 100dvh;
    z-index: 3; /* Base level */

}

/* Left Bottom Panel */
#left-bottom-panel {
    height: 50px; /* Fixed height */
    width: 100%; /* Same width as red-panel */
    background-color: var(--background-color-2); 
    display: flex;
    flex-direction: column;
    position: absolute; /* Pin relative to the parent */
    bottom: 0; /* Pin to the bottom of the parent */
    left: 0; /* Align to the left edge */
    right: 0; /* Align to the right edge (inherits parent's width) */
    z-index: 4; /* Ensure it's on top of the red panel content */
    user-select: none;
    -webkit-user-select: none;
    box-sizing: border-box; /* Ensure borders/padding don't affect size */
}

/* Brown Panel (Inside Left Bottom Panel) 
#brown-panel {
    position: absolute; 
    top: 0;       
    left: 0;      
    width: 100%;
    width: 100%; 
    display: flex;
    align-items: center; 
    z-index: 10; 
    background-color: #f1f1f1;
    box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.1); 
}

*/

/*
#purple-panel-toolbar {
    position: relative;
    bottom: 0;
    left: 0;
    right: 0;
    height: 45px;
    background-color: #f1f1f1;
    display: flex;
    align-items: center; 
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.1); 
}
*/
/*
#brown-panel-item-contents {
    display: flex;
    width: 100%;
    justify-content: center; 
    align-items: center;            
}
*/

/*
#brown-panel-artwork-contents {
    display: flex;
    width: 100%;
    justify-content: center;  
    align-items: center;            
}
*/

.toolbar-right {
    position: absolute;
    right: 0;       /* Stick to the right side */
    top: 50%;       /* Vertically center it */
    transform: translateY(-50%); /* Adjust for vertical centering */
    display: flex;
}

.toolbar-left {
    position: absolute;
    left: 50px; /* Offset 50px from the left edge */
    top: 50%; /* Vertically center the toolbar */
    transform: translateY(-50%); /* Adjust for vertical centering */
    display: flex;
}


.artwork-buttons {
    position: absolute;
    left: 50%; /* Center horizontally */
    top: 50%;  /* Center vertically */
    transform: translate(-50%, -50%); /* Adjust both horizontal and vertical centering */
    display: flex;
    justify-content: center; /* Center items within the flex container */
    align-items: center; /* Center items vertically within the flex container */
}






/* Styles for both jw-logo and jw-logo-artwork */
#jw-logo,
#jw-logo-artwork {
    background-color: transparent; /* Example background color */
    background-image: url('/images/icons/JWFinal_8K_YellowDot.png');
    background-size: contain; /* Make sure the logo fits inside the button */
    background-repeat: no-repeat; /* Prevent repeating the logo */
    background-position: center; /* Center the logo within the button */
    width: 50px; /* Example width */
    height: 50px; /* Example height */
    border: none; /* Remove the border */
    border-radius: 5px; /* Rounded corners */
    cursor: pointer; /* Pointer cursor on hover */
    transition: transform 0.2s ease, background-color 0.3s ease; /* Smooth transitions */
}

/* Hover and active states for both */
#jw-logo:hover,
#jw-logo-artwork:hover {
    transform: scale(1.1); /* Slightly larger on hover */
}

#jw-logo:active,
#jw-logo-artwork:active {
    transform: scale(0.9); /* Slightly smaller when clicked */
}








/* Blue Panel */
#blue-panel {
    background-color: #2F4F4F; /* Dark slate grey */
    height: 100dvh;
    flex-grow: 1;
    display: flex;
    flex-direction: column; /* Stack green panel, resize handle, and purple panel */
    position: relative;
}

/* Purple Panel */
#purple-panel {
    background-color: var(--background-color-4);
    width: 100%;
    flex-grow: 1; /* Make it fill the remaining space below the handle */
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
}

/* Purple Panel Contents */
#purple-panel-itemselect {
    flex: 1; /* Fills space above the toolbar */
    background-color: var(--background-color-4);
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    right: 0;

}

#purple-panel-toolbar {
    position: relative;
    bottom: 0;
    left: 0;
    right: 0;
    height: 45px;
    z-index: 9; /* Ensure it's above other content but below the brown panel */
    overflow: none;
    background-color: #f1f1f1;
    display: flex;
    align-items: center; /* Center content vertically */
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.1); /* Shadow at the top of the toolbar */
}

#purple-panel-toolbar-content {
    background-color: #616161; 
    width: 100%;
    height: 100%;
    display: flex;
    overflow: none; /* Enable horizontal scrolling if needed */
    white-space: nowrap; /* Prevent content from wrapping */
    align-items: center; /* Align items vertically if needed */
}

#btn-filter {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
}

/* Yellow Div (Canvas) */
#yellow-div {
    background-color: #d0d0d0; 
    background-size: cover;
    background-position: center;
    width: 703px; /* Adjust width based on your image size */
    height: 566px; /* Adjust height based on your image size */
    position: absolute;
    transform-origin: center center;
    touch-action: pinch-zoom;
    border-radius: 8px; /* Rounded corners */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center;
}

#floorplanCanvas, #artworkViewer {
    display: none; /* Hidden by default */
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;  /* Center horizontally */
    align-items: center;      /* Center vertically */
    position: relative;  /* Position relative to the parent */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}

#floorplanCanvas.active, #artworkViewer.active {
    display: flex;  /* Show the active state */
}

#dragtotrash {
    font-family: 'Material Icons';
    content: 'delete';
    color: #222222;
    font-size: 50px;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute; /* Relative to the red-panel */
    z-index: 10; /* Ensure it’s on top */
    pointer-events: auto; /* Allow interactions */
    transition: transform 0.2s ease, color 0.2s ease; /* Smooth transition for both scale and color */
}

#dragtotrash:hover {
    color: #ff0707; /* Red color on hover */
    transform: scale(1.1); /* Slightly enlarge on hover */
}

/* Resize Handles */
#resize-handle-horizontal {
    background-color: #222222; 
    box-shadow: 10px 0 5px -5px rgba(0, 0, 0, 0.2); /* Right side shadow */
    width: 25px;
    height: 100%;
    position: absolute;
    left: 0;
    cursor: ew-resize;
    z-index: 5; /* Ensure it’s on top */
}


#resize-handle-horizontal:hover {
    background-color: #0099ff; /* Change to the new color on hover */
}

#resize-handle-vertical {
    background-color: #222222; 
    box-shadow: 0 10px 5px -5px rgba(0, 0, 0, 0.2); /* Bottom only shadow */
    width: 100%;
    height: 25px;
    cursor: ns-resize;
    z-index: 3;
    position: relative;
    flex-shrink: 0; /* Prevent it from shrinking when resizing the panels */
}

#resize-handle-vertical:hover {
    background-color: #0099ff; /* Change to the new color on hover */
}



button:hover {
    background-color: #0056b3; /* Darker blue on hover */
    transform: scale(1.05); /* Slightly larger on hover */
}

/* Container for the grid items (image + title) */
.item-container {
    display: flex;
    flex-direction: column;
    align-items: center; /* Center image and text horizontally */
    justify-content: flex-start;
    width: 100px; /* Same width as the image */
    margin: 5px;
}

/* Image Styles */
.preview-image {
    width: 100px;
    height: 100px;
    object-fit: cover;
    margin: 5px;
    border: 2px solid white;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15); /* Subtle shadow */
}

.preview-image.fallback {
    background-color: #f0f0f0; /* Example background color */
    object-fit: contain;
    background-size: 50%; 
    padding: 20px;
    box-sizing: border-box;  /* Ensure padding and border don't change the element size */
}

/* Style for the title below the image */
.item-title {
    text-align: center;
    width: 100%; /* Make sure it matches the image width */
    word-wrap: break-word;
    font-size: clamp(8px, 2vw, 12px);
    line-height: 1.5em;
    max-height: 3em; /* Limit the height to 2 lines */
    overflow: hidden;
    display: -webkit-box; 
    display: box; /* Standard box display */
    -webkit-box-orient: vertical;
    box-orient: vertical; /* Standard orientation */
    -webkit-line-clamp: 2; /* Webkit-specific for clamping lines */
    line-clamp: 2; /* Standard line-clamp */
    text-overflow: ellipsis;
}


#floorplan-select {
    display: flex;
    flex-wrap: wrap;
}

/* Adjust flex properties of the grid to handle new item containers */
#item-select {
    display: flex;
    flex-wrap: wrap;
}

#artwork-select {
    display: flex;
    flex-wrap: wrap;
}



.draggable-image {
    transition: transform 0.1s ease; /* Smooth dragging effect */
    z-index: 1000; /* Ensure dragged image stays on top */
    transform-origin: center center; /* Rotate around the center */
    box-sizing: border-box; /* Include padding and border in the element's width and height */
}

/* Hover effect for grid items (both items and floorplans) */
.preview-image:hover {
    border: 2px solid #3498db; /* Add a blue border on hover */
    transform: scale(1.05) !important; /* Slightly enlarge the image on hover */
    transition: transform 0.2s ease, border 0.2s ease !important; /* Smooth transition for the hover effect */
    cursor: pointer !important; /* Change cursor to pointer on hover */
}

/* Mouse down (active) state */
.preview-image:active {
    border: 2px solid #ff6347 !important; /* Red border when the image is clicked */
    transform: scale(0.95) !important; /* Slightly shrink the image when clicked */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* Add a shadow when clicked */
}

/* Selected state for grid items */
.preview-image.selected {
    border: 2px solid #6A5ACD !important; /* Slate blue for selected items */
    transform: scale(1.05);
}

/* Selected state for clone items */
.draggable-image.selected {
    outline: 5px solid rgba(131, 247, 255, 0.5); /* #3498db with 50% transparency */
    transform: none; /* No scaling */
    box-sizing: border-box; /* Include padding and border in the element's width and height */
    touch-action: none;
    -ms-touch-action: none;
    background-color: #30d6ba !important;
}

.no-scroll {
    overflow: hidden !important;
}

/* Display Panel Styles */
#green-panel {
    background-color: #3498db;
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: auto;
    overflow-x: hidden;
    touch-action: manipulation; /* Prevent double-tap zoom while allowing other interactions */
    align-items: center; /* Center horizontally */
    justify-content: center; /* Center vertically */
    box-sizing: border-box; /* Includes padding and border in the element's total width */
    scrollbar-width: none; /* Hide scrollbar in Firefox */
    -ms-overflow-style: none; /* Hide scrollbar in IE/Edge (legacy) */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow */
}

#green-panel::-webkit-scrollbar {
    display: none; /* Hide scrollbar in WebKit-based browsers (Chrome, Safari) */
}

/* Details Container (Shared for Item and Floorplan) */
#item-details, #floorplan-details {
    width: 100%;
    flex: 1; /* Allow details to take remaining space */
    overflow: auto; /* Allow scrolling if needed */
    background-color: var(--background-color-3); /* Light grey background for details */
    align-items: center; /* Center horizontally */
    justify-content: center; /* Center vertically */
    padding: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); /* Very subtle shadow */
}

#item-details::-webkit-scrollbar, 
#floorplan-details::-webkit-scrollbar {
    display: none; /* Hide scrollbars in WebKit-based browsers (Chrome, Safari) */
}

#item-details, #floorplan-details {
    scrollbar-width: none; /* Hide scrollbar in Firefox */
    -ms-overflow-style: none; /* Hide scrollbar in IE/Edge (legacy) */
}

/* Adjust background-color for floorplan-details */
#floorplan-details {
    background-color: #F5F5DC; /* Beige for floorplan details */
}

/* Preview (Shared for Item and Floorplan) */
#item-preview, #floorplan-preview {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: flex-start; /* Align to the top */
    overflow: hidden;
}

#item-large-image, #floorplan-large-image {
    max-width: 100%; /* Ensure the image scales responsibly */
    height: auto;
    object-fit: contain; /* Ensure the image fits within its container */
    margin: 0 auto; /* Ensure the image centers horizontally */
}

/* Flexbox container for centering the image and placing the button */
.image-button-wrapper {
    display: flex;
    justify-content: center; /* Center the image and button horizontally */
    align-items: center; /* Vertically align the image and button */
    width: 100%;
    position: relative;
    height: 100%; /* Ensure it spans the height of the parent */
}

/* Container for the image to keep it centered */
.item-image-container {
    position: relative; /* Set relative positioning to contain the absolutely positioned button */
    text-align: center; /* Center the image horizontally */
    max-width: 100%; /* Ensure the container doesn't exceed its parent's width */
    height: auto;
}


/* Ensure the button container holds the buttons in the correct position */
.button-container {
    position: absolute; /* Position the buttons independently from the image */
    top: 10px;
    right: 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-end; /* Align buttons to the right */
}

/* Add A Photo Button styling */
#add-photo-button, #3D-toggle-button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-size: 30px;
    color: #000;
    outline: none;
    width: 40px;
    height: 40px;
}

/* Optional hover effect for Add Photo */
#add-photo-button:hover, #3D-toggle-button.hover {
    color: #666;
}



/* Ensure the threejs-viewer takes the full size of the item-details container */
#threejs-viewer-assetmanager {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

/* Optional: style for clickable items */
.usdz-item-image-container.clickable {
    cursor: pointer;
}







/* Name Container (Shared for Item and Floorplan) */
#item-name-container, #floorplan-name-container {
    width: 100%;
    height: 60px; /* Fixed height */
    padding: 1px;
    box-sizing: border-box;
    text-align: center; /* Center text */
}

#item-name, #floorplan-name {
    font-size: 18px; /* Larger, elegant font size */
    margin: 0; /* Removes default margins */
    color: var(--text-color); /* Dark grey for text */
    font-weight: 600; /* Semi-bold for emphasis */
}

#item-current-room, #floorplan-neighborhood, #floorplan-address {
    font-size: 14px; /* Smaller font size */
    margin: 0;
    color: #555555; /* Medium grey for secondary text */
}

/* Info (Shared for Item and Floorplan) */
#item-info, #floorplan-info {
    display: flex;
    justify-content: space-between; /* Distribute items evenly across the row */
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

#item-info > div, #floorplan-info > div {
    flex: 1; /* Make each item take up equal space */
    text-align: center; /* Center text within each item */
    margin: 0; /* Remove default margins */
    box-sizing: border-box; /* Ensure padding is included in width calculation */
}

.info-group {
    display: flex; 
    justify-content: space-between; /* Distribute items in the group evenly */
    width: 100%; /* Ensure groups span the full width */
    margin-bottom: 10px; /* Space between the groups */
}

.info-group > div {
    flex: 1; /* Make each item in the group take up equal space */
    text-align: center;
    margin: 0;
    box-sizing: border-box;
}

#floorplan-price, #floorplan-maintenance {
    flex: 1; /* Price and maintenance each take up 50% of the row */
    text-align: left;
}

.info-icon {
    flex: 1;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1px; /* Space between icon and text */
    font-size: 16px;
    font-family: 'Roboto', sans-serif; /* Consistent font for all buttons */
    margin: 0 10px; /* Optional: Add some spacing between the icons and values */
}

/* Style all Material Icons */
.material-icons {
    font-size: 24px; /* Size of the icons */
    color: var(--icons); /* Set the color for all icons */
}


/* Status Container (Shared for Item and Floorplan) */
#possession-status, #floorplan-status {
    width: 100%;
    height: 80px; /* Fixed height */
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between; /* Evenly distribute space */
    align-items: center; /* Center items vertically */
    overflow-x: auto; /* Enables horizontal scrolling if content exceeds width */
    white-space: nowrap; /* Prevents content from wrapping, ensuring horizontal scroll */   
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none;  /* For Internet Explorer and Edge */
}

/* Outcome/Visit Status Container (Shared for Item and Floorplan) */
#possession-outcome, #floorplan-visit-status {
    width: 100%;
    padding: 0 10px; /* Adjust padding to only apply to the sides */
    box-sizing: border-box;
    display: flex;
    justify-content: space-between; /* Evenly distribute space */
    align-items: center; /* Center items vertically */
    overflow-x: auto; /* Enables horizontal scrolling if content exceeds width */
    height: auto; /* Allow the height to be determined by content */
    white-space: nowrap; /* Prevents content from wrapping, ensuring horizontal scroll */   
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none;  /* For Internet Explorer and Edge */
}

/* WebKit-based browsers (Chrome, Safari, Edge) */
#possession-outcome::-webkit-scrollbar,
#floorplan-status::-webkit-scrollbar, 
#floorplan-visit-status::-webkit-scrollbar {
    display: none; /* Hide the scrollbar */
}




/* Comments Container (Shared for Item and Floorplan) */
#item-comments, #floorplan-comments {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

#comments-textarea, #floorplan-comments-textarea {
    width: 100%;
    height: 100px; /* Fixed height */
    box-sizing: border-box; /* Includes padding in width/height */
    border-radius: 4px; /* Slightly rounded corners */
    border: 1px solid #CCCCCC; /* Light grey border */
    padding: 10px;
    font-family: 'Source Sans Pro', sans-serif; /* Ensures consistent font usage */
    background-color: var(--background-color);
    color: var(--text-color);
}

/* Shared Button Styles */
button, .status-button, .outcome-button {
    font-family: 'Roboto', sans-serif; /* Consistent font for all buttons */
    display: inline-block;
    padding: 10px;
    margin: 5px;
    cursor: pointer;
    flex: 1; /* Make each button take up equal space */
    text-align: center; /* Center text */
    border: 1px solid #CCCCCC; /* Light grey border */
    color: white;
    background-color: #222222; /* Light lavender background */
    border-radius: 5px; /* Rounded corners */
    transition: background-color 0.3s ease, transform 0.2s ease; /* Smooth transitions */
    height: 50px;
}

button:hover, .status-button:hover, .outcome-button:hover {
    background-color: #CCCCFF; /* Slightly darker lavender on hover */
    transform: scale(1.05); /* Slightly larger on hover */
}

/* Toolbar Buttons Styles */
/* Ensure the parent container is a flexbox with space between left and right elements */
















.status-button.selected, .outcome-button.selected {
    background-color: #480d7e; /* Blue for selected */
    color: #fff; /* White text */
}

/* Specific Outcome Button Styles */
.outcome-button.selected {
    background-color: #CCCCFF;
    color: white; /* White text */
}

/* Dropdown Menu Styles */
select {
    font-family: 'Roboto', sans-serif; /* Consistent font with other elements */
    padding: 10px;
    margin: 5px;
    border: 1px solid #CCCCCC; /* Light grey border */
    border-radius: 2px; /* Rounded corners */
    background-color: #222222; /* White background */
    color: #CCCCCC; /* Dark grey text */
    cursor: pointer; /* Pointer cursor to indicate interactivity */
    appearance: none; /* Remove default arrow for custom styling */
    -webkit-appearance: none; /* Remove default arrow in WebKit browsers */
    -moz-appearance: none; /* Remove default arrow in Firefox */
    background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14"><polygon points="7,10 3,6 11,6" fill="%23CCCCCC"/></svg>'); /* Custom dropdown arrow with color */
    background-repeat: no-repeat;
    background-position: right 10px top 50%; /* Position the arrow */
    background-size: 10px 10px; /* Size of the arrow */
}

/* Hover state for dropdowns */
select:hover {
    background-color: #CCCCFF; /* Slightly darker background on hover */
    transform: scale(1.05); /* Slightly larger on hover */
    color: var(--background-color);
}

/* Ensure dropdown width adjusts correctly */
select:focus {
    border-color: #007bff; /* Blue border on focus */
    outline: none; /* Remove the default outline */
}

   
/* Style for the new state toggle buttons */
.state-toggle {
    flex: none;
    height: auto;
    width: 50px;
    padding: 10px;
    background-color: #222222 !important; /* Default background color */
    color: #CCCCCC !important; /* Default text color */
    border-top-left-radius: 2px !important;
    border-top-right-radius: 2px !important;
    margin: 0 5px !important;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.state-toggle.selected {
    background-color: #8d8d8d !important; /* Background when selected */
    color: #ffbd07 !important; /* Icon color when selected */
    border-left: #007bff !important;
    border-top: #007bff !important;
    border-right: #007bff !important;
}

.state-toggle .material-icons,
.state-toggle .material-symbols-outlined {
    font-size: 24px !important;
    color: inherit !important; /* Inherit color from parent */
}

.state-toggle.selected .material-symbols-outlined {
    color: #ffbd07 !important; /* Icon outline color when selected */
}

/* Hover state */
.state-toggle:hover {
    background-color: #0056b3 !important; /* Darker blue on hover */
    transform: scale(1.1) !important; /* Slightly larger on hover */
}

/* More specific rule for #btn-filter */
#purple-panel-toolbar-content #btn-filter {
    background-color: #222222 !important;
    color: #CCCCCC !important;
}

#purple-panel-toolbar-content #btn-filter.selected {
    background-color: #8d8d8d !important;
    color: #ffbd07 !important;
}

#purple-panel-toolbar-content #btn-filter.filtered {
    background-color: #222222 !important;
    color: #00FF00 !important;
}

#purple-panel-toolbar-content #btn-filter.selected.filtered {
    background-color: #8d8d8d !important;
    color: #00FF00 !important;
}

/* Hide scrollbars in WebKit-based browsers (Chrome, Safari) */
#purple-panel-itemselect::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar in Firefox */
#purple-panel-itemselect {
    scrollbar-width: none;
    -ms-overflow-style: none; /* Hide scrollbar in IE/Edge (legacy) */
}

/* General panel state styling */
.panel-state {
    display: none; /* Hide all states by default */
    width: 100%;
    height: 100%;
}

/* Active state styling */
.panel-state.active {
    display: block; /* Show the active state */
}
#artwork-viewer {
    background-color: transparent; /* Ensure it's always transparent */

}

#artwork-viewer-contents {
    width: 100%; /* Always match the width of the parent */
    height: 100%; /* Adjust this to fit your needs */
    background-size: contain; /* Ensure the image scales within the div */
    background-position: center; /* Center the image within the div */
    background-repeat: no-repeat; /* Prevent the background from repeating */
    background-color: transparent; /* Ensure it's always transparent */
    position: absolute;
    z-index: 3;
}

#toggle-view-button {
    position: absolute;
    top: 0px; /* Adjust based on your layout */
    border: none;
    border-radius: 4px;
    padding: 5px;
    cursor: pointer;
}

#toggle-view-button span {
    font-size: 24px;
    color: #333;
}

#image-preview-window, #usdz-viewer {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#usdz-viewer a {
    display: block;
    width: 100%;
    height: 100%;
}

/* Styles for the Filter Panel */
#filter-panel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.9); /* White background with 90% transparency */
    display: none; /* Hidden by default */
    z-index: 5; /* Ensure it appears on top */
}

/* Styles for the filter panel content */
.filter-content {
    padding: 20px;
    display: none; /* Hidden by default */
}

#filter-panel-floorplans,
#filter-panel-items,
#filter-panel-artwork {
    display: none; /* Initially hidden, will be shown based on state */
    position: relative; /* Make the parent relative to position the button within it */
    padding-bottom: 50px; /* Add space at the bottom to avoid overlap with content */
    width: 100% !important; /* Take full width of the parent */
    height: 100% !important; /* Take full height of the parent */
    box-sizing: border-box !important; /* Ensure padding doesn't affect the overall width/height */
}

#btn-clear-items-filters {
    position: absolute !important;
    bottom: 10px !important; /* Position the button 10px from the bottom */
    left: 50% !important; /* Start from the center */
    transform: translateX(-50%) !important; /* Shift the button to the exact center */
    padding: 10px 20px !important; /* Padding for the button */
    border: none !important; /* Remove border */
    border-radius: 4px !important; /* Rounded corners */
    cursor: pointer !important; /* Pointer cursor on hover */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
} 

.filter-label {
    display: block; /* Ensures the label is on its own line */
    margin-bottom: 5px; /* Space between label and dropdown */
    font-weight: bold; /* Makes the label text bold */
    color: #333; /* Sets the label color */
    font-family: 'Roboto', sans-serif; 
}

.toolbar-dropdown {
    width: 100%; /* Makes the dropdown take the full width of its container */
    margin-bottom: 15px; /* Adds space below the dropdown for separation */
    padding: 8px; /* Adds padding inside the dropdown for better appearance */
    border-radius: 4px; /* Rounds the corners of the dropdown */
    border: 1px solid #ccc; /* Adds a light border around the dropdown */
}

.state-container {
    display: flex;
    justify-content: center; /* Horizontally center the child element */
    width: 100%; /* Ensure the container takes the full width of the parent */
}

#item_viewer {
    max-width: 100%; /* Ensure the item_viewer doesn't exceed the parent's width */
}

#item_viewer img {
    max-width: 100%; /* Ensure the image scales within the viewer */
    display: block; /* Remove any inline spacing */
    margin: 0 auto; /* Center the image within the item_viewer if needed */
}


/* Base style for the status filter buttons */
.status-filter-button {
    padding: 10px 20px;
    cursor: pointer;
    border-radius: 4px;
    margin: 5px;
    transition: background-color 0.3s, color 0.3s;
}

/* Style for the selected state */
.status-filter-button.selected {
    background-color: #4CAF50; /* Green background for selected state */
    color: white; /* White text for selected state */
    border-color: #45a049; /* Darker green border for selected state */
}

/* Default styles for the toggle button */
#btn-floorplan-status-filter {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: none;
    outline: none;
}

/* Styles for the toggle icon */
#btn-floorplan-status-filter .material-icons {
    font-size: 24px; /* Adjust size as needed */
    color: #666; /* Default color */
    transition: color 0.3s ease, transform 0.3s ease; /* Smooth transition for color and transform */
}

/* Styles when the toggle is active (selected) */
#btn-floorplan-status-filter.selected .material-icons {
    color: #4CAF50; /* Green color for active state */
    transform: scale(1.2); /* Slightly enlarge the icon when active */
}

/* Optional: Add hover effect */
#btn-floorplan-status-filter:hover .material-icons {
    color: #333; /* Darker color on hover */
    transform: scale(1.1); /* Slightly enlarge the icon on hover */
}

#floorplan-status-filter.disabled {
    pointer-events: none;
    opacity: 0.5;
}

#btn-floorplan-status-filter.active #toggle-icon {
    color: #4caf50; /* Green color when active */
}

/* Splash screen styles */
#splash-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: #fff; /* or any background color/image */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 0.5s ease-out;
  }
  
  /* Optional loader animation */
  .loader {
    font-size: 24px;
    color: #333;
  }
  
  /* Once the page is loaded, hide the splash screen */
  #splash-screen.hidden {
    opacity: 0;
    pointer-events: none;
  }



.popup_loadsession {
    height: auto; /* Sets the height of the SweetAlert panel */
    max-height: 80vh; /* Limits the panel height to 80% of the viewport */
    min-height: 500px;
    overflow: hidden; /* Disable scrolling */
}

.select2-container {
    z-index: 9999 !important; /* Ensures the dropdown appears above the modal */
}







/* Closed state of the Select2 dropdown with fixed height of 200px */
.select2-container--default .select2-selection--single {
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-left: 0px !important;
    border: 1px solid #aaa !important;
    border-radius: 4px !important;
    background-color: #fff !important;
}

/* Align the rendered text and image within the closed dropdown */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    height: 100% !important;
    white-space: normal !important;
    margin-bottom: 0px !important;
    line-height: 1.2 !important;
}

/* Image inside the closed dropdown */
.select2-container--default .select2-selection--single img {
    height: 100px !important;
    width: auto !important;
    margin-right: 10px !important;
    margin-left: 0 !important;
    flex-shrink: 0 !important; /* Prevent image from shrinking */
}

/* Text content side-by-side with the image */
.select2-container--default .select2-selection--single .select2-selection__rendered .text-container {
    display: flex !important;
    flex-direction: column !important;
}

/* Session name in bold and size 16px */
.select2-container--default .select2-selection--single .select2-selection__rendered .text-container b {
    font-size: 16px !important;
    font-weight: bold !important;
}

/* Floorplan name in size 14px */
.select2-container--default .select2-selection--single .text-container small:first-of-type {
    font-size: 12px !important;
    color: #333 !important;
}

/* Date and time in size 12px */
.select2-container--default .select2-selection--single .text-container small:last-of-type {
    font-size: 12px !important;
    color: #888 !important;
}

/* Open dropdown styling */
.select2-results__option {
    padding: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

/* Image inside the dropdown options */
.select2-results__option img {
    height: 100px !important;
    width: auto !important;
    margin-right: 10px !important;
    flex-shrink: 0 !important;
}

/* Text container inside the dropdown options */
.select2-results__option .text-container {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

/* Session name inside the dropdown option with size 16px */
.select2-results__option .text-container b {
    font-size: 16px !important;
    font-weight: bold !important;
}

/* Floorplan name inside dropdown option with size 14px */
.select2-results__option .text-container small:first-of-type {
    font-size: 14px !important;
    color: #333 !important;
}

/* Date and time inside dropdown option with size 12px */
.select2-results__option .text-container small:last-of-type {
    font-size: 12px !important;
    color: #888 !important;
}








/* Default profile button style */
#profile {
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
}

/* Logged-in state */
#profile.logged-in {
    background-color: #222222 !important;
    color: #00FF00 !important;
}


.layer-manager {
    position: absolute;
    top: 0;
    right: 0;
    width: 200px; /* Default width */
    background-color:  var(--background-color-3); /* For testing purposes */
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.5);
    overflow-y: auto;
    z-index: 9999;
    transform: translateX(100%); /* Start off-screen (hidden) */
    transition: transform 0.3s ease; /* Smooth transition */
    min-width: 150px; /* Minimum width */
    display: flex;
    flex-direction: column;
    align-items: center; /* Horizontally center */
    justify-content: flex-start; /* Vertically center */
    text-align: center; /* Ensure text is centered within the h3 */
    max-width: 400px; /* Maximum width */
}

.layer-manager.open {
    transform: translateX(0); /* Slide in when open */
}

.layer-manager h3 {
    margin: 0; /* Remove any default margin for precise centering */
    width: 100%; /* Ensure the h3 takes full width */
    text-align: center; /* Center the text inside the h3 */
}

#layer-list {
    display: flex;
    flex-direction: column; /* Stack layer items vertically */
    align-items: center; /* Horizontally center */
    justify-content: center; /* Vertically center items */
    width: 100%; /* Take full width of the layer manager */
    padding: 0;
}

.layer-item {
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Align items vertically */
    padding: 10px; /* Optional: add some padding for spacing */
    width: 100%; /* Ensure each layer item takes full width */
    box-sizing: border-box; /* Ensure padding is included in the width */
    transition: transform 0.2s ease, opacity 0.2s ease;
    background-color: var(--background-color-2);

}

.layer-item .layer-name {
    margin-right: 10px; /* Add some space between the name and the lock icon */
    text-align: center;
}

.layer-item .lock-icon {
    margin-left: 10px; /* Optional: you can adjust spacing between elements */
}




.resize-handle-horizontal {
    position: absolute;
    top: 0;
    left: -5px; /* Place the handle to the left of the manager */
    width: 10px;
    height: 100%;
    cursor: ew-resize;
    background-color: darkgray; /* Visual indicator */
    z-index: 10000;
}


.layer-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px;
    border: 1px solid #ccc;
    margin-bottom: 5px;
    transition: background-color 0.3s;
}

.layer-item.locked {
    background-color: #e0e0e0; /* Grayed-out background for locked items */
}

.layer-name {
    flex: 1;
    font-size: 14px;
    margin-left: 10px;
}

.layer-item img {
    width: 30px;
    height: 30px;
    object-fit: cover;
}

.lock-icon, .delete-icon {
    cursor: pointer;
    margin-left: 5px;
}

/* Styles for disabled items in the grid */
.preview-image.disabled {
    opacity: 0.5; /* Make the image appear faded */
    /* pointer-events: none; /* Disable click interactions */
    /* cursor: not-allowed; Change cursor to indicate the item is disabled */
}


/* Optional: Add styling for the item container if the entire container should be disabled */
.item-container.disabled {
    opacity: 0.5; /* Make the entire container faded */
     /*pointer-events: none; Disable interactions */
   /*  cursor: not-allowed; Indicate that it cannot be selected */
}

.toolbar-buttons:disabled {
    background-color: #e0e0e0 !important; /* Light gray background for disabled buttons */
    color: #a0a0a0 !important; /* Dimmed icon color */
    border: 1px solid #ccc !important; /* Subtle border */
    cursor: not-allowed !important; /* Not-allowed cursor to indicate non-clickable */
    opacity: 0.6 !important; /* Slightly reduce opacity */
}

.toolbar-buttons span.material-icons:disabled {
    color: #a0a0a0 !important; /* Ensure the icon color is dimmed when disabled */
}




.toggle-switch {
    display: inline-block;
    position: relative;
}

.toggle-switch label {
    display: flex;
    align-items: center;
}

.toggle-switch input[type="checkbox"] {
    display: none;
}

.toggle-switch .slider {
    position: relative;
    width: 60px;
    height: 30px;
    background-color: #ccc;
    border-radius: 30px;
    cursor: pointer;
    transition: background-color 0.2s;
}

.toggle-switch .slider:before {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 24px;
    height: 24px;
    background-color: white;
    border-radius: 50%;
    transition: transform 0.2s;
}

.toggle-switch input[type="checkbox"]:checked + .slider {
    background-color: #4caf50;
}

.toggle-switch input[type="checkbox"]:checked + .slider:before {
    transform: translateX(30px);
}

#toggle-label {
    margin-left: 10px;
    font-weight: bold;
}











/* Style for the sort direction button */
#sort-direction-button {
    width: 30px;
    height: 30px;
    background-color: #f0f0f0; /* Light grey background */
    border: 1px solid #ccc; /* Light grey border */
    border-radius: 4px; /* Rounded corners */
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px; /* Adjust font size for the arrow */
    color: #333; /* Dark text color */
    padding: 0;
    margin-left: 10px; /* Adjust the margin for spacing */
    transition: background-color 0.3s ease, color 0.3s ease; /* Smooth hover transition */
}

/* Style for the button when hovered */
#sort-direction-button:hover {
    background-color: #e0e0e0; /* Slightly darker grey when hovered */
    color: #000; /* Darker arrow color */
}

/* Style for the button when clicked */
#sort-direction-button:active {
    background-color: #d0d0d0; /* Even darker grey when clicked */
}

/* Optional: If you want to adjust the size of the arrow icons */
#sort-direction-button::before {
    content: '';
    display: inline-block;
    font-family: 'Arial', sans-serif;
}

.draggable-image.locked {
    pointer-events: none; /* Disable all mouse interactions */
    opacity: 0.9; /* Make the locked clone semi-transparent to indicate it's locked */
    cursor: not-allowed; /* Show a "not allowed" cursor to indicate it's locked */
    border: 5px solid rgb(96, 2, 2); /* Add a visible border to indicate the locked state */
}



/* If clickable, pointer events will allow clicking */
.clickable {
    cursor: pointer;
    pointer-events: auto;
}

/* If not clickable, pointer events will prevent clicking */
.item-image-container:not(.clickable) {
    cursor: default;
    pointer-events: none;
}

/* General styling for Dropzone area */
.dropzone {
    border: 2px dashed #007bff; /* Dashed border with color */
    border-radius: 10px; /* Rounded corners */
    background-color: #f8f9fa; /* Light background */
    padding: 30px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

/* Hover effect */
.dropzone:hover {
    background-color: #e2e6ea; /* Change background color on hover */
}

/* Custom content for the Dropzone */
.dropzone .dz-message {
    font-size: 18px;
    color: #6c757d;
    font-weight: bold;
}

/* Icon styling inside Dropzone */
.dropzone .dz-message .icon {
    font-size: 50px;
    color: #007bff;
    margin-bottom: 10px;
}

/* Adjust file upload text */
.dropzone .dz-message span {
    display: block;
    font-size: 14px;
    color: #6c757d;
    font-weight: normal;
}

/* Ensure the Three.js viewer takes up the full size of the container */
#threejs-viewer-item-details {
    width: 100%;
    height: 100%;
    display: block; /* Initially hidden, will be shown when toggled */
}

#add-element-button {
    width: 30px;
    height: 30px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}






/* General form styling */
#add-floorplan-form-addelement {
    font-family: 'Roboto', sans-serif;
    padding: 20px;
}

.form-fields-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.form-field {
    flex: 0 0 48%;
    margin-bottom: 15px;
}

.form-field label {
    font-weight: bold;
    margin-bottom: 5px;
    display: block;
    font-size: 12px; /* Smaller label size */
}

.form-field input, 
.form-field select {
    width: 100%;
    padding: 10px;
    font-size: 14px; /* Updated input field size */
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.1);
    transition: border 0.2s, box-shadow 0.2s;
}

/* Hover and focus effects */
.form-field input:hover, 
.form-field input:focus,
.form-field select:hover, 
.form-field select:focus {
    border-color: #007bff;
    box-shadow: inset 0 2px 5px rgba(0, 123, 255, 0.1);
}

/* Image uploaders */
.image-upload-container {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}

.image-upload {
    flex: 0 0 48%;
    padding: 10px;
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Dropzone styling */
.dropzone {
    border: 2px dashed #ccc;
    border-radius: 5px;
    padding: 20px;
    text-align: center;
    background-color: #f9f9f9;
    transition: border 0.2s ease-in-out;
}

.dropzone:hover {
    border-color: #007bff;
}

/* Button styling */
.swal2-confirm, .swal2-cancel {
    padding: 10px 20px;
    font-size: 16px;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s, box-shadow 0.3s;
}

.swal2-confirm:hover {
    background-color: #0069d9 !important;
    box-shadow: 0 3px 6px rgba(0, 123, 255, 0.3);
}

.swal2-cancel:hover {
    background-color: #ccc !important;
    box-shadow: 0 3px 6px rgba(200, 200, 200, 0.3);
}

/* Image uploader label styling */
.image-upload label {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    display: block;
    color: #333;
}

.dropzone p {
    font-size: 14px;
    color: #777;
}


/* Hide increment/decrement arrows for number input fields */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;  /* Firefox */
    -webkit-appearance: none;    /* Chrome, Safari, Edge */
    appearance: none;            /* Standard property */
}













:root {
    --global-icon-color: #3498db; /* Default Global Icon Color */
}

/* Base styling for all SVG icons */
.svg-icon {
    width: 100px;
    height: 100px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: all 0.3s ease-in-out;
    fill: var(--global-icon-color); /* Default fill from global color */
}

/* Color change when provided from database */
.svg-icon[data-icon-color] {
    fill: var(--icon-color);
}

/* Hover effects */
.svg-icon:hover {
    transform: scale(1.05); /* Slight scale up on hover */
    background-color: rgba(0, 0, 0, 0.1); /* Subtle background color on hover */
}



.swal2-popup.wide-swal {
    width: 90vw !important;  /* Or a fixed px width like 1000px */
    max-width: none !important;
  }
  


  #current-preview-image,
  #current-top-image,
  #current-front-image,
  #current-back-image,
  #current-left-image,
  #current-right-image,
  #current-bottom-image {
      cursor: pointer;
      border: 2px dashed #888;
      transition: border 0.2s ease-in-out;
  }
  
  #current-preview-image:hover,
  #current-top-image:hover,
  #current-front-image:hover,
  #current-back-image:hover,
  #current-left-image:hover,
  #current-right-image:hover,
  #current-bottom-image:hover {
      border: 2px solid #007bff;
  }

/* Container for all dropzones – horizontally scrollable */
#all-dropzones-container {
    overflow-x: auto;
    white-space: nowrap;
    padding: 10px;
    border: 1px solid #ddd;
  }
  
  /* Each dropzone section as an inline-block element that aligns to the top */
  .dropzone-section {
    display: inline-block;
    vertical-align: top;    /* Ensure sections line up horizontally */
    width: 120px;
    margin-right: 10px;
    text-align: center;
  }
  
  /* Images inside dropzone sections */
  .dropzone-section img {
    width: 100px;
    height: 100px;
    object-fit: contain;
  }
  
  /* Container for Upload and Delete buttons */
  .dz-button-container {
    display: flex;
    margin-top: 5px;
    gap: 2px;  /* Adjust gap as needed */
  }
  
  /* Buttons in the container share equal width */
  .dz-button-container button {
    flex: 1;
    padding: 5px 0;
    margin: 0;
    font-size: 12px;
  }
  
  /* Optional: Section heading style */
  .dropzone-section h3 {
    font-size: 14px;
    margin: 0 0 5px;
  }

  .dropzone.dz-clickable {
    background-color: var(--background-color);
    color: var(--text-color);
}