/* GREEN DREAMS | METALLIC FINISH & OFFICIAL BRAND */

:root {
  --gd-bronze: #e4a16b;
  --gd-amber: #ffbd80;
}

/* Premium brushed-metal panels */
.panel,
.workspace,
.gd-pattern-panel,
section:has(> #tickers),
section:has(#tickers) {
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.055) 0px,
      rgba(255,255,255,0) 1px,
      rgba(0,0,0,.025) 3px,
      transparent 5px
    ),
    linear-gradient(
      105deg,
      transparent 5%,
      rgba(221,255,232,.10) 28%,
      transparent 40%,
      rgba(231,255,236,.16) 57%,
      transparent 72%
    ),
    linear-gradient(
      135deg,
      #395d4b,
      #10261b 32%,
      #091b13 64%,
      #456b56
    ) !important;

  border: 1px solid #7e9d88 !important;
  border-radius: 19px !important;

  box-shadow:
    inset 0 2px 2px rgba(250,255,250,.38),
    inset 2px 0 3px rgba(240,255,239,.12),
    inset 0 -5px 7px rgba(0,0,0,.6),
    0 7px 17px rgba(0,0,0,.38) !important;
}

/* Cool charcoal steel for Data Engine */
.panel:has(#dataHeading),
.panel:has(#dataText) {
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.045) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      110deg,
      #647d79,
      #273e3b 35%,
      #142925 65%,
      #526d65
    ) !important;

  border-color: #829d97 !important;
}

/* Antique bronze stainless steel for Calculation Engine */
.panel:has(#calcHeading),
.panel:has(#calcText) {
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.055) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      115deg,
      #786341,
      #403426 35%,
      #251e16 67%,
      #675438
    ) !important;

  border-color: #a58b5e !important;
}

/* Deep emerald Pattern Tracker Lab */
.gd-pattern-panel {
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.05) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      115deg,
      #537c62,
      #183b29 35%,
      #0b2217 65%,
      #446f51
    ) !important;

  border-color: #8cb998 !important;
}

/* Embossed burnt-orange typography */
.panel h2,
.panel h3,
.workspace h2,
.gd-pattern-panel h3 {
  color: var(--gd-bronze) !important;
  text-shadow:
    0 1px 0 rgba(255,222,184,.65),
    0 -1px 1px rgba(64,25,7,.9),
    0 3px 4px rgba(0,0,0,.65) !important;
}

/* Selected ticker: maintain soft orange glow */
#tickers button.active,
#tickers button[aria-pressed="true"] {
  border: 2px solid #f5a14a !important;
  color: #ffd19b !important;
  box-shadow:
    inset 0 2px 3px rgba(255,223,170,.35),
    inset 0 -3px 5px rgba(0,0,0,.55),
    0 0 9px rgba(255,150,40,.48),
    0 0 20px rgba(255,132,30,.2) !important;
}

/* Selected navigation view */
#nav button[aria-current="page"] {
  border: 2px solid #f5a14a !important;
  box-shadow:
    inset 0 2px 2px rgba(255,225,180,.25),
    0 0 9px rgba(255,151,47,.45),
    0 0 19px rgba(255,130,28,.19) !important;
}

/* Official bull logo replacing the GD initials */
.brand strong {
  display: inline-block !important;
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  border-radius: 50% !important;

  background:
    #06140d url("green_dreams_logo.jpg")
    center / cover no-repeat !important;

  font-size: 0 !important;
  color: transparent !important;

  border: 2px solid #79ec89 !important;
  box-shadow:
    0 0 8px rgba(82,242,112,.25),
    inset 0 0 4px rgba(0,0,0,.4) !important;
}

