.oracle-entry,
.oracle-page {
  --oracle-ink: #090b0b;
  --oracle-walnut: #2c1c17;
  --oracle-sepia: #76553b;
  --oracle-gold: #c7a45b;
  --oracle-gold-soft: #e2c98f;
  --oracle-parchment: #e8dcc1;
  --oracle-oxblood: #6b292d;
  --oracle-muted: rgba(232, 220, 193, .68);
}

.oracle-entry {
  width: 100%;
  margin-top: 1.5rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 90px;
  align-items: center;
  gap: .8rem;
  padding: .75rem 1rem .75rem clamp(1rem, 18%, 9rem);
  border: 1px solid rgba(199, 164, 91, .25);
  border-radius: 1rem;
  color: var(--oracle-parchment);
  text-align: left;
  background: linear-gradient(90deg, rgba(9, 11, 11, .82) 0 40%, rgba(9, 11, 11, .35) 65%, rgba(9, 11, 11, .48)), url('/assets/oracle/oracle-ritual-banner.png') center 68% / cover no-repeat;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
  transition: border-color 160ms ease, transform 160ms ease, background 160ms ease;
}

.oracle-entry:hover { border-color: rgba(199, 164, 91, .55); }
.oracle-entry:active { transform: translateY(1px); }
.oracle-entry:focus-visible,
.oracle-page button:focus-visible,
.oracle-page select:focus-visible {
  outline: 2px solid var(--oracle-gold-soft);
  outline-offset: 3px;
}

.oracle-entry-copy { min-width: 0; display: grid; gap: .12rem; }
.oracle-entry-copy strong { font-family: Georgia, 'Times New Roman', serif; font-size: 1.05rem; letter-spacing: .02em; }
.oracle-entry-copy > span:last-child { color: rgba(232, 220, 193, .8); font-size: .78rem; line-height: 1.35; }
.oracle-entry-eyebrow,
.oracle-eyebrow { color: var(--oracle-gold-soft); font-size: .62rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.oracle-entry-action { color: var(--oracle-gold-soft); font-size: .8rem; white-space: nowrap; }

.oracle-page { color: var(--oracle-parchment); }
.oracle-shell { max-width: 1120px; margin: 0 auto; }
.oracle-page { padding-bottom: max(3rem, env(safe-area-inset-bottom)); }
.oracle-page-header { margin-bottom: .75rem; }
.oracle-page-header h2 { margin-top: .05rem; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.55rem, 4vw, 2.15rem); line-height: 1.05; }
.oracle-page-header > p:last-child { margin-top: .2rem; color: var(--oracle-muted); font-size: .84rem; }
.oracle-back-link { display: inline-flex; align-items: center; gap: .4rem; min-height: 36px; margin-bottom: .45rem; color: var(--oracle-gold-soft); font-size: .82rem; }

.oracle-app { padding: .85rem 0 0; border: 0; border-top: 1px solid rgba(199, 164, 91, .16); border-radius: 0; background: transparent; }
.oracle-mode-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .15rem; padding: .15rem; border-bottom: 1px solid rgba(199, 164, 91, .2); background: transparent; }
.oracle-mode-tabs button { position: relative; min-height: 38px; padding: .4rem .45rem; border: 0; border-radius: .35rem .35rem 0 0; color: var(--oracle-muted); font-size: .76rem; line-height: 1.2; }
.oracle-mode-tabs button[aria-selected="true"] { color: var(--oracle-parchment); background: rgba(199, 164, 91, .07); }
.oracle-mode-tabs button[aria-selected="true"]::after { position: absolute; right: .6rem; bottom: -1px; left: .6rem; height: 2px; background: var(--oracle-gold); content: ""; }
.oracle-mode-panel { margin-top: .8rem; }
.oracle-mode-heading h3 { font-family: Georgia, 'Times New Roman', serif; font-size: 1.22rem; }
.oracle-mode-heading p { margin-top: .12rem; color: var(--oracle-muted); font-size: .82rem; }

.oracle-config { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; margin-top: 1rem; }
.oracle-field { display: grid; gap: .3rem; color: var(--oracle-muted); font-size: .72rem; }
.oracle-field select { width: 100%; min-height: 42px; padding: .55rem .7rem; border: 1px solid rgba(199, 164, 91, .2); border-radius: .65rem; color: var(--oracle-parchment); background: rgba(0, 0, 0, .32); }
.oracle-unavailable-action { min-height: 44px; margin-top: 1rem; padding: .65rem 1rem; border-radius: 999px; color: rgba(232, 220, 193, .48); background: rgba(199, 164, 91, .1); cursor: not-allowed; }
.oracle-status-note { margin-top: .65rem; color: var(--oracle-muted); font-size: .76rem; line-height: 1.45; }

