/* =========================================================
   Golden Rise Capital — Soft Luxury UI Kit
   Gentle radius, gold hairlines, open sections (no cut-corners)
   ========================================================= */

:root {
  --grc-bg: #0a0a0a;
  --grc-bg-elev: #121212;
  --grc-surface: #161616;
  --grc-surface-2: #1c1c1c;
  --grc-gold: #c9a227;
  --grc-gold-bright: #e8c547;
  --grc-gold-soft: rgba(201, 162, 39, 0.28);
  --grc-gold-faint: rgba(201, 162, 39, 0.12);
  --grc-text: #f7f0d8;
  --grc-text-dim: rgba(247, 240, 216, 0.62);
  --grc-text-mute: rgba(247, 240, 216, 0.42);
  --grc-ink: #0a0a0a;
  --grc-radius: 18px;
  --grc-radius-sm: 12px;
  --grc-radius-lg: 24px;
  --grc-line: 1px solid var(--grc-gold-soft);
  --grc-sans: 'Outfit', system-ui, sans-serif;
  --grc-display: 'Space Grotesk', 'Outfit', system-ui, sans-serif;
}

html, body {
  background: var(--grc-bg) !important;
  color: var(--grc-text);
  font-family: var(--grc-sans);
}

/* Kill cut-corner language on soft pages */
.grc-app *,
.grc-auth * {
  clip-path: none !important;
}

.grc-app,
.grc-auth {
  min-height: 100vh;
  background:
    radial-gradient(900px 480px at 50% -8%, rgba(201, 162, 39, 0.14), transparent 55%),
    var(--grc-bg);
  color: var(--grc-text);
}

.grc-app {
  padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px));
}

.grc-wrap {
  width: min(100%, 28rem);
  margin: 0 auto;
  padding: 0 1rem;
}

/* ── Topbar ── */
.grc-topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  background: rgba(10, 10, 10, 0.82);
  border-bottom: var(--grc-line);
}
.grc-topbar__inner {
  width: min(100%, 28rem);
  margin: 0 auto;
  padding: 0.65rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 4rem;
}
.grc-topbar__brand img {
  display: block;
  height: 48px;
  width: auto;
  max-width: 200px;
  object-fit: contain;
}
@media (min-width: 380px) {
  .grc-topbar__brand img {
    height: 52px;
    max-width: 220px;
  }
}
.grc-topbar__meta {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}
.grc-topbar__hello {
  display: none;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.15;
}
@media (min-width: 380px) {
  .grc-topbar__hello { display: flex; }
}
.grc-topbar__hello span {
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-topbar__hello strong {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--grc-text);
}
.grc-icon-btn {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 2.45rem;
  height: 2.45rem;
  display: grid;
  place-content: center;
  border-radius: 14px;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45) 0%, rgba(255,248,220,0.1) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.16) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  color: #1a1204;
  text-decoration: none;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.3) inset,
    0 2px 0 #6b4e0e,
    0 3px 0 #4a3608,
    0 6px 14px rgba(0, 0, 0, 0.4);
  transform: translateY(0);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
  -webkit-appearance: none;
  appearance: none;
  padding: 0;
  cursor: pointer;
}
.grc-icon-btn::before {
  content: "";
  position: absolute;
  inset: 1px 14% auto;
  height: 40%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.5), rgba(255,255,255,0));
  pointer-events: none;
  opacity: 0.7;
  z-index: 0;
}
.grc-icon-btn__img,
.grc-icon-btn img {
  position: relative;
  z-index: 1;
  width: 1.2rem;
  height: 1.2rem;
  object-fit: contain;
  display: block;
  filter:
    brightness(0.22)
    contrast(1.15)
    drop-shadow(0 1px 0 rgba(255, 245, 200, 0.3));
}
.grc-icon-btn svg {
  position: relative;
  z-index: 1;
  width: 17px;
  height: 17px;
  stroke: currentColor;
}
.grc-icon-btn:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}
.grc-icon-btn:active {
  filter: brightness(0.96);
  transform: translateY(2px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.3) inset,
    0 1px 0 #4a3608,
    0 2px 8px rgba(0, 0, 0, 0.35);
}

/* ── Page head ── */
.grc-page-head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: min(100%, 28rem);
  margin: 0 auto;
  padding: 1rem 1rem 0.35rem;
}
.grc-page-head__back {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 2.45rem;
  height: 2.45rem;
  display: grid;
  place-content: center;
  border-radius: 14px;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45) 0%, rgba(255,248,220,0.1) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.16) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  color: #1a1204;
  text-decoration: none;
  flex-shrink: 0;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.3) inset,
    0 2px 0 #6b4e0e,
    0 3px 0 #4a3608,
    0 6px 14px rgba(0, 0, 0, 0.4);
  transform: translateY(0);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
}
.grc-page-head__back::before {
  content: "";
  position: absolute;
  inset: 1px 14% auto;
  height: 40%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.5), rgba(255,255,255,0));
  pointer-events: none;
  opacity: 0.7;
  z-index: 0;
}
.grc-page-head__back img,
.grc-page-head__back svg {
  position: relative;
  z-index: 1;
  width: 1.15rem;
  height: 1.15rem;
  object-fit: contain;
  display: block;
}
.grc-page-head__back img {
  filter:
    brightness(0.22)
    contrast(1.15)
    drop-shadow(0 1px 0 rgba(255, 245, 200, 0.3));
}
.grc-page-head__back:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}
.grc-page-head__back:active {
  filter: brightness(0.96);
  transform: translateY(2px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.3) inset,
    0 1px 0 #4a3608,
    0 2px 8px rgba(0, 0, 0, 0.35);
}
.grc-page-head__copy { min-width: 0; }
.grc-page-head__eyebrow {
  margin: 0;
  font-size: 0.65rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--grc-gold-bright);
  font-weight: 600;
}
.grc-page-head__title {
  margin: 0.15rem 0 0;
  font-family: var(--grc-display);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: #fff;
}

/* ── Surfaces ── */
.grc-surface {
  background: var(--grc-surface);
  border: var(--grc-line);
  border-radius: var(--grc-radius);
  padding: 1rem 1.05rem;
}
.grc-surface--flush { padding: 0; overflow: hidden; }
.grc-section {
  margin-top: 1.35rem;
}
.grc-section__label {
  margin: 0 0 0.65rem;
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--grc-gold-bright);
  font-weight: 700;
}
.grc-section__title {
  margin: 0 0 0.35rem;
  font-family: var(--grc-display);
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.02em;
}
.grc-section__lead {
  margin: 0 0 0.9rem;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--grc-text-dim);
}

/* ── CTAs — 3D brushed gold metal ── */
.grc-cta {
  --grc-metal-shine: linear-gradient(
    180deg,
    rgba(255, 248, 220, 0.55) 0%,
    rgba(255, 248, 220, 0.12) 18%,
    transparent 42%,
    transparent 62%,
    rgba(80, 50, 0, 0.18) 100%
  );
  --grc-metal-face: linear-gradient(
    165deg,
    #fff3b0 0%,
    #f0d56a 14%,
    #e8c547 32%,
    #c9a227 58%,
    #a8841a 78%,
    #d4b44a 92%,
    #f2dc7a 100%
  );
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  min-height: 2.95rem;
  padding: 0.72rem 1.2rem;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  border-radius: 14px;
  background: var(--grc-metal-shine), var(--grc-metal-face);
  background-blend-mode: soft-light, normal;
  color: #1a1204 !important;
  font-family: var(--grc-display);
  font-weight: 800;
  font-size: 0.92rem;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-shadow: 0 1px 0 rgba(255, 245, 200, 0.45);
  cursor: pointer;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 8px 18px rgba(0, 0, 0, 0.45),
    0 2px 6px rgba(232, 197, 71, 0.25);
  transform: translateY(0);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
  -webkit-tap-highlight-color: transparent;
  overflow: hidden;
  isolation: isolate;
}
.grc-cta::before {
  content: "";
  position: absolute;
  inset: 1px 8% auto;
  height: 42%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
  z-index: 0;
  opacity: 0.75;
}
.grc-cta > * { position: relative; z-index: 1; }
.grc-cta:hover {
  filter: brightness(1.06) saturate(1.05);
  transform: translateY(-1px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.75) inset,
    0 -2px 0 rgba(90, 55, 5, 0.3) inset,
    0 3px 0 #6b4e0e,
    0 5px 0 #4a3608,
    0 12px 22px rgba(0, 0, 0, 0.48),
    0 3px 10px rgba(232, 197, 71, 0.35);
}
.grc-cta:active {
  filter: brightness(0.96);
  transform: translateY(3px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.35) inset,
    0 1px 0 #4a3608,
    0 2px 8px rgba(0, 0, 0, 0.4);
}
.grc-cta:disabled,
.grc-cta[disabled] {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
  filter: grayscale(0.25);
}
.grc-cta svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  filter: drop-shadow(0 1px 0 rgba(255, 245, 200, 0.35));
}
.grc-cta--block { width: 100%; }
.grc-cta--ghost {
  background:
    linear-gradient(180deg, rgba(255,230,150,0.08), transparent 40%),
    linear-gradient(165deg, #2a2414 0%, #16120a 45%, #0e0c08 100%);
  border: 1px solid rgba(201, 162, 39, 0.55);
  border-bottom-color: rgba(90, 65, 15, 0.9);
  color: var(--grc-gold-bright) !important;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.55);
  box-shadow:
    0 1px 0 rgba(255, 230, 150, 0.18) inset,
    0 -1px 0 rgba(0, 0, 0, 0.45) inset,
    0 2px 0 #1a1508,
    0 4px 0 #0a0804,
    0 8px 16px rgba(0, 0, 0, 0.4);
}
.grc-cta--ghost::before {
  background: linear-gradient(180deg, rgba(232,197,71,0.22), transparent);
  opacity: 0.55;
}
.grc-cta--ghost:hover {
  color: #ffe989 !important;
  border-color: rgba(232, 197, 71, 0.75);
}
.grc-cta--ghost:active {
  transform: translateY(2px);
  box-shadow:
    0 1px 0 rgba(255, 230, 150, 0.1) inset,
    0 1px 0 #0a0804,
    0 2px 8px rgba(0, 0, 0, 0.4);
}
.grc-cta--sm {
  min-height: 2.4rem;
  padding: 0.45rem 0.9rem;
  font-size: 0.8rem;
  border-radius: 12px;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.55) inset,
    0 -1px 0 rgba(90, 55, 5, 0.3) inset,
    0 1px 0 #6b4e0e,
    0 3px 0 #4a3608,
    0 6px 14px rgba(0, 0, 0, 0.4);
}
.grc-cta--sm:active { transform: translateY(2px); }

