/**
 * Platinum Prize Draws — light platinum shell + gold accents (from logo).
 * Loaded after parent Vite bundle.
 *
 * Palette:
 *   Mist canvas   #f3f3f5
 *   White surface #ffffff
 *   Ink black     #0a0a0a
 *   Platinum      #6b6b6b / #c0c0c0
 *   Gold          #c9a227
 *   Deep gold     #8f7320
 *   Bright gold   #e8c547
 */
:root {
  /* Brand — gold CTAs */
  --color-primary: #c9a227;
  --color-primary-dark: #8f7320;
  --color-secondary: #ececef;
  --color-accent: #d4af37;
  --color-accent-dark: #a6851a;
  --color-on-primary: #ffffff;

  /* Canvas + surface (light) */
  --color-background-light: #f3f3f5;
  --color-background-dark: #0a0a0a;
  --color-surface: #ffffff;

  /* Text — ink on mist */
  --color-text-primary: #0a0a0a;
  --color-text-secondary: #5c5c5c;

  /* Neutrals — cool platinum (light → dark) */
  --color-gray-50: #f7f7f8;
  --color-gray-100: #ececef;
  --color-gray-200: #d8d8dc;
  --color-gray-300: #b8b8be;
  --color-gray-400: #8e8e96;
  --color-gray-500: #6b6b6b;
  --color-gray-600: #4a4a4a;
  --color-gray-700: #2e2e2e;
  --color-gray-800: #1a1a1a;
  --color-gray-900: #0a0a0a;

  /* Status */
  --color-success: #15965a;
  --color-danger: #c62828;
  --color-warning: #c9a227;
  --color-info: #5c5c5c;
  --color-success-bg: #e8f7ef;
  --color-success-border: #8fd4ae;
  --color-success-text: #0d5c36;
  --color-danger-bg: #fdecec;
  --color-danger-border: #f0a0a0;
  --color-danger-text: #8b1a1a;
  --color-warning-bg: #faf4e0;
  --color-warning-border: #e8c547;
  --color-warning-text: #6b5618;
  --color-info-bg: #f3f3f5;
  --color-info-border: #d8d8dc;
  --color-info-text: #2e2e2e;

  /* Gradients — gold metallic sweep */
  --color-primary-gradient-end: #8f7320;
  --color-primary-gradient-end-light: #e8c547;

  /* Shadows */
  --shadow-primary: 0 10px 20px -10px rgba(201, 162, 39, 0.35);
  --shadow-card: 0 4px 6px -1px rgba(10, 10, 10, 0.06);
  --shadow-card-hover: 0 20px 25px -5px rgba(10, 10, 10, 0.1);

  /* Typography */
  --font-heading: 'Cinzel', 'Times New Roman', Georgia, serif;
  --font-body: 'Montserrat', system-ui, sans-serif;

  /* Remap leftover Tailwind blue / indigo / purple → gold / platinum */
  --color-blue-50: #f7f7f8;
  --color-blue-100: #ececef;
  --color-blue-200: #d8d8dc;
  --color-blue-300: #b8b8be;
  --color-blue-400: #8e8e96;
  --color-blue-500: #6b6b6b;
  --color-blue-600: #c9a227;
  --color-blue-700: #8f7320;
  --color-blue-800: #6b5618;
  --color-blue-900: #0a0a0a;

  --color-indigo-50: #f7f7f8;
  --color-indigo-100: #ececef;
  --color-indigo-200: #d8d8dc;
  --color-indigo-300: #b8b8be;
  --color-indigo-400: #8e8e96;
  --color-indigo-500: #d4af37;
  --color-indigo-600: #c9a227;
  --color-indigo-700: #8f7320;
  --color-indigo-800: #6b5618;
  --color-indigo-900: #0a0a0a;

  --color-purple-50: #f7f7f8;
  --color-purple-100: #ececef;
  --color-purple-200: #d8d8dc;
  --color-purple-300: #b8b8be;
  --color-purple-400: #8e8e96;
  --color-purple-500: #c0c0c0;
  --color-purple-600: #c9a227;
  --color-purple-700: #8f7320;
  --color-purple-800: #6b5618;
  --color-purple-900: #0a0a0a;

  --nera-primary: var(--color-primary);
  --nera-text: var(--color-text-primary);
  --nera-text-secondary: var(--color-text-secondary);
  --nera-bg: var(--color-background-light);
  --nera-surface: var(--color-surface);
  --nera-border: var(--color-gray-200);
}

/* Gold / radiant CTAs — white label text (match card ENTER NOW) */
.btn-checkout,
a.btn-checkout,
button.btn-checkout,
.bg-gradient-primary,
a.bg-gradient-primary,
button.bg-gradient-primary,
.ncs-hero__cta a.bg-gradient-primary,
a.bg-primary,
button.bg-primary {
  color: #ffffff !important;
}

.shadow-primary {
  box-shadow: var(--shadow-primary);
}