.oracle-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; margin-top: 1rem; }
.oracle-card { position: relative; width: 100%; aspect-ratio: 2 / 3; min-width: 0; padding: .35rem; border: 1px solid rgba(199, 164, 91, .34); border-radius: .62rem; color: var(--oracle-parchment); background: linear-gradient(155deg, rgba(70, 42, 31, .95), rgba(10, 11, 11, .98)); box-shadow: 0 7px 18px rgba(0, 0, 0, .24); transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease, background 160ms ease; }
.oracle-card:not(:disabled):hover { transform: translateY(-2px); border-color: rgba(226, 201, 143, .7); }
.oracle-card[aria-pressed="true"] { border-color: var(--oracle-gold-soft); background: linear-gradient(155deg, rgba(84, 53, 36, .98), rgba(17, 14, 12, .99)); box-shadow: 0 0 0 2px rgba(199, 164, 91, .22), 0 0 22px rgba(199, 164, 91, .13), 0 12px 26px rgba(0, 0, 0, .38); transform: translateY(-2px); }
.oracle-card:disabled,
.oracle-card--unavailable { opacity: .48; cursor: not-allowed; }
.oracle-card-inner { position: relative; height: 100%; display: grid; grid-template-rows: auto minmax(0, 1fr) auto auto; gap: .36rem; padding: .42rem; border: 1px solid rgba(199, 164, 91, .22); border-radius: .42rem; background: radial-gradient(ellipse at 50% 46%, rgba(199, 164, 91, .045), transparent 58%); }
.oracle-card-crown { color: var(--oracle-gold-soft); font-family: Georgia, 'Times New Roman', serif; font-size: .66rem; letter-spacing: .13em; text-align: center; }
.oracle-card-art { position: relative; overflow: hidden; display: grid; place-items: center; min-height: 0; border-block: 1px solid rgba(199, 164, 91, .18); background: radial-gradient(circle at 50% 44%, var(--oracle-card-glow, rgba(199, 164, 91, .24)), transparent 42%), repeating-linear-gradient(135deg, rgba(199, 164, 91, .025) 0 1px, transparent 1px 9px), linear-gradient(160deg, rgba(107, 41, 45, .2), rgba(0, 0, 0, .24)); }
.oracle-card-art::before { content: ""; width: 42%; aspect-ratio: 1; border: 1px solid rgba(226, 201, 143, .65); transform: rotate(45deg); box-shadow: 0 0 0 5px rgba(199, 164, 91, .05), 0 0 0 12px rgba(199, 164, 91, .035), inset 0 0 16px rgba(199, 164, 91, .08); }
.oracle-card-art::after { content: attr(data-symbol); position: absolute; color: var(--oracle-gold-soft); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.15rem, 5vw, 1.85rem); text-shadow: 0 0 14px rgba(226, 201, 143, .36); }
.oracle-card-title { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(.72rem, 2.8vw, .92rem); line-height: 1.12; text-align: center; }
.oracle-card-signature { color: var(--oracle-muted); font-size: .52rem; letter-spacing: .11em; text-align: center; text-transform: uppercase; }

.oracle-card--back .oracle-card-inner { grid-template-rows: auto 1fr auto; background: repeating-linear-gradient(45deg, rgba(199, 164, 91, .035) 0 5px, transparent 5px 10px); }
.oracle-card--back .oracle-card-art { border: 1px solid rgba(199, 164, 91, .3); }
.oracle-card--back .oracle-card-art::before { width: 52%; border-radius: 50%; transform: none; box-shadow: 0 0 0 8px rgba(199, 164, 91, .06), 0 0 0 9px rgba(199, 164, 91, .25); }
.oracle-card--back .oracle-card-art::after { content: "✦"; }
.oracle-card-illustration { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; border-radius: inherit; object-fit: contain; pointer-events: none; user-select: none; }
.oracle-card-art--illustrated { position: absolute; z-index: 1; inset: -.42rem; display: block; border: 0; background: none; }
.oracle-card-art--illustrated::before,
.oracle-card-art--illustrated::after { display: none; }
.oracle-card-art--illustrated ~ .oracle-card-crown,
.oracle-card-art--illustrated ~ .oracle-card-title,
.oracle-card-art--illustrated ~ .oracle-card-signature { display: none; }
.oracle-card--back .oracle-card-inner { display: block; padding: 0; border: 0; background: none; }
.oracle-card--back .oracle-card-art { position: absolute; z-index: 1; inset: -.42rem; display: block; border: 0; background: none; }
.oracle-card--back .oracle-card-crown,
.oracle-card--back .oracle-card-signature { display: none; }
.oracle-card-back-art { object-fit: contain; }
.oracle-card--back .oracle-card-art { border: 0; background: none; }
.oracle-card--back .oracle-card-art::before,
.oracle-card--back .oracle-card-art::after { display: none; }

.oracle-selection-note { min-height: 3.6rem; margin-top: .8rem; padding: .15rem 0 .15rem .75rem; border-left: 2px solid var(--oracle-oxblood); color: var(--oracle-muted); font-size: .78rem; line-height: 1.4; }
.oracle-selection-note strong { display: block; color: var(--oracle-gold-soft); font-family: Georgia, 'Times New Roman', serif; font-size: 1rem; }
.oracle-selection-tagline { display: block; color: rgba(232, 220, 193, .84); font-family: Georgia, 'Times New Roman', serif; font-style: italic; }
.oracle-experience-toggle { display: inline-grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .2rem; margin-top: .75rem; padding: .2rem; border: 1px solid rgba(199, 164, 91, .19); border-radius: 999px; background: rgba(0, 0, 0, .2); }
.oracle-experience-toggle button { min-height: 38px; padding: .45rem .75rem; border: 1px solid transparent; border-radius: 999px; color: var(--oracle-muted); font-size: .76rem; }
.oracle-experience-toggle button[aria-pressed="true"] { border-color: rgba(199, 164, 91, .42); color: var(--oracle-parchment); background: linear-gradient(135deg, rgba(199, 164, 91, .18), rgba(107, 41, 45, .16)); box-shadow: inset 0 0 12px rgba(199, 164, 91, .06); }