/* ── Fields ── */
.grc-field { display: block; margin-bottom: 0.95rem; }
.grc-field__label {
  display: block;
  margin-bottom: 0.4rem;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--grc-text-dim);
}
.grc-field__control {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 3rem;
  padding: 0 0.9rem;
  border-radius: var(--grc-radius-sm);
  border: var(--grc-line);
  background: var(--grc-bg-elev);
}
.grc-field__control svg {
  width: 18px;
  height: 18px;
  color: var(--grc-gold-bright);
  stroke: currentColor;
  flex-shrink: 0;
}
.grc-field__control input,
.grc-field__control select,
.grc-field__control textarea {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font-size: 0.95rem;
  font-family: var(--grc-sans);
  padding: 0.7rem 0;
}
.grc-field__control textarea { min-height: 5.5rem; resize: vertical; }
.grc-field__eye {
  border: 0;
  background: transparent;
  color: var(--grc-text-dim);
  padding: 0.2rem;
  cursor: pointer;
}
.grc-field__control--amount {
  min-height: 3.35rem;
  padding-right: 0.75rem;
}
.grc-field__control--amount input {
  font-family: var(--grc-display);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #fff;
}
.grc-field__control--amount input::placeholder {
  color: rgba(247, 240, 216, 0.28);
  font-weight: 600;
}
.grc-field__suffix {
  flex-shrink: 0;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: #1a1204;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 40%),
    linear-gradient(165deg, #e8c547, #c9a227 60%, #a8841a);
  border: 1px solid rgba(255, 230, 150, 0.45);
  border-radius: 10px;
  padding: 0.35rem 0.55rem;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.45) inset,
    0 2px 0 #6b4e0e;
}
.grc-wd-preview__list {
  display: grid;
  gap: 0.55rem;
}
.grc-wd-preview__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.55rem 0.65rem;
  border-radius: 12px;
  background: var(--grc-bg-elev);
  border: 1px solid rgba(201,162,39,0.15);
}
.grc-wd-preview__row span {
  font-size: 0.72rem;
  color: var(--grc-text-mute);
}
.grc-wd-preview__row strong {
  font-size: 0.88rem;
  color: #fff;
  text-align: right;
}
.grc-wd-preview__row--total {
  background: linear-gradient(100deg, rgba(232,197,71,0.18), rgba(232,197,71,0.05));
  border-color: rgba(201,162,39,0.35);
}
.grc-wd-preview__row--total span { color: var(--grc-text-dim); }
.grc-wd-preview__row--total strong {
  font-family: var(--grc-display);
  font-size: 1.05rem;
  color: var(--grc-gold-bright);
}

/* ── Balance hero ── */
.grc-balance {
  position: relative;
  border-radius: var(--grc-radius-lg);
  overflow: hidden;
  border: var(--grc-line);
  min-height: 15.5rem;
  margin-top: 1rem;
}
.grc-balance__media {
  position: absolute;
  inset: 0;
}
.grc-balance__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.grc-balance__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(10,10,10,0.35) 0%, rgba(10,10,10,0.72) 48%, rgba(10,10,10,0.92) 100%);
}
.grc-balance__body {
  position: relative;
  z-index: 1;
  padding: 1.15rem 1.15rem 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  min-height: 15.5rem;
}
.grc-balance__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.grc-balance__hello {
  font-size: 0.88rem;
  color: rgba(255,255,255,0.85);
}
.grc-balance__chip {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #1a1204;
  text-shadow: 0 1px 0 rgba(255, 245, 200, 0.45);
  border-radius: 12px;
  padding: 0.35rem 0.6rem;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.55) 0%, rgba(255,248,220,0.12) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 3px 0 #4a3608,
    0 6px 14px rgba(0, 0, 0, 0.4),
    0 2px 6px rgba(232, 197, 71, 0.22);
}
.grc-balance__chip::before {
  content: "";
  position: absolute;
  inset: 1px 12% auto;
  height: 42%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
  opacity: 0.7;
}
.grc-balance__label {
  margin: 0;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--grc-text-dim);
}
.grc-balance__amount {
  margin: 0.15rem 0 0;
  font-family: var(--grc-display);
  font-size: 2.35rem;
  font-weight: 700;
  letter-spacing: -0.04em;
  color: #fff;
  line-height: 1;
}
.grc-balance__amount span {
  font-size: 1.15rem;
  margin-right: 0.15rem;
  color: var(--grc-gold-bright);
}
.grc-balance__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
}
.grc-balance__glass {
  padding: 0.65rem 0.7rem;
  border-radius: var(--grc-radius-sm);
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
}
.grc-balance__glass p {
  margin: 0;
  font-size: 0.68rem;
  color: var(--grc-text-mute);
}
.grc-balance__glass strong {
  display: block;
  margin-top: 0.2rem;
  font-size: 1rem;
  color: #fff;
}
.grc-balance__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-top: auto;
}

/* ── Shortcut row — 3D metal gold icons ── */
.grc-shortcuts {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.55rem;
}
.grc-shortcut {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  text-decoration: none;
  color: var(--grc-text);
  padding: 0.55rem 0.2rem;
}
.grc-shortcut__ico {
  position: relative;
  width: 3rem;
  height: 3rem;
  display: grid;
  place-content: center;
  border-radius: 16px;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.55) 0%, rgba(255,248,220,0.12) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  color: #1a1204;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 8px 16px rgba(0, 0, 0, 0.42),
    0 2px 6px rgba(232, 197, 71, 0.22);
  transform: translateY(0);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
}
.grc-shortcut__ico::before {
  content: "";
  position: absolute;
  inset: 1px 12% auto;
  height: 42%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
  z-index: 0;
  opacity: 0.7;
}
.grc-shortcut__ico svg {
  position: relative;
  z-index: 1;
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2.25;
  filter: drop-shadow(0 1px 0 rgba(255, 245, 200, 0.4));
}
.grc-shortcut:hover .grc-shortcut__ico {
  filter: brightness(1.06) saturate(1.05);
  transform: translateY(-1px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.75) inset,
    0 -2px 0 rgba(90, 55, 5, 0.3) inset,
    0 3px 0 #6b4e0e,
    0 5px 0 #4a3608,
    0 10px 18px rgba(0, 0, 0, 0.45),
    0 3px 8px rgba(232, 197, 71, 0.3);
}
.grc-shortcut:active .grc-shortcut__ico {
  filter: brightness(0.96);
  transform: translateY(3px);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.35) inset,
    0 1px 0 #4a3608,
    0 2px 8px rgba(0, 0, 0, 0.4);
}
.grc-shortcut__name {
  font-size: 0.68rem;
  font-weight: 600;
  text-align: center;
  color: var(--grc-text-dim);
}

/* ── Promo strip ── */
.grc-promo {
  display: grid;
  grid-template-columns: 5.5rem 1fr;
  gap: 0.85rem;
  align-items: center;
  padding: 0.85rem;
  border-radius: var(--grc-radius);
  border: var(--grc-line);
  background: linear-gradient(135deg, #161616, #1a1608);
  text-decoration: none;
  color: inherit;
}
.grc-promo__media {
  width: 5.5rem;
  height: 5.5rem;
  border-radius: 14px;
  overflow: hidden;
  border: var(--grc-line);
}
.grc-promo__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.grc-promo__eyebrow {
  margin: 0;
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--grc-gold-bright);
  font-weight: 700;
}
.grc-promo__title {
  margin: 0.2rem 0;
  font-family: var(--grc-display);
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
}
.grc-promo__text {
  margin: 0 0 0.55rem;
  font-size: 0.78rem;
  line-height: 1.4;
  color: var(--grc-text-dim);
}