.text-gradient-primary {
  background: linear-gradient(
    135deg,
    var(--color-primary) 0%,
    var(--color-primary-gradient-end-light) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.bg-gradient-primary {
  background: linear-gradient(
    135deg,
    var(--color-primary),
    var(--color-primary-gradient-end)
  );
}

/* PromoBanner — black / gold ribbon (logo vernacular) on the light page */
.ncs-promo-banner {
  background-color: var(--color-background-dark);
}

.ncs-promo-banner__overlay {
  background: linear-gradient(
    90deg,
    color-mix(in srgb, var(--color-background-dark) 96%, transparent) 0%,
    color-mix(in srgb, var(--color-background-dark) 88%, var(--color-primary-dark) 12%) 45%,
    color-mix(in srgb, var(--color-primary-dark) 72%, var(--color-background-dark) 28%) 100%
  );
}

.ncs-promo-banner__badge {
  background: var(--color-primary);
  color: var(--color-on-primary);
}

.ncs-promo-banner__title {
  color: #f5f5f5;
}

.ncs-promo-banner__desc {
  color: color-mix(in srgb, #f5f5f5 78%, transparent);
}

.ncs-promo-banner__icon {
  background: color-mix(in srgb, var(--color-primary) 18%, transparent);
  color: var(--color-primary);
  border: 1px solid color-mix(in srgb, var(--color-primary) 45%, transparent);
}

.ncs-promo-banner a:hover .ncs-promo-banner__icon {
  background: color-mix(in srgb, var(--color-primary) 28%, transparent);
  color: var(--color-primary-gradient-end-light);
}

.ncs-promo-banner__label {
  color: color-mix(in srgb, #c0c0c0 90%, transparent);
}

.ncs-promo-banner a:hover .ncs-promo-banner__label {
  color: #f5f5f5;
}

/*
 * Header + footer chrome — restore previous dark shell (#161616)
 * while the page canvas stays light platinum.
 */
#site-header,
#site-header #mobile-menu {
  background-color: color-mix(in srgb, #161616 95%, transparent) !important;
  border-color: #242424 !important;
  color: #f2f2f2;
}

#site-header {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

/* Inactive top-level — white; exclude items that contain the current page */
#site-header > div > nav > div.hidden > ul > li:not(:has(.current-menu-item)):not(.current-menu-item):not(.current_page_item) > a:not([class*='bg-']):not(.bg-gradient-primary),
#site-header li.menu-item:not(.menu-item-has-children):not(.current-menu-item):not(.current_page_item) > a:not([class*='bg-']),
#site-header button:not(.bg-gradient-primary):not([class*='bg-primary']) {
  color: #ffffff !important;
}

#site-header li.menu-item:not(.current-menu-item):not(:has(.current-menu-item)) > a:not([class*='bg-']):hover,
#site-header button:hover {
  color: var(--color-primary) !important;
}

/* Active top-level: current page OR parent of current submenu item (:has — WP often omits ancestor class) */
body #site-header li.current-menu-item > a,
body #site-header li.current_page_item > a,
body #site-header li.current-menu-ancestor > a,
body #site-header li.current-menu-parent > a,
body #site-header li.menu-item-has-children:has(.current-menu-item) > a,
body #site-header li.menu-item-has-children:has(.current_page_item) > a,
body #site-header a.text-primary {
  color: var(--color-primary) !important;
  font-weight: 600;
}

#site-header .font-heading {
  color: var(--color-primary) !important;
}

/* Desktop dropdown panels */
#site-header .sub-menu,
#site-header ul ul {
  background-color: #161616 !important;
  border-color: #333333 !important;
}

/*
 * Submenu links — walker uses Tailwind !text-text-secondary / !text-primary
 * (important utilities), so we must override those class hooks explicitly.
 */
body #site-header .sub-menu a,
body #site-header nav .sub-menu a,
body #site-header .sub-menu a[class*='text-text-secondary'],
body #site-header .sub-menu a.\!text-text-secondary {
  color: #ffffff !important;
  font-weight: 500;
  background-color: transparent !important;
}

body #site-header .sub-menu a:hover,
body #site-header .sub-menu a[class*='text-text-secondary']:hover {
  color: var(--color-primary) !important;
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent) !important;
}

body #site-header .sub-menu li.current-menu-item > a,
body #site-header .sub-menu li.current_page_item > a,
body #site-header .sub-menu li.current-menu-item > a[class*='text-primary'],
body #site-header .sub-menu li.current-menu-item > a[class*='text-text-secondary'],
body #site-header .sub-menu a.\!text-primary {
  color: var(--color-primary) !important;
  font-weight: 600;
  background-color: color-mix(in srgb, var(--color-primary) 8%, transparent) !important;
}

.ncs-site-footer {
  background-color: #161616 !important;
  border-color: #242424 !important;
  color: #ffffff !important;
}

.ncs-site-footer .text-text-primary,
.ncs-site-footer .text-text-secondary,
.ncs-site-footer h4,
.ncs-site-footer .font-semibold,
.ncs-site-footer p,
.ncs-site-footer li,
.ncs-site-footer .ncs-site-footer__brand-text,
body .ncs-site-footer a.text-text-secondary,
body .ncs-site-footer .text-text-secondary a:not(.wp-block-social-link-anchor),
.ncs-site-footer a.text-text-secondary,
.ncs-site-footer .text-text-secondary > a:not(.wp-block-social-link-anchor),
.ncs-site-footer a:not([class*='bg-']) {
  color: #ffffff !important;
}

.ncs-site-footer a:hover,
body .ncs-site-footer a.text-text-secondary:hover,
.ncs-site-footer a.text-text-secondary:hover {
  color: var(--color-primary) !important;
}

.ncs-site-footer .border-gray-200,
.ncs-site-footer [class*='border-gray'] {
  border-color: #333333 !important;
}

.ncs-site-footer .bg-background-dark {
  background-color: #000000 !important;
}

/* Admin bar */
#wpadminbar {
  transition: transform 0.25s ease;
}
#wpadminbar.nera-adminbar--hidden {
  transform: translateY(-100%);
}
@media (prefers-reduced-motion: reduce) {
  #wpadminbar {
    transition: none;
  }
}

@layer utilities {
  .ncs-site-footer .custom-logo {
    max-width: 7rem !important;
    height: auto !important;
  }
}