.oracle-living-card { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 1rem; align-items: center; margin-top: 1rem; padding-top: .9rem; border-top: 1px solid rgba(199, 164, 91, .16); }
.oracle-living-visual { position: relative; aspect-ratio: 2 / 3; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(199, 164, 91, .5); border-radius: .58rem; color: rgba(226, 201, 143, .82); background: radial-gradient(circle at center, rgba(199, 164, 91, .16), transparent 45%), repeating-linear-gradient(135deg, rgba(199, 164, 91, .045) 0 1px, transparent 1px 8px), linear-gradient(150deg, #32231d, #0d0e0d 68%); font-size: 1.5rem; box-shadow: inset 0 0 0 5px rgba(0, 0, 0, .2), 0 10px 24px rgba(0, 0, 0, .25); }
.oracle-living-visual::before { position: absolute; inset: 8px; border: 1px solid rgba(199, 164, 91, .28); content: ""; }
.oracle-living-visual::after { position: absolute; width: 38%; aspect-ratio: 1; border: 1px solid rgba(226, 201, 143, .54); transform: rotate(45deg); content: ""; }
.oracle-living-visual span { position: relative; z-index: 1; }
.oracle-living-copy h4 { font-family: Georgia, 'Times New Roman', serif; color: var(--oracle-gold-soft); }
.oracle-living-copy p { margin-top: .25rem; color: var(--oracle-muted); font-size: .76rem; line-height: 1.45; }
.oracle-result-placeholder { margin-top: 1.25rem; }
.oracle-result-placeholder .oracle-living-copy h4 { font-size: clamp(1.1rem, 2.3vw, 1.35rem); line-height: 1.2; }
.oracle-result-placeholder .oracle-living-copy p { margin-top: .4rem; }
.oracle-result-placeholder-visual::before,
.oracle-result-placeholder-visual::after { display: none; }
.oracle-result-placeholder-visual img { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; pointer-events: none; }
.oracle-status-note p { margin: 0; }
.oracle-status-note .oracle-action { margin-top: .5rem; }
.oracle-title-link { padding: .15rem 0; border: 0; color: inherit; background: transparent; font: inherit; text-align: left; cursor: pointer; text-decoration: underline; text-decoration-color: rgba(226, 201, 143, .35); text-underline-offset: .2em; }
.oracle-title-link:hover { text-decoration-color: currentColor; }
.oracle-cover-link { position: absolute; inset: 0; display: block; width: 100%; height: 100%; padding: 0; border: 0; border-radius: inherit; background: transparent; cursor: pointer; }
.oracle-cover-link:hover { filter: brightness(1.06); }
.oracle-page .oracle-cover-link:focus-visible { outline: 1px solid var(--oracle-gold-soft); outline-offset: 3px; }
.oracle-living-status { display: inline-flex; align-items: center; gap: .35rem; margin-top: .45rem; color: rgba(232, 220, 193, .52); font-size: .66rem; letter-spacing: .04em; }
.oracle-living-status::before { width: 5px; height: 5px; border-radius: 50%; background: var(--oracle-gold); content: ""; }
.oracle-draw-action { min-height: 42px; margin-top: .85rem; padding: .58rem 1rem; border: 1px solid rgba(199, 164, 91, .42); border-radius: 999px; color: var(--oracle-parchment); background: linear-gradient(135deg, rgba(199, 164, 91, .18), rgba(107, 41, 45, .2)); font-size: .82rem; }
.oracle-draw-action:disabled,
.oracle-action:disabled { opacity: .48; cursor: not-allowed; }
.oracle-result-card { align-items: start; }
.oracle-result-cover { min-height: 112px; }
.oracle-result-cover img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: contain; border-radius: .5rem; }
.oracle-result-meta,
.oracle-result-context { overflow-wrap: anywhere; }
.oracle-result-context { margin-top: .35rem; }
.oracle-reasons { display: flex; flex-wrap: wrap; gap: .32rem; margin-top: .55rem; padding: 0; list-style: none; }
.oracle-reasons li { padding: .2rem .45rem; border: 1px solid rgba(199, 164, 91, .2); border-radius: 999px; color: var(--oracle-parchment); font-size: .64rem; }
.oracle-result-actions { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .7rem; }
.oracle-action { min-height: 36px; padding: .42rem .72rem; border: 1px solid rgba(199, 164, 91, .36); border-radius: 999px; color: var(--oracle-parchment); background: rgba(199, 164, 91, .1); font-size: .72rem; }
.oracle-action--quiet { color: var(--oracle-muted); background: transparent; }
.oracle-card--selected { border-color: var(--oracle-gold-soft); box-shadow: 0 0 0 2px rgba(199, 164, 91, .2); }
.oracle-result-card { scroll-margin-block-start: calc(var(--aeon-sticky-header-height, 12rem) + .75rem); scroll-margin-block-end: calc(5.5rem + env(safe-area-inset-bottom, 0px)); }

.oracle-result-card {
  position: relative;
  width: 100%;
  max-width: 1060px;
  box-sizing: border-box;
  margin-inline: auto;
  grid-template-columns: minmax(280px, clamp(280px, 30vw, 340px)) minmax(0, 1fr);
  align-items: center;
  column-gap: clamp(24px, 3vw, 32px);
  row-gap: .85rem;
  padding: clamp(1rem, 2.4vw, 1.4rem);
  border: 1px solid rgba(199, 164, 91, .34);
  border-radius: .9rem;
  background: radial-gradient(ellipse at 12% 40%, rgba(107, 41, 45, .2), transparent 48%), linear-gradient(145deg, rgba(35, 25, 20, .96), rgba(8, 10, 10, .98) 68%);
  box-shadow: inset 0 1px rgba(226, 201, 143, .08), 0 14px 36px rgba(0, 0, 0, .34);
  isolation: isolate;
}
.oracle-result-cover {
  grid-column: 1;
  grid-row: 1;
  justify-self: center;
  width: min(100%, 340px);
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 3;
  display: block;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
.oracle-result-cover::before,
.oracle-result-cover::after { display: none; }
.oracle-result-cover .oracle-cover-art {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: .12rem;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .48);
  object-fit: contain;
}
.oracle-result-card .oracle-living-copy { grid-column: 2; grid-row: 1; min-width: 0; }
.oracle-result-card .oracle-result-actions { margin-top: .7rem; }
.oracle-result-card .oracle-living-copy h4 { font-size: clamp(1.08rem, 2.3vw, 1.55rem); line-height: 1.12; text-wrap: pretty; overflow-wrap: anywhere; }
.oracle-result-card .oracle-result-author { color: var(--oracle-parchment); font-size: .84rem; overflow-wrap: anywhere; }
.oracle-result-card .oracle-eyebrow { display: inline-block; margin-bottom: .28rem; }
.oracle-ritual-stage { perspective: 1000px; transform-style: preserve-3d; isolation: isolate; }
.oracle-ritual-scene,
.oracle-ritual-flipper { position: absolute; inset: 0; transform-style: preserve-3d; }
.oracle-ritual-scene { inset: 2%; }
.oracle-ritual-flipper { transform: rotateY(0deg); }
.oracle-ritual-face {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: .65rem;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.oracle-ritual-face--back {
  border: 0;
  background: transparent;
  box-shadow: none;
}
.oracle-card-back-art { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: inherit; object-fit: contain; pointer-events: none; user-select: none; }
.oracle-ritual-face--front { transform: rotateY(180deg); overflow: visible; }
.oracle-ritual-stage[data-oracle-visual-stage="summoning"] .oracle-ritual-flipper { animation: oracle-ritual-summon 300ms ease-out both; }
.oracle-ritual-stage[data-oracle-visual-stage="turning"] .oracle-ritual-flipper { animation: oracle-ritual-turn 600ms cubic-bezier(.42, 0, .25, 1) both; }
.oracle-ritual-stage[data-oracle-visual-stage="manifestation"] .oracle-ritual-flipper,
.oracle-ritual-stage[data-oracle-visual-stage="verdict"] .oracle-ritual-flipper,
.oracle-ritual-stage[data-oracle-visual-stage="complete"] .oracle-ritual-flipper { transform: rotateY(180deg); }
.oracle-ritual-stage[data-oracle-visual-stage="manifestation"] { animation: oracle-ritual-glow 500ms ease-out both; }
.oracle-result-card--ritual .oracle-reveal-verdict:not(.oracle-reveal-verdict--concealed) { animation: oracle-ritual-verdict 300ms ease-out both; }
.oracle-reveal-verdict--concealed { visibility: hidden; pointer-events: none; }
.oracle-skip-reveal { min-height: 36px; padding: .4rem .7rem; border: 1px solid rgba(199, 164, 91, .3); border-radius: 999px; color: var(--oracle-gold-soft); background: rgba(0, 0, 0, .24); font-size: .7rem; }
.oracle-skip-reveal[hidden] { display: none; }
.oracle-skip-reveal:focus-visible { outline: 2px solid var(--oracle-gold-soft); outline-offset: 2px; }
@keyframes oracle-ritual-summon {
  from { opacity: .72; transform: translateY(4px) scale(.99); }
  to { opacity: 1; transform: none; }
}
@keyframes oracle-ritual-turn {
  from { transform: rotateY(0deg); }
  to { transform: rotateY(180deg); }
}
@keyframes oracle-ritual-glow {
  0%, 100% { box-shadow: none; }
  35% { box-shadow: 0 0 28px rgba(226, 201, 143, .32); }
}
@keyframes oracle-ritual-verdict {
  from { opacity: .72; transform: translateY(4px); }
  to { opacity: 1; transform: none; }
}
@media (min-width: 620px) {
  .oracle-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .oracle-config { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .oracle-app { padding: .85rem 0 0; }
  .oracle-card-grid--challenges { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .oracle-card-grid--challenges .oracle-card { grid-column: span 3; }
  .oracle-card-grid--challenges .oracle-card:nth-child(5) { grid-column: 2 / span 3; }
  .oracle-card-grid--challenges .oracle-card:nth-child(6) { grid-column: 5 / span 3; }
  .oracle-card-grid--challenges .oracle-card:nth-child(7) { grid-column: 8 / span 3; }
}

@media (min-width: 900px) {
  .oracle-card-grid--moods { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 540px) {
  .oracle-entry { grid-template-columns: minmax(0, 1fr); gap: .55rem; padding: .75rem .9rem .75rem 18%; background-position: center, 58% 68%; }
  .oracle-entry-action { grid-column: 1; font-size: .72rem; }
  .oracle-mode-tabs button { min-height: 36px; padding-inline: .2rem; font-size: .68rem; }
  .oracle-app { padding-top: .65rem; }
  .oracle-result-card { scroll-margin-block-end: calc(6.5rem + env(safe-area-inset-bottom, 0px)); }
  .oracle-result-card .oracle-living-copy h4 { font-size: 1.02rem; }
  .oracle-card-grid { gap: .55rem; }
  .oracle-card { padding: .3rem; }
  .oracle-card-inner { padding: .32rem; }
  .oracle-living-card { grid-template-columns: 82px minmax(0, 1fr); gap: .7rem; }
  .oracle-experience-toggle { width: 100%; }
}

@media (max-width: 760px) {
  .oracle-page { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px)); }
  .oracle-page .oracle-result-card {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 1rem;
    padding: 1rem clamp(.75rem, 4vw, 1.1rem);
  }
  .oracle-page .oracle-result-card .oracle-result-cover {
    grid-column: 1;
    grid-row: 1;
    width: min(100%, clamp(220px, 68vw, 280px));
    margin: .25rem auto .35rem;
  }
  .oracle-page .oracle-result-card .oracle-living-copy {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    align-self: auto;
  }
  .oracle-page .oracle-result-card .oracle-result-actions {
    width: 100%;
    padding-right: 0;
    margin-top: 0;
  }
  .oracle-page .oracle-result-actions .oracle-action { min-height: 44px; max-width: 100%; }
  .oracle-page .oracle-title-link { min-height: 44px; max-width: 100%; overflow-wrap: anywhere; }
  .oracle-page .oracle-reasons li { max-width: 100%; overflow-wrap: anywhere; }
}

@media (prefers-reduced-motion: reduce) {
  .oracle-entry,
  .oracle-card { transition: none; }
  .oracle-ritual-stage[data-oracle-visual-stage],
  .oracle-ritual-flipper,
  .oracle-result-card--ritual .oracle-reveal-verdict { animation: none !important; }
}

.oracle-modal[hidden],
#oracleApp[hidden] { display: none !important; }
.oracle-modal { position: fixed; z-index: 10050; inset: 0; display: grid; place-items: center; padding: max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left)); background: rgba(2, 4, 4, .86); backdrop-filter: blur(8px); }
.oracle-modal-dialog { --oracle-modal-bg: #0b0d0d; width: min(1120px, 100%); max-height: min(900px, calc(100dvh - 40px)); overflow-y: auto; overscroll-behavior: contain; border: 1px solid rgba(199, 164, 91, .3); border-radius: 1rem; color: var(--oracle-parchment); background: radial-gradient(ellipse at 50% 0, rgba(107, 41, 45, .22), transparent 48%), linear-gradient(145deg, #211815, var(--oracle-modal-bg) 65%); box-shadow: 0 24px 90px rgba(0, 0, 0, .65); }
.oracle-modal-open { overflow: hidden; }
.oracle-step-back { min-height: 34px; margin-bottom: .55rem; padding: .25rem 0; border: 0; color: var(--oracle-gold-soft); background: transparent; font-size: .78rem; }
.oracle-modal-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: clamp(1rem, 3vw, 1.7rem) clamp(1rem, 3vw, 2rem) .6rem; }
.oracle-modal-header h2 { margin-top: .22rem; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.35rem, 3vw, 2rem); }
.oracle-modal-close { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; padding: 0; line-height: 1; border: 1px solid rgba(199, 164, 91, .3); border-radius: 50%; color: var(--oracle-parchment); background: rgba(0, 0, 0, .25); }
.oracle-modal-close svg { display: block; flex-shrink: 0; }
.oracle-ritual-choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .85rem; padding: 1.4rem clamp(1rem, 3vw, 2rem) 2rem; }
.oracle-ritual-choice { min-height: 170px; display: grid; align-content: center; justify-items: start; gap: .45rem; padding: 1.2rem; border: 1px solid rgba(199, 164, 91, .25); border-radius: .8rem; color: var(--oracle-parchment); text-align: left; background: linear-gradient(145deg, rgba(54, 34, 27, .72), rgba(6, 8, 8, .8)); }
.oracle-ritual-choice:hover,
.oracle-challenge-kind button:hover { border-color: rgba(226, 201, 143, .7); transform: translateY(-2px); }
.oracle-ritual-choice > span { color: var(--oracle-gold-soft); font-size: 1.25rem; }
.oracle-ritual-choice strong { font-family: Georgia, 'Times New Roman', serif; font-size: 1.12rem; }
.oracle-ritual-choice small { color: var(--oracle-muted); font-size: .78rem; line-height: 1.4; }
.oracle-modal-step { padding: .8rem clamp(.8rem, 3vw, 2rem) 2rem; }
#oracleApp { padding: .4rem clamp(.8rem, 3vw, 2rem) 2rem; border: 0; }
.oracle-modal .oracle-mode-heading h3 { font-size: 1.35rem; }
.oracle-fate-feature { display: grid; place-items: center; margin: .6rem auto 1.2rem; }
.oracle-fate-feature img { display: block; width: clamp(210px, 31vw, 320px); max-height: min(43vh, 450px); aspect-ratio: 2 / 3; object-fit: contain; filter: drop-shadow(0 14px 22px rgba(0, 0, 0, .52)); }
.oracle-cardflow { position: relative; width: 100%; max-width: 900px; height: min(57vh, 510px); min-height: 300px; margin: .8rem auto 0; touch-action: pan-y; outline: none; }
.oracle-flow-track { position: absolute; inset: 0; overflow: hidden; }
.oracle-flow-card { position: absolute; top: 0; left: 50%; display: block; width: min(38vh, 340px); height: 100%; padding: 0; overflow: hidden; border: 1px solid rgba(226, 201, 143, .38); border-radius: .8rem; background: #211815 url('/assets/oracle/living-card-back-face.png') center / contain no-repeat; box-shadow: 0 18px 38px rgba(0, 0, 0, .48); transform: translateX(-50%) translateX(var(--flow-x)) scale(var(--flow-scale)) rotateY(var(--flow-rotate)); transition: transform 260ms ease, filter 260ms ease, opacity 260ms ease; }
.oracle-flow-card:not(.is-current) { filter: brightness(.68); }
.oracle-flow-card img { display: block; width: 100%; height: 100%; object-fit: contain; pointer-events: none; user-select: none; }
.oracle-flow-arrow { position: absolute; z-index: 5; top: 50%; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(226, 201, 143, .48); border-radius: 50%; color: var(--oracle-parchment); background: rgba(5, 7, 7, .82); font-size: 1.75rem; transform: translateY(-50%); }
.oracle-flow-prev { left: max(0px, calc(50% - 245px)); }
.oracle-flow-next { right: max(0px, calc(50% - 245px)); }
.oracle-flow-position { margin: .6rem 0 0; color: var(--oracle-gold-soft); font-size: .72rem; letter-spacing: .12em; text-align: center; }
.oracle-flow-caption { display: grid; gap: .25rem; margin: .4rem auto 0; text-align: center; }
.oracle-flow-caption strong { font-family: Georgia, 'Times New Roman', serif; font-size: 1.08rem; }
.oracle-flow-caption span { color: var(--oracle-muted); font-size: .78rem; }
.oracle-cardflow + .oracle-flow-position + .oracle-flow-caption + .oracle-draw-action { display: block; margin: .8rem auto 0; }
.oracle-challenge-kind { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin-top: 1.2rem; }
.oracle-challenge-kind button { display: grid; gap: .35rem; padding: 1.1rem; border: 1px solid rgba(199, 164, 91, .25); border-radius: .75rem; color: var(--oracle-parchment); text-align: left; background: rgba(0, 0, 0, .25); }
.oracle-challenge-kind strong { font-family: Georgia, 'Times New Roman', serif; font-size: 1rem; }
.oracle-challenge-kind span { color: var(--oracle-muted); font-size: .76rem; }
.oracle-result-page { padding: clamp(1.2rem, 5vw, 3.5rem) max(1rem, env(safe-area-inset-right)) max(3rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left)); color: var(--oracle-parchment); }
.oracle-result-page-shell { width: min(1120px, 100%); margin: 0 auto; }
.oracle-result-page h1 { margin-top: .25rem; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.7rem, 4vw, 2.6rem); }
.oracle-result-page .oracle-result-card { margin-top: 1.3rem; }
.oracle-result-page-actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-start; margin-top: 1rem; }
.oracle-result-unavailable { margin-top: 1.5rem; padding: 1rem; border-left: 2px solid var(--oracle-oxblood); color: var(--oracle-muted); }
.oracle-modal :focus-visible,
.oracle-result-page :focus-visible { outline: 2px solid var(--oracle-gold-soft); outline-offset: 3px; }