/* ── Why / media row ── */
.grc-why {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.35rem;
  -webkit-overflow-scrolling: touch;
}
.grc-why__card {
  flex: 0 0 78%;
  scroll-snap-align: start;
  border-radius: var(--grc-radius);
  overflow: hidden;
  border: var(--grc-line);
  background: var(--grc-surface);
  text-decoration: none;
  color: inherit;
}
.grc-why__media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}
.grc-why__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.grc-why__body { padding: 0.85rem 0.95rem 1rem; }
.grc-why__name {
  margin: 0 0 0.35rem;
  font-family: var(--grc-display);
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.25;
  background: linear-gradient(
    180deg,
    #fff8d6 0%,
    #ffe989 18%,
    #e8c547 42%,
    #c9a227 68%,
    #8a6a12 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255, 245, 200, 0.55))
          drop-shadow(0 2px 0 #6b4e0e)
          drop-shadow(0 3px 0 #4a3608)
          drop-shadow(0 5px 10px rgba(0, 0, 0, 0.45));
}
.grc-why__text {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.4;
  color: var(--grc-text-dim);
}

/* ── Plan module ── */
.grc-plan {
  position: relative;
  border-radius: var(--grc-radius-lg);
  border: var(--grc-line);
  background:
    radial-gradient(120% 80% at 100% 0%, rgba(232,197,71,0.1), transparent 45%),
    linear-gradient(165deg, rgba(232,197,71,0.06) 0%, transparent 40%),
    var(--grc-surface);
  padding: 1.05rem 1.05rem 1.15rem;
  margin-bottom: 1rem;
  overflow: hidden;
}
.grc-plan::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(232,197,71,0.6), transparent);
  pointer-events: none;
}
.grc-plan__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.grc-plan__identity {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}
.grc-plan__icon {
  flex-shrink: 0;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 16px;
  border: 1px solid rgba(201,162,39,0.45);
  background:
    radial-gradient(circle at 35% 28%, rgba(232,197,71,0.28), transparent 55%),
    #0e0e0e;
  display: grid;
  place-items: center;
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 8px 20px rgba(0,0,0,0.25);
}
.grc-plan__icon img {
  width: 78%;
  height: 78%;
  object-fit: contain;
  display: block;
}
.grc-plan__name {
  margin: 0;
  font-family: var(--grc-display);
  font-size: 1.14rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.2;
  background: linear-gradient(
    180deg,
    #fff8d6 0%,
    #ffe989 18%,
    #e8c547 42%,
    #c9a227 68%,
    #8a6a12 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255, 245, 200, 0.55))
          drop-shadow(0 2px 0 #6b4e0e)
          drop-shadow(0 3px 0 #4a3608)
          drop-shadow(0 5px 10px rgba(0, 0, 0, 0.45));
}
.grc-plan__sub {
  margin: 0.18rem 0 0;
  font-size: 0.72rem;
  color: var(--grc-text-mute);
}
.grc-plan__rate {
  position: relative;
  flex-shrink: 0;
  isolation: isolate;
  overflow: hidden;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  color: #1a1204;
  text-shadow: 0 1px 0 rgba(255, 245, 200, 0.45);
  text-align: center;
  line-height: 1.15;
  padding: 0.45rem 0.65rem;
  border-radius: 12px;
  border: 1px solid rgba(255, 230, 150, 0.55);
  border-bottom-color: rgba(90, 60, 8, 0.75);
  border-right-color: rgba(120, 85, 15, 0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.55) 0%, rgba(255,248,220,0.12) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 8px 16px rgba(0, 0, 0, 0.42),
    0 2px 6px rgba(232, 197, 71, 0.22);
}
.grc-plan__rate::before {
  content: "";
  position: absolute;
  inset: 1px 10% auto;
  height: 42%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
  opacity: 0.7;
}
.grc-plan__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0 0 0.85rem;
}
.grc-plan__chip {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--grc-text-dim);
  background: rgba(10,10,10,0.4);
  border: 1px solid rgba(201,162,39,0.2);
  border-radius: 999px;
  padding: 0.28rem 0.5rem;
}
.grc-plan__chip svg {
  width: 0.78rem;
  height: 0.78rem;
  color: var(--grc-gold-bright);
  flex-shrink: 0;
}
.grc-plan__hero {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 0.55rem;
  padding: 0.8rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(201,162,39,0.22);
  background: rgba(10,10,10,0.42);
}
.grc-plan__hero--invest {
  background:
    linear-gradient(120deg, rgba(232,197,71,0.16), rgba(10,10,10,0.35)),
    rgba(10,10,10,0.42);
  border-color: rgba(201,162,39,0.38);
}
.grc-plan__hero--daily {
  background: rgba(10,10,10,0.35);
}
.grc-plan__hero-icon {
  flex-shrink: 0;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(232,197,71,0.12);
  border: 1px solid rgba(201,162,39,0.3);
  color: var(--grc-gold-bright);
}
.grc-plan__hero-icon svg {
  width: 1.15rem;
  height: 1.15rem;
}
.grc-plan__hero span {
  display: block;
  font-size: 0.64rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-plan__hero strong {
  display: block;
  margin-top: 0.12rem;
  font-family: var(--grc-display);
  font-size: 1.55rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
.grc-plan__hero--daily strong {
  color: var(--grc-gold-bright);
  font-size: 1.4rem;
}
.grc-plan__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin: 0.15rem 0 0.65rem;
}
.grc-plan__stat {
  padding: 0.7rem 0.7rem 0.75rem;
  border-radius: 14px;
  background: var(--grc-bg-elev);
  border: 1px solid rgba(201,162,39,0.16);
}
.grc-plan__stat-icon {
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 8px;
  display: grid;
  place-items: center;
  margin-bottom: 0.4rem;
  background: rgba(232,197,71,0.1);
  color: var(--grc-gold-bright);
}
.grc-plan__stat-icon svg {
  width: 0.85rem;
  height: 0.85rem;
}
.grc-plan__stat p {
  margin: 0;
  font-size: 0.62rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-plan__stat strong {
  display: block;
  margin-top: 0.2rem;
  font-family: var(--grc-display);
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}
.grc-plan__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-bottom: 0.75rem;
}
.grc-plan__meta div {
  padding: 0.6rem 0.7rem;
  border-radius: 12px;
  background: var(--grc-bg-elev);
  border: 1px solid rgba(201,162,39,0.15);
}
.grc-plan__meta p {
  margin: 0;
  font-size: 0.64rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-plan__meta strong {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.95rem;
  color: #fff;
}
.grc-plan__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0 0 0.95rem;
  padding: 0.75rem 0.85rem;
  border-radius: 14px;
  background: linear-gradient(100deg, rgba(232,197,71,0.2), rgba(232,197,71,0.05));
  border: 1px solid rgba(201,162,39,0.35);
}
.grc-plan__total-left {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  min-width: 0;
}
.grc-plan__total-left svg {
  width: 1rem;
  height: 1rem;
  color: var(--grc-gold-bright);
  flex-shrink: 0;
}
.grc-plan__total span {
  font-size: 0.72rem;
  color: var(--grc-text-dim);
}
.grc-plan__total strong {
  font-family: var(--grc-display);
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--grc-gold-bright);
  white-space: nowrap;
}
.grc-plan__note {
  margin: 0 0 0.85rem;
  font-size: 0.78rem;
  color: var(--grc-text-dim);
}
.grc-plan .grc-cta {
  gap: 0.45rem;
}
.grc-plan .grc-cta svg {
  width: 1rem;
  height: 1rem;
}

/* ── List rows ── */
.grc-list {
  border-radius: var(--grc-radius);
  border: var(--grc-line);
  background: var(--grc-surface);
  overflow: hidden;
}
.grc-list__row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.9rem 1rem;
  text-decoration: none;
  color: inherit;
  border-bottom: 1px solid rgba(201,162,39,0.12);
}
.grc-list__row:last-child { border-bottom: 0; }
.grc-list__ico {
  width: 2.4rem;
  height: 2.4rem;
  display: grid;
  place-content: center;
  border-radius: 12px;
  background: var(--grc-gold-faint);
  color: var(--grc-gold-bright);
  flex-shrink: 0;
}
.grc-list__ico svg { width: 18px; height: 18px; }
.grc-list__copy { flex: 1; min-width: 0; }
.grc-list__title {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
  color: #fff;
}
.grc-list__hint {
  margin: 0.15rem 0 0;
  font-size: 0.75rem;
  color: var(--grc-text-mute);
}
.grc-list__val {
  font-weight: 700;
  color: var(--grc-gold-bright);
  font-size: 0.9rem;
}

/* ── Auth — full Soft Luxury 3D ── */
.grc-auth {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  padding: 1.25rem 1.1rem 2.25rem;
  overflow: hidden;
}
.grc-auth__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(900px 520px at 50% -12%, rgba(232,197,71,0.22), transparent 55%),
    radial-gradient(600px 380px at 100% 80%, rgba(201,162,39,0.1), transparent 50%),
    radial-gradient(500px 320px at 0% 60%, rgba(201,162,39,0.08), transparent 45%);
  z-index: 0;
}
.grc-auth > * { position: relative; z-index: 1; }
.grc-auth__brand {
  display: flex;
  justify-content: center;
  margin: 1.1rem 0 1.35rem;
  filter: drop-shadow(0 8px 24px rgba(232,197,71,0.18));
}
.grc-auth__brand img {
  height: 64px;
  width: auto;
  max-width: 260px;
  object-fit: contain;
}
@media (min-width: 380px) {
  .grc-auth__brand img { height: 72px; max-width: 280px; }
}
.grc-auth__card {
  width: min(100%, 26rem);
  margin: 0 auto;
  padding: 1.15rem 1.1rem 1.35rem;
  border-radius: 24px;
  border: 1px solid rgba(201,162,39,0.4);
  border-top-color: rgba(255,230,150,0.35);
  background:
    radial-gradient(120% 80% at 50% -20%, rgba(232,197,71,0.14), transparent 50%),
    linear-gradient(180deg, #1c1c1c 0%, #141414 100%);
  box-shadow:
    0 1px 0 rgba(255,230,150,0.16) inset,
    0 18px 48px rgba(0,0,0,0.45);
}
.grc-auth__tabs {
  display: flex;
  gap: 0.4rem;
  margin-bottom: 1.15rem;
  padding: 0.3rem;
  border-radius: 16px;
  background: #0e0c08;
  border: 1px solid rgba(201,162,39,0.28);
  box-shadow: 0 1px 0 rgba(255,230,150,0.08) inset, 0 4px 12px rgba(0,0,0,0.35);
}
.grc-auth__tab {
  flex: 1;
  text-align: center;
  padding: 0.7rem 0.5rem;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 800;
  font-size: 0.88rem;
  color: var(--grc-text-dim);
  transition: transform 0.12s ease, color 0.12s ease, box-shadow 0.12s ease;
}
.grc-auth__tab.is-active {
  color: #1a1204;
  border: 1px solid rgba(255,230,150,0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5) 0%, rgba(255,248,220,0.1) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.16) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.65) inset,
    0 -1px 0 rgba(90,55,5,0.3) inset,
    0 2px 0 #6b4e0e,
    0 3px 0 #4a3608,
    0 6px 14px rgba(0,0,0,0.35);
  text-shadow: 0 1px 0 rgba(255,245,200,0.4);
}
.grc-auth__intro { margin-bottom: 0.85rem; }
.grc-auth__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--grc-gold-bright);
}
.grc-auth__title {
  margin: 0 0 0.4rem;
  font-family: var(--grc-display);
  font-size: 1.7rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.15;
  background: linear-gradient(180deg, #fff8d6 0%, #ffe989 18%, #e8c547 48%, #c9a227 75%, #8a6a12 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255,245,200,0.4))
          drop-shadow(0 2px 0 #6b4e0e)
          drop-shadow(0 5px 12px rgba(0,0,0,0.4));
}
.grc-auth__lead {
  margin: 0;
  font-size: 0.9rem;
  color: var(--grc-text-dim);
  line-height: 1.45;
}
.grc-auth__perks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0 0 1.15rem;
}
.grc-auth__perk {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  padding: 0.32rem 0.55rem;
  border-radius: 999px;
  font-size: 0.65rem;
  font-weight: 700;
  color: rgba(247,240,216,0.75);
  background: rgba(10,10,10,0.45);
  border: 1px solid rgba(201,162,39,0.28);
}
.grc-auth__perk svg {
  width: 0.78rem;
  height: 0.78rem;
  color: #e8c547;
}
.grc-auth__referred {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  padding: 0.7rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(201,162,39,0.3);
  background: linear-gradient(100deg, rgba(232,197,71,0.14), rgba(232,197,71,0.04));
  font-size: 0.85rem;
  color: var(--grc-text-dim);
}
.grc-auth__referred svg {
  width: 1.05rem;
  height: 1.05rem;
  color: #e8c547;
  flex-shrink: 0;
}
.grc-auth__referred strong { color: #fff; }
.grc-auth__form { margin-top: 0.15rem; }
.grc-field__control--3d {
  min-height: 3.15rem;
  border-radius: 14px;
  border: 1px solid rgba(201,162,39,0.35);
  background:
    linear-gradient(180deg, rgba(255,230,150,0.06), transparent 40%),
    #0e0c08;
  box-shadow:
    0 1px 0 rgba(255,230,150,0.1) inset,
    0 2px 0 #050403,
    0 6px 14px rgba(0,0,0,0.28);
}
.grc-field__control--3d:focus-within {
  border-color: rgba(232,197,71,0.65);
  box-shadow:
    0 1px 0 rgba(255,230,150,0.16) inset,
    0 0 0 3px rgba(232,197,71,0.12),
    0 2px 0 #050403,
    0 8px 18px rgba(0,0,0,0.32);
}
.grc-field__prefix {
  flex-shrink: 0;
  font-weight: 800;
  font-size: 0.88rem;
  color: #1a1204;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 40%),
    linear-gradient(165deg, #e8c547, #c9a227 60%, #a8841a);
  border: 1px solid rgba(255,230,150,0.45);
  border-radius: 10px;
  padding: 0.3rem 0.5rem;
  box-shadow: 0 1px 0 rgba(255,248,210,0.4) inset, 0 2px 0 #6b4e0e;
}
.grc-field__eye--3d {
  width: 2rem;
  height: 2rem;
  border-radius: 10px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(201,162,39,0.35);
  background:
    linear-gradient(180deg, rgba(255,230,150,0.12), transparent 50%),
    #16120a;
  color: #e8c547;
  box-shadow: 0 1px 0 rgba(255,230,150,0.12) inset, 0 2px 0 #0a0804;
}
.grc-field__eye--3d svg { width: 1rem; height: 1rem; }
.grc-auth__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0.25rem 0 1.1rem;
  font-size: 0.82rem;
}
.grc-auth__meta a {
  color: var(--grc-gold-bright);
  text-decoration: none;
  font-weight: 700;
}
.grc-auth__check {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.45rem;
  color: var(--grc-text-dim);
  line-height: 1.35;
}
.grc-auth__check input[type="checkbox"] {
  margin-top: 0.15rem;
  accent-color: #e8c547;
}
.grc-auth__check a { color: #e8c547; }
.grc-auth__agree { margin: 0.5rem 0 1rem; }
.grc-auth__foot {
  margin-top: 1.35rem;
  text-align: center;
  font-size: 0.88rem;
  color: var(--grc-text-dim);
}
.grc-auth__foot a {
  color: var(--grc-gold-bright);
  font-weight: 800;
  text-decoration: none;
}
.grc-auth__email {
  margin: 0.55rem 0 0;
  font-size: 1rem;
  font-weight: 800;
  color: #ffe989;
  letter-spacing: 0.01em;
  word-break: break-all;
}
.grc-auth__note {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0 0 1.1rem;
  padding: 0.75rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(201,162,39,0.28);
  background: linear-gradient(100deg, rgba(232,197,71,0.12), rgba(232,197,71,0.03));
  font-size: 0.82rem;
  color: var(--grc-text-dim);
  line-height: 1.4;
}
.grc-auth__note svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.1rem;
  color: #e8c547;
}
.grc-auth__note--ok {
  border-color: rgba(120, 190, 90, 0.35);
  background: linear-gradient(100deg, rgba(80,160,70,0.16), rgba(80,160,70,0.04));
}
.grc-auth__note--ok svg { color: #8fd46a; }
.grc-auth__tip {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  width: min(100%, 26rem);
  margin: 1rem auto 0;
  padding: 0.85rem 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(201,162,39,0.22);
  background: rgba(14,12,8,0.55);
  font-size: 0.8rem;
  color: var(--grc-text-dim);
  line-height: 1.45;
}
.grc-auth__tip svg {
  width: 1.05rem;
  height: 1.05rem;
  flex-shrink: 0;
  color: #e8c547;
  margin-top: 0.05rem;
}
.grc-auth__tip p { margin: 0; }
.grc-code {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.4rem;
  margin: 0 0 1.15rem;
}
.grc-code__digit {
  width: 100%;
  aspect-ratio: 1 / 1.15;
  max-height: 3.25rem;
  text-align: center;
  font-size: 1.25rem;
  font-weight: 800;
  color: #fff8d6;
  border-radius: 12px;
  border: 1px solid rgba(201,162,39,0.35);
  background:
    linear-gradient(180deg, rgba(255,230,150,0.08), transparent 45%),
    #0e0c08;
  box-shadow:
    0 1px 0 rgba(255,230,150,0.1) inset,
    0 2px 0 #050403,
    0 6px 12px rgba(0,0,0,0.28);
  outline: none;
  transition: border-color 0.12s ease, box-shadow 0.12s ease, transform 0.12s ease;
}
.grc-code__digit:focus {
  border-color: rgba(232,197,71,0.7);
  box-shadow:
    0 1px 0 rgba(255,230,150,0.16) inset,
    0 0 0 3px rgba(232,197,71,0.14),
    0 2px 0 #050403,
    0 8px 16px rgba(0,0,0,0.32);
}
.grc-code__digit.is-filled {
  border-color: rgba(232,197,71,0.55);
  color: #ffe989;
  background:
    linear-gradient(180deg, rgba(232,197,71,0.16), transparent 50%),
    #14100a;
}
.grc-auth__reqs {
  list-style: none;
  margin: -0.35rem 0 0.95rem;
  padding: 0.7rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(201,162,39,0.22);
  background: rgba(10,10,10,0.35);
}
.grc-auth__reqs li {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.75rem;
  color: var(--grc-text-dim);
  margin: 0.28rem 0;
}
.grc-auth__reqs .dot {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: rgba(201,162,39,0.35);
  flex-shrink: 0;
}
.grc-auth__reqs .is-met {
  color: #c8e8a8;
}
.grc-auth__reqs .is-met .dot {
  background: #8fd46a;
  box-shadow: 0 0 8px rgba(143,212,106,0.45);
}
.grc-auth__match {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.45rem;
  font-size: 0.78rem;
  color: var(--grc-text-dim);
}
.grc-auth__match svg {
  width: 0.9rem;
  height: 0.9rem;
}
.grc-auth__match.is-ok { color: #8fd46a; }
.grc-auth__match.is-bad { color: #f87171; }
@keyframes grc-auth-shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}
.grc-auth--shake { animation: grc-auth-shake 0.4s ease; }
.grc-auth-modal {
  position: fixed;
  inset: 0;
  z-index: 90;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.72);
  backdrop-filter: blur(8px);
  padding: 1rem;
}
.grc-auth-modal__sheet {
  width: min(100%, 22rem);
  padding: 1.15rem;
  border-radius: 20px;
  border: 1px solid rgba(201,162,39,0.4);
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(232,197,71,0.12), transparent 50%),
    #161616;
  box-shadow: 0 18px 48px rgba(0,0,0,0.5);
}
.grc-auth-modal__sheet h5 {
  margin: 0 0 0.45rem;
  font-family: var(--grc-display);
  font-size: 1.1rem;
  color: #fff;
}
.grc-auth-modal__sheet p {
  margin: 0 0 1rem;
  font-size: 0.88rem;
  color: var(--grc-text-dim);
  line-height: 1.45;
}
.grc-auth-modal__actions {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

/* ── Referral rewards page ── */
.grc-rw-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--grc-radius-lg);
  border: var(--grc-line);
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(232,197,71,0.18), transparent 50%),
    linear-gradient(165deg, #1c1c1c, #121212);
  padding: 1.15rem 1.1rem 1.2rem;
}
.grc-rw-hero__glow {
  position: absolute;
  left: -15%;
  top: -35%;
  width: 12rem;
  height: 12rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232,197,71,0.22), transparent 70%);
  pointer-events: none;
}
.grc-rw-hero__title {
  position: relative;
  z-index: 1;
  margin: 0.25rem 0 0.4rem;
  font-family: var(--grc-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.15;
  background: linear-gradient(180deg, #fff8d6, #e8c547 55%, #c9a227);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255,245,200,0.35)) drop-shadow(0 2px 0 #6b4e0e);
}
.grc-rw-hero__lead {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.45;
  color: var(--grc-text-dim);
}
.grc-rw-hero__lead strong { color: #e8c547; }
.grc-rw-hero__stats {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-top: 0.95rem;
}
.grc-rw-hero__stats div {
  padding: 0.7rem 0.75rem;
  border-radius: 14px;
  background: rgba(10,10,10,0.4);
  border: 1px solid rgba(201,162,39,0.22);
}
.grc-rw-hero__stats p {
  margin: 0;
  font-size: 0.62rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-rw-hero__stats strong {
  display: block;
  margin-top: 0.15rem;
  font-family: var(--grc-display);
  font-size: 1.2rem;
  color: #fff;
}
.grc-rw-next {
  position: relative;
  z-index: 1;
  margin-top: 0.85rem;
  padding: 0.75rem 0.8rem;
  border-radius: 14px;
  background: linear-gradient(100deg, rgba(232,197,71,0.16), rgba(232,197,71,0.04));
  border: 1px solid rgba(201,162,39,0.3);
}
.grc-rw-next__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.45rem;
  font-size: 0.72rem;
  color: var(--grc-text-dim);
}
.grc-rw-next__top strong { color: #e8c547; }
.grc-rw-bar {
  height: 7px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
}
.grc-rw-bar i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #f0d56a, #e8c547, #c9a227);
  box-shadow: 0 0 10px rgba(232,197,71,0.45);
  font-style: normal;
}
.grc-rw-card {
  position: relative;
  border-radius: var(--grc-radius-lg);
  border: var(--grc-line);
  background:
    linear-gradient(165deg, rgba(232,197,71,0.07), transparent 42%),
    var(--grc-surface);
  padding: 1rem 1.05rem 1.1rem;
  margin-bottom: 0.85rem;
  overflow: hidden;
}
.grc-rw-card--open {
  border-color: rgba(232,197,71,0.55);
  box-shadow: 0 0 0 1px rgba(232,197,71,0.12), 0 10px 28px rgba(0,0,0,0.28);
}
.grc-rw-card--claimed { opacity: 0.82; }
.grc-rw-card__top {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.grc-rw-card__media {
  flex-shrink: 0;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(255,230,150,0.45);
  background:
    radial-gradient(circle at 35% 28%, rgba(232,197,71,0.22), transparent 55%),
    #0e0e0e;
  display: grid;
  place-items: center;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.12) inset,
    0 2px 0 #3a2a08,
    0 6px 14px rgba(0,0,0,0.3);
}
.grc-rw-card__media.is-dim { opacity: 0.7; filter: grayscale(0.25); }
.grc-rw-card__media img {
  width: 78%;
  height: 78%;
  object-fit: contain;
  display: block;
}
.grc-rw-card__copy { flex: 1; min-width: 0; }
.grc-rw-card__name {
  margin: 0;
  font-family: var(--grc-display);
  font-size: 1rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
}
.grc-rw-card__amount {
  margin: 0.25rem 0 0;
  font-family: var(--grc-display);
  font-size: 1.25rem;
  font-weight: 800;
  color: #e8c547;
  letter-spacing: -0.02em;
}
.grc-rw-card__need {
  margin: 0.15rem 0 0;
  font-size: 0.72rem;
  color: var(--grc-text-mute);
}
.grc-rw-card__badge {
  flex-shrink: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 12px;
  padding: 0.38rem 0.55rem;
  border: 1px solid rgba(201,162,39,0.35);
  color: #e8c547;
  background: transparent;
}
.grc-rw-card__badge--open {
  color: #1a1204;
  border: 1px solid rgba(255,230,150,0.55);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5), transparent 40%),
    linear-gradient(165deg, #f0d56a, #c9a227 60%, #a8841a);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.55) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.28);
}
.grc-rw-card__badge--claimed {
  background: #2a2a2a;
  border-color: #3a3a3a;
  color: #aaa;
}
.grc-rw-card__note {
  margin: 0 0 0.75rem;
  font-size: 0.78rem;
  line-height: 1.4;
  color: var(--grc-text-dim);
}
.grc-rw-card__progress { margin-bottom: 0.85rem; }
.grc-rw-card__btn.is-disabled {
  pointer-events: none;
  opacity: 0.55;
}

/* ── Referrals page ── */
.grc-ref-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--grc-radius-lg);
  border: var(--grc-line);
  background:
    radial-gradient(120% 90% at 0% 0%, rgba(232,197,71,0.16), transparent 50%),
    linear-gradient(165deg, #1c1c1c, #121212);
  padding: 1.15rem 1.1rem 1.2rem;
}
.grc-ref-hero__glow {
  position: absolute;
  right: -10%;
  top: -30%;
  width: 11rem;
  height: 11rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232,197,71,0.22), transparent 70%);
  pointer-events: none;
}
.grc-ref-hero__title {
  position: relative;
  z-index: 1;
  margin: 0.25rem 0 0.4rem;
  font-family: var(--grc-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.15;
  background: linear-gradient(180deg, #fff8d6, #e8c547 55%, #c9a227);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255,245,200,0.35)) drop-shadow(0 2px 0 #6b4e0e);
}
.grc-ref-hero__lead {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.45;
  color: var(--grc-text-dim);
}
.grc-ref-hero__lead strong { color: #e8c547; }
.grc-ref-hero__refby {
  position: relative;
  z-index: 1;
  margin: 0.75rem 0 0;
  font-size: 0.78rem;
  color: var(--grc-text-mute);
}
.grc-ref-hero__refby strong { color: #fff; }
.grc-ref-link__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
}
.grc-ref-rewards {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.9rem 1rem;
  border-radius: var(--grc-radius);
  border: var(--grc-line);
  background:
    linear-gradient(100deg, rgba(232,197,71,0.14), rgba(232,197,71,0.04));
  text-decoration: none;
  color: inherit;
}
.grc-ref-rewards__ico {
  width: 2.45rem;
  height: 2.45rem;
  border-radius: 12px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border: 1px solid rgba(255,230,150,0.5);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 42%),
    linear-gradient(165deg, #fff3b0, #e8c547 40%, #c9a227 70%, #a8841a);
  color: #1a1204;
  box-shadow: 0 1px 0 rgba(255,248,210,0.5) inset, 0 2px 0 #6b4e0e;
}
.grc-ref-rewards__ico svg { width: 1.1rem; height: 1.1rem; }
.grc-ref-rewards strong {
  display: block;
  font-family: var(--grc-display);
  font-size: 0.95rem;
  color: #fff;
}
.grc-ref-rewards p {
  margin: 0.15rem 0 0;
  font-size: 0.72rem;
  color: var(--grc-text-mute);
}
.grc-ref-rewards > svg {
  width: 1rem;
  height: 1rem;
  color: var(--grc-gold-bright);
  margin-left: auto;
  flex-shrink: 0;
}
.grc-ref-levels {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.55rem;
}
.grc-ref-level {
  text-align: center;
  padding: 0.9rem 0.55rem;
  border-radius: 16px;
  border: var(--grc-line);
  background: var(--grc-surface);
}
.grc-ref-level__medal {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  margin: 0 auto 0.55rem;
  border-radius: 999px;
  font-family: var(--grc-display);
  font-size: 0.72rem;
  font-weight: 800;
  color: #1a1204;
  border: 1px solid rgba(255,230,150,0.5);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5), transparent 40%),
    linear-gradient(165deg, #fff3b0, #e8c547 45%, #c9a227 75%, #a8841a);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.55) inset,
    0 2px 0 #6b4e0e,
    0 6px 14px rgba(0,0,0,0.3);
}
.grc-ref-level--silver .grc-ref-level__medal {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.55), transparent 40%),
    linear-gradient(165deg, #f3f3f3, #c8c8c8 50%, #9a9a9a);
  border-color: rgba(220,220,220,0.55);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.55) inset,
    0 2px 0 #6a6a6a,
    0 6px 14px rgba(0,0,0,0.3);
}
.grc-ref-level--bronze .grc-ref-level__medal {
  background:
    linear-gradient(180deg, rgba(255,220,180,0.5), transparent 40%),
    linear-gradient(165deg, #e8b07a, #c47a3a 50%, #8a4e20);
  border-color: rgba(220,160,100,0.5);
  box-shadow:
    0 1px 0 rgba(255,230,200,0.45) inset,
    0 2px 0 #5a3210,
    0 6px 14px rgba(0,0,0,0.3);
}
.grc-ref-level p {
  margin: 0;
  font-size: 0.65rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-ref-level strong {
  display: block;
  margin-top: 0.2rem;
  font-family: var(--grc-display);
  font-size: 1.25rem;
  font-weight: 800;
  color: #e8c547;
}
.grc-ref-level--silver strong { color: #e8e8e8; }
.grc-ref-level--bronze strong { color: #e8b07a; }
.grc-ref-tree {
  margin-top: 0.25rem;
  padding: 0.75rem;
  border-radius: 14px;
  background: var(--grc-bg-elev);
  border: 1px solid rgba(201,162,39,0.15);
  overflow-x: auto;
}
.grc-ref-tree__you {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: #fff;
  font-size: 0.9rem;
}
.grc-ref-tree__you svg {
  width: 1rem;
  height: 1rem;
  color: #e8c547;
}
.grc-ref-tree__you em {
  font-style: normal;
  color: var(--grc-text-mute);
  font-size: 0.78rem;
}
.grc-ref-tree .treeview,
.grc-ref-tree .treeview ul {
  color: var(--grc-text-dim);
}
.grc-ref-empty {
  text-align: center;
  padding: 1.25rem 0.75rem 0.5rem;
}
.grc-ref-empty .grc-plan__icon { margin: 0 auto 0.75rem; }
.grc-ref-empty p {
  margin: 0;
  font-size: 0.85rem;
  color: var(--grc-text-dim);
  line-height: 1.45;
}

/* ── Profile page ── */
.grc-profile-hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--grc-radius-lg);
  border: var(--grc-line);
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(232,197,71,0.16), transparent 50%),
    linear-gradient(165deg, #1c1c1c, #121212);
  padding: 1.15rem 1.1rem 1.2rem;
}
.grc-profile-hero__glow {
  position: absolute;
  inset: -20% auto auto 40%;
  width: 12rem;
  height: 12rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232,197,71,0.2), transparent 70%);
  pointer-events: none;
}
.grc-profile-hero__row {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 0.9rem;
}
.grc-profile-hero__avatar {
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 18px;
  display: grid;
  place-items: center;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255,230,150,0.55);
  border-bottom-color: rgba(90,60,8,0.75);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5) 0%, transparent 42%),
    linear-gradient(165deg, #fff3b0, #e8c547 40%, #c9a227 70%, #a8841a);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.65) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 10px 20px rgba(0,0,0,0.4);
  font-family: var(--grc-display);
  font-size: 1.55rem;
  font-weight: 800;
  color: #1a1204;
  text-shadow: 0 1px 0 rgba(255,245,200,0.4);
}
.grc-profile-hero__copy { min-width: 0; flex: 1; }
.grc-profile-hero__hello {
  margin: 0;
  font-size: 0.65rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-profile-hero__name {
  margin: 0.15rem 0 0;
  font-family: var(--grc-display);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.15;
  background: linear-gradient(180deg, #fff8d6, #e8c547 55%, #c9a227);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255,245,200,0.35)) drop-shadow(0 2px 0 #6b4e0e);
}
.grc-profile-hero__user {
  margin: 0.2rem 0 0.45rem;
  font-size: 0.8rem;
  color: var(--grc-text-dim);
}
.grc-profile-hero__actions {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-top: 1rem;
}
.grc-profile-wallets {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
}
.grc-profile-wallet {
  display: block;
  text-decoration: none;
  color: inherit;
  padding: 0.9rem 0.85rem;
  border-radius: var(--grc-radius);
  border: var(--grc-line);
  background: var(--grc-surface);
}
.grc-profile-wallet--profit {
  background:
    linear-gradient(145deg, rgba(232,197,71,0.12), transparent 55%),
    var(--grc-surface);
}
.grc-profile-wallet__ico {
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 12px;
  display: grid;
  place-items: center;
  margin-bottom: 0.55rem;
  border: 1px solid rgba(255,230,150,0.45);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.4), transparent 45%),
    linear-gradient(165deg, #e8c547, #c9a227 60%, #a8841a);
  color: #1a1204;
  box-shadow: 0 1px 0 rgba(255,248,210,0.45) inset, 0 2px 0 #6b4e0e;
}
.grc-profile-wallet__ico svg {
  width: 1rem;
  height: 1rem;
  stroke: currentColor;
}
.grc-profile-wallet p {
  margin: 0;
  font-size: 0.65rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-profile-wallet strong {
  display: block;
  margin-top: 0.2rem;
  font-family: var(--grc-display);
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.02em;
}
.grc-profile-stat {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.85rem 0.95rem;
  border-radius: var(--grc-radius);
  border: var(--grc-line);
  background: var(--grc-surface);
}
.grc-profile-stat__ico {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(232,197,71,0.12);
  border: 1px solid rgba(201,162,39,0.3);
  color: var(--grc-gold-bright);
}
.grc-profile-stat__ico svg { width: 1.1rem; height: 1.1rem; }
.grc-profile-stat div { flex: 1; min-width: 0; }
.grc-profile-stat p {
  margin: 0;
  font-size: 0.65rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--grc-text-mute);
}
.grc-profile-stat strong {
  font-family: var(--grc-display);
  font-size: 1.2rem;
  color: #fff;
}
.grc-profile-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.55rem;
}
.grc-profile-grid--2 {
  grid-template-columns: repeat(2, 1fr);
}
.grc-profile-tile {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.35rem;
  padding: 0.85rem 0.75rem;
  border-radius: 16px;
  border: var(--grc-line);
  background:
    linear-gradient(165deg, rgba(232,197,71,0.06), transparent 45%),
    var(--grc-surface);
  text-decoration: none;
  color: inherit;
  min-height: 6.2rem;
  transition: transform 0.12s ease, border-color 0.12s ease;
}
.grc-profile-tile:hover {
  transform: translateY(-1px);
  border-color: rgba(232,197,71,0.5);
}
.grc-profile-tile__ico {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 12px;
  display: grid;
  place-items: center;
  margin-bottom: 0.15rem;
  border: 1px solid rgba(255,230,150,0.5);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 42%),
    linear-gradient(165deg, #fff3b0, #e8c547 40%, #c9a227 70%, #a8841a);
  color: #1a1204;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.55) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.3);
}
.grc-profile-tile__ico svg {
  width: 1.05rem;
  height: 1.05rem;
  stroke: currentColor;
}
.grc-profile-tile__label {
  font-family: var(--grc-display);
  font-size: 0.82rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
}
.grc-profile-tile__hint {
  font-size: 0.68rem;
  color: var(--grc-text-mute);
}
.grc-profile-logout {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.85rem;
  border-radius: 14px;
  border: 1px solid rgba(248,113,113,0.35);
  background: rgba(248,113,113,0.08);
  color: #f87171;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 2px 0 rgba(80,20,20,0.5);
}
.grc-profile-logout img {
  width: 1.1rem;
  height: 1.1rem;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(52%) sepia(62%) saturate(1800%) hue-rotate(330deg);
}

