/* Ritual theme global — áp dụng lên mọi trang qua tca_unified_theme */

body.tca-page {
  font-family: var(--rl-font);
  background: var(--rl-bg);
  color: var(--rl-text);
}

/* ── Nav islands (shop, history, checkout…) ── */
body.tca-page .store-nav .nav-container,
body.tca-page .store-dock__island,
body.tca-page .store-bottom-nav .dock-island,
body.tca-page.hx-page .dp-nav .nav-container,
body.tca-page.deposit-page.hx-page .dp-nav .nav-container,
body.tca-page.checkout-page .co-header,
body.tca-page.checkout-page .checkout-header,
body.tca-page.withdraw-page .wd-nav,
body.tca-page .header,
body.tca-page .dash-header {
  background: rgba(255, 255, 255, 0.82) !important;
  backdrop-filter: blur(20px) saturate(1.15);
  -webkit-backdrop-filter: blur(20px) saturate(1.15);
  border: 1px solid rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 8px 32px rgba(120, 90, 40, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
}

body.tca-page .store-nav.is-scrolled .nav-container,
body.tca-page .header.is-scrolled {
  box-shadow: 0 12px 40px rgba(120, 90, 40, 0.12) !important;
}

body.tca-page .store-nav__link {
  color: var(--rl-muted) !important;
}

body.tca-page .store-nav__link.is-active,
body.tca-page .store-nav__link:hover {
  color: var(--rl-gold-deep) !important;
  background: var(--rl-gold-tint, rgba(166, 124, 26, 0.08)) !important;
}

/* ── Cards & panels ── */
body.tca-page .product-card,
body.tca-page .shop-card,
body.tca-page .store-hero__shell.bezel-shell,
body.tca-page .auth-card,
body.tca-page .auth-panel,
body.tca-page .hx-item,
body.tca-page .hx-card,
body.tca-page .co-card,
body.tca-page .checkout-card,
body.tca-page .co-panel,
body.tca-page .track-shell,
body.tca-page .track-card,
body.tca-page .track-panel,
body.tca-page .wd-shell,
body.tca-page .wd-panel,
body.tca-page .wd-card,
body.tca-page .dash-card,
body.tca-page .dashboard-card,
body.tca-page .mo-card,
body.tca-page .order-card {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: var(--rl-hairline) !important;
  box-shadow: var(--rl-shadow);
}

body.tca-page .product-card:hover,
body.tca-page .shop-card:hover,
body.tca-page .co-card:hover,
body.tca-page .checkout-card:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 148, 26, 0.35) !important;
  box-shadow: var(--rl-shadow-hover) !important;
}

body.tca-page .store-hero__core.bezel-core,
body.tca-page .track-hero {
  background: linear-gradient(165deg, #fffefb, #fff9f2) !important;
}

/* ── Auth ── */
body.tca-page.auth-page::before {
  background:
    radial-gradient(ellipse 90% 70% at 8% -8%, rgba(212, 184, 106, 0.1), transparent 52%),
    linear-gradient(180deg, var(--rl-bg-2), var(--rl-bg)) !important;
}

/* ── Forms ── */
body.tca-page input:not([type="checkbox"]):not([type="radio"]),
body.tca-page select,
body.tca-page textarea {
  background: #fff;
  border-color: var(--rl-hairline);
  color: var(--rl-text);
}

body.tca-page input:focus,
body.tca-page select:focus,
body.tca-page textarea:focus {
  border-color: var(--rl-gold);
  box-shadow: 0 0 0 3px var(--rl-gold-glow);
  outline: none;
}

/* ── Headings ── */
body.tca-page h1,
body.tca-page h2,
body.tca-page .store-hero h1,
body.tca-page .track-hero h1,
body.tca-page .auth-title {
  font-family: var(--rl-display);
  color: var(--rl-text);
  letter-spacing: -0.02em;
}

/* ── Community ── */
body.tca-page.community-page,
body.cm-page {
  background: var(--rl-bg) !important;
  color: var(--rl-text) !important;
}

body.cm-page .cm-header,
body.cm-page .cm-card,
body.cm-page .cm-post,
body.cm-page .cm-compose {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: var(--rl-hairline) !important;
}

body.cm-page .cm-bottom-nav {
  background: rgba(255, 255, 255, 0.9) !important;
  border-color: var(--rl-hairline) !important;
}

/* ── Dashboard ── */
body.tca-page .dashboard-page,
body.tca-page.dashboard-page {
  background: transparent;
}

body.tca-page .stat-card,
body.tca-page .action-tile {
  background: rgba(255, 255, 255, 0.9) !important;
  border: 1px solid var(--rl-hairline) !important;
}

/* ── My orders / checkout hard overrides ── */
body.tca-page.my-orders-page,
body.tca-page.checkout-page,
body.tca-page.track-page,
body.tca-page.hx-page,
body.tca-page.withdraw-page {
  background: var(--rl-bg) !important;
  color: var(--rl-text) !important;
}

/* ── Landing (editorial) when tca-page ── */
body.tca-page.landing-page .le-hero,
body.tca-page .le-section-card {
  background: rgba(255, 255, 255, 0.88);
  border-color: var(--rl-hairline);
}

/* ── Badges & pills ── */
body.tca-page .badge,
body.tca-page .pill,
body.tca-page .tag {
  border-radius: var(--radius-full);
}

body.tca-page .badge-gold,
body.tca-page .pill-gold {
  background: var(--rl-gold-tint, rgba(166, 124, 26, 0.08));
  color: var(--rl-gold-deep);
}

/* ── Tables (admin public pages if any) ── */
body.tca-page table {
  border-color: var(--rl-hairline);
}

body.tca-page th {
  background: var(--rl-elevated);
  color: var(--rl-muted);
}

body.tca-page tr:nth-child(even) td {
  background: rgba(255, 249, 242, 0.5);
}

/* ── Links ── */
body.tca-page a {
  color: var(--rl-gold-deep);
}

/* ── Dock bottom nav text ── */
body.tca-page .store-dock__item,
body.tca-page .dock-item {
  color: var(--rl-muted);
}

body.tca-page .store-dock__item.is-active,
body.tca-page .dock-item.active {
  color: var(--rl-gold-deep);
}

/* Ritual status cards reuse */
body.tca-page .rb-card,
body.tca-page .rb-shell {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid var(--rl-hairline);
  border-radius: var(--rl-radius-outer);
  box-shadow: var(--rl-shadow);
}

body.tca-page .rb-btn-primary,
body.tca-page .rl-btn-primary {
  background: linear-gradient(180deg, #b8862e 0%, var(--rl-gold) 100%);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  box-shadow: 0 1px 2px rgba(26, 24, 20, 0.08), 0 4px 14px var(--rl-gold-glow);
}

/* Trang rituals có ambient riêng */
body[data-skeleton="rituals"] .tca-fx-bg,
body[data-skeleton="ritual-booking"] .tca-fx-bg {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .tca-fx-bg::before,
  .tca-fx-bg__orb {
    animation: none !important;
  }
  .tca-reveal,
  .rl-reveal {
    opacity: 1;
    transform: none;
  }
}
