:root {
    --vbz-bgr: #f4fdf8;
    --vbz-surface: #ffffff;
    --vbz-accent: #2a9d8f;
    --vbz-text: #1d3557;
    --vbz-text-muted: #457b9d;
    --vbz-grad: linear-gradient(135deg, #e9f5f0, #ffffff);
    
    --font-display: 'Merriweather', serif;
    --font-body: 'Open Sans', sans-serif;
    
    --vbz-rad-soft: 16px;
    --vbz-shadow-deep: 0 10px 25px -5px rgba(42, 157, 143, 0.15), 0 8px 10px -6px rgba(42, 157, 143, 0.1);
}

/* Base resets handled by Tailwind, adding specific component logic */

/* Gallery Logic - Pure CSS */
.vbz-stage-img {
    display: none;
    transition: opacity 0.4s ease-in-out;
}

#vbz-view-1:checked ~ .vbz-prime-stage .vbz-img-1,
#vbz-view-2:checked ~ .vbz-prime-stage .vbz-img-2,
#vbz-view-3:checked ~ .vbz-prime-stage .vbz-img-3,
#vbz-view-4:checked ~ .vbz-prime-stage .vbz-img-4 {
    display: block;
    animation: vbz-fade-in 0.4s ease-in-out forwards;
}

@keyframes vbz-fade-in {
    from { opacity: 0.7; }
    to { opacity: 1; }
}

/* Thumbnail Styling based on Preset C (Opacity 0.5 for inactive) */
.vbz-thumb-strip label {
    opacity: 0.5;
    transition: opacity 0.3s ease, transform 0.2s ease;
    border: 2px solid transparent;
}

.vbz-thumb-strip label:hover {
    opacity: 0.8;
}

#vbz-view-1:checked ~ .vbz-thumb-strip label[for="vbz-view-1"],
#vbz-view-2:checked ~ .vbz-thumb-strip label[for="vbz-view-2"],
#vbz-view-3:checked ~ .vbz-thumb-strip label[for="vbz-view-3"],
#vbz-view-4:checked ~ .vbz-thumb-strip label[for="vbz-view-4"] {
    opacity: 1;
    border-color: var(--vbz-accent);
    transform: translateY(-2px);
}

/* Custom Scrollbar for Thumbnails */
.vbz-thumb-strip::-webkit-scrollbar {
    height: 6px;
}
.vbz-thumb-strip::-webkit-scrollbar-track {
    background: rgba(42, 157, 143, 0.1);
    border-radius: 10px;
}
.vbz-thumb-strip::-webkit-scrollbar-thumb {
    background: rgba(42, 157, 143, 0.4);
    border-radius: 10px;
}

/* Button Hover State */
.vbz-trigger-btn:hover {
    box-shadow: 0 15px 30px -5px rgba(42, 157, 143, 0.25), 0 10px 15px -5px rgba(42, 157, 143, 0.15) !important;
}