/* Official logo: low-relief embossed metal watermark */
body::before {
  content: "" !important;
  position: fixed !important;
  top: 15vh !important;
  right: -14vw !important;
  width: min(85vw, 460px) !important;
  height: min(85vw, 460px) !important;

  background:
    url("green_dreams_logo.jpg")
    center / contain no-repeat !important;

  opacity: .13 !important;
  filter: grayscale(1) contrast(1.7) !important;
  mix-blend-mode: multiply !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@media (max-width: 600px) {
  .brand strong {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
  }
}

/* ===== GREEN DREAMS | SELECTED NAV READABILITY FIX ===== */

/* Base metallic nav text */
#nav button,
#nav .pattern-nav,
#nav .pattern-nav span,
#nav .pattern-nav b {
  color: #d7d2c8;
}

/* Strong selected / active state for visibility */
#nav button.active,
#nav button[aria-current="page"],
#nav .pattern-nav.active,
#nav .pattern-nav[aria-current="page"],
#nav .pattern-nav:focus-visible {
  color: #ff9b43 !important;
  border-color: #ff9b43 !important;
  background:
    linear-gradient(
      180deg,
      #c9c8c2 0%,
      #8a8b86 12%,
      #5c5d59 30%,
      #2e302d 52%,
      #72736f 72%,
      #d4d3cd 100%
    ) !important;
  text-shadow:
    0 1px 0 rgba(255,245,220,.85),
    0 0 2px rgba(86,35,8,.85),
    0 2px 6px rgba(0,0,0,.7) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    inset 0 -2px 4px rgba(0,0,0,.45),
    0 0 10px rgba(255,153,64,.45),
    0 0 22px rgba(255,120,35,.18) !important;
}

/* Make the inner text definitely orange */
#nav button.active span,
#nav button.active b,
#nav button[aria-current="page"] span,
#nav button[aria-current="page"] b,
#nav .pattern-nav.active span,
#nav .pattern-nav.active b,
#nav .pattern-nav[aria-current="page"] span,
#nav .pattern-nav[aria-current="page"] b {
  color: #ff9b43 !important;
}

/* Unselected metallic buttons stay readable */
#nav button:not(.active):not([aria-current="page"]),
#nav .pattern-nav:not(.active):not([aria-current="page"]) {
  color: #2b231c !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.55),
    0 -1px 1px rgba(0,0,0,.35) !important;
}


/* GREEN DREAMS | WORKSTATION TYPOGRAPHY UPGRADE */

/* Larger, more readable workstation buttons */
.rail #nav button,
#nav button {
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: 1.2px !important;
  line-height: 1.4 !important;
  min-height: 68px;
  padding: 17px 20px !important;
}

/* Keep icons distinct from the lettering */
#nav button span,
#nav button b {
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: 1.2px !important;
  line-height: 1.4 !important;
}

/* Preserve readable burnt-orange selected lettering */
#nav button[aria-current="page"],
#nav button[aria-current="page"] span,
#nav button[aria-current="page"] b {
  color: #ff9b43 !important;
}

/* Allow compact navigation on mobile */
@media (max-width: 600px) {
  #nav button {
    min-height: 54px;
    padding: 12px 15px !important;
  }

  #nav button span,
  #nav button b {
    font-size: 15px !important;
    letter-spacing: .5px !important;
  }
}

/* GREEN DREAMS | DARK RED INACTIVE WORKSTATIONS */

/* Inactive workstation buttons */
.station:not(.selected),
#nav button:not([aria-current="page"]) {
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.045) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      155deg,
      #703b3b 0%,
      #421d22 28%,
      #270f15 62%,
      #5b2930 100%
    ) !important;

  color: #e8a87e !important;
  border: 1px solid #875453 !important;

  text-shadow:
    0 1px 0 rgba(255,222,194,.4),
    0 -2px 2px rgba(19,4,7,.85) !important;

  box-shadow:
    inset 0 2px 2px rgba(255,208,208,.20),
    inset 0 -4px 5px rgba(0,0,0,.55),
    0 3px 8px rgba(0,0,0,.3) !important;
}