@media (max-width: 700px) {
  .oracle-modal { display: block; padding: 0; }
  .oracle-modal-dialog { width: 100%; height: 100%; max-height: 100dvh; border: 0; border-radius: 0; padding-top: env(safe-area-inset-top); padding-bottom: env(safe-area-inset-bottom); }
  .oracle-modal-header { padding-inline: max(1rem, env(safe-area-inset-left)); }
  .oracle-ritual-choices { grid-template-columns: 1fr; gap: .55rem; padding-inline: max(1rem, env(safe-area-inset-left)); }
  .oracle-ritual-choice { min-height: 100px; grid-template-columns: 28px 1fr; align-items: center; padding: .9rem; }
  .oracle-ritual-choice > span { grid-row: span 2; }
  .oracle-ritual-choice small { grid-column: 2; }
  #oracleApp,.oracle-modal-step { padding-inline: max(.8rem, env(safe-area-inset-left)); }
  .oracle-cardflow { height: min(50dvh, 430px); min-height: 270px; }
  .oracle-flow-card { top: 50%; width: auto; height: min(46dvh, 420px); min-height: 0; aspect-ratio: 2 / 3; transform: translate(-50%, -50%) translateX(var(--flow-x)) scale(var(--flow-scale)) rotateY(var(--flow-rotate)); }
  .oracle-flow-prev { left: 0; }
  .oracle-flow-next { right: 0; }
  .oracle-fate-feature img { width: clamp(205px, 62vw, 270px); max-height: 38vh; }
  .oracle-challenge-kind { grid-template-columns: 1fr; }
}
@media (max-height: 620px) {
  .oracle-modal-dialog { max-height: calc(100dvh - 12px); }
  .oracle-cardflow { height: 38dvh; min-height: 220px; }
  .oracle-flow-card { width: min(25.3vh, 260px); }
}
@media (max-width: 700px) and (max-height: 620px) {
  .oracle-flow-card { width: auto; height: min(34dvh, 290px); }
}
@media (prefers-reduced-motion: reduce) {
  .oracle-flow-card,.oracle-ritual-choice,.oracle-challenge-kind button { transition: none; }
}

