/* FENIX Oracle V5.1 — precision polish. Additive, limited to Oracle guided page.
   No new symbols, imagery, navigation, or backend behavior. */
body.oracle-v5 .fenix-oracle-return-v4 {
  margin-bottom: 25px;
}
body.oracle-v5 .oracle-v5-hero {
  padding-bottom: 25px;
}
body.oracle-v5 .oracle-v5-hero .oracle-v5-tagline {
  margin-top: 20px;
}
body.oracle-v5 .oracle-v5-hairline {
  margin-top: 18px;
}
body.oracle-v5 .oracle-v5-journey {
  margin-top: 19px;
}

/* Clearer choice without introducing color outside the approved palette. */
body.oracle-v5 .origins button {
  border-color: rgba(196,190,183,.26);
  background: linear-gradient(145deg, rgba(40,37,43,.64), rgba(20,19,24,.74));
}
body.oracle-v5 .origins button:not([aria-pressed="true"]):not(:disabled) .oracle-v5-origin-name {
  color: #e2dfe1;
}
body.oracle-v5 .origins button[aria-pressed="true"] {
  border-color: #e8cb91;
  background: linear-gradient(110deg,rgba(76,60,39,.57),rgba(45,37,35,.73) 53%,rgba(30,27,32,.95));
  box-shadow: inset 0 0 0 1px rgba(245,217,164,.23),0 0 0 2px rgba(211,178,115,.095),0 13px 34px rgba(0,0,0,.18);
}
body.oracle-v5 .origins button[aria-pressed="true"]::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 48%;
  left: 0;
  top: 26%;
  border-radius: 0 3px 3px 0;
  background: linear-gradient(#eed9ab,#bc965c);
}
body.oracle-v5 .origins button[aria-pressed="true"] .oracle-v5-origin-name {
  color: #fff9ed;
}
body.oracle-v5 .origins button[aria-pressed="true"] .oracle-v5-origin-desc {
  color: #d8c9b4;
}
body.oracle-v5 .origins button[aria-pressed="true"]::after {
  top: 12px;
  right: 13px;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border: 1px solid rgba(239,211,158,.45);
  border-radius: 50%;
  color: #f0d39b;
  background: rgba(221,180,107,.12);
  font-size: .96rem;
  line-height: 1;
}
body.oracle-v5 #intent:focus-visible,
body.oracle-v5 .origins button:focus-visible,
body.oracle-v5 #run:focus-visible {
  outline: 2px solid #f2d9a7;
  outline-offset: 3px;
}

/* Recommendations: improved tap targets and rhythm on narrow phones. */
body.oracle-v5 .info {
  margin-top: 15px;
  margin-bottom: 16px;
}
body.oracle-v5 #results {
  margin-top: 18px;
}
body.oracle-v5 #results .card a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
body.oracle-v5 #results .card:first-of-type {
  border-color: rgba(233,198,132,.63);
}
body.oracle-v5 #results .meta {
  color: #b3adb1;
}

/* The closing section is part of the product, not a loose debug disclaimer. */
body.oracle-v5 .oracle-v5-bottom {
  position: relative;
  margin-top: 29px;
  padding: 22px 25px;
  border: 1px solid rgba(208,185,142,.24);
  border-radius: 18px;
  background: linear-gradient(120deg, rgba(34,30,34,.84), rgba(18,17,23,.84));
  gap: 24px;
  align-items: center;
}
body.oracle-v5 .oracle-v5-bottom::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 25px;
  width: 47px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg,#f0d69f,#ad8952);
}
body.oracle-v5 .oracle-v5-bottom strong {
  color: #e2c98f;
}
body.oracle-v5 .oracle-v5-bottom p {
  color: #bbb5bd;
  font-size: .81rem;
  line-height: 1.65;
}

@media(max-width:680px) {
  body.oracle-v5 .shell {
    padding-top: 17px;
    padding-bottom: calc(44px + env(safe-area-inset-bottom, 0px));
  }
  body.oracle-v5 .fenix-oracle-return-v4 {
    margin-bottom: 18px;
    gap: 8px;
  }
  body.oracle-v5 .fenix-oracle-return-v4 a {
    padding: 9px 13px;
  }
  body.oracle-v5 .oracle-v5-hero {
    padding-top: 4px;
    padding-bottom: 21px;
  }
  body.oracle-v5 .oracle-v5-overline {
    margin-bottom: 13px;
  }
  body.oracle-v5 .oracle-v5-hero .oracle-v5-tagline {
    margin-top: 18px;
    margin-bottom: 8px;
  }
  body.oracle-v5 .oracle-v5-hero .oracle-v5-intro {
    line-height: 1.54;
  }
  body.oracle-v5 .oracle-v5-hairline {
    margin-top: 17px;
  }
  body.oracle-v5 .oracle-v5-journey {
    margin-top: 16px;
    padding: 20px 17px;
  }
  body.oracle-v5 .origins {
    margin-top: 15px;
    margin-bottom: 24px;
  }
  body.oracle-v5 .origins button {
    min-height: 76px;
  }
  body.oracle-v5 .origins button[aria-pressed="true"]::after {
    top: 11px;
    right: 12px;
    width: 27px;
    height: 27px;
  }
  body.oracle-v5 .oracle-v5-step-separator {
    margin-bottom: 23px;
  }
  body.oracle-v5 #results:not(:empty)::before {
    font-size: 1.75rem;
    margin-bottom: 0;
  }
  body.oracle-v5 #results .card {
    gap: 9px;
    padding: 20px;
  }
  body.oracle-v5 .oracle-v5-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 11px;
    padding: 21px 19px;
    margin-top: 25px;
    border-radius: 16px;
  }
  body.oracle-v5 .oracle-v5-bottom::before {
    left: 19px;
  }
  body.oracle-v5 .oracle-v5-bottom p {
    font-size: .8rem;
    line-height: 1.7;
  }
}
@media(max-width:360px) {
  body.oracle-v5 .oracle-v5-overline {letter-spacing:.23em;font-size:.61rem}
  body.oracle-v5 .origins button {padding-right:42px}
  body.oracle-v5 .oracle-v5-origin-name {font-size:1.24rem}
}
@media(prefers-reduced-motion:reduce) {
  body.oracle-v5 .origins button {transition:none}
}
