:root{
  --bg-gradient-start: #0f4c5c;
  --bg-gradient-end: #020617;
  /* Legacy component aliases resolve through the active theme. */
  --color-text: var(--text-main, #ffffff);
  --color-text-muted: var(--text-muted, #e5e7eb);
  --glass-card-bg: var(--card-bg, rgba(15, 23, 42, 0.70));
  --glass-card-blur: 18px;
  --glass-card-radius: 24px;

  --gold-shadow-deep: #482000;
  --gold-shadow-dark: #603000;
  --gold-bronze: #7A4810;
  --gold-base: #906020;
  --gold-primary: #9E6D28;
  --gold-metallic: #A87830;
  --gold-reflection: #B98A3A;
  --gold-bright: #D0A24A;
  --gold-soft-highlight: #E8C868;
  --gold-strong-highlight: #F0E088;
  --gold-glow: #F8F0A8;
  --gold-specular: #FFF8D0;

  --gold-gradient: linear-gradient(135deg, #482000 0%, #603000 8%, #7A4810 16%, #906020 25%, #9E6D28 35%, #A87830 45%, #B98A3A 55%, #D0A24A 65%, #E8C868 75%, #F0E088 85%, #F8F0A8 93%, #FFF8D0 100%);
  --gold-glow-shadow: 0 0 24px rgba(240, 224, 136, 0.35);
}

:root[data-theme="dark"]{
  --bg-main: linear-gradient(180deg, #0f4c5c 0%, #020617 100%);
  --text-main:#ffffff; --text-muted:#e5e7eb;
  --card-bg: rgba(15,23,42,0.70);
  --gold-shadow-deep:#482000; --gold-shadow-dark:#603000; --gold-bronze:#7A4810; --gold-base:#906020; --gold-primary:#9E6D28; --gold-metallic:#A87830; --gold-reflection:#B98A3A; --gold-bright:#D0A24A; --gold-soft-highlight:#E8C868; --gold-strong-highlight:#F0E088; --gold-glow:#F8F0A8; --gold-specular:#FFF8D0;
  --gold-gradient: linear-gradient(135deg,#482000 0%,#603000 8%,#7A4810 16%,#906020 25%,#9E6D28 35%,#A87830 45%,#B98A3A 55%,#D0A24A 65%,#E8C868 75%,#F0E088 85%,#F8F0A8 93%,#FFF8D0 100%);
  --gold-glow-shadow: 0 0 24px rgba(240,224,136,0.35);
  --link:#E8C868;
  
  /* Bootstrap overrides */
  --bs-body-color: #ffffff;
  --bs-heading-color: #ffffff;
  --bs-secondary-color: #e5e7eb;
  --bs-link-color: #E8C868;
  --bs-link-hover-color: #F8F0A8;
}
:root[data-theme="light"]{
  --bg-main: linear-gradient(180deg, #f8f4ea 0%, #ffffff 100%);
  --text-main:#111827; --text-muted:#334155;
  --card-bg: rgba(255,255,255,0.82);
  --gold-shadow-deep:#6a3a12; --gold-shadow-dark:#7a4416; --gold-bronze:#91561e; --gold-base:#a86a28; --gold-primary:#b57a30; --gold-metallic:#bf8536; --gold-reflection:#c8953f; --gold-bright:#d5a84c; --gold-soft-highlight:#e7c068; --gold-strong-highlight:#f1da8a; --gold-glow:#f9eeb1; --gold-specular:#fff9dc;
  --gold-gradient: linear-gradient(135deg,#6a3a12 0%,#7a4416 8%,#91561e 16%,#a86a28 25%,#b57a30 35%,#bf8536 45%,#c8953f 55%,#d5a84c 65%,#e7c068 75%,#f1da8a 85%,#f9eeb1 93%,#fff9dc 100%);
  --gold-glow-shadow: 0 0 18px rgba(213,168,76,0.25);
  --link:#7A4810;

  /* Bootstrap overrides */
  --bs-body-color: #111827;
  --bs-heading-color: #111827;
  --bs-secondary-color: #334155;
  --bs-link-color: #7A4810;
  --bs-link-hover-color: #a86a28;
}

.text-gold{color:var(--gold-soft-highlight)!important}
:root[data-theme="light"] .text-gold{
  color:var(--gold-shadow-deep)!important;
}

/*
 * Legacy dark-first utility compatibility.
 * Older templates still use Bootstrap's fixed dark/white helpers. These
 * mappings keep every surface readable when the application theme is light.
 */
:root[data-theme="light"] .text-white{
  color:var(--text-main)!important;
}
:root[data-theme="light"] .text-white-50{
  color:var(--text-muted)!important;
}
:root[data-theme="light"] .text-info{
  color:#0e7490!important;
}
:root[data-theme="light"] .text-warning{
  color:#a16207!important;
}
:root[data-theme="light"] .text-success{
  color:#15803d!important;
}
:root[data-theme="light"] .text-danger{
  color:#b91c1c!important;
}
:root[data-theme="light"] .bg-dark,
:root[data-theme="light"] .bg-darker{
  background-color:rgba(255,255,255,.96)!important;
  color:var(--text-main)!important;
}
:root[data-theme="light"] .form-control.bg-dark,
:root[data-theme="light"] .form-select.bg-dark,
:root[data-theme="light"] textarea.bg-dark,
:root[data-theme="light"] input.bg-dark{
  background-color:#ffffff!important;
  border-color:rgba(100,116,139,.58)!important;
  color:var(--text-main)!important;
  color-scheme:light;
}
:root[data-theme="light"] .form-control.bg-dark::placeholder,
:root[data-theme="light"] textarea.bg-dark::placeholder,
:root[data-theme="light"] input.bg-dark::placeholder{
  color:var(--text-muted)!important;
  opacity:.72;
}
:root[data-theme="light"] .btn-outline-light{
  --bs-btn-color:#334155;
  --bs-btn-border-color:#64748b;
  --bs-btn-hover-color:#111827;
  --bs-btn-hover-bg:#f1f5f9;
  --bs-btn-hover-border-color:#475569;
  --bs-btn-active-color:#111827;
  --bs-btn-active-bg:#e2e8f0;
  --bs-btn-active-border-color:#475569;
  --bs-btn-disabled-color:#64748b;
  --bs-btn-disabled-border-color:#94a3b8;
}
:root[data-theme="light"] .btn-outline-warning{
  --bs-btn-color:#7a4810;
  --bs-btn-border-color:#a86a28;
  --bs-btn-hover-color:#111827;
  --bs-btn-hover-bg:#f1da8a;
  --bs-btn-hover-border-color:#7a4810;
  --bs-btn-active-color:#111827;
  --bs-btn-active-bg:#e7c068;
  --bs-btn-active-border-color:#7a4810;
  --bs-btn-disabled-color:#91561e;
  --bs-btn-disabled-border-color:#bf8536;
}
.btn-gold{
  background:var(--gold-gradient);
  border:1px solid var(--gold-metallic);
  color:#111827!important;
  font-weight:700;
  box-shadow:var(--gold-glow-shadow);
}
.btn-gold:hover,.btn-gold:focus{
  color:#020617!important;
  filter:brightness(1.05);
  border-color:var(--gold-bright);
}
.btn-outline-gold{
  border:1px solid var(--gold-metallic);
  color:var(--gold-soft-highlight)!important;
  background:rgba(15,23,42,.28);
}
.btn-outline-gold:hover,.btn-outline-gold:focus{
  background:rgba(208,162,74,.16);
  border-color:var(--gold-bright);
  color:var(--gold-specular)!important;
}
:root[data-theme="light"] .btn-outline-gold{
  background:rgba(255,255,255,.92);
  border-color:var(--gold-primary);
  color:var(--text-main)!important;
}
:root[data-theme="light"] .btn-outline-gold:hover,
:root[data-theme="light"] .btn-outline-gold:focus{
  background:rgba(181,122,48,.12);
  border-color:var(--gold-shadow-deep);
  color:var(--text-main)!important;
}
