/* One featured world at a time, with controls that stay in place. */
.ethera-spotlight { grid-column: 1 / -1; width: 100%; min-width: 0; overflow: hidden; border: 1px solid #a581484f; border-radius: 15px; background: #11192b; box-shadow: 0 22px 70px #0002; }
.spotlight-stage { min-width: 0; overflow: hidden; background: #11192b; }
.spotlight-slide { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); min-height: 428px; }
.spotlight-slide[hidden] { display: none !important; }
.spotlight-media { position: relative; min-width: 0; min-height: 100%; overflow: hidden; background: #172037; touch-action: pan-y; }
.spotlight-media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; user-select: none; }
.spotlight-image-shade { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg,transparent 55%,#11192b90),linear-gradient(0deg,#101628ad,transparent 42%); }
.spotlight-art-label { position: absolute; top: 25px; left: 26px; max-width: calc(100% - 50px); border: 1px solid #c9ad7945; border-radius: 30px; padding: 8px 11px; background: #10172ddd; backdrop-filter: blur(10px); color: #e0d7bf; text-transform: uppercase; letter-spacing: 1.2px; font-size: 9px; line-height: 1.5; }
.spotlight-art-bearing { position: absolute; bottom: 27px; left: 28px; color: #e4d2ab; letter-spacing: 2.3px; font-size: 9px; text-shadow: 0 2px 5px #0008; }
.spotlight-copy { min-width: 0; padding: 39px 37px 34px; display: flex; flex-direction: column; justify-content: center; }
.spotlight-eyebrow { display: flex; align-items: center; justify-content: space-between; color: #c2a369; letter-spacing: 2px; font-size: 9px; font-weight: 650; margin-bottom: 22px; }
.spotlight-eyebrow > span { font-size: 25px; line-height: 10px; color: #9c7d493e; }
.spotlight-copy h3 { margin: 0 0 15px; font-size: clamp(27px,3vw,40px); line-height: 1.1; letter-spacing: -1.2px; font-weight: 600; color: #f0ece4; overflow-wrap: anywhere; }
.spotlight-copy > p { font-size: 12px; line-height: 1.8; margin-bottom: 19px; color: #a9b5cb; }
.spotlight-game-specs { display: flex; flex-wrap: wrap; gap: 6px 14px; border-bottom: 1px solid #8791a326; padding-bottom: 18px; font-size: 10px; line-height: 1.6; color: #a9b3c6; }
.spotlight-game-specs > span + span { color: #c3ad87; }
.spotlight-price { margin: 20px 0 23px; }
.spotlight-price > span { display: block; font-size: 8px; letter-spacing: .7px; line-height: 1.7; color: #8e9bb3; }
.spotlight-price > strong { display: block; margin: 7px 0 4px; font-size: 36px; line-height: 1; letter-spacing: -1px; font-weight: 600; color: #e4d3b2; }
.spotlight-price strong > small { font-size: 20px; vertical-align: top; line-height: 1.4; margin-right: 2px; color: inherit; }
.spotlight-price strong > em { font-size: 11px; letter-spacing: 0; font-weight: 400; font-style: normal; color: #9eacc4; }
.spotlight-price > .spotlight-custom-price { font-size: 23px; line-height: 1.25; letter-spacing: -.5px; }
.spotlight-game-actions { display: flex; align-items: center; gap: 17px; }
.spotlight-game-actions .primary { flex: 1; padding: 12px 15px; font-size: 11px; gap: 12px; line-height: 1.5; }
.spotlight-save-wrap { display: flex; flex-direction: column; align-items: center; gap: 4px; flex-shrink: 0; }
.spotlight-save-wrap > span { font-size: 8px; color: #a39c8c; }
.spotlight-save { display: grid; place-items: center; width: 40px; height: 34px; border: 1px solid #b0905645; border-radius: 6px; background: #b191510b; color: #c9b487; font-size: 21px; line-height: 1; transition: background 180ms ease, border-color 180ms ease, transform 180ms ease; }
.spotlight-save:hover { transform: translateY(-2px); background: #b1915121; border-color: #b0905680; }
.spotlight-save.active { color: #ddbb7a; background: #b191511d; }
.spotlight-navigation { display: flex; align-items: center; gap: 25px; flex-wrap: wrap; padding: 20px 26px; border-top: 1px solid #b28e4d29; border-bottom: 1px solid #b28e4d29; background: #151d2f; }
.spotlight-step-controls { display: flex; align-items: center; gap: 18px; }
.spotlight-step { width: 37px; height: 37px; display: grid; place-items: center; border: 1px solid #8f795446; border-radius: 50%; background: #bd934b08; color: #d2b57f; font-size: 20px; transition: background 180ms ease, border-color 180ms ease; }
.spotlight-step:hover { border-color: #bd934b; background: #b38a441d; }
.spotlight-step:disabled { cursor: default; }
.spotlight-position { display: flex; align-items: baseline; gap: 8px; min-width: 66px; justify-content: center; font-variant-numeric: tabular-nums; }
.spotlight-position strong { font-size: 20px; font-weight: 500; color: #d6c3a1; }
.spotlight-position span { font-size: 10px; color: #7c8aa3; }
.spotlight-jump { display: flex; align-items: center; gap: 13px; font-size: 10px; color: #a2aec3; min-width: 0; }
.spotlight-jump select { width: 200px; max-width: 100%; min-width: 0; padding: 9px 28px 9px 11px; border: 1px solid #5661785c; border-radius: 5px; background: #101729; color: #dbdbd6; font-size: 10px; line-height: 1.6; }
.spotlight-navigation-note { margin-left: auto; font-size: 10px; color: #7988a1; }
.spotlight-quick { padding: 22px 26px 25px; background: #101728; }
.spotlight-quick-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 7px 20px; margin-bottom: 14px; }
.spotlight-quick-heading > span { font-size: 8px; letter-spacing: 1.8px; color: #b9a06f; }
.spotlight-quick-heading > small { font-size: 9px; color: #7d8ba3; }
.spotlight-thumbnails { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 10px; }
.spotlight-thumb { position: relative; display: block; min-width: 0; padding: 0; overflow: hidden; border: 1px solid #a38c5940; border-radius: 7px; background: #172136; color: #c9d1df; text-align: left; transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease; }
.spotlight-thumb > img { display: block; width: 100%; aspect-ratio: 1.9; object-fit: cover; opacity: .6; transition: opacity 180ms ease; }
.spotlight-thumb > span { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding: 9px 8px; font-size: 9px; line-height: 1.5; }
.spotlight-thumb > i { display: none; position: absolute; top: 6px; right: 6px; width: 16px; height: 16px; border-radius: 50%; background: #bd934b; color: #101727; font-size: 11px; line-height: 16px; text-align: center; font-style: normal; }
.spotlight-thumb:hover { border-color: #bd934b; transform: translateY(-2px); }
.spotlight-thumb:hover > img, .spotlight-thumb[aria-current="true"] > img { opacity: 1; }
.spotlight-thumb[aria-current="true"] { border-color: #bd934b; color: #e4d4b7; box-shadow: 0 0 0 1px #bd934b4a; }
.spotlight-thumb[aria-current="true"] > i { display: block; }
.spotlight-empty { padding: 30px; }
.spotlight-empty p { margin: 0; }
.ethera-spotlight { --spotlight-shift: 12px; }
.ethera-spotlight[data-spotlight-direction="previous"] { --spotlight-shift: -12px; }
.spotlight-entering .spotlight-media > img { animation: spotlight-art-in 380ms ease-out both; }
.spotlight-entering .spotlight-copy { animation: spotlight-copy-in 300ms ease-out both; }
@keyframes spotlight-art-in { from { opacity: .35; transform: translateX(var(--spotlight-shift)) scale(1.015); } to { opacity: 1; transform: none; } }
@keyframes spotlight-copy-in { from { opacity: .3; transform: translateX(var(--spotlight-shift)); } to { opacity: 1; transform: none; } }
@media (max-width: 1080px) {
  .spotlight-slide { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .spotlight-copy { padding: 30px; }
  .spotlight-navigation-note { display: none; }
  .spotlight-thumbnails { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .spotlight-slide { grid-template-columns: minmax(0,1fr); min-height: 0; }
  .spotlight-media { height: auto; min-height: 0; aspect-ratio: 1.95; }
  .spotlight-image-shade { background: linear-gradient(0deg,#101628ad,transparent 48%); }
  .spotlight-art-label { top: 18px; left: 18px; font-size: 8px; padding: 6px 9px; }
  .spotlight-art-bearing { left: 19px; bottom: 18px; font-size: 8px; }
  .spotlight-copy { padding: 27px; }
  .spotlight-copy h3 { font-size: 31px; }
  .spotlight-eyebrow { margin-bottom: 16px; }
  .spotlight-price { margin: 17px 0 21px; }
  .spotlight-navigation { padding: 18px 22px; gap: 17px; justify-content: space-between; }
  .spotlight-jump { flex: 1 1 100%; justify-content: space-between; }
  .spotlight-jump select { flex: 1; width: auto; max-width: 245px; }
  .spotlight-step-controls { gap: 16px; }
  .spotlight-quick { padding: 20px 22px; }
  .spotlight-thumbnails { gap: 9px; }
  .spotlight-thumb > span { font-size: 8px; padding: 7px; }
}
@media (max-width: 400px) {
  .spotlight-copy { padding: 23px 20px; }
  .spotlight-copy h3 { font-size: 28px; }
  .spotlight-copy > p { font-size: 11px; }
  .spotlight-game-specs { font-size: 9px; }
  .spotlight-game-actions { gap: 13px; }
  .spotlight-game-actions .primary { font-size: 10px; padding: 12px; }
  .spotlight-navigation { padding: 17px 19px; }
  .spotlight-jump { gap: 10px; font-size: 9px; }
  .spotlight-jump select { font-size: 9px; }
  .spotlight-quick { padding: 18px 19px; }
  .spotlight-thumbnails { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
html.ethera-motion-paused .ethera-spotlight *, html.ethera-motion-paused .ethera-spotlight *::before, html.ethera-motion-paused .ethera-spotlight *::after { animation: none !important; transition: none !important; }
@media (prefers-reduced-motion: reduce) {
  .ethera-spotlight *, .ethera-spotlight *::before, .ethera-spotlight *::after { animation: none !important; transition: none !important; }
  .spotlight-save:hover, .spotlight-thumb:hover { transform: none; }
}
