/* ─── Royal Diamond Gallery — Theme System ─── */

/* Dark (default) */
:root {
  --bg: #0C0A07; --bg-card: #161310; --border: #2a2520;
  --text: #F5EDD8; --text-80: rgba(245,237,216,.8); --text-70: rgba(245,237,216,.7);
  --text-60: rgba(245,237,216,.6); --text-50: rgba(245,237,216,.5);
  --text-40: rgba(245,237,216,.4); --text-30: rgba(245,237,216,.3);
  --gold: #C9A84C; --gold-light: #E8C97A; --gold-dark: #9e7d32;
  --nav-bg: rgba(12,10,7,0.97);
  --hero-grad: linear-gradient(135deg,#0C0A07 0%,#1a1208 40%,#0C0A07 100%);
  --sh1: #1a1610; --sh2: #251f17;
  --map-bg: #181410; --map-line: rgba(201,168,76,.07); --map-line2: rgba(201,168,76,.04);
  --map-block: rgba(26,20,12,.6);
}

/* Light */
[data-theme="light"] {
  --bg: #FAF7F2; --bg-card: #FFFFFF; --border: #E2D8CC;
  --text: #1A1208; --text-80: rgba(26,18,8,.8); --text-70: rgba(26,18,8,.7);
  --text-60: rgba(26,18,8,.6); --text-50: rgba(26,18,8,.5);
  --text-40: rgba(26,18,8,.4); --text-30: rgba(26,18,8,.25);
  --gold: #9E7B2C; --gold-light: #C9A84C; --gold-dark: #7a5e1e;
  --nav-bg: rgba(250,247,242,0.97);
  --hero-grad: linear-gradient(135deg,#FAF7F2 0%,#F2E8D8 40%,#FAF7F2 100%);
  --sh1: #F0EBE3; --sh2: #E5DDD2;
  --map-bg: #EDE6DA; --map-line: rgba(158,123,44,.12); --map-line2: rgba(158,123,44,.06);
  --map-block: rgba(250,247,242,.8);
}

/* ─── Global ─── */
html { transition: background-color .3s; }
body { background-color: var(--bg) !important; color: var(--text) !important; transition: background-color .3s, color .3s; }

/* ─── Nav ─── */
nav { border-bottom-color: var(--border) !important; }
[data-theme="light"] nav { background: var(--nav-bg) !important; }

/* ─── Tailwind bg overrides ─── */
[data-theme="light"] .bg-\[#0C0A07\],.light-theme .bg-\[#0C0A07\] { background-color: var(--bg) !important; }
[data-theme="light"] .bg-\[#161310\] { background-color: var(--bg-card) !important; }
[data-theme="light"] .bg-\[#0c0a07\] { background-color: var(--bg) !important; }
[data-theme="light"] .bg-dark        { background-color: var(--bg) !important; }
[data-theme="light"] .bg-dark-card   { background-color: var(--bg-card) !important; }

/* ─── Border overrides ─── */
[data-theme="light"] .border-\[#2a2520\]  { border-color: var(--border) !important; }
[data-theme="light"] .border-\[#2A2520\]  { border-color: var(--border) !important; }
[data-theme="light"] .border-dark-border  { border-color: var(--border) !important; }

/* ─── Text overrides ─── */
[data-theme="light"] .text-\[#F5EDD8\]    { color: var(--text) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/80{ color: var(--text-80) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/70{ color: var(--text-70) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/60{ color: var(--text-60) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/50{ color: var(--text-50) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/40{ color: var(--text-40) !important; }
[data-theme="light"] .text-\[#F5EDD8\]\/30{ color: var(--text-30) !important; }
[data-theme="light"] .text-champagne      { color: var(--text) !important; }
[data-theme="light"] .text-champagne\/80  { color: var(--text-80) !important; }
[data-theme="light"] .text-champagne\/70  { color: var(--text-70) !important; }
[data-theme="light"] .text-champagne\/60  { color: var(--text-60) !important; }
[data-theme="light"] .text-champagne\/50  { color: var(--text-50) !important; }
[data-theme="light"] .text-champagne\/40  { color: var(--text-40) !important; }
[data-theme="light"] .text-champagne\/30  { color: var(--text-30) !important; }

/* ─── Gold overrides ─── */
[data-theme="light"] .text-\[#C9A84C\]    { color: var(--gold) !important; }
[data-theme="light"] .text-gold           { color: var(--gold) !important; }
[data-theme="light"] .text-\[#E8C97A\]    { color: var(--gold) !important; }
[data-theme="light"] .text-gold-light     { color: var(--gold-light) !important; }
[data-theme="light"] .border-\[#C9A84C\]  { border-color: var(--gold) !important; }
[data-theme="light"] .border-gold         { border-color: var(--gold) !important; }
[data-theme="light"] .border-\[#C9A84C\]\/20 { border-color: rgba(158,123,44,.2) !important; }
[data-theme="light"] .border-\[#C9A84C\]\/30 { border-color: rgba(158,123,44,.3) !important; }
[data-theme="light"] .border-\[#C9A84C\]\/40 { border-color: rgba(158,123,44,.4) !important; }
[data-theme="light"] .border-gold\/20     { border-color: rgba(158,123,44,.2) !important; }
[data-theme="light"] .border-gold\/30     { border-color: rgba(158,123,44,.3) !important; }
[data-theme="light"] .border-gold\/40     { border-color: rgba(158,123,44,.4) !important; }
[data-theme="light"] .bg-gold            { background-color: var(--gold) !important; }
[data-theme="light"] .bg-\[#C9A84C\]     { background-color: var(--gold) !important; }
[data-theme="light"] .bg-\[#C9A84C\]\/5  { background-color: rgba(158,123,44,.07) !important; }
[data-theme="light"] .bg-\[#C9A84C\]\/10 { background-color: rgba(158,123,44,.1) !important; }
[data-theme="light"] .bg-\[#C9A84C\]\/20 { background-color: rgba(158,123,44,.15) !important; }
[data-theme="light"] .bg-gold\/5         { background-color: rgba(158,123,44,.07) !important; }
[data-theme="light"] .bg-gold\/10        { background-color: rgba(158,123,44,.1) !important; }
[data-theme="light"] .bg-gold\/20        { background-color: rgba(158,123,44,.15) !important; }
[data-theme="light"] .hover\:bg-gold:hover { background-color: var(--gold-light) !important; }
[data-theme="light"] .hover\:bg-\[#C9A84C\]:hover { background-color: var(--gold-light) !important; }
[data-theme="light"] .hover\:bg-gold\/10:hover { background-color: rgba(158,123,44,.12) !important; }

/* ─── Gradient fixes ─── */
[data-theme="light"] .from-dark     { --tw-gradient-from: var(--bg) !important; }
[data-theme="light"] .via-dark\/40  { --tw-gradient-via: rgba(250,247,242,.4) !important; }

/* ─── Hero ─── */
[data-theme="light"] .hero-bg {
  background: var(--hero-grad) !important;
}
[data-theme="light"] .hero-bg .absolute.inset-0 > div { opacity: 0.6 !important; }

/* ─── Marquee ─── */
[data-theme="light"] .bg-gold .text-dark { color: #FAF7F2 !important; }
[data-theme="light"] .bg-\[#C9A84C\] .text-dark { color: #FAF7F2 !important; }

/* ─── Product cards ─── */
[data-theme="light"] .product-card {
  background: var(--bg-card) !important;
  border-color: var(--border) !important;
  box-shadow: 0 2px 12px rgba(26,18,8,.06);
}
[data-theme="light"] .product-card:hover {
  border-color: rgba(158,123,44,.35) !important;
  box-shadow: 0 6px 24px rgba(26,18,8,.1);
}

/* ─── Category cards ─── */
[data-theme="light"] .category-card { border-color: var(--border) !important; }
[data-theme="light"] .category-card:hover { border-color: rgba(158,123,44,.4) !important; }

/* ─── Shimmer loading ─── */
[data-theme="light"] .shimmer,
[data-theme="light"] [style*="background:linear-gradient(90deg,#1a1610"] {
  background: linear-gradient(90deg, var(--sh1) 25%, var(--sh2) 50%, var(--sh1) 75%) !important;
  background-size: 400% 100% !important;
}

/* ─── Forms ─── */
[data-theme="light"] .form-input {
  background: var(--bg-card) !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
}
[data-theme="light"] .form-input::placeholder { color: var(--text-40) !important; }
[data-theme="light"] .form-input:focus { border-color: var(--gold) !important; }
[data-theme="light"] select {
  background-color: var(--bg-card) !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
}
[data-theme="light"] input[type="range"] { accent-color: var(--gold) !important; }
[data-theme="light"] input[type="radio"],
[data-theme="light"] input[type="checkbox"] { accent-color: var(--gold) !important; }

/* ─── Gold divider ─── */
[data-theme="light"] .gold-divider {
  background: linear-gradient(90deg, transparent, var(--gold), transparent) !important;
}

/* ─── Nav links ─── */
[data-theme="light"] .nav-link::after { background: var(--gold) !important; }
[data-theme="light"] .nav-link:hover  { color: var(--gold) !important; }

/* ─── Scrollbar ─── */
[data-theme="light"] ::-webkit-scrollbar-track { background: var(--bg); }
[data-theme="light"] ::-webkit-scrollbar-thumb { background: var(--border); }

/* ─── Visit Us map ─── */
.map-mosaic {
  background-color: var(--map-bg);
  background-image:
    linear-gradient(var(--map-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--map-line) 1px, transparent 1px),
    linear-gradient(var(--map-line2) 1px, transparent 1px),
    linear-gradient(90deg, var(--map-line2) 1px, transparent 1px);
  background-size: 120px 120px, 120px 120px, 30px 30px, 30px 30px;
  transition: background-color .3s;
}

/* ─── Tab active ─── */
[data-theme="light"] .tab-btn.active  { color: var(--gold) !important; border-bottom-color: var(--gold) !important; }
[data-theme="light"] .tab-btn:not(.active) { color: var(--text-50) !important; }

/* ─── Light overlay text in category cards ─── */
[data-theme="light"] .category-card .absolute.inset-0 {
  background: linear-gradient(to top, rgba(250,247,242,.85) 0%, rgba(250,247,242,.3) 60%, transparent 100%) !important;
}
[data-theme="light"] .category-card h3 { color: #1A1208 !important; }
[data-theme="light"] .category-card p  { color: rgba(26,18,8,.6) !important; }

/* ─── Buttons text on gold bg stay dark ─── */
[data-theme="light"] .bg-gold .text-dark,
[data-theme="light"] button.bg-gold,
[data-theme="light"] a.bg-gold { color: #FAF7F2 !important; }

/* ─── Dark text on light background hero ─── */
[data-theme="light"] .hero-bg .text-champagne { color: var(--text) !important; }
[data-theme="light"] .hero-bg .text-champagne\/60 { color: var(--text-60) !important; }
[data-theme="light"] .hero-bg .text-champagne\/50 { color: var(--text-50) !important; }
[data-theme="light"] .hero-bg .text-champagne\/40 { color: var(--text-40) !important; }
[data-theme="light"] .hero-bg .text-champagne\/30 { color: var(--text-30) !important; }