/* Readable lettering inside inactive buttons */
.station:not(.selected) *,
#nav button:not([aria-current="page"]) * {
  color: #e8a87e !important;
}

/* Selected buttons retain orange illumination */
.station.selected,
#nav button[aria-current="page"] {
  color: #ffae61 !important;
  border: 2px solid #ffa34b !important;

  box-shadow:
    inset 0 2px 3px rgba(255,226,180,.3),
    0 0 10px rgba(255,147,42,.48),
    0 0 22px rgba(255,128,25,.2) !important;
}

/* GREEN DREAMS | STAINLESS BUTTONS WITH DARK RED LETTERING */

/* Inactive buttons: restore stainless-steel surfaces */
#nav button:not([aria-current="page"]) {
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.055) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      155deg,
      #b9c3bd 0%,
      #77877f 24%,
      #394b42 52%,
      #9baaa1 100%
    ) !important;

  border: 1px solid #b2c0b6 !important;
  color: #711e24 !important;

  box-shadow:
    inset 0 2px 3px rgba(255,255,255,.48),
    inset 0 -4px 5px rgba(0,0,0,.45),
    0 3px 8px rgba(0,0,0,.28) !important;
}

/* Dark burgundy embossed lettering */
#nav button:not([aria-current="page"]) *,
#nav button:not([aria-current="page"]) span,
#nav button:not([aria-current="page"]) b {
  color: #711e24 !important;

  text-shadow:
    0 1px 0 rgba(255,230,222,.55),
    0 -1px 1px rgba(42,8,12,.65),
    0 2px 3px rgba(0,0,0,.25) !important;
}

/* Selected button: retain warm orange lighting */
#nav button[aria-current="page"] {
  color: #ffad65 !important;
  border: 2px solid #ffa34b !important;

  box-shadow:
    inset 0 2px 3px rgba(255,255,255,.45),
    inset 0 -3px 5px rgba(0,0,0,.45),
    0 0 10px rgba(255,147,42,.48),
    0 0 22px rgba(255,128,25,.2) !important;
}

#nav button[aria-current="page"] * {
  color: #ffad65 !important;
}


/* GREEN DREAMS | OFFICIAL SIDEBAR LOGO */

.rail .brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  text-align: center !important;
}

.rail .brand strong {
  display: block !important;
  width: 88px !important;
  height: 88px !important;
  min-width: 88px !important;
  border-radius: 50% !important;

  background:
    #07150e url("green_dreams_logo.jpg")
    center / cover no-repeat !important;

  font-size: 0 !important;
  color: transparent !important;

  border: 2px solid #76ee8c !important;

  box-shadow:
    0 0 12px rgba(91,239,111,.24),
    inset 0 0 6px rgba(0,0,0,.4) !important;
}

.rail .brand small {
  color: #dfaa79 !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  text-align: center !important;
}

@media (max-width: 600px) {
  .rail .brand strong {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
  }
}

/* GREEN DREAMS | LARGE OFFICIAL DESKTOP LOGO */

@media (min-width: 701px) {

  .rail {
    min-width: 220px !important;
  }

  .rail .brand {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 10px !important;
    gap: 15px !important;
  }

  .rail .brand strong {
    width: 170px !important;
    height: 170px !important;
    min-width: 170px !important;

    background-image: url("green_dreams_logo.jpg") !important;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;

    border-radius: 50% !important;
    border: 2px solid #7aff91 !important;

    box-shadow:
      0 0 15px rgba(94,255,123,.35),
      0 0 30px rgba(65,233,97,.12) !important;
  }

  .rail .brand small {
    font-size: 15px !important;
    letter-spacing: 2px !important;
  }
}

/* Mobile logo remains compact */
@media (max-width: 700px) {
  .rail .brand strong {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
  }
}

/* GREEN DREAMS | METALLIC WORKSTATION CARDS */