.oracle-modal [hidden] { display: none !important; }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-dialog { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: min(620px, calc(100dvh - 40px)); padding-block: clamp(1rem, 4vh, 2.5rem); }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-header { position: static; justify-content: center; text-align: center; padding-bottom: 1.2rem; }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-close {
  position: absolute;
  top: max(20px, env(safe-area-inset-top));
  right: max(20px, env(safe-area-inset-right));
  z-index: 2;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  background: rgba(19, 21, 21, .96);
  border-color: rgba(199, 164, 91, .55);
  color: var(--oracle-parchment);
}
.oracle-modal[data-oracle-step="choice"] .oracle-modal-close:hover { background: rgba(40, 33, 24, .98); border-color: var(--oracle-gold-soft); }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-close:focus-visible { outline: 2px solid var(--oracle-gold-soft); outline-offset: 3px; }
#oracleModalDescription { max-width: 480px; margin: .8rem auto 0; color: var(--oracle-muted); font-size: .84rem; line-height: 1.6; }
.oracle-modal[data-oracle-step="choice"] .oracle-ritual-choices { padding-top: .6rem; padding-bottom: 1.4rem; }
.oracle-modal[data-oracle-step="ritual"] .oracle-modal-header { display: grid; grid-template-columns: auto minmax(0, 1fr) 40px; gap: .8rem; padding-block: .8rem; border-bottom: 1px solid rgba(199, 164, 91, .15); }
.oracle-modal[data-oracle-step="ritual"] .oracle-modal-header h2 { margin: 0; font-size: clamp(1.05rem, 2vw, 1.35rem); text-align: center; }
.oracle-modal[data-oracle-step="ritual"] .oracle-modal-header .oracle-eyebrow { display: none; }
#oracleAllRituals { margin: 0; white-space: nowrap; }
.oracle-ritual-description { color: var(--oracle-muted); font-size: .8rem; }
.oracle-flow-caption { max-width: 640px; line-height: 1.5; }
.oracle-mood-poetry { color: var(--oracle-gold-soft); font-family: Georgia, 'Times New Roman', serif; font-size: .94rem; }
.oracle-threads { margin-top: .35rem; }
.oracle-threads-toggle { min-height: 38px; padding: .25rem .4rem; border: 0; color: var(--oracle-muted); background: transparent; font-size: .72rem; }
.oracle-threads-toggle:hover,.oracle-threads-toggle[aria-expanded="true"] { color: var(--oracle-gold-soft); }
.oracle-threads-panel { padding: .35rem .2rem .6rem; color: var(--oracle-muted); font-size: .72rem; }
.oracle-threads-label { display: block; margin-bottom: .4rem; }
.oracle-thread-chips { display: flex; justify-content: center; flex-wrap: wrap; gap: .3rem; }
.oracle-thread-chips span { padding: .22rem .45rem; border-radius: 999px; background: rgba(199, 164, 91, .09); overflow-wrap: anywhere; }
.oracle-threads-panel small { display: block; margin-top: .4rem; font-size: .66rem; }
.oracle-cardflow--chosen .oracle-flow-card:not(.is-current) { opacity: .42; filter: brightness(.5); }
.oracle-flow-card.is-chosen { animation: oracle-card-chosen 300ms ease-out both; border-color: var(--oracle-gold-soft); }
.oracle-trial-selection { position: relative; display: grid; place-items: center; height: min(48dvh, 460px); min-height: 240px; margin: 1rem auto; perspective: 1000px; overflow: hidden; }
.oracle-trial-selected { position: relative; z-index: 2; height: 92%; aspect-ratio: 2 / 3; filter: drop-shadow(0 14px 18px rgba(0, 0, 0, .6)) drop-shadow(0 0 8px rgba(199, 164, 91, .15)); }
[data-oracle-trial-stage="approaching"] .oracle-trial-selected { animation: oracle-trial-advance 550ms ease-out both; }
.oracle-trial-flipper { position: absolute; inset: 0; transform-style: preserve-3d; }
.oracle-trial-face { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.oracle-trial-face--front { transform: rotateY(180deg); }
[data-oracle-trial-stage="turning"] .oracle-trial-flipper { animation: oracle-trial-flip 900ms ease-in-out both; }
[data-oracle-trial-stage="holding"] .oracle-trial-flipper { transform: rotateY(180deg); }
.oracle-trial-neighbor { position: absolute; height: 74%; width: auto; aspect-ratio: 2 / 3; object-fit: contain; opacity: .26; filter: brightness(.6); }
.oracle-trial-neighbor--left { transform: translateX(-74%) scale(.85) rotate(-6deg); }
.oracle-trial-neighbor--right { transform: translateX(74%) scale(.85) rotate(6deg); }
.oracle-revealed-trial { margin-top: .7rem; text-align: center; color: var(--oracle-gold-soft); font-family: Georgia, 'Times New Roman', serif; }
.oracle-book-reveal { display: grid; justify-items: center; gap: 1rem; margin: 1rem auto; }
.oracle-book-reveal .oracle-result-cover { width: min(100%, clamp(220px, 34vh, 340px)); }
[data-oracle-reveal-book] { display: block; margin-inline: auto; min-height: 44px; }
.oracle-modal[data-oracle-entry="choice"] .oracle-modal-dialog,
.oracle-modal[data-oracle-entry="challenge-kind"] .oracle-modal-dialog {
  background: linear-gradient(rgba(9, 11, 11, .28), rgba(9, 11, 11, .5)), url('/assets/oracle/oracle-ritual-background.png') center / cover no-repeat, var(--oracle-modal-bg);
}
.oracle-ritual-choice,.oracle-challenge-kind button { background: rgba(9, 11, 11, .72); box-shadow: 0 10px 24px rgba(0, 0, 0, .2); }
.oracle-modal-header { border-image: linear-gradient(90deg, transparent, rgba(199, 164, 91, .35), transparent) 1; }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-header {
  isolation: isolate;
  /* Override the theme's opaque background on all header elements. */
  background: radial-gradient(ellipse at 50% 55%, rgba(0, 0, 0, .32), transparent 75%) !important;
}
.oracle-modal[data-oracle-step="choice"] .oracle-modal-header > div { position: relative; z-index: 1; }
.oracle-modal[data-oracle-step="choice"] .oracle-modal-header > div::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -20px 10% -35px;
  pointer-events: none;
  background: radial-gradient(circle at 15% 24%, rgba(226, 201, 143, .35) 0 1px, transparent 1.8px), radial-gradient(circle at 29% 78%, rgba(226, 201, 143, .22) 0 1px, transparent 1.8px), radial-gradient(circle at 42% 12%, rgba(226, 201, 143, .25) 0 .7px, transparent 1.5px), radial-gradient(circle at 66% 85%, rgba(226, 201, 143, .2) 0 .7px, transparent 1.5px), radial-gradient(circle at 78% 18%, rgba(226, 201, 143, .3) 0 1px, transparent 1.8px), radial-gradient(circle at 89% 63%, rgba(226, 201, 143, .22) 0 .7px, transparent 1.5px);
}
.oracle-modal[data-oracle-step="choice"] .oracle-modal-header h2 { text-shadow: 0 2px 12px rgba(0, 0, 0, .6); }
.oracle-modal[data-oracle-step="choice"] .oracle-ritual-choice {
  border-color: rgba(199, 164, 91, .38);
  background: radial-gradient(ellipse at 0 0, rgba(199, 164, 91, .1), transparent 65%), linear-gradient(145deg, rgba(44, 28, 23, .8), rgba(9, 11, 11, .78));
  box-shadow: inset 0 1px rgba(226, 201, 143, .1), 0 12px 28px rgba(0, 0, 0, .38), 0 0 18px rgba(107, 41, 45, .1);
}
.oracle-modal[data-oracle-step="choice"] .oracle-ritual-choice:hover,
.oracle-modal[data-oracle-step="choice"] .oracle-ritual-choice:focus-visible { border-color: rgba(226, 201, 143, .65); }
@media (max-width: 700px) {
  .oracle-modal[data-oracle-step="choice"] .oracle-modal-header > div::after { inset: 0 6% -20px; opacity: .65; }
}
.oracle-hidden-spread { position: relative; width: 100%; max-width: 860px; height: clamp(250px, 50dvh, 440px); margin: .8rem auto 0; touch-action: pan-y; }
.oracle-hidden-spread-track { position: absolute; inset: 0; perspective: 1000px; }
.oracle-hidden-card { position: absolute; top: 48%; left: 50%; width: min(28%, 210px); aspect-ratio: 2 / 3; padding: 0; border: 1px solid rgba(199, 164, 91, .35); border-radius: 5% / 3.333%; background: #211815 url('/assets/oracle/living-card-back-face.png') center / contain no-repeat; box-shadow: 0 12px 24px rgba(0, 0, 0, .55); opacity: .62; filter: brightness(.65); transform: translate(-50%, -50%) translateX(var(--spread-x)) translateY(var(--spread-y)) rotate(var(--spread-angle)) scale(var(--spread-scale)); transition: transform 420ms cubic-bezier(.22, .68, .2, 1), opacity 300ms ease, filter 300ms ease, box-shadow 300ms ease; }
.oracle-hidden-card img { display: block; width: 100%; height: 100%; object-fit: contain; clip-path: inset(0 round 5% / 3.333%); pointer-events: none; user-select: none; }
.oracle-hidden-card.is-active { opacity: 1; filter: none; border-color: rgba(226, 201, 143, .75); box-shadow: 0 0 18px rgba(199, 164, 91, .2), 0 0 32px rgba(107, 41, 45, .2), 0 22px 36px rgba(0, 0, 0, .65); }
.oracle-hidden-card:focus-visible { z-index: 9 !important; }
.oracle-hidden-spread--locked .oracle-hidden-card:not(.is-active) { opacity: .2; filter: brightness(.45); transform: translate(-50%, -50%) translateX(var(--spread-x)) translateY(40px) rotate(var(--spread-angle)) scale(.8); }
.oracle-hidden-spread--locked .oracle-hidden-card.is-active { transform: translate(-50%, -50%) scale(1.08); animation: oracle-spread-seal 550ms ease-out both; }
@keyframes oracle-spread-seal { from { transform: translate(-50%, -50%) translateY(-22px) scale(1.06); } to { transform: translate(-50%, -50%) scale(1.08); } }
.oracle-hidden-spread .oracle-flow-prev { left: 0; }
.oracle-hidden-spread .oracle-flow-next { right: 0; }
/* Clip the pale exterior pixels to the approved artwork's rounded silhouette. */
.oracle-fate-feature img,
.oracle-flow-card img,
.oracle-card-illustration,
.oracle-card-back-art,
.oracle-trial-face,
.oracle-trial-neighbor { clip-path: inset(0 round 5% / 3.333%); }
.oracle-flow-card { display: grid; place-items: center; }
.oracle-flow-card img { width: auto; height: auto; max-width: 100%; max-height: 100%; }
.oracle-fate-feature img { width: auto; height: auto; max-width: clamp(210px, 31vw, 320px); }
@media (max-width: 700px) {
  .oracle-fate-feature img { max-width: clamp(205px, 62vw, 270px); }
}
.oracle-result-page .oracle-result-card { grid-template-columns: minmax(300px, 390px) minmax(0, 1fr); max-width: 1100px; padding: .6rem 0; border: 0; background: none; box-shadow: none; }
.oracle-result-page .oracle-result-cover { width: min(100%, 390px); }
.oracle-action--primary { color: var(--oracle-ink); background: var(--oracle-gold-soft); font-weight: 700; min-height: 44px; padding-inline: 1rem; }
.oracle-start-error { margin-top: .8rem; color: var(--oracle-parchment); font-size: .8rem; line-height: 1.5; }
.oracle-reading-highlight { outline: 2px solid rgba(199, 164, 91, .7); outline-offset: 4px; animation: oracle-reading-focus 2400ms ease-out; }
@keyframes oracle-card-chosen { from { scale: .96; } to { scale: 1.025; } }
@keyframes oracle-trial-advance { from { transform: translateY(12px) scale(.92); } to { transform: translateY(0) scale(1); } }
@keyframes oracle-trial-flip { from { transform: rotateY(0deg); } to { transform: rotateY(180deg); } }
@keyframes oracle-reading-focus { from { box-shadow: 0 0 0 6px rgba(199, 164, 91, .14); } to { box-shadow: 0 0 0 0 rgba(199, 164, 91, 0); } }
@media (max-width: 760px) {
  .oracle-result-page-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .oracle-result-page-actions .oracle-action { min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
  .oracle-result-page .oracle-result-card { grid-template-columns: minmax(0, 1fr); gap: 1.1rem; }
  .oracle-result-page .oracle-result-cover { grid-column: 1; grid-row: 1; width: min(100%, clamp(230px, 72vw, 320px)); }
  .oracle-result-page .oracle-living-copy { grid-column: 1; grid-row: 2; width: 100%; }
  .oracle-result-page .oracle-result-actions { margin-top: 1rem; }
}
@media (max-width: 360px) {
  .oracle-result-page-actions { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 700px) {
  .oracle-modal[data-oracle-entry="choice"] .oracle-modal-dialog,
  .oracle-modal[data-oracle-entry="challenge-kind"] .oracle-modal-dialog { background-size: auto, 100% auto; background-position: center, center top; }
  .oracle-modal[data-oracle-step="choice"] .oracle-modal-dialog { min-height: 100%; padding-block: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-bottom)); }
  .oracle-modal[data-oracle-step="choice"] .oracle-modal-header { padding-top: 3rem; }
  .oracle-modal[data-oracle-step="ritual"] .oracle-modal-header { padding-inline: max(.75rem, env(safe-area-inset-left)); gap: .45rem; }
  #oracleAllRituals { font-size: .7rem; }
  .oracle-modal[data-oracle-step="ritual"] .oracle-modal-header { grid-template-columns: auto minmax(0, 1fr) 44px; }
  .oracle-modal-close { width: 44px; height: 44px; flex-basis: 44px; }
  #oracleAllRituals,.oracle-threads-toggle { min-height: 44px; }
}
@media (max-height: 620px) {
  .oracle-modal[data-oracle-step="choice"] .oracle-modal-dialog { min-height: 0; justify-content: flex-start; padding-block: .5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .oracle-hidden-card { transition: none; }
  .oracle-hidden-spread--locked .oracle-hidden-card.is-active { animation: none; }
  .oracle-flow-card.is-chosen,.oracle-trial-selected,.oracle-reading-highlight,[data-oracle-trial-stage="approaching"] .oracle-trial-selected { animation: none; }
  [data-oracle-trial-stage="turning"] .oracle-trial-flipper { animation: none; transform: rotateY(180deg); }
}
