
        :root {
            --bg-primary: #FCFAF7;
            /* Warm soft linen cream */
            --bg-secondary: #FFFFFF;
            --text-primary: #25201E;
            /* Rich dark warm espresso */
            --text-secondary: #6B5E59;
            --accent: #E879A0;
            /* Premium blush pink */
            --accent-hover: #D1537b;
            --accent-light: rgba(248, 200, 220, 0.25);
            --gold: #D4AF37;
            --gold-light: rgba(212, 175, 55, 0.1);
            --border-color: rgba(37, 32, 30, 0.08);
            --glass-bg: rgba(252, 250, 247, 0.7);
            --glass-border: rgba(255, 255, 255, 0.5);
            --card-shadow: 0 10px 30px -10px rgba(107, 94, 89, 0.08);
        }

        .dark {
            --bg-primary: #120E0D;
            /* Rich deep dark charcoal espresso */
            --bg-secondary: #1A1513;
            --text-primary: #F7F3F0;
            --text-secondary: #A69790;
            --accent: #FF94B8;
            --accent-hover: #FFAEC9;
            --accent-light: rgba(255, 148, 184, 0.15);
            --gold: #F0C94D;
            --gold-light: rgba(240, 201, 77, 0.15);
            --border-color: rgba(247, 243, 240, 0.08);
            --glass-bg: rgba(26, 21, 19, 0.75);
            --glass-border: rgba(255, 255, 255, 0.05);
            --card-shadow: 0 15px 40px -15px rgba(0, 0, 0, 0.6);
        }

        body {
            font-family: 'Plus Jakarta Sans', sans-serif;
            background-color: var(--bg-primary);
            color: var(--text-primary);
            transition: background-color 0.4s ease, color 0.4s ease;
        }

        .glass {
            background: var(--glass-bg);
            backdrop-filter: blur(12px);
            border: 1px solid var(--glass-border);
            box-shadow: var(--card-shadow);
        }

        .nav-glass {
            background: var(--glass-bg);
            backdrop-filter: blur(16px);
            border-bottom: 1px solid var(--border-color);
        }

        /* Floating decoration keyframes */
        @keyframes float-gentle {

            0%,
            100% {
                transform: translateY(0) rotate(0deg);
            }

            50% {
                transform: translateY(-10px) rotate(3deg);
            }
        }

        .animate-float {
            animation: float-gentle 5s ease-in-out infinite;
        }

        @keyframes pulse-soft {

            0%,
            100% {
                opacity: 0.8;
                transform: scale(1);
            }

            50% {
                opacity: 1;
                transform: scale(1.05);
            }
        }

        .animate-pulse-soft {
            animation: pulse-soft 3s ease-in-out infinite;
        }

        @keyframes rotate-ring {
            0% {
                transform: rotate(0deg);
            }

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

        .animate-rotate-ring {
            animation: rotate-ring 20s linear infinite;
        }

        /* Lightbox zoom transitions */
        .zoom-img {
            transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .zoom-img:hover {
            cursor: zoom-in;
        }

        .zoom-active {
            transform: scale(1.6);
            cursor: zoom-out !important;
        }

        /* Image Copy/Save Protection */
        img {
            -webkit-touch-callout: none; /* Prevents callout sheet / long press on mobile iOS/Android */
            -webkit-user-select: none;   /* Safari */
            -khtml-user-select: none;    /* Konqueror HTML */
            -moz-user-select: none;      /* Firefox */
            -ms-user-select: none;       /* Internet Explorer/Edge */
            user-select: none;           /* Non-prefixed standard user selection */
            -webkit-user-drag: none;     /* Prevents dragging on WebKit browsers */
            user-drag: none;             /* Standard drag control */
        }
