/* =========================================
   Duchy of Greenfields Kingdom Theme
   Scope: /rhome/world-atlas/kingdoms/minor/duchy-of-greenfields/
   Depends on:
     - core-reset.css
     - layout-lorewalker.css
     - theme-lorewalker.css
     - theme-rhome.css
     - theme-kingdom.css
   This file ONLY adjusts colors and light realm-specific styling.
   Layout, grids, and reset behavior remain untouched.
   ========================================= */

/* -----------------------------------------
   Realm Scope & Tokens
   ----------------------------------------- */

.realm-greenfields {
  /* Pastoral / Harvest palette */
  --greenfields-bg-deep: #0b0a0a;          /* night over fields */
  --greenfields-bg-alt: #121012;           /* hedgerow shade */
  --greenfields-surface: #1a1519;          /* card / panel surface */
  --greenfields-surface-soft: #201a1e;     /* softer surface */
  --greenfields-surface-contrast: #261f24; /* lifted surface */

  --greenfields-border: #3d2f33;           /* warm bark-brown edges */
  --greenfields-parchment: #e7d9c4;        /* parchment highlight */
  --greenfields-ink: #3e3a45;              /* ink / outlines */

  --greenfields-accent: #c9e27b;           /* meadow green highlight */
  --greenfields-accent-soft: #6e8a3a;      /* muted meadow */
  --greenfields-glow: #ffd37a;             /* lantern gold glow */
  --greenfields-honey: #f1b65a;            /* honeycake amber */
  --greenfields-berry: #b45a6a;            /* rosehip / jam note */

  --greenfields-text-main: #f3efe9;        /* body text */
  --greenfields-text-muted: #c7c0b6;       /* secondary */
  --greenfields-text-soft: #a99f93;        /* tertiary/meta */

  --greenfields-divider: #4c3b3f;
  --greenfields-shadow-soft: 0 4px 12px rgba(0, 0, 0, 0.55);
  --greenfields-shadow-tight: 0 2px 6px rgba(0, 0, 0, 0.75);

  /* Global radius override for this realm (hard requirement) */
  --greenfields-radius: 3px;
}

/* Enforce 3px corners on key realm elements */
.realm-greenfields .home-card,
.realm-greenfields .home-card-inner,
.realm-greenfields .home-title,
.realm-greenfields .home-nav,
.realm-greenfields .home-nav-link,
.realm-greenfields .home-section,
.realm-greenfields .home-grid-shell,
.realm-greenfields .home-hero,
.realm-greenfields .home-lede,
.realm-greenfields img,
.realm-greenfields .atlas-intro-text,
.realm-greenfields .home-divider {
  border-radius: 3px;
}

/* -----------------------------------------
   Background & Overall Atmosphere
   ----------------------------------------- */

.realm-greenfields {
  background:
    radial-gradient(circle at 30% -10%, #201b1e 0%, #0f0d0e 45%, var(--greenfields-bg-deep) 100%);
  color: var(--greenfields-text-main);
}

.realm-greenfields .home-content {
  background: linear-gradient(
    to bottom,
    rgba(24, 20, 22, 0.94),
    rgba(10, 8, 9, 0.98)
  );
  box-shadow: var(--greenfields-shadow-soft);
  border-radius: 3px;
  border: 1px solid rgba(82, 64, 61, 0.6);
}

/* -----------------------------------------
   Banner
   ----------------------------------------- */

.realm-greenfields .lw-banner {
  background: radial-gradient(circle at center, #2a2226 0%, #151113 100%);
  padding: 0.75rem 1.25rem;
  border-radius: 3px;
  border: 1px solid var(--greenfields-border);
  box-shadow: var(--greenfields-shadow-tight);
  margin-bottom: 0.75rem;
}

.realm-greenfields .lw-banner img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 3px;
}

/* -----------------------------------------
   Breadcrumb (home-nav)
   ----------------------------------------- */

.realm-greenfields .home-nav {
  margin: 0.5rem 0 1.25rem;
  padding: 0.35rem 0.75rem;
  background: rgba(28, 22, 24, 0.92);
  border-radius: 3px;
  border: 1px solid rgba(110, 86, 80, 0.6);
  box-shadow: var(--greenfields-shadow-tight);
}

.realm-greenfields .home-nav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}

