/* public/frontend/assets/custom-premium.css */
:root {
    --primary: #A18C7B;         /* Architectural Warm Bronze/Mocha */
    --primary-hover: #D8A7B1;   /* Rose Smoke Accent */
    --background: #1B1B1B;      /* 95% Core Off-Black Background */
    --foreground: #F2E6DC;      /* Readable Creme Text */
    --card-bg: rgba(31, 30, 29, 0.45);
    --border-color: rgba(161, 140, 123, 0.15);
    --glass-border: rgba(161, 140, 123, 0.25);
    --header-bg: rgba(27, 27, 27, 0.85);
    --shadow-premium: 0 30px 65px rgba(0, 0, 0, 0.7);

    /* Dynamic atmosphere controls */
    --color-bg: #1B1B1B;
    --color-creme: #F2E6DC;
    --color-mocha: #A18C7B;
    --color-rose: #D8A7B1;
    --ambient-glow: rgba(161, 140, 123, 0.12);
}

.dark {
    --primary: #A18C7B;
    --primary-hover: #D8A7B1;
    --background: #1B1B1B;
    --foreground: #F2E6DC;
    --card-bg: rgba(31, 30, 29, 0.45);
    --border-color: rgba(161, 140, 123, 0.15);
    --glass-border: rgba(161, 140, 123, 0.25);
    --header-bg: rgba(27, 27, 27, 0.85);
    --shadow-premium: 0 30px 65px rgba(0, 0, 0, 0.7);
}

body {
    background-color: var(--color-bg);
    color: var(--color-creme);
    transition: background-color 1.2s ease-in-out, color 0.5s ease;
    font-family: 'Plus Jakarta Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6, .font-serif {
    font-family: 'Playfair Display', serif !important;
}

/* Glassmorphism Classes */
.glass-header {
    background-color: var(--header-bg) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom: 1px solid var(--border-color) !important;
}

.premium-card {
    background-color: var(--card-bg);
    border: 1px solid var(--border-color);
    box-shadow: 0 12px 30px rgba(0,0,0,0.4);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.premium-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-premium);
    border-color: var(--primary-hover);
}

/* Gilded Legacy Arches */
.editorial-arch {
    border-radius: 260px 260px 0 0;
    border: 1.5px solid rgba(161, 140, 123, 0.35);
    box-shadow: 0 30px 65px rgba(0, 0, 0, 0.7);
    position: relative;
    overflow: hidden;
    background: #1B1B1B;
    transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.editorial-arch:hover {
    border-color: var(--color-rose);
    transform: translateY(-8px);
    box-shadow: 0 45px 80px rgba(216, 167, 177, 0.08);
}

/* Living Ambient Glow */
.ambient-glow {
    background: radial-gradient(circle at 80% 20%, var(--ambient-glow) 0%, transparent 65%);
    transition: background 1.5s ease-in-out;
}

/* Organic Leaf Shadow sway overlay */
.leaf-shadow {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='1000' opacity='0.05'%3E%3Cpath d='M150,80 C250,40 400,120 450,250 C480,320 440,400 350,450 C250,500 120,400 80,250 C60,180 100,120 150,80 Z' fill='%23A18C7B'/%3E%3Cpath d='M750,150 C850,100 900,250 850,400 C800,500 650,550 550,500 C450,450 430,300 500,200 C550,100 650,200 750,150 Z' fill='%23A18C7B'/%3E%3C/svg%3E");
    background-size: cover;
    animation: gentleSway 28s infinite alternate ease-in-out;
    pointer-events: none;
}

@keyframes gentleSway {
    0% { transform: translate(0, 0) rotate(0deg); }
    50% { transform: translate(1.5%, 2.5%) rotate(1.5deg); }
    100% { transform: translate(-1%, -1.5%) rotate(-1deg); }
}

/* Fine architectural drafted guidelines */
.architectural-line {
    border-color: rgba(161, 140, 123, 0.15);
}

/* Luxury custom cursor glow */
.luxury-cursor {
    width: 380px;
    height: 380px;
    background: radial-gradient(circle, rgba(216, 167, 177, 0.06) 0%, rgba(27, 27, 27, 0) 70%);
    transform: translate(-50%, -50%);
    pointer-events: none;
    transition: width 0.3s, height 0.3s;
}

/* Active line highlighter glow */
.active-glow-line {
    height: 1.5px;
    background: linear-gradient(90deg, transparent, var(--color-rose), transparent);
    transition: background 0.8s ease;
}

/* Glowing dot */
.rose-smoke-dot {
    background-color: var(--color-rose);
    box-shadow: 0 0 10px var(--color-rose);
}

/* Luxury transparent frosted glass */
.luxury-glass {
    background: rgba(27, 27, 27, 0.7);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(161, 140, 123, 0.15);
}

/* Gilded Premium Text Gradients */
.gold-text-gradient {
    background: linear-gradient(135deg, #F2E6DC 0%, #A18C7B 50%, #F2E6DC 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Specific theme utility overrides for home / public pages */
.bg-\[\#FCFBF7\] {
    background-color: var(--color-bg) !important;
}

.bg-\[\#FAFAFA\] {
    background-color: rgba(34, 33, 32, 0.3) !important;
}

.text-black\/50, .text-black\/40, .text-black\/30 {
    color: rgba(242, 230, 220, 0.6) !important;
}

.text-\[\#1A1A1A\] {
    color: var(--color-creme) !important;
}

.border-black\/5 {
    border-color: rgba(161, 140, 123, 0.15) !important;
}

.border-black {
    border-color: var(--color-mocha) !important;
}

.hover\:text-black:hover {
    color: var(--color-creme) !important;
}

.hover\:border-black:hover {
    border-color: var(--color-mocha) !important;
}

/* Smooth scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: var(--color-bg); 
}
::-webkit-scrollbar-thumb {
    background: var(--color-mocha); 
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: var(--color-rose); 
}