/* ── Soft bottom nav — 3D metal dock ── */
.app-navbar.enc-nav.grc-nav,
footer.app-navbar.enc-nav {
  padding: 0 0.75rem calc(0.55rem + env(safe-area-inset-bottom, 0px));
}
.app-navbar.enc-nav .app-navbar__dock {
  border-radius: 22px !important;
  clip-path: none !important;
  background:
    linear-gradient(180deg, rgba(255,230,150,0.1) 0%, transparent 28%),
    linear-gradient(165deg, #2a2418 0%, #16120c 42%, #0e0c08 100%) !important;
  border: 1px solid rgba(201, 162, 39, 0.5) !important;
  border-top-color: rgba(255, 230, 150, 0.35) !important;
  border-bottom-color: rgba(60, 45, 10, 0.9) !important;
  box-shadow:
    0 1px 0 rgba(255, 230, 150, 0.22) inset,
    0 -2px 0 rgba(0, 0, 0, 0.45) inset,
    0 2px 0 #1a1508,
    0 5px 0 #0a0804,
    0 14px 32px rgba(0, 0, 0, 0.55),
    0 4px 12px rgba(201, 162, 39, 0.12) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.app-navbar.enc-nav .nav-item .label {
  font-family: var(--grc-sans) !important;
  font-size: 0.62rem !important;
  letter-spacing: 0.04em;
  color: var(--grc-text-mute) !important;
  text-transform: none !important;
}
.app-navbar.enc-nav .nav-item .icon,
.app-navbar.enc-nav .nav-item .nav-ico {
  width: 1.55rem !important;
  height: 1.55rem !important;
  object-fit: contain;
  display: block;
  margin-bottom: 0.28rem;
  position: relative;
  z-index: 1;
  opacity: 0.72;
  filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.35)) saturate(0.9);
  transition: opacity 0.15s ease, filter 0.15s ease, transform 0.15s ease;
}
.app-navbar.enc-nav .nav-item:not(.nav-item-center) .nav-item__hit {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.app-navbar.enc-nav .nav-item:not(.nav-item-center).active .nav-item__hit {
  /* Soft gold glow behind the active icon */
  inset: 0.05rem 18% auto !important;
  height: 2.35rem !important;
  border-radius: 999px !important;
  background: radial-gradient(
    ellipse 70% 70% at 50% 45%,
    rgba(255, 230, 140, 0.55) 0%,
    rgba(232, 197, 71, 0.28) 38%,
    rgba(232, 197, 71, 0.08) 62%,
    transparent 78%
  ) !important;
  border: 0 !important;
  box-shadow:
    0 0 14px rgba(232, 197, 71, 0.45),
    0 0 28px rgba(201, 162, 39, 0.22) !important;
  filter: blur(0.5px);
}
.app-navbar.enc-nav .nav-item.active .label {
  color: #ffe989 !important;
  text-shadow: 0 0 10px rgba(232, 197, 71, 0.35);
}
.app-navbar.enc-nav .nav-item.active .icon,
.app-navbar.enc-nav .nav-item.active .nav-ico {
  opacity: 1;
  filter:
    drop-shadow(0 0 6px rgba(255, 230, 140, 0.75))
    drop-shadow(0 0 14px rgba(232, 197, 71, 0.55))
    brightness(1.08)
    saturate(1.12);
  transform: none;
}
.app-navbar.enc-nav .nav-item:hover:not(.active) .nav-ico {
  opacity: 0.92;
  filter: drop-shadow(0 0 8px rgba(232, 197, 71, 0.28)) saturate(1.05);
}
.app-navbar.enc-nav .center-button {
  position: relative !important;
  isolation: isolate;
  overflow: hidden;
  border-radius: 16px !important;
  clip-path: none !important;
  width: 3.15rem !important;
  height: 3.15rem !important;
  display: grid !important;
  place-items: center !important;
  color: #1a1204 !important;
  border: 1px solid rgba(255, 230, 150, 0.6) !important;
  border-bottom-color: rgba(90, 60, 8, 0.8) !important;
  border-right-color: rgba(120, 85, 15, 0.55) !important;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.55) 0%, rgba(255,248,220,0.12) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%) !important;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.7) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 10px 20px rgba(0, 0, 0, 0.45),
    0 3px 10px rgba(232, 197, 71, 0.35) !important;
  transform: translateY(-0.55rem);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease !important;
}
.app-navbar.enc-nav .center-button::before {
  content: "";
  position: absolute;
  inset: 2px 14% auto;
  height: 40%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0));
  pointer-events: none;
  opacity: 0.75;
  z-index: 0;
}
.app-navbar.enc-nav .center-button .icon-center,
.app-navbar.enc-nav .center-button .nav-ico--center,
.app-navbar.enc-nav .center-button svg {
  position: relative;
  z-index: 1;
  width: 1.55rem !important;
  height: 1.55rem !important;
  object-fit: contain;
  display: block;
  margin: 0 !important;
  opacity: 1 !important;
  filter:
    drop-shadow(0 1px 0 rgba(255, 245, 200, 0.35))
    drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35))
    brightness(0.22)
    contrast(1.15) !important;
}
.app-navbar.enc-nav .nav-item-center:hover .center-button {
  filter: brightness(1.06);
  transform: translateY(-0.65rem);
}
.app-navbar.enc-nav .nav-item-center:active .center-button {
  filter: brightness(0.96);
  transform: translateY(-0.25rem);
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.35) inset,
    0 1px 0 #4a3608,
    0 4px 12px rgba(0, 0, 0, 0.4) !important;
}
.app-navbar.enc-nav .nav-item-center .label {
  color: #ffe989 !important;
  text-shadow:
    0 1px 0 rgba(255, 245, 200, 0.3),
    0 2px 0 #6b4e0e;
}