.realm-greenfields .home-nav-link {
  position: relative;
  padding: 0.15rem 0.5rem;
  font-size: 0.8rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--greenfields-text-soft);
  border-radius: 3px;
  transition:
    color 0.18s ease,
    background-color 0.18s ease,
    box-shadow 0.18s ease;
}

.realm-greenfields .home-nav-link.nav-root {
  color: var(--greenfields-accent);
  font-weight: 600;
}

.realm-greenfields .home-nav-link.is-ancestor {
  color: var(--greenfields-text-muted);
}

.realm-greenfields .home-nav-link.is-active {
  color: var(--greenfields-text-main);
  background: radial-gradient(circle at center, #2e3a24 0%, #201f1b 65%, #150f11 100%);
  box-shadow: 0 0 0 1px rgba(201, 226, 123, 0.45), var(--greenfields-shadow-tight);
}

.realm-greenfields .home-nav-link:hover,
.realm-greenfields .home-nav-link:focus-visible {
  color: var(--greenfields-accent);
  background-color: rgba(110, 138, 58, 0.18);
  box-shadow: 0 0 0 1px rgba(241, 182, 90, 0.5);
}

/* -----------------------------------------
   Hero / Intro
   ----------------------------------------- */

.realm-greenfields .home-hero {
  background: radial-gradient(circle at top left, #2e2629 0%, #1a1519 55%, #120e10 100%);
  border-radius: 3px;
  border: 1px solid var(--greenfields-border);
  padding: 1.5rem 1.5rem 1.75rem;
  box-shadow: var(--greenfields-shadow-soft);
  margin-bottom: 1.5rem;
  position: relative;
  overflow: hidden;
}

.realm-greenfields .home-hero::before {
  content: "";
  position: absolute;
  inset: -18%;
  background:
    radial-gradient(circle at 80% 10%, rgba(201, 226, 123, 0.08), transparent 55%),
    radial-gradient(circle at 10% 90%, rgba(241, 182, 90, 0.07), transparent 60%);
  opacity: 0.9;
  pointer-events: none;
}

.realm-greenfields .home-title {
  position: relative;
  z-index: 1;
  font-size: 2rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--greenfields-accent);
  text-shadow: 0 0 8px rgba(201, 226, 123, 0.45);
}

.realm-greenfields .home-divider {
  position: relative;
  z-index: 1;
  margin: 0.6rem 0 1rem;
  border: 0;
  height: 1px;
  background: linear-gradient(
    to right,
    rgba(241, 182, 90, 0.85),
    rgba(201, 226, 123, 0.18),
    transparent
  );
}

.realm-greenfields .atlas-intro-text {
  position: relative;
  z-index: 1;
  color: var(--greenfields-text-main);
}

.realm-greenfields .atlas-intro-text p {
  margin-bottom: 0.8rem;
  line-height: 1.65;
  color: var(--greenfields-text-main);
}

.realm-greenfields .atlas-intro-text p:last-child {
  margin-bottom: 0;
}

.realm-greenfields .atlas-intro-text em {
  color: var(--greenfields-honey);
  font-style: italic;
}

/* -----------------------------------------
   Main / Grid
   ----------------------------------------- */

.realm-greenfields .home-main {
  margin-top: 0.75rem;
}

.realm-greenfields .home-section {
  border-radius: 3px;
}

.realm-greenfields .home-grid-shell {
  padding: 0.25rem;
}

/* -----------------------------------------
   Cards
   ----------------------------------------- */

.realm-greenfields .home-card {
  background: radial-gradient(circle at top, #2a2226 0%, #161113 55%, #0f0b0d 100%);
  border-radius: 3px;
  border: 1px solid rgba(92, 72, 68, 0.85);
  box-shadow: var(--greenfields-shadow-tight);
  color: var(--greenfields-text-main);
  text-decoration: none;
  position: relative;
  overflow: hidden;
  transition:
    transform 0.16s ease-out,
    box-shadow 0.16s ease-out,
    border-color 0.16s ease-out,
    background 0.16s ease-out;
}

.realm-greenfields .home-card-inner {
  padding: 0.9rem 0.95rem 1rem;
  border-radius: 3px;
}

.realm-greenfields .home-card-title {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.25rem;
  color: var(--greenfields-accent);
}

.realm-greenfields .home-card-tagline {
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 0.4rem;
  color: var(--greenfields-text-soft);
}

.realm-greenfields .home-card-body {
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--greenfields-text-muted);
}

.realm-greenfields .home-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(201, 226, 123, 0.1), transparent 65%),
    radial-gradient(circle at bottom left, rgba(241, 182, 90, 0.08), transparent 70%);
  opacity: 0;
  transition: opacity 0.18s ease-out;
  pointer-events: none;
}