#stations .station {
  background:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.045) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      135deg,
      #506e5f 0%,
      #1a3629 40%,
      #10271d 70%,
      #3b5a49 100%
    ) !important;

  color: #e8aa78 !important;
  border: 1px solid #799381 !important;

  box-shadow:
    inset 0 2px 2px rgba(255,255,255,.3),
    inset 0 -4px 5px rgba(0,0,0,.45),
    0 4px 10px rgba(0,0,0,.3) !important;
}

#stations .station * {
  color: inherit !important;
}

#stations .station.selected {
  color: #ffcb99 !important;
  border: 2px solid #f5a14a !important;

  box-shadow:
    inset 0 2px 3px rgba(255,224,181,.3),
    0 0 9px rgba(255,150,45,.45),
    0 0 20px rgba(255,130,30,.2) !important;
}

/* GREEN DREAMS | DARK EMERALD METAL REFINEMENT */

/* Reduce bright turquoise reflections */
.panel,
.workspace,
.gd-pattern-panel,
section:has(#tickers) {
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.022) 0px,
      transparent 1px,
      transparent 4px
    ),
    linear-gradient(
      110deg,
      transparent 10%,
      rgba(160,205,173,.055) 34%,
      transparent 48%,
      rgba(170,210,180,.075) 68%,
      transparent 85%
    ),
    linear-gradient(
      135deg,
      #294b37,
      #11291d 38%,
      #0a1c14 70%,
      #345542
    ) !important;

  border-color: #688a73 !important;
}

/* Preserve section-specific metallic tones */
.panel:has(#dataHeading) {
  background:
    linear-gradient(125deg,
      #375750,
      #152e2b 50%,
      #294640) !important;
}

.panel:has(#calcHeading) {
  background:
    linear-gradient(125deg,
      #55452e,
      #272219 50%,
      #483a29) !important;
}

/* Darker Pattern Tracker Laboratory */
.gd-pattern-panel {
  background:
    linear-gradient(125deg,
      #305740,
      #10281b 52%,
      #234c34) !important;
}

/* Gunmetal dropdowns with burnt-orange text */
#gdWindow,
#gdPattern {
  background:
    linear-gradient(160deg,
      #53665a,
      #1d3027 45%,
      #344a3d) !important;

  color: #f0ad77 !important;
  border: 1px solid #8b9a82 !important;

  box-shadow:
    inset 0 2px 3px rgba(255,255,255,.16),
    inset 0 -3px 4px rgba(0,0,0,.4) !important;
}


/* GREEN DREAMS | SIDEBAR LOGO CENTER */
.brand,
.sidebar-brand,
.rail .brand,
aside .brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  gap: 10px !important;
}

.brand img,
.sidebar-brand img,
.rail .brand img,
aside .brand img {
  display: block !important;
  margin: 0 auto !important;
  max-width: 110px !important;
  height: auto !important;
}

.brand .lab-title,
.brand .brand-subtitle,
.brand strong,
.brand b,
.sidebar-brand .lab-title,
.sidebar-brand .brand-subtitle,
.rail .brand .lab-title,
aside .brand .lab-title {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 auto !important;
  letter-spacing: .08em !important;
}

.brand .lab-title::before,
.sidebar-brand .lab-title::before,
.rail .brand .lab-title::before,
aside .brand .lab-title::before {
  content: "MARKET LAB" !important;
}

.brand .lab-title,
.sidebar-brand .lab-title,
.rail .brand .lab-title,
aside .brand .lab-title {
  font-size: 34px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  color: #f5b06a !important;
  text-shadow:
    0 1px 0 #fff3d8,
    0 2px 0 rgba(0,0,0,.28),
    0 4px 10px rgba(0,0,0,.35) !important;
}

.brand .lab-title,
.sidebar-brand .lab-title {
  text-indent: -9999px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  position: relative !important;
}

.brand .lab-title::before,
.sidebar-brand .lab-title::before {
  text-indent: 0 !important;
  position: static !important;
  display: block !important;
  white-space: normal !important;
}
