/* Main Layout */
#nivoda-app {
    display: flex;
    gap: 20px;
}

/* Filters Sidebar */
.filters {
    width: 250px;
}

/* Results Section */
.results {
    flex: 1;
    width: 100%;
}

/* Grid Layout */
#diamond-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Product Card */
.card {
    border: 1px solid #ddd;
    padding: 10px;
    background: #fff;
}

.card img {
    width: 100%;
    display: block;
}

/* 🔥 FULL WIDTH DETAIL ROW */
.diamond-detail-row {
    grid-column: 1 / -1; /* span across all 3 columns */
    width: 100%;
}

/* Detail Inner Layout */
.diamond-detail-row > div {
    display: flex;
    width: 100%;
    gap: 30px;
    border: 1px solid #ddd;
    padding: 20px;
    background: #fff;
    box-sizing: border-box;
}

/* Left Image */
.diamond-detail-row img {
    width: 100%;
}

/* Buttons */
.diamond-detail-row button {
    margin-right: 10px;
    padding: 8px 14px;
    cursor: pointer;
}

/* Optional Hover Effect */
.card:hover {
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}


.loader-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #ddd;
    border-top: 4px solid #000;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: auto;
}

@keyframes spin {
    100% { transform: rotate(360deg); }
}