.realm-greenfields .home-card:hover,
.realm-greenfields .home-card:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(201, 226, 123, 0.75);
  box-shadow: 0 0 0 1px rgba(241, 182, 90, 0.55), var(--greenfields-shadow-soft);
  background: radial-gradient(circle at top, #33292e 0%, #1a1417 55%, #100c0f 100%);
}

.realm-greenfields .home-card:hover::before,
.realm-greenfields .home-card:focus-visible::before {
  opacity: 1;
}

/* GM-facing card accent, if used */
.realm-greenfields .home-card.home-card-gm {
  border-style: dashed;
  border-color: rgba(241, 182, 90, 0.85);
}

.realm-greenfields .home-card.home-card-gm .home-card-title {
  color: var(--greenfields-honey);
}

/* -----------------------------------------
   Badges / Pills (optional, non-layout)
   ----------------------------------------- */

.realm-greenfields .pill,
.realm-greenfields .tag {
  background: rgba(110, 138, 58, 0.18);
  color: var(--greenfields-text-muted);
  border: 1px solid rgba(201, 226, 123, 0.35);
  border-radius: 3px;
  padding: 0.1rem 0.4rem;
  font-size: 0.78rem;
  letter-spacing: 0.03em;
}

/* -----------------------------------------
   Typography Tweaks
   ----------------------------------------- */

.realm-greenfields .home-title,
.realm-greenfields .home-card-title,
.realm-greenfields .home-nav-link {
  text-rendering: optimizeLegibility;
}

/* -----------------------------------------
   No Side Nav Enforcement
   ----------------------------------------- */
/* We do NOT style or display any side navigation. If a generic
   side-nav class exists globally, neutralize it within this realm. */

.realm-greenfields .home-side-nav,
.realm-greenfields .kingdom-side-nav,
.realm-greenfields .atlas-side-nav {
  display: none !important;
}

/* -----------------------------------------
   Accessibility & Focus
   ----------------------------------------- */

.realm-greenfields a:focus-visible,
.realm-greenfields button:focus-visible {
  outline: 2px solid var(--greenfields-accent);
  outline-offset: 2px;
  border-radius: 3px;
}

/* -----------------------------------------
   Optional: Table tinting (non-layout)
   ----------------------------------------- */

.realm-greenfields table {
  border-collapse: separate;
  border-spacing: 0;
  background: rgba(32, 26, 30, 0.6);
  border: 1px solid rgba(92, 72, 68, 0.7);
  border-radius: 3px;
  overflow: hidden;
}

.realm-greenfields th,
.realm-greenfields td {
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid rgba(76, 59, 63, 0.6);
  color: var(--greenfields-text-muted);
}

.realm-greenfields th {
  color: var(--greenfields-parchment);
  background: linear-gradient(to bottom, #2e2629, #241d20);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 0.82rem;
}

.realm-greenfields tr:last-child td {
  border-bottom: 0;
}

/* -----------------------------------------
   Media (images within cards/hero)
   ----------------------------------------- */

.realm-greenfields .home-card img,
.realm-greenfields .home-hero img {
  border-radius: 3px;
  box-shadow: var(--greenfields-shadow-tight);
  border: 1px solid rgba(92, 72, 68, 0.6);
}