/* Utility */
.grc-muted { color: var(--grc-text-dim); }
.grc-space-y > * + * { margin-top: 1rem; }
.grc-divider {
  height: 1px;
  background: rgba(201,162,39,0.15);
  border: 0;
  margin: 1rem 0;
}

/* Soften leftover enc / as-dep surfaces on migrated pages */
.grc-app .enc-panel,
.grc-app .as-dep__card,
.grc-app .as-dep__balance,
.grc-app .as-dep__tips,
.grc-app .as-dep__help,
.grc-app .ui-card,
.grc-app .enc-stat-card,
.grc-app .enc-action-tile,
.grc-app .enc-level,
.grc-app .enc-profile,
.grc-app .enc-menu,
.grc-app .enc-wd-bal {
  border-radius: var(--grc-radius) !important;
  clip-path: none !important;
  background: var(--grc-surface) !important;
  border: var(--grc-line) !important;
  color: var(--grc-text) !important;
  box-shadow: none !important;
}
.grc-app .enc-panel__mark,
.grc-app .as-dep__card-mark,
.grc-app .as-dep__help-icon,
.grc-app .enc-stat-card__ico,
.grc-app .enc-action-tile__ico,
.grc-app .enc-menu__ico,
.grc-app .enc-info-list__ico,
.grc-app .enc-profile__avatar {
  border-radius: 14px !important;
  clip-path: none !important;
  background: var(--grc-gold-faint) !important;
  color: var(--grc-gold-bright) !important;
}
/* Legacy primary buttons → same 3D metal gold as .grc-cta */
.grc-app .enc-cta,
.grc-app .as-dep__cta,
.grc-app .dash-cta,
.grc-app .nw-btn-primary,
.grc-app .auth-btn-primary,
.grc-app .auth-submit,
.grc-app button[type="submit"]:not(.grc-field__eye):not(.as-wa__close):not(.enc-bar__btn),
.grc-auth .grc-cta,
.grc-auth .auth-submit,
.grc-auth .auth-btn-primary,
.grc-auth button[type="submit"]:not(.grc-field__eye) {
  position: relative !important;
  border-radius: 14px !important;
  clip-path: none !important;
  border: 1px solid rgba(255, 230, 150, 0.55) !important;
  border-bottom-color: rgba(90, 60, 8, 0.75) !important;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5) 0%, rgba(255,248,220,0.1) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%) !important;
  color: #1a1204 !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 0 rgba(255, 245, 200, 0.45) !important;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.65) inset,
    0 -2px 0 rgba(90, 55, 5, 0.35) inset,
    0 2px 0 #6b4e0e,
    0 4px 0 #4a3608,
    0 8px 18px rgba(0, 0, 0, 0.45),
    0 2px 6px rgba(232, 197, 71, 0.25) !important;
  transform: translateY(0);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease !important;
}
.grc-app .enc-cta:hover,
.grc-app .as-dep__cta:hover,
.grc-app .dash-cta:hover,
.grc-app .nw-btn-primary:hover,
.grc-app .auth-btn-primary:hover,
.grc-app .auth-submit:hover,
.grc-auth .auth-submit:hover,
.grc-auth .auth-btn-primary:hover {
  filter: brightness(1.06) !important;
  transform: translateY(-1px) !important;
}
.grc-app .enc-cta:active,
.grc-app .as-dep__cta:active,
.grc-app .dash-cta:active,
.grc-app .nw-btn-primary:active,
.grc-app .auth-btn-primary:active,
.grc-app .auth-submit:active,
.grc-auth .auth-submit:active,
.grc-auth .auth-btn-primary:active {
  filter: brightness(0.96) !important;
  transform: translateY(3px) !important;
  box-shadow:
    0 1px 0 rgba(255, 248, 210, 0.35) inset,
    0 1px 0 #4a3608,
    0 2px 8px rgba(0, 0, 0, 0.4) !important;
}
.grc-app .enc-cta *,
.grc-app .as-dep__cta *,
.grc-app .dash-cta *,
.grc-app .nw-btn-primary *,
.grc-app .auth-submit *,
.grc-auth .auth-submit * {
  color: #1a1204 !important;
}
.grc-app .enc-chip {
  border-radius: 12px !important;
  clip-path: none !important;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.35), transparent 40%),
    linear-gradient(165deg, #e8c547, #c9a227 55%, #a8841a) !important;
  color: #1a1204 !important;
  border: 1px solid rgba(255, 230, 150, 0.4) !important;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.45) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.3) !important;
}
.grc-app .enc-cta--ghost,
.grc-app .as-dep__chip {
  background:
    linear-gradient(180deg, rgba(255,230,150,0.08), transparent 40%),
    linear-gradient(165deg, #2a2414 0%, #16120a 45%, #0e0c08 100%) !important;
  border: 1px solid rgba(201, 162, 39, 0.55) !important;
  color: var(--grc-gold-bright) !important;
  border-radius: 14px !important;
  clip-path: none !important;
  box-shadow:
    0 1px 0 rgba(255, 230, 150, 0.15) inset,
    0 2px 0 #1a1508,
    0 4px 0 #0a0804,
    0 6px 14px rgba(0,0,0,0.35) !important;
}
.grc-app .as-dep__chip.is-active {
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 40%),
    linear-gradient(165deg, #f0d56a, #c9a227 60%, #a8841a) !important;
  color: #1a1204 !important;
  border-color: rgba(255, 230, 150, 0.55) !important;
}
.grc-app .enc-field-input,
.grc-app .as-dep__select,
.grc-app .as-dep__input,
.grc-app .enc-field-input--lg {
  border-radius: var(--grc-radius-sm) !important;
  background: var(--grc-bg-elev) !important;
  border: var(--grc-line) !important;
  color: #fff !important;
}
.grc-app .enc-panel__kicker,
.grc-app .as-dep__label,
.grc-app .enc-field-label,
.grc-app .enc-stat-card__k {
  color: var(--grc-gold-bright) !important;
}
.grc-app .enc-panel__title,
.grc-app .as-dep__card-title,
.grc-app .enc-profile__name,
.grc-app .enc-stat-card__v,
.grc-app .as-dep__balance-val {
  color: #fff !important;
}
.grc-app .enc-panel__lead,
.grc-app .as-dep__card-desc,
.grc-app .enc-profile__full,
.grc-app .enc-note {
  color: var(--grc-text-dim) !important;
}
.grc-app .dash-wrap {
  width: min(100%, 28rem);
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.grc-app .enc-page-bar {
  display: none !important;
}
.grc-app .inv-dash.enc-dash {
  background: transparent !important;
}

/* WhatsApp modal — Soft Luxury gold redesign */
.as-wa.grc-wa,
.grc-wa {
  position: fixed;
  inset: 0;
  z-index: 12000 !important;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0.85rem;
  padding-bottom: calc(0.85rem + env(safe-area-inset-bottom, 0px));
  background: rgba(5, 5, 5, 0.72);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.22s ease;
}
.as-wa.grc-wa.as-wa--open,
.grc-wa.as-wa--open {
  opacity: 1;
  pointer-events: auto;
}
.as-wa.grc-wa.hidden,
.grc-wa.hidden {
  display: none !important;
}
.grc-wa__sheet {
  position: relative;
  width: 100%;
  max-width: 24rem;
  overflow: hidden;
  border-radius: 24px !important;
  background:
    radial-gradient(120% 80% at 50% -10%, rgba(232,197,71,0.18), transparent 48%),
    linear-gradient(180deg, #1c1c1c 0%, #121212 100%) !important;
  border: 1px solid rgba(201,162,39,0.45) !important;
  border-top-color: rgba(255,230,150,0.35) !important;
  box-shadow:
    0 1px 0 rgba(255,230,150,0.18) inset,
    0 24px 60px rgba(0,0,0,0.6) !important;
  color: #f7f0d8 !important;
  transform: translateY(28px);
  transition: transform 0.28s ease;
}
.grc-wa.as-wa--open .grc-wa__sheet {
  transform: translateY(0);
}
.grc-wa__close {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 3;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 12px;
  border: 1px solid rgba(201,162,39,0.4);
  background:
    linear-gradient(180deg, rgba(255,230,150,0.1), transparent 45%),
    #16120a;
  color: #e8c547;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 0 #0a0804, 0 4px 10px rgba(0,0,0,0.35);
}
.grc-wa__hero {
  position: relative;
  padding: 1.65rem 1.25rem 1.15rem;
  text-align: center;
}
.grc-wa__icon {
  position: relative;
  width: 4.5rem;
  height: 4.5rem;
  margin: 0 auto 0.95rem;
  border-radius: 18px;
  display: grid;
  place-items: center;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid rgba(255,230,150,0.6);
  border-bottom-color: rgba(90,60,8,0.8);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.55) 0%, rgba(255,248,220,0.12) 18%, transparent 42%, transparent 62%, rgba(80,50,0,0.18) 100%),
    linear-gradient(165deg, #fff3b0 0%, #f0d56a 14%, #e8c547 32%, #c9a227 58%, #a8841a 78%, #d4b44a 92%, #f2dc7a 100%);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.7) inset,
    0 -2px 0 rgba(90,55,5,0.35) inset,
    0 2px 0 #6b4e0e,
    0 5px 0 #4a3608,
    0 14px 28px rgba(0,0,0,0.45),
    0 0 24px rgba(232,197,71,0.35);
}
.grc-wa__icon::before {
  content: "";
  position: absolute;
  inset: 2px 14% auto;
  height: 40%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,0.55), transparent);
  opacity: 0.75;
  z-index: 0;
}
.grc-wa__icon img {
  position: relative;
  z-index: 1;
  width: 2.35rem;
  height: 2.35rem;
  object-fit: contain;
  filter:
    brightness(0.2)
    contrast(1.15)
    drop-shadow(0 1px 0 rgba(255,245,200,0.35));
}
.grc-wa__badge {
  display: inline-flex;
  align-items: center;
  margin: 0 0 0.55rem;
  padding: 0.32rem 0.7rem;
  border-radius: 12px;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #1a1204;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.5), transparent 40%),
    linear-gradient(165deg, #f0d56a, #c9a227 60%, #a8841a);
  border: 1px solid rgba(255,230,150,0.5);
  box-shadow:
    0 1px 0 rgba(255,248,210,0.55) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.3);
}
.grc-wa__title {
  margin: 0 0 0.4rem;
  font-family: var(--grc-display);
  font-size: 1.28rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.2;
  background: linear-gradient(180deg, #fff8d6 0%, #ffe989 20%, #e8c547 50%, #c9a227 78%, #8a6a12 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255,245,200,0.4))
          drop-shadow(0 2px 0 #6b4e0e)
          drop-shadow(0 4px 10px rgba(0,0,0,0.4));
}
.grc-wa__text {
  margin: 0 auto;
  max-width: 19rem;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(247,240,216,0.62);
}
.grc-wa__body {
  padding: 0 1.15rem 1.25rem;
}
.grc-wa__perks {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.4rem;
  margin-bottom: 1rem;
}
.grc-wa__perk {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  padding: 0.3rem 0.55rem;
  border-radius: 999px;
  font-size: 0.65rem;
  font-weight: 600;
  color: rgba(247,240,216,0.7);
  background: rgba(10,10,10,0.45);
  border: 1px solid rgba(201,162,39,0.25);
}
.grc-wa__perk svg {
  width: 0.78rem;
  height: 0.78rem;
  color: #e8c547;
}
.grc-wa__join {
  margin-bottom: 0.55rem;
}
.grc-wa__join img {
  width: 1.15rem !important;
  height: 1.15rem !important;
  object-fit: contain;
  filter: brightness(0.2) contrast(1.15) !important;
}
.grc-wa__later {
  width: 100%;
}

/* ── Money / ledger Soft Luxury helpers ── */
.grc-money-hero {
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(232,197,71,0.14), transparent 50%),
    var(--grc-surface);
}
.grc-money-hero__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.85rem;
}
.grc-money-hero__val {
  margin: 0.25rem 0 0;
  font-family: var(--grc-display);
  font-size: 1.85rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #fff;
  line-height: 1.1;
}
.grc-money-hero__val span {
  color: var(--grc-gold-bright);
  margin-right: 0.1rem;
}
.grc-quick {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.45rem;
}
.grc-quick__chip {
  min-height: 2.45rem;
  border-radius: 12px;
  border: 1px solid rgba(201,162,39,0.28);
  background: var(--grc-bg-elev);
  color: var(--grc-text);
  font-family: var(--grc-display);
  font-size: 0.78rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.12s ease, border-color 0.12s ease, background 0.12s ease;
}
.grc-quick__chip span { color: var(--grc-gold-bright); margin-right: 0.1rem; }
.grc-quick__chip.is-active,
.grc-quick__chip:hover {
  border-color: rgba(232,197,71,0.65);
  background:
    linear-gradient(180deg, rgba(255,248,220,0.35), transparent 45%),
    linear-gradient(165deg, #e8c547, #c9a227 60%, #a8841a);
  color: #1a1204;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.5) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.3);
}
.grc-quick__chip.is-active span,
.grc-quick__chip:hover span { color: #1a1204; }
.grc-tips {
  list-style: none;
  margin: 0.35rem 0 0;
  padding: 0;
  display: grid;
  gap: 0.55rem;
}
.grc-tips li {
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
}
.grc-tips span {
  flex-shrink: 0;
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 8px;
  display: grid;
  place-items: center;
  font-size: 0.65rem;
  font-weight: 800;
  color: #1a1204;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.4), transparent 40%),
    linear-gradient(165deg, #e8c547, #c9a227);
  box-shadow: 0 1px 0 rgba(255,248,210,0.45) inset, 0 2px 0 #6b4e0e;
}
.grc-tips p {
  margin: 0.15rem 0 0;
  font-size: 0.82rem;
  color: var(--grc-text-dim);
  line-height: 1.4;
}
.grc-help {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.grc-details summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  cursor: pointer;
  font-weight: 700;
  color: var(--grc-gold-bright);
  font-size: 0.88rem;
}
.grc-details summary::-webkit-details-marker { display: none; }
.grc-details summary span {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.grc-details summary svg { width: 1rem; height: 1rem; }
.grc-details__chev { transition: transform 0.15s ease; }
.grc-details[open] .grc-details__chev { transform: rotate(180deg); }
.grc-details__body {
  margin-top: 0.9rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(201,162,39,0.18);
}
.grc-trx__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.grc-trx__ref {
  margin: 0.2rem 0 0;
  font-family: var(--grc-display);
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--grc-gold-bright);
  word-break: break-all;
}
.grc-trx__amt {
  font-family: var(--grc-display);
  font-weight: 800;
  font-size: 1.05rem;
  white-space: nowrap;
}
.grc-trx__amt.is-plus { color: #4ade80; }
.grc-trx__amt.is-minus { color: #fb7185; }
.grc-plan__icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--grc-gold-bright);
  stroke: currentColor;
}

/* Leftover dash / ticket / white cards → Soft Luxury */
.grc-app .dash-plan,
.grc-app .ui-card,
.grc-app .dash-hero,
.grc-app .ticket-hero,
.grc-app .ticket-wa-card,
.grc-app .ticket-tip,
.grc-app .ticket-topic,
.grc-app .dash-pill,
.grc-app .portfolio-card-head {
  background: var(--grc-surface) !important;
  border: var(--grc-line) !important;
  border-radius: var(--grc-radius) !important;
  color: var(--grc-text) !important;
  box-shadow: none !important;
  clip-path: none !important;
}
.grc-app .dash-plan .bg-white,
.grc-app .dash-plan [class*="bg-white"],
.grc-app .dash-plan [class*="bg-nova-gold-pale"] {
  background: var(--grc-bg-elev) !important;
  border-color: rgba(201,162,39,0.2) !important;
  color: var(--grc-text) !important;
}
.grc-app .text-nova-navy,
.grc-app [class*="text-nova-navy"] {
  color: var(--grc-text) !important;
}
.grc-app .ticket-hero__title,
.grc-app .ticket-wa-card__title,
.grc-app .dash-plan h2,
.grc-app .dash-plan h3 {
  color: #fff !important;
}
.grc-app .ticket-hero__text,
.grc-app .ticket-wa-card__desc,
.grc-app .ticket-tip p {
  color: var(--grc-text-dim) !important;
}
.grc-app .ticket-wa-card {
  display: flex !important;
  align-items: center;
  gap: 0.75rem;
  padding: 0.9rem 1rem !important;
  text-decoration: none !important;
}
.grc-app .ticket-topic {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.7rem 0.75rem !important;
  font-size: 0.8rem;
  font-weight: 600;
}
.grc-app .as-dep__balance,
.grc-app .enc-panel--hero,
.grc-app .enc-wd-bal {
  border-radius: var(--grc-radius-lg) !important;
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(232,197,71,0.14), transparent 50%),
    var(--grc-surface) !important;
}
.grc-app .as-dep__balance-val,
.grc-app .enc-wd-bal__val {
  color: #fff !important;
  font-family: var(--grc-display) !important;
}
.grc-app .as-dep__help-btn {
  border-radius: 12px !important;
  background:
    linear-gradient(180deg, rgba(255,248,220,0.45), transparent 40%),
    linear-gradient(165deg, #e8c547, #c9a227 60%, #a8841a) !important;
  color: #1a1204 !important;
  border: 1px solid rgba(255,230,150,0.5) !important;
  box-shadow:
    0 1px 0 rgba(255,248,210,0.55) inset,
    0 2px 0 #6b4e0e,
    0 4px 10px rgba(0,0,0,0.3) !important;
  font-weight: 800 !important;
}
.grc-app .enc-preview,
.grc-app .as-dep__limits,
.grc-app .enc-info-list li {
  background: var(--grc-bg-elev) !important;
  border: 1px solid rgba(201,162,39,0.18) !important;
  border-radius: 14px !important;
  color: var(--grc-text) !important;
}
.grc-app input,
.grc-app select,
.grc-app textarea {
  color: #fff;
}
.grc-app .grc-soft-page,
.grc-app .text-nova-navy {
  color: var(--grc-text) !important;
}
