/* ================================================================
   NO PERRY — Moss Visual Takeover (30B)
   Real perceptual shift: decorative gold → visible moss green
   Load last. Semantic podium/relic gold preserved in scoped rules.
   ================================================================ */

/* —— Loading screen (inline critical override) —— */
#loading-logo {
  background: linear-gradient(135deg, #3F4C27 0%, #667A3E 40%, #8FA65B 60%, #667A3E 80%, #303A20 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
#loading-bar {
  background: linear-gradient(90deg, transparent, #8FA65B, transparent) !important;
}

/* —— Nav / brand —— */
.nav-logo-text {
  background: linear-gradient(135deg, var(--np-moss-dark), var(--np-moss-main), var(--np-moss-readable)) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.nav-link::after { background: var(--np-moss-readable) !important; }
.nav-link:hover,
.lang-switch button:hover,
.lang-switch button.is-active,
.lang-switch button[aria-current="true"] {
  color: var(--np-moss-readable) !important;
}
#stats-bar { border-bottom-color: var(--np-moss-border) !important; }
.stat-num { color: var(--np-moss-readable) !important; }

/* —— Hero —— */
.hero-scroll-indicator .scroll-line::before,
.hero-scroll-indicator .scroll-line::after {
  background: var(--np-moss-main) !important;
}
.timer-num {
  background: linear-gradient(180deg, var(--np-moss-readable) 0%, var(--np-moss-main) 50%, var(--np-moss-dark) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
.timer-sep { color: var(--np-moss-main) !important; }
.origin-date { color: var(--np-moss-readable) !important; }
.founder-frame { border-color: var(--np-moss-border) !important; }
.founder-avatar { border-color: var(--np-moss-main) !important; }
.founder-avatar-glow {
  background: conic-gradient(from 0deg, var(--ember), var(--np-moss-main), var(--ember)) !important;
}
.founder-name { color: var(--np-moss-readable) !important; }
.founder-stat {
  border-color: var(--np-moss-border) !important;
  background: var(--np-moss-soft) !important;
}

/* —— Section ornaments —— */
.section-header .divider-gold::before,
.guild-header .divider-gold::before,
.avalon-header .divider-gold::before,
.war-room-inner .divider-gold::before {
  background: var(--np-moss-readable) !important;
  box-shadow: 0 0 8px var(--np-moss-glow) !important;
}
.np-frame:not(.frame-relic):not(.frame-minor) {
  --frame-ink: var(--np-moss-main);
}
.frame-cta {
  box-shadow:
    inset 0 1px 0 rgba(200, 220, 160, 0.22),
    0 0 0 1px rgba(102, 122, 62, 0.42),
    var(--shadow-moss) !important;
}
.btn-ghost.frame-cta {
  box-shadow: inset 0 0 0 1px var(--np-moss-border) !important;
}
.btn-ghost.frame-cta:hover {
  box-shadow: inset 0 0 0 1px var(--np-moss-readable), 0 0 16px var(--np-moss-glow) !important;
}

/* —— Orbit —— */
.np-orbit-section {
  background:
    radial-gradient(ellipse 60% 44% at 50% 35%, var(--np-moss-glow), transparent 72%),
    linear-gradient(180deg, #0a0b11, #0b0c12 45%, #08090d 100%) !important;
}
.np-orbit-visual-stage { border-color: var(--np-moss-border) !important; }
.np-orbit-atmo {
  background:
    radial-gradient(circle at 25% 72%, var(--np-moss-soft), transparent 28%),
    radial-gradient(circle at 70% 26%, rgba(192, 57, 43, 0.08), transparent 32%) !important;
}
.np-orbit-card {
  --card-glow-a: var(--np-moss-glow);
  --card-glow-b: var(--np-moss-soft);
  border-color: var(--np-moss-border) !important;
  box-shadow: inset 0 0 0 1px var(--np-moss-soft) !important;
}
.np-orbit-card.is-active,
.np-orbit-card[aria-current="true"],
.np-orbit-card:focus-within {
  border-color: var(--np-moss-readable) !important;
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.52),
    0 0 18px var(--np-moss-glow),
    inset 0 0 0 1px var(--np-moss-glow) !important;
}
.np-orbit-card:focus-visible { outline-color: var(--np-moss-readable) !important; }
.np-orbit-card__tag,
.np-orbit-card__meta {
  color: var(--np-moss-readable) !important;
}
.np-orbit-center-ring {
  border-color: var(--np-moss-border) !important;
  box-shadow: 0 0 24px var(--np-moss-glow) !important;
}

/* —— War Ladder UI (not podium rank materials) —— */
#war-ladder .np-war-board-head h3,
.np-war-ladder .np-war-board-head h3 {
  color: #e8ede0;
}
#war-ladder .btn-ghost,
.np-war-ladder .btn-ghost {
  color: var(--np-moss-readable) !important;
  -webkit-text-fill-color: var(--np-moss-readable) !important;
  border-color: var(--np-moss-border) !important;
}
#war-ladder .btn-ghost:hover,
#war-ladder .btn-ghost:focus-visible,
.np-war-ladder .btn-ghost:hover,
.np-war-ladder .btn-ghost:focus-visible {
  color: var(--np-moss-hover) !important;
  -webkit-text-fill-color: var(--np-moss-hover) !important;
  border-color: var(--np-moss-readable) !important;
  background: var(--np-moss-soft) !important;
}
.np-war-row:not(.np-war-card--champion):not(.np-war-card--silver):not(.np-war-card--bronze) {
  border-color: rgba(143, 166, 91, 0.22) !important;
}
.np-war-row:not(.np-war-card--champion):not(.np-war-card--silver):not(.np-war-card--bronze):hover {
  border-color: var(--np-moss-border) !important;
}
.np-war-rules-btn {
  color: var(--np-moss-readable) !important;
  border-color: var(--np-moss-border) !important;
}

/* —— War Room / Pulse / Story / Ledger —— */
.np-pulse-head .eyebrow,
.np-war-room__eyebrow,
#guild-pulse .eyebrow,
.np-ledger__head .eyebrow,
.np-field__eyebrow {
  color: var(--np-moss-readable) !important;
}
.np-ledger__filter.is-active,
.np-ledger__filter[aria-pressed="true"] {
  color: var(--np-moss-readable) !important;
  border-color: var(--np-moss-readable) !important;
  background: var(--np-moss-soft) !important;
}
.np-ledger__filter:hover,
.np-ledger__filter:focus-visible {
  border-color: var(--np-moss-border) !important;
  color: var(--np-moss-hover) !important;
}

/* —— Guild Field —— */
.np-field__head h2,
#guild-constellation .np-field__title {
  color: #e8ede0;
}
#guild-constellation .np-field__eyebrow,
.np-tapestry__stat-n {
  color: var(--np-moss-readable) !important;
}

/* —— Hall / Relics surrounding UI —— */
#hall-of-feats .eyebrow,
.np-hall-relics .eyebrow,
.np-hall-relics h2 {
  color: var(--np-moss-readable) !important;
}
.np-hall-relics .divider-gold {
  background: linear-gradient(90deg, transparent, var(--np-moss-readable), transparent) !important;
}

/* —— Gate / Footer —— */
#guild-gate .eyebrow,
#guild-gate h2,
.final-cta-section .eyebrow,
footer .footer-brand {
  color: var(--np-moss-readable) !important;
}
.footer-links a:hover { color: var(--np-moss-hover) !important; }

/* —— World / Chronicle decorative —— */
.np-kicker { color: var(--np-moss-main) !important; }
.np-line--2 { color: var(--np-moss-readable) !important; }
.chronicle-rail-line {
  background: linear-gradient(180deg, rgba(63, 76, 39, 0.2), rgba(143, 166, 91, 0.45), rgba(63, 76, 39, 0.15)) !important;
}
.chronicle-rail-fill {
  background: linear-gradient(180deg, var(--np-moss-dark), var(--np-moss-readable), rgba(192, 57, 43, 0.7)) !important;
  box-shadow: 0 0 8px var(--np-moss-glow) !important;
}
.chronicle-marker i { background: var(--np-moss-main) !important; }
.chronicle-dot--today {
  background: var(--np-moss-readable) !important;
  border-color: var(--np-moss-hover) !important;
  box-shadow: 0 0 16px var(--np-moss-glow) !important;
}
.ch-moment-meta b,
.ch-today-count { color: var(--np-moss-readable) !important; }
.alliance-tag {
  background: linear-gradient(180deg, #c8d8a0, var(--np-moss-main) 45%, #4a3020) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* —— Member cards / territories —— */
.member-card:hover .member-name { color: var(--np-moss-hover) !important; }
.member-ratio.avg { color: var(--np-moss-readable) !important; }
.territory-card:hover { border-color: var(--np-moss-border) !important; }

/* —— Disabled states remain distinct —— */
.btn-primary:disabled,
.btn-primary[aria-disabled="true"],
.np-pixel-btn:disabled,
.np-pixel-btn.is-disabled {
  opacity: 0.38 !important;
  filter: grayscale(0.55) brightness(0.72) !important;
}

@media (max-width: 430px) {
  .eyebrow,
  .np-kicker,
  .stat-label,
  .timer-word {
    color: var(--np-moss-readable) !important;
  }
